@cgi-learning-hub/ui 1.4.0-dev.1741972878 → 1.4.0-dev.1741974011

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,9 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const v=require("react/jsx-runtime"),Ut=require("../../Delete-DmeDAs0n.cjs"),ae=require("../../createSvgIcon-DJMYlO0S.cjs"),He=require("../../Box-DYA49L7w.cjs"),ue=require("react"),P=require("../../ButtonBase-D6tfI-8D.cjs"),Ce=require("../../warning-DMUNDgRg.cjs"),pe=require("../../useForkRef-CTI33h-3.cjs"),j=require("../../resolveComponentProps-PuUs-PsA.cjs"),l=require("../../generateUtilityClasses-De8NU9_E.cjs"),W=require("../../TransitionGroupContext-Zt4NoR0u.cjs"),zt=require("../../useThemeProps-DxBEHys5.cjs"),_=require("../../DefaultPropsProvider-wpBXjN8r.cjs"),et=require("../../Collapse-Bvxtq7n-.cjs"),tt=require("../../Checkbox-DQgPXaym.cjs"),nt=require("../../unsupportedProp-Bn6XWqwH.cjs"),V=require("../../useSlotProps-CvOxvhyy.cjs"),le=require("../../useEventCallback-C0-Qw3Sm.cjs"),Wt=require("../../ownerDocument-4MViGo3k.cjs"),Gt=require("../../elementTypeAcceptingRef-BjgxF5Bq.cjs");function Xt(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const C=Xt(ue),De=ae.createSvgIcon(v.jsx("path",{d:"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"}),"Folder"),Jt=ae.createSvgIcon(v.jsx("path",{d:"M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z"}),"KeyboardArrowDown"),Qt=ae.createSvgIcon(v.jsx("path",{d:"M8.59 16.59 13.17 12 8.59 7.41 10 6l6 6-6 6z"}),"KeyboardArrowRight"),Yt=ae.createSvgIcon(v.jsx("path",{d:"M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92-1.31-2.92-2.92-2.92"}),"Share");function Zt(e){return l.generateUtilityClass("MuiRichTreeView",e)}l.generateUtilityClasses("MuiRichTreeView",["root"]);function je(e){return zt.useThemeProps}const Ht=(e,t)=>{const n=C.useRef({}),[o,r]=C.useState(()=>{const p={};return e.forEach(i=>{i.models&&Object.entries(i.models).forEach(([u,d])=>{n.current[u]={isControlled:t[u]!==void 0,getDefaultValue:d.getDefaultValue},p[u]=d.getDefaultValue(t)})}),p}),I=Object.fromEntries(Object.entries(n.current).map(([p,i])=>{const u=t[p]??o[p];return[p,{value:u,setControlledValue:d=>{i.isControlled||r(s=>P._extends({},s,{[p]:d}))}}]}));return process.env.NODE_ENV!=="production"&&Object.entries(n.current).forEach(([p,i])=>{const u=t[p],d=i.getDefaultValue(t);C.useEffect(()=>{i.isControlled!==(u!==void 0)&&console.error([`MUI X: A component is changing the ${i.isControlled?"":"un"}controlled ${p} state of TreeView to be ${i.isControlled?"un":""}controlled.`,"Elements should not switch from uncontrolled to controlled (or vice versa).",`Decide between using a controlled or uncontrolled ${p} element for the lifetime of the component.`,"The nature of the state is determined during the first render. It's considered controlled if the value is not `undefined`.","More info: https://fb.me/react-controlled-components"].join(`
2
- `))},[u]);const{current:s}=C.useRef(d);C.useEffect(()=>{!i.isControlled&&s!==d&&console.error([`MUI X: A component is changing the default ${p} state of an uncontrolled TreeView after being initialized. To suppress this warning opt to use a controlled TreeView.`].join(`
3
- `))},[JSON.stringify(d)])}),I};class en{constructor(){this.maxListeners=20,this.warnOnce=!1,this.events={}}on(t,n,o={}){let r=this.events[t];if(r||(r={highPriority:new Map,regular:new Map},this.events[t]=r),o.isFirst?r.highPriority.set(n,!0):r.regular.set(n,!0),process.env.NODE_ENV!=="production"){const I=r.highPriority.size+r.regular.size;I>this.maxListeners&&!this.warnOnce&&(this.warnOnce=!0,console.warn([`Possible EventEmitter memory leak detected. ${I} ${t} listeners added.`].join(`
4
- `)))}}removeListener(t,n){this.events[t]&&(this.events[t].regular.delete(n),this.events[t].highPriority.delete(n))}removeAllListeners(){this.events={}}emit(t,...n){const o=this.events[t];if(!o)return;const r=Array.from(o.highPriority.keys()),I=Array.from(o.regular.keys());for(let p=r.length-1;p>=0;p-=1){const i=r[p];o.highPriority.has(i)&&i.apply(this,n)}for(let p=0;p<I.length;p+=1){const i=I[p];o.regular.has(i)&&i.apply(this,n)}}once(t,n){const o=this;this.on(t,function r(...I){o.removeListener(t,r),n.apply(o,I)})}}const tn=e=>e.isPropagationStopped!==void 0,ot=()=>{const[e]=C.useState(()=>new en),t=C.useCallback((...o)=>{const[r,I,p={}]=o;p.defaultMuiPrevented=!1,!(tn(p)&&p.isPropagationStopped())&&e.emit(r,I,p)},[e]),n=C.useCallback((o,r)=>(e.on(o,r),()=>{e.removeListener(o,r)}),[e]);return{instance:{$$publishEvent:t,$$subscribeEvent:n}}};ot.params={};const rt=({plugins:e})=>{const t=new Set(e);return{instance:{getAvailablePlugins:()=>t}}};rt.params={};let Ye=0;const nn=()=>(Ye+=1,`mui-tree-view-${Ye}`),Le=({id:e,treeId:t="",itemId:n})=>e??`${t}-${n}`,Ae=({params:e,state:t,setState:n})=>{C.useEffect(()=>{n(r=>r.id.treeId===e.id&&r.id.treeId!==void 0?r:P._extends({},r,{id:P._extends({},r.id,{treeId:e.id??nn()})}))},[n,e.id]);const o=e.id??t.id.treeId;return{getRootProps:()=>({id:o}),contextValue:{treeId:o}}};Ae.params={id:!0};Ae.getInitialState=({id:e})=>({id:{treeId:e??void 0}});const on=[ot,rt,Ae],rn=["slots","slotProps","apiRef","experimentalFeatures"],sn=e=>{let{props:{slots:t,slotProps:n,apiRef:o,experimentalFeatures:r},plugins:I}=e,p=W._objectWithoutPropertiesLoose(e.props,rn);const i={};I.forEach(m=>{Object.assign(i,m.params)});const u={},d={};Object.keys(p).forEach(m=>{const c=p[m];i[m]?u[m]=c:d[m]=c});const s=r??{},a=I.reduce((m,c)=>c.getDefaultizedParams?c.getDefaultizedParams({params:m,experimentalFeatures:s}):m,u);return{apiRef:o,forwardedProps:d,pluginParams:a,slots:t??{},slotProps:n??{},experimentalFeatures:s}},ln=({plugins:e,instance:t,publicAPI:n,rootRef:o})=>({runItemPlugins:i=>{let u=null,d=null;const s=[],a={};e.forEach(x=>{if(!x.itemPlugin)return;const g=x.itemPlugin({props:i,rootRef:u,contentRef:d});g!=null&&g.rootRef&&(u=g.rootRef),g!=null&&g.contentRef&&(d=g.contentRef),g!=null&&g.propsEnhancers&&(s.push(g.propsEnhancers),Object.keys(g.propsEnhancers).forEach(f=>{a[f]=!0}))});const m=x=>g=>{const f={};return s.forEach(b=>{const h=b[x];h!=null&&Object.assign(f,h(g))}),f},c=Object.fromEntries(Object.keys(a).map(x=>[x,m(x)]));return{contentRef:d,rootRef:u,propsEnhancers:c}},wrapItem:({itemId:i,children:u})=>{let d=u;for(let s=e.length-1;s>=0;s-=1){const a=e[s];a.wrapItem&&(d=a.wrapItem({itemId:i,children:d,instance:t}))}return d},wrapRoot:({children:i})=>{let u=i;for(let d=e.length-1;d>=0;d-=1){const s=e[d];s.wrapRoot&&(u=s.wrapRoot({children:u,instance:t}))}return u},instance:t,rootRef:o,publicAPI:n});function an(e){const t=C.useRef({});return e?(e.current==null&&(e.current={}),e.current):t.current}const cn=({plugins:e,rootRef:t,props:n})=>{const o=[...on,...e],{pluginParams:r,forwardedProps:I,apiRef:p,experimentalFeatures:i,slots:u,slotProps:d}=sn({plugins:o,props:n}),s=Ht(o,r),m=C.useRef({}).current,c=an(p),x=C.useRef(null),g=pe.useForkRef(x,t),f=ln({plugins:o,instance:m,publicAPI:c,rootRef:x}),[b,h]=C.useState(()=>{const S={};return o.forEach(O=>{O.getInitialState&&Object.assign(S,O.getInitialState(r))}),S}),w=[],k=S=>{const O=S({instance:m,params:r,slots:u,slotProps:d,experimentalFeatures:i,state:b,setState:h,rootRef:x,models:s,plugins:o});O.getRootProps&&w.push(O.getRootProps),O.publicAPI&&Object.assign(c,O.publicAPI),O.instance&&Object.assign(m,O.instance),O.contextValue&&Object.assign(f,O.contextValue)};return o.forEach(k),{getRootProps:(S={})=>{const O=P._extends({role:"tree"},I,S,{ref:g});return w.forEach($=>{Object.assign(O,$(S))}),O},rootRef:g,contextValue:f,instance:m}},Ve=C.createContext(null);process.env.NODE_ENV!=="production"&&(Ve.displayName="TreeViewContext");function dn(e){const{value:t,children:n}=e;return v.jsx(Ve.Provider,{value:t,children:t.wrapRoot({children:n,instance:t.instance})})}const oe=()=>{const e=C.useContext(Ve);if(e==null)throw new Error(["MUI X: Could not find the Tree View context.","It looks like you rendered your component outside of a SimpleTreeView or RichTreeView parent component.","This can also happen if you are bundling multiple versions of the Tree View."].join(`
5
- `));return e},un=(e,t,n)=>{e.$$publishEvent(t,n)},ie="__TREE_VIEW_ROOT_PARENT_ID__",pn=e=>{const t={};return e.forEach((n,o)=>{t[n]=o}),t},Ee=C.createContext(()=>-1);process.env.NODE_ENV!=="production"&&(Ee.displayName="TreeViewItemDepthContext");const fn=["children"],st=({items:e,isItemDisabled:t,getItemLabel:n,getItemId:o})=>{const r={},I={},p={[ie]:[]},i=(d,s,a)=>{var g,f;const m=o?o(d):d.id;if(m==null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.","An item was provided without id in the `items` prop:",JSON.stringify(d)].join(`
6
- `));if(r[m]!=null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.",`Two items were provided with the same id in the \`items\` prop: "${m}"`].join(`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const v=require("react/jsx-runtime"),Ut=require("../../Delete-DmeDAs0n.cjs"),ce=require("../../createSvgIcon-DJMYlO0S.cjs"),He=require("../../Box-DYA49L7w.cjs"),J=require("react"),P=require("../../ButtonBase-D6tfI-8D.cjs"),Ce=require("../../warning-DMUNDgRg.cjs"),pe=require("../../useForkRef-CTI33h-3.cjs"),j=require("../../resolveComponentProps-PuUs-PsA.cjs"),l=require("../../generateUtilityClasses-De8NU9_E.cjs"),W=require("../../TransitionGroupContext-Zt4NoR0u.cjs"),zt=require("../../useThemeProps-DxBEHys5.cjs"),_=require("../../DefaultPropsProvider-wpBXjN8r.cjs"),et=require("../../Collapse-Bvxtq7n-.cjs"),tt=require("../../Checkbox-DQgPXaym.cjs"),nt=require("../../unsupportedProp-Bn6XWqwH.cjs"),V=require("../../useSlotProps-CvOxvhyy.cjs"),ae=require("../../useEventCallback-C0-Qw3Sm.cjs"),Wt=require("../../ownerDocument-4MViGo3k.cjs"),Gt=require("../../elementTypeAcceptingRef-BjgxF5Bq.cjs");function Xt(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const C=Xt(J),De=ce.createSvgIcon(v.jsx("path",{d:"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"}),"Folder"),Jt=ce.createSvgIcon(v.jsx("path",{d:"M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z"}),"KeyboardArrowDown"),Qt=ce.createSvgIcon(v.jsx("path",{d:"M8.59 16.59 13.17 12 8.59 7.41 10 6l6 6-6 6z"}),"KeyboardArrowRight"),Yt=ce.createSvgIcon(v.jsx("path",{d:"M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92-1.31-2.92-2.92-2.92"}),"Share");function Zt(e){return l.generateUtilityClass("MuiRichTreeView",e)}l.generateUtilityClasses("MuiRichTreeView",["root"]);function je(e){return zt.useThemeProps}const Ht=(e,t)=>{const n=C.useRef({}),[o,s]=C.useState(()=>{const f={};return e.forEach(a=>{a.models&&Object.entries(a.models).forEach(([u,d])=>{n.current[u]={isControlled:t[u]!==void 0,getDefaultValue:d.getDefaultValue},f[u]=d.getDefaultValue(t)})}),f}),I=Object.fromEntries(Object.entries(n.current).map(([f,a])=>{const u=t[f]??o[f];return[f,{value:u,setControlledValue:d=>{a.isControlled||s(r=>P._extends({},r,{[f]:d}))}}]}));return process.env.NODE_ENV!=="production"&&Object.entries(n.current).forEach(([f,a])=>{const u=t[f],d=a.getDefaultValue(t);C.useEffect(()=>{a.isControlled!==(u!==void 0)&&console.error([`MUI X: A component is changing the ${a.isControlled?"":"un"}controlled ${f} state of TreeView to be ${a.isControlled?"un":""}controlled.`,"Elements should not switch from uncontrolled to controlled (or vice versa).",`Decide between using a controlled or uncontrolled ${f} element for the lifetime of the component.`,"The nature of the state is determined during the first render. It's considered controlled if the value is not `undefined`.","More info: https://fb.me/react-controlled-components"].join(`
2
+ `))},[u]);const{current:r}=C.useRef(d);C.useEffect(()=>{!a.isControlled&&r!==d&&console.error([`MUI X: A component is changing the default ${f} state of an uncontrolled TreeView after being initialized. To suppress this warning opt to use a controlled TreeView.`].join(`
3
+ `))},[JSON.stringify(d)])}),I};class en{constructor(){this.maxListeners=20,this.warnOnce=!1,this.events={}}on(t,n,o={}){let s=this.events[t];if(s||(s={highPriority:new Map,regular:new Map},this.events[t]=s),o.isFirst?s.highPriority.set(n,!0):s.regular.set(n,!0),process.env.NODE_ENV!=="production"){const I=s.highPriority.size+s.regular.size;I>this.maxListeners&&!this.warnOnce&&(this.warnOnce=!0,console.warn([`Possible EventEmitter memory leak detected. ${I} ${t} listeners added.`].join(`
4
+ `)))}}removeListener(t,n){this.events[t]&&(this.events[t].regular.delete(n),this.events[t].highPriority.delete(n))}removeAllListeners(){this.events={}}emit(t,...n){const o=this.events[t];if(!o)return;const s=Array.from(o.highPriority.keys()),I=Array.from(o.regular.keys());for(let f=s.length-1;f>=0;f-=1){const a=s[f];o.highPriority.has(a)&&a.apply(this,n)}for(let f=0;f<I.length;f+=1){const a=I[f];o.regular.has(a)&&a.apply(this,n)}}once(t,n){const o=this;this.on(t,function s(...I){o.removeListener(t,s),n.apply(o,I)})}}const tn=e=>e.isPropagationStopped!==void 0,ot=()=>{const[e]=C.useState(()=>new en),t=C.useCallback((...o)=>{const[s,I,f={}]=o;f.defaultMuiPrevented=!1,!(tn(f)&&f.isPropagationStopped())&&e.emit(s,I,f)},[e]),n=C.useCallback((o,s)=>(e.on(o,s),()=>{e.removeListener(o,s)}),[e]);return{instance:{$$publishEvent:t,$$subscribeEvent:n}}};ot.params={};const rt=({plugins:e})=>{const t=new Set(e);return{instance:{getAvailablePlugins:()=>t}}};rt.params={};let Ye=0;const nn=()=>(Ye+=1,`mui-tree-view-${Ye}`),Le=({id:e,treeId:t="",itemId:n})=>e??`${t}-${n}`,Ae=({params:e,state:t,setState:n})=>{C.useEffect(()=>{n(s=>s.id.treeId===e.id&&s.id.treeId!==void 0?s:P._extends({},s,{id:P._extends({},s.id,{treeId:e.id??nn()})}))},[n,e.id]);const o=e.id??t.id.treeId;return{getRootProps:()=>({id:o}),contextValue:{treeId:o}}};Ae.params={id:!0};Ae.getInitialState=({id:e})=>({id:{treeId:e??void 0}});const on=[ot,rt,Ae],rn=["slots","slotProps","apiRef","experimentalFeatures"],sn=e=>{let{props:{slots:t,slotProps:n,apiRef:o,experimentalFeatures:s},plugins:I}=e,f=W._objectWithoutPropertiesLoose(e.props,rn);const a={};I.forEach(p=>{Object.assign(a,p.params)});const u={},d={};Object.keys(f).forEach(p=>{const c=f[p];a[p]?u[p]=c:d[p]=c});const r=s??{},i=I.reduce((p,c)=>c.getDefaultizedParams?c.getDefaultizedParams({params:p,experimentalFeatures:r}):p,u);return{apiRef:o,forwardedProps:d,pluginParams:i,slots:t??{},slotProps:n??{},experimentalFeatures:r}},ln=({plugins:e,instance:t,publicAPI:n,rootRef:o})=>({runItemPlugins:a=>{let u=null,d=null;const r=[],i={};e.forEach(x=>{if(!x.itemPlugin)return;const g=x.itemPlugin({props:a,rootRef:u,contentRef:d});g!=null&&g.rootRef&&(u=g.rootRef),g!=null&&g.contentRef&&(d=g.contentRef),g!=null&&g.propsEnhancers&&(r.push(g.propsEnhancers),Object.keys(g.propsEnhancers).forEach(m=>{i[m]=!0}))});const p=x=>g=>{const m={};return r.forEach(b=>{const h=b[x];h!=null&&Object.assign(m,h(g))}),m},c=Object.fromEntries(Object.keys(i).map(x=>[x,p(x)]));return{contentRef:d,rootRef:u,propsEnhancers:c}},wrapItem:({itemId:a,children:u})=>{let d=u;for(let r=e.length-1;r>=0;r-=1){const i=e[r];i.wrapItem&&(d=i.wrapItem({itemId:a,children:d,instance:t}))}return d},wrapRoot:({children:a})=>{let u=a;for(let d=e.length-1;d>=0;d-=1){const r=e[d];r.wrapRoot&&(u=r.wrapRoot({children:u,instance:t}))}return u},instance:t,rootRef:o,publicAPI:n});function an(e){const t=C.useRef({});return e?(e.current==null&&(e.current={}),e.current):t.current}const cn=({plugins:e,rootRef:t,props:n})=>{const o=[...on,...e],{pluginParams:s,forwardedProps:I,apiRef:f,experimentalFeatures:a,slots:u,slotProps:d}=sn({plugins:o,props:n}),r=Ht(o,s),p=C.useRef({}).current,c=an(f),x=C.useRef(null),g=pe.useForkRef(x,t),m=ln({plugins:o,instance:p,publicAPI:c,rootRef:x}),[b,h]=C.useState(()=>{const S={};return o.forEach(O=>{O.getInitialState&&Object.assign(S,O.getInitialState(s))}),S}),E=[],k=S=>{const O=S({instance:p,params:s,slots:u,slotProps:d,experimentalFeatures:a,state:b,setState:h,rootRef:x,models:r,plugins:o});O.getRootProps&&E.push(O.getRootProps),O.publicAPI&&Object.assign(c,O.publicAPI),O.instance&&Object.assign(p,O.instance),O.contextValue&&Object.assign(m,O.contextValue)};return o.forEach(k),{getRootProps:(S={})=>{const O=P._extends({role:"tree"},I,S,{ref:g});return E.forEach($=>{Object.assign(O,$(S))}),O},rootRef:g,contextValue:m,instance:p}},Ve=C.createContext(null);process.env.NODE_ENV!=="production"&&(Ve.displayName="TreeViewContext");function dn(e){const{value:t,children:n}=e;return v.jsx(Ve.Provider,{value:t,children:t.wrapRoot({children:n,instance:t.instance})})}const re=()=>{const e=C.useContext(Ve);if(e==null)throw new Error(["MUI X: Could not find the Tree View context.","It looks like you rendered your component outside of a SimpleTreeView or RichTreeView parent component.","This can also happen if you are bundling multiple versions of the Tree View."].join(`
5
+ `));return e},un=(e,t,n)=>{e.$$publishEvent(t,n)},le="__TREE_VIEW_ROOT_PARENT_ID__",pn=e=>{const t={};return e.forEach((n,o)=>{t[n]=o}),t},Ee=C.createContext(()=>-1);process.env.NODE_ENV!=="production"&&(Ee.displayName="TreeViewItemDepthContext");const fn=["children"],st=({items:e,isItemDisabled:t,getItemLabel:n,getItemId:o})=>{const s={},I={},f={[le]:[]},a=(d,r,i)=>{var g,m;const p=o?o(d):d.id;if(p==null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.","An item was provided without id in the `items` prop:",JSON.stringify(d)].join(`
6
+ `));if(s[p]!=null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.",`Two items were provided with the same id in the \`items\` prop: "${p}"`].join(`
7
7
  `));const c=n?n(d):d.label;if(c==null)throw new Error(["MUI X: The Tree View component requires all items to have a `label` property.","Alternatively, you can use the `getItemLabel` prop to specify a custom label for each item.","An item was provided without label in the `items` prop:",JSON.stringify(d)].join(`
8
- `));r[m]={id:m,label:c,parentId:a,idAttribute:void 0,expandable:!!((g=d.children)!=null&&g.length),disabled:t?t(d):!1,depth:s},I[m]=d;const x=a??ie;p[x]||(p[x]=[]),p[x].push(m),(f=d.children)==null||f.forEach(b=>i(b,s+1,m))};e.forEach(d=>i(d,0,null));const u={};return Object.keys(p).forEach(d=>{u[d]=pn(p[d])}),{itemMetaMap:r,itemMap:I,itemOrderedChildrenIds:p,itemChildrenIndexes:u}},Ie=({instance:e,params:t,state:n,setState:o,experimentalFeatures:r})=>{const I=C.useCallback(b=>n.items.itemMetaMap[b],[n.items.itemMetaMap]),p=C.useCallback(b=>n.items.itemMap[b],[n.items.itemMap]),i=C.useCallback(()=>{const b=h=>{const w=n.items.itemMap[h],k=W._objectWithoutPropertiesLoose(w,fn),E=n.items.itemOrderedChildrenIds[h];return E&&(k.children=E.map(b)),k};return n.items.itemOrderedChildrenIds[ie].map(b)},[n.items.itemMap,n.items.itemOrderedChildrenIds]),u=C.useCallback(b=>{if(b==null)return!1;let h=e.getItemMeta(b);if(!h)return!1;if(h.disabled)return!0;for(;h.parentId!=null;)if(h=e.getItemMeta(h.parentId),h.disabled)return!0;return!1},[e]),d=C.useCallback(b=>{const h=e.getItemMeta(b).parentId??ie;return n.items.itemChildrenIndexes[h][b]},[e,n.items.itemChildrenIndexes]),s=C.useCallback(b=>n.items.itemOrderedChildrenIds[b??ie]??[],[n.items.itemOrderedChildrenIds]),a=b=>{const h=e.getItemMeta(b);return h==null?null:document.getElementById(Le({treeId:n.id.treeId,itemId:b,id:h.idAttribute}))},m=b=>t.disabledItemsFocusable?!0:!e.isItemDisabled(b),c=C.useRef(!1),x=C.useCallback(()=>{c.current=!0},[]),g=C.useCallback(()=>c.current,[]);return C.useEffect(()=>{e.areItemUpdatesPrevented()||o(b=>{const h=st({items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel});return Object.values(b.items.itemMetaMap).forEach(w=>{h.itemMetaMap[w.id]||un(e,"removeItem",{id:w.id})}),P._extends({},b,{items:h})})},[e,o,t.items,t.isItemDisabled,t.getItemId,t.getItemLabel]),{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof t.itemChildrenIndentation=="number"?`${t.itemChildrenIndentation}px`:t.itemChildrenIndentation}}),publicAPI:{getItem:p,getItemDOMElement:a,getItemTree:i,getItemOrderedChildrenIds:s},instance:{getItemMeta:I,getItem:p,getItemTree:i,getItemsToRender:()=>{const b=h=>{var k;const w=n.items.itemMetaMap[h];return{label:w.label,itemId:w.id,id:w.idAttribute,children:(k=n.items.itemOrderedChildrenIds[h])==null?void 0:k.map(b)}};return n.items.itemOrderedChildrenIds[ie].map(b)},getItemIndex:d,getItemDOMElement:a,getItemOrderedChildrenIds:s,isItemDisabled:u,isItemNavigable:m,preventItemUpdates:x,areItemUpdatesPrevented:g},contextValue:{items:{onItemClick:t.onItemClick,disabledItemsFocusable:t.disabledItemsFocusable,indentationAtItemLevel:r.indentationAtItemLevel??!1}}}};Ie.getInitialState=e=>({items:st({items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel})});Ie.getDefaultizedParams=({params:e})=>P._extends({},e,{disabledItemsFocusable:e.disabledItemsFocusable??!1,itemChildrenIndentation:e.itemChildrenIndentation??"12px"});Ie.wrapRoot=({children:e,instance:t})=>v.jsx(Ee.Provider,{value:n=>{var o;return((o=t.getItemMeta(n))==null?void 0:o.depth)??0},children:e});Ie.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};const we=({instance:e,params:t,models:n})=>{const o=C.useMemo(()=>{const a=new Map;return n.expandedItems.value.forEach(m=>{a.set(m,!0)}),a},[n.expandedItems.value]),r=(a,m)=>{var c;(c=t.onExpandedItemsChange)==null||c.call(t,a,m),n.expandedItems.setControlledValue(m)},I=C.useCallback(a=>o.has(a),[o]),p=C.useCallback(a=>{var m;return!!((m=e.getItemMeta(a))!=null&&m.expandable)},[e]),i=le.useEventCallback((a,m)=>{const c=e.isItemExpanded(m);e.setItemExpansion(a,m,!c)}),u=le.useEventCallback((a,m,c)=>{if(e.isItemExpanded(m)===c)return;let g;c?g=[m].concat(n.expandedItems.value):g=n.expandedItems.value.filter(f=>f!==m),t.onItemExpansionToggle&&t.onItemExpansionToggle(a,m,c),r(a,g)}),d=(a,m)=>{const c=e.getItemMeta(m),g=e.getItemOrderedChildrenIds(c.parentId).filter(b=>e.isItemExpandable(b)&&!e.isItemExpanded(b)),f=n.expandedItems.value.concat(g);g.length>0&&(t.onItemExpansionToggle&&g.forEach(b=>{t.onItemExpansionToggle(a,b,!0)}),r(a,f))},s=C.useMemo(()=>t.expansionTrigger?t.expansionTrigger:e.isTreeViewEditable?"iconContainer":"content",[t.expansionTrigger,e.isTreeViewEditable]);return{publicAPI:{setItemExpansion:u},instance:{isItemExpanded:I,isItemExpandable:p,setItemExpansion:u,toggleItemExpansion:i,expandAllSiblings:d},contextValue:{expansion:{expansionTrigger:s}}}};we.models={expandedItems:{getDefaultValue:e=>e.defaultExpandedItems}};const mn=[];we.getDefaultizedParams=({params:e})=>P._extends({},e,{defaultExpandedItems:e.defaultExpandedItems??mn});we.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const it=(e,t)=>{let n=t.length-1;for(;n>=0&&!e.isItemNavigable(t[n]);)n-=1;if(n!==-1)return t[n]},lt=(e,t)=>{const n=e.getItemMeta(t),o=e.getItemOrderedChildrenIds(n.parentId),r=e.getItemIndex(t);if(r===0)return n.parentId;let I=r-1;for(;!e.isItemNavigable(o[I])&&I>=0;)I-=1;if(I===-1)return n.parentId==null?null:lt(e,n.parentId);let p=o[I],i=it(e,e.getItemOrderedChildrenIds(p));for(;e.isItemExpanded(p)&&i!=null;)p=i,i=e.getItemOrderedChildrenIds(p).find(e.isItemNavigable);return p},Te=(e,t)=>{if(e.isItemExpanded(t)){const o=e.getItemOrderedChildrenIds(t).find(e.isItemNavigable);if(o!=null)return o}let n=e.getItemMeta(t);for(;n!=null;){const o=e.getItemOrderedChildrenIds(n.parentId),r=e.getItemIndex(n.id);if(r<o.length-1){let I=r+1;for(;!e.isItemNavigable(o[I])&&I<o.length-1;)I+=1;if(e.isItemNavigable(o[I]))return o[I]}n=e.getItemMeta(n.parentId)}return null},at=e=>{let t=null;for(;t==null||e.isItemExpanded(t);){const n=e.getItemOrderedChildrenIds(t),o=it(e,n);if(o==null)return t;t=o}return t},fe=e=>e.getItemOrderedChildrenIds(null).find(e.isItemNavigable),ct=(e,t,n)=>{if(t===n)return[t,n];const o=e.getItemMeta(t),r=e.getItemMeta(n);if(o.parentId===r.id||r.parentId===o.id)return r.parentId===o.id?[o.id,r.id]:[r.id,o.id];const I=[o.id],p=[r.id];let i=o.parentId,u=r.parentId,d=p.indexOf(i)!==-1,s=I.indexOf(u)!==-1,a=!0,m=!0;for(;!s&&!d;)a&&(I.push(i),d=p.indexOf(i)!==-1,a=i!==null,!d&&a&&(i=e.getItemMeta(i).parentId)),m&&!d&&(p.push(u),s=I.indexOf(u)!==-1,m=u!==null,!s&&m&&(u=e.getItemMeta(u).parentId));const c=d?i:u,x=e.getItemOrderedChildrenIds(c),g=I[I.indexOf(c)-1],f=p[p.indexOf(c)-1];return x.indexOf(g)<x.indexOf(f)?[t,n]:[n,t]},In=(e,t,n)=>{const o=u=>{if(e.isItemExpandable(u)&&e.isItemExpanded(u))return e.getItemOrderedChildrenIds(u)[0];let d=e.getItemMeta(u);for(;d!=null;){const s=e.getItemOrderedChildrenIds(d.parentId),a=e.getItemIndex(d.id);if(a<s.length-1)return s[a+1];d=e.getItemMeta(d.parentId)}throw new Error("Invalid range")},[r,I]=ct(e,t,n),p=[r];let i=r;for(;i!==I;)i=o(i),e.isItemDisabled(i)||p.push(i);return p},gn=e=>{let t=fe(e);const n=[];for(;t!=null;)n.push(t),t=Te(e,t);return n},me=(e,t)=>t!==e.closest('*[role="treeitem"]'),Pe=e=>Array.isArray(e)?e:e!=null?[e]:[],_e=e=>{const t={};return e.forEach(n=>{t[n]=!0}),t},ve=({instance:e,params:t,models:n})=>{const o=C.useRef(null),r=C.useRef({}),I=C.useMemo(()=>{const g=new Map;return Array.isArray(n.selectedItems.value)?n.selectedItems.value.forEach(f=>{g.set(f,!0)}):n.selectedItems.value!=null&&g.set(n.selectedItems.value,!0),g},[n.selectedItems.value]),p=(g,f)=>{if(t.onItemSelectionToggle)if(t.multiSelect){const b=f.filter(w=>!e.isItemSelected(w)),h=n.selectedItems.value.filter(w=>!f.includes(w));b.forEach(w=>{t.onItemSelectionToggle(g,w,!0)}),h.forEach(w=>{t.onItemSelectionToggle(g,w,!1)})}else f!==n.selectedItems.value&&(n.selectedItems.value!=null&&t.onItemSelectionToggle(g,n.selectedItems.value,!1),f!=null&&t.onItemSelectionToggle(g,f,!0));t.onSelectedItemsChange&&t.onSelectedItemsChange(g,f),n.selectedItems.setControlledValue(f)},i=g=>I.has(g),u=({event:g,itemId:f,keepExistingSelection:b=!1,shouldBeSelected:h})=>{if(t.disableSelection)return;let w;if(b){const k=Pe(n.selectedItems.value),E=e.isItemSelected(f);E&&(h===!1||h==null)?w=k.filter(S=>S!==f):!E&&(h===!0||h==null)?w=[f].concat(k):w=k}else h===!1||h==null&&e.isItemSelected(f)?w=t.multiSelect?[]:null:w=t.multiSelect?[f]:f;p(g,w),o.current=f,r.current={}},d=(g,[f,b])=>{if(t.disableSelection||!t.multiSelect)return;let h=Pe(n.selectedItems.value).slice();Object.keys(r.current).length>0&&(h=h.filter(S=>!r.current[S]));const w=_e(h),k=In(e,f,b),E=k.filter(S=>!w[S]);h=h.concat(E),p(g,h),r.current=_e(k)};return{getRootProps:()=>({"aria-multiselectable":t.multiSelect}),publicAPI:{selectItem:u},instance:{isItemSelected:i,selectItem:u,selectAllNavigableItems:g=>{if(t.disableSelection||!t.multiSelect)return;const f=gn(e);p(g,f),r.current=_e(f)},expandSelectionRange:(g,f)=>{if(o.current!=null){const[b,h]=ct(e,f,o.current);d(g,[b,h])}},selectRangeFromStartToItem:(g,f)=>{d(g,[fe(e),f])},selectRangeFromItemToEnd:(g,f)=>{d(g,[f,at(e)])},selectItemFromArrowNavigation:(g,f,b)=>{if(t.disableSelection||!t.multiSelect)return;let h=Pe(n.selectedItems.value).slice();Object.keys(r.current).length===0?(h.push(b),r.current={[f]:!0,[b]:!0}):(r.current[f]||(r.current={}),r.current[b]?(h=h.filter(w=>w!==f),delete r.current[f]):(h.push(b),r.current[b]=!0)),p(g,h)}},contextValue:{selection:{multiSelect:t.multiSelect,checkboxSelection:t.checkboxSelection,disableSelection:t.disableSelection}}}};ve.models={selectedItems:{getDefaultValue:e=>e.defaultSelectedItems}};const bn=[];ve.getDefaultizedParams=({params:e})=>P._extends({},e,{disableSelection:e.disableSelection??!1,multiSelect:e.multiSelect??!1,checkboxSelection:e.checkboxSelection??!1,defaultSelectedItems:e.defaultSelectedItems??(e.multiSelect?bn:null)});ve.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0};const Ze=1e3;class xn{constructor(t=Ze){this.timeouts=new Map,this.cleanupTimeout=Ze,this.cleanupTimeout=t}register(t,n,o){this.timeouts||(this.timeouts=new Map);const r=setTimeout(()=>{typeof n=="function"&&n(),this.timeouts.delete(o.cleanupToken)},this.cleanupTimeout);this.timeouts.set(o.cleanupToken,r)}unregister(t){const n=this.timeouts.get(t.cleanupToken);n&&(this.timeouts.delete(t.cleanupToken),clearTimeout(n))}reset(){this.timeouts&&(this.timeouts.forEach((t,n)=>{this.unregister({cleanupToken:n})}),this.timeouts=void 0)}}class hn{constructor(){this.registry=new FinalizationRegistry(t=>{typeof t=="function"&&t()})}register(t,n,o){this.registry.register(t,n,o)}unregister(t){this.registry.unregister(t)}reset(){}}class yn{}function Tn(e){let t=0;return function(o,r,I){e.registry===null&&(e.registry=typeof FinalizationRegistry<"u"?new hn:new xn);const[p]=C.useState(new yn),i=C.useRef(null),u=C.useRef(void 0);u.current=I;const d=C.useRef(null);if(!i.current&&u.current){const s=(a,m)=>{var c;m.defaultMuiPrevented||(c=u.current)==null||c.call(u,a,m)};i.current=o.$$subscribeEvent(r,s),t+=1,d.current={cleanupToken:t},e.registry.register(p,()=>{var a;(a=i.current)==null||a.call(i),i.current=null,d.current=null},d.current)}else!u.current&&i.current&&(i.current(),i.current=null,d.current&&(e.registry.unregister(d.current),d.current=null));C.useEffect(()=>{if(!i.current&&u.current){const s=(a,m)=>{var c;m.defaultMuiPrevented||(c=u.current)==null||c.call(u,a,m)};i.current=o.$$subscribeEvent(r,s)}return d.current&&e.registry&&(e.registry.unregister(d.current),d.current=null),()=>{var s;(s=i.current)==null||s.call(i),i.current=null}},[o,r])}}const Pn={registry:null},Cn=Tn(Pn),dt=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?dt(t.shadowRoot):t:null},En=(e,t)=>{let n=Pe(t).find(o=>{if(!e.isItemNavigable(o))return!1;const r=e.getItemMeta(o);return r&&(r.parentId==null||e.isItemExpanded(r.parentId))});return n==null&&(n=fe(e)),n},Fe=({instance:e,params:t,state:n,setState:o,models:r,rootRef:I})=>{const p=En(e,r.selectedItems.value),i=le.useEventCallback(f=>{const b=typeof f=="function"?f(n.focusedItemId):f;n.focusedItemId!==b&&o(h=>P._extends({},h,{focusedItemId:b}))}),u=C.useCallback(()=>!!I.current&&I.current.contains(dt(Wt.ownerDocument(I.current))),[I]),d=C.useCallback(f=>n.focusedItemId===f&&u(),[n.focusedItemId,u]),s=f=>{const b=e.getItemMeta(f);return b&&(b.parentId==null||e.isItemExpanded(b.parentId))},a=(f,b)=>{const h=e.getItemDOMElement(b);h&&h.focus(),i(b),t.onItemFocus&&t.onItemFocus(f,b)},m=le.useEventCallback((f,b)=>{s(b)&&a(f,b)}),c=le.useEventCallback(()=>{if(n.focusedItemId==null)return;if(e.getItemMeta(n.focusedItemId)){const b=e.getItemDOMElement(n.focusedItemId);b&&b.blur()}i(null)}),x=f=>f===p;Cn(e,"removeItem",({id:f})=>{n.focusedItemId===f&&a(null,p)});const g=f=>b=>{var h;(h=f.onFocus)==null||h.call(f,b),!b.defaultMuiPrevented&&b.target===b.currentTarget&&a(b,p)};return{getRootProps:f=>({onFocus:g(f)}),publicAPI:{focusItem:m},instance:{isItemFocused:d,canItemBeTabbed:x,focusItem:m,removeFocusedItem:c}}};Fe.getInitialState=()=>({focusedItemId:null});Fe.params={onItemFocus:!0};const ne=(e,t)=>e.getAvailablePlugins().has(t),wn=({props:e})=>{const{instance:t}=oe(),{label:n,itemId:o}=e,[r,I]=C.useState(n),p=t.isItemBeingEdited(o);return C.useEffect(()=>{p||I(n)},[p,n]),{propsEnhancers:{labelInput:({externalEventHandlers:i,interactions:u})=>t.isItemEditable(o)?{value:r??"","data-element":"labelInput",onChange:c=>{var x;(x=i.onChange)==null||x.call(i,c),I(c.target.value)},onKeyDown:c=>{var g;if((g=i.onKeyDown)==null||g.call(i,c),c.defaultMuiPrevented)return;const x=c.target;c.key==="Enter"&&x.value?u.handleSaveItemLabel(c,x.value):c.key==="Escape"&&u.handleCancelItemLabelEditing(c)},onBlur:c=>{var x;(x=i.onBlur)==null||x.call(i,c),!c.defaultMuiPrevented&&c.target.value&&u.handleSaveItemLabel(c,c.target.value)},autoFocus:!0,type:"text"}:{}}}},K=({instance:e,state:t,setState:n,params:o})=>{const r=C.useRef(t.editedItemId),I=a=>r.current===a,p=a=>{n(m=>P._extends({},m,{editedItemId:a})),r.current=a},i=a=>a===t.editedItemId,u=!!o.isItemEditable,d=a=>{if(a==null||!u)return!1;const m=e.getItem(a);return m?typeof o.isItemEditable=="function"?o.isItemEditable(m):!!o.isItemEditable:!1},s=(a,m)=>{if(!m)throw new Error(["MUI X: The Tree View component requires all items to have a `label` property.","The label of an item cannot be empty.",a].join(`
9
- `));n(c=>{const x=c.items.itemMetaMap[a];return x.label!==m?P._extends({},c,{items:P._extends({},c.items,{itemMetaMap:P._extends({},c.items.itemMetaMap,{[a]:P._extends({},x,{label:m})})})}):c}),o.onItemLabelChange&&o.onItemLabelChange(a,m)};return{instance:{setEditedItemId:p,isItemBeingEdited:i,updateItemLabel:s,isItemEditable:d,isTreeViewEditable:u,isItemBeingEditedRef:I},publicAPI:{updateItemLabel:s}}};K.itemPlugin=wn;K.getDefaultizedParams=({params:e,experimentalFeatures:t})=>{const n=t==null?void 0:t.labelEditing;return process.env.NODE_ENV!=="production"&&e.isItemEditable&&!n&&Ce.warnOnce(["MUI X: The label editing feature requires the `labelEditing` experimental feature to be enabled.","You can do it by passing `experimentalFeatures={{ labelEditing: true}}` to the Rich Tree View Pro component.","Check the documentation for more details: https://mui.com/x/react-tree-view/rich-tree-view/editing/"]),P._extends({},e,{isItemEditable:n?e.isItemEditable??!1:!1})};K.getInitialState=()=>({editedItemId:null});K.params={onItemLabelChange:!0,isItemEditable:!0};function vn(e){return!!e&&e.length===1&&!!e.match(/\S/)}const ut=({instance:e,params:t,state:n})=>{const o=V.useRtl(),r=C.useRef({}),I=le.useEventCallback(s=>{r.current=s(r.current)});C.useEffect(()=>{if(e.areItemUpdatesPrevented())return;const s={},a=m=>{s[m.id]=m.label.substring(0,1).toLowerCase()};Object.values(n.items.itemMetaMap).forEach(a),r.current=s},[n.items.itemMetaMap,t.getItemId,e]);const p=(s,a)=>{const m=a.toLowerCase(),c=b=>{const h=Te(e,b);return h===null?fe(e):h};let x=null,g=c(s);const f={};for(;x==null&&!f[g];)r.current[g]===m?x=g:(f[g]=!0,g=c(g));return x},i=s=>!t.disableSelection&&!e.isItemDisabled(s),u=s=>!e.isItemDisabled(s)&&e.isItemExpandable(s);return{instance:{updateFirstCharMap:I,handleItemKeyDown:(s,a)=>{if(s.defaultMuiPrevented||s.altKey||me(s.target,s.currentTarget))return;const m=s.ctrlKey||s.metaKey,c=s.key;switch(!0){case(c===" "&&i(a)):{s.preventDefault(),t.multiSelect&&s.shiftKey?e.expandSelectionRange(s,a):e.selectItem({event:s,itemId:a,keepExistingSelection:t.multiSelect,shouldBeSelected:t.multiSelect?void 0:!0});break}case c==="Enter":{ne(e,K)&&e.isItemEditable(a)&&!e.isItemBeingEdited(a)?e.setEditedItemId(a):u(a)?(e.toggleItemExpansion(s,a),s.preventDefault()):i(a)&&(t.multiSelect?(s.preventDefault(),e.selectItem({event:s,itemId:a,keepExistingSelection:!0})):e.isItemSelected(a)||(e.selectItem({event:s,itemId:a}),s.preventDefault()));break}case c==="ArrowDown":{const x=Te(e,a);x&&(s.preventDefault(),e.focusItem(s,x),t.multiSelect&&s.shiftKey&&i(x)&&e.selectItemFromArrowNavigation(s,a,x));break}case c==="ArrowUp":{const x=lt(e,a);x&&(s.preventDefault(),e.focusItem(s,x),t.multiSelect&&s.shiftKey&&i(x)&&e.selectItemFromArrowNavigation(s,a,x));break}case(c==="ArrowRight"&&!o||c==="ArrowLeft"&&o):{if(m)return;if(e.isItemExpanded(a)){const x=Te(e,a);x&&(e.focusItem(s,x),s.preventDefault())}else u(a)&&(e.toggleItemExpansion(s,a),s.preventDefault());break}case(c==="ArrowLeft"&&!o||c==="ArrowRight"&&o):{if(m)return;if(u(a)&&e.isItemExpanded(a))e.toggleItemExpansion(s,a),s.preventDefault();else{const x=e.getItemMeta(a).parentId;x&&(e.focusItem(s,x),s.preventDefault())}break}case c==="Home":{i(a)&&t.multiSelect&&m&&s.shiftKey?e.selectRangeFromStartToItem(s,a):e.focusItem(s,fe(e)),s.preventDefault();break}case c==="End":{i(a)&&t.multiSelect&&m&&s.shiftKey?e.selectRangeFromItemToEnd(s,a):e.focusItem(s,at(e)),s.preventDefault();break}case c==="*":{e.expandAllSiblings(s,a),s.preventDefault();break}case(String.fromCharCode(s.keyCode)==="A"&&m&&t.multiSelect&&!t.disableSelection):{e.selectAllNavigableItems(s),s.preventDefault();break}case(!m&&!s.shiftKey&&vn(c)):{const x=p(a,c);x!=null&&(e.focusItem(s,x),s.preventDefault());break}}}}}};ut.params={};const pt=({slots:e,slotProps:t})=>({contextValue:{icons:{slots:{collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,endIcon:e.endIcon},slotProps:{collapseIcon:t.collapseIcon,expandIcon:t.expandIcon,endIcon:t.endIcon}}}});pt.params={};const Sn=[Ie,we,ve,Fe,ut,pt,K];function ft(e){const{instance:t,items:{onItemClick:n},selection:{multiSelect:o,checkboxSelection:r,disableSelection:I},expansion:{expansionTrigger:p}}=oe(),i=t.isItemExpandable(e),u=t.isItemExpanded(e),d=t.isItemFocused(e),s=t.isItemSelected(e),a=t.isItemDisabled(e),m=t!=null&&t.isItemBeingEdited?t==null?void 0:t.isItemBeingEdited(e):!1,c=t.isItemEditable?t.isItemEditable(e):!1,x=E=>{if(!a){d||t.focusItem(E,e);const S=o&&(E.shiftKey||E.ctrlKey||E.metaKey);i&&!(S&&t.isItemExpanded(e))&&t.toggleItemExpansion(E,e)}},g=E=>{a||(d||t.focusItem(E,e),o&&(E.shiftKey||E.ctrlKey||E.metaKey)?E.shiftKey?t.expandSelectionRange(E,e):t.selectItem({event:E,itemId:e,keepExistingSelection:!0}):t.selectItem({event:E,itemId:e,shouldBeSelected:!0}))},f=E=>{if(I||a)return;const S=E.nativeEvent.shiftKey;o&&S?t.expandSelectionRange(E,e):t.selectItem({event:E,itemId:e,keepExistingSelection:o,shouldBeSelected:E.target.checked})},b=E=>{(E.shiftKey||E.ctrlKey||E.metaKey||a)&&E.preventDefault()},h=()=>{ne(t,K)&&t.isItemEditable(e)&&(t.isItemBeingEdited(e)?t.setEditedItemId(null):t.setEditedItemId(e))};return{disabled:a,expanded:u,selected:s,focused:d,editable:c,editing:m,disableSelection:I,checkboxSelection:r,handleExpansion:x,handleSelection:g,handleCheckboxSelection:f,handleContentClick:n,preventSelection:b,expansionTrigger:p,toggleItemEditing:h,handleSaveItemLabel:(E,S)=>{ne(t,K)&&t.isItemBeingEditedRef(e)&&(t.updateItemLabel(e,S),h(),t.focusItem(E,e))},handleCancelItemLabelEditing:E=>{ne(t,K)&&t.isItemBeingEditedRef(e)&&(h(),t.focusItem(E,e))}}}const Rn=_.styled("div",{name:"MuiTreeItem2DragAndDropOverlay",slot:"Root",overridesResolver:(e,t)=>t.root,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="action"})(({theme:e})=>({position:"absolute",left:0,display:"flex",top:0,bottom:0,right:0,pointerEvents:"none",variants:[{props:{action:"make-child"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderRadius:e.shape.borderRadius,backgroundColor:e.vars?`rgba(${e.vars.palette.primary.darkChannel} / ${e.vars.palette.action.focusOpacity})`:l.alpha(e.palette.primary.dark,e.palette.action.focusOpacity)}},{props:{action:"reorder-above"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderTop:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"reorder-below"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"move-to-parent"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * calc(var(--TreeView-itemDepth) - 1))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}}]}));function Ne(e){return e.action==null?null:v.jsx(Rn,P._extends({},e))}process.env.NODE_ENV!=="production"&&(Ne.propTypes={action:l.PropTypes.oneOf(["make-child","move-to-parent","reorder-above","reorder-below"]),style:l.PropTypes.object});const mt=_.styled("input",{name:"MuiTreeItem2",slot:"LabelInput",overridesResolver:(e,t)=>t.labelInput})(({theme:e})=>P._extends({},e.typography.body1,{width:"100%",backgroundColor:e.palette.background.paper,borderRadius:e.shape.borderRadius,border:"none",padding:"0 2px",boxSizing:"border-box","&:focus":{outline:`1px solid ${e.palette.primary.main}`}})),kn=["classes","className","displayIcon","expansionIcon","icon","label","itemId","onClick","onMouseDown","dragAndDropOverlayProps","labelInputProps"],$e=C.forwardRef(function(t,n){const{classes:o,className:r,displayIcon:I,expansionIcon:p,icon:i,label:u,itemId:d,onClick:s,onMouseDown:a,dragAndDropOverlayProps:m,labelInputProps:c}=t,x=W._objectWithoutPropertiesLoose(t,kn),{disabled:g,expanded:f,selected:b,focused:h,editing:w,editable:k,disableSelection:E,checkboxSelection:S,handleExpansion:O,handleSelection:$,handleCheckboxSelection:U,handleContentClick:N,preventSelection:B,expansionTrigger:J,toggleItemEditing:q}=ft(d),z=i||p||I,G=C.useRef(null),Z=L=>{B(L),a&&a(L)},Q=L=>{var Y;N==null||N(L,d),!((Y=G.current)!=null&&Y.contains(L.target))&&(J==="content"&&O(L),S||$(L),s&&s(L))},H=L=>{L.defaultMuiPrevented||q()};return v.jsxs("div",P._extends({},x,{className:l.clsx(o.root,r,f&&o.expanded,b&&o.selected,h&&o.focused,g&&o.disabled,w&&o.editing,k&&o.editable),onClick:Q,onMouseDown:Z,ref:n,children:[v.jsx("div",{className:o.iconContainer,children:z}),S&&v.jsx(tt.Checkbox,{className:o.checkbox,checked:b,onChange:U,disabled:g||E,ref:G,tabIndex:-1}),w?v.jsx(mt,P._extends({},c,{className:o.labelInput})):v.jsx("div",P._extends({className:o.label},k&&{onDoubleClick:H},{children:u})),m&&v.jsx(Ne,P._extends({},m))]}))});process.env.NODE_ENV!=="production"&&($e.propTypes={classes:l.PropTypes.object.isRequired,className:l.PropTypes.string,displayIcon:l.PropTypes.node,dragAndDropOverlayProps:l.PropTypes.shape({action:l.PropTypes.oneOf(["make-child","move-to-parent","reorder-above","reorder-below"]),style:l.PropTypes.object}),expansionIcon:l.PropTypes.node,icon:l.PropTypes.node,itemId:l.PropTypes.string.isRequired,label:l.PropTypes.node,labelInputProps:l.PropTypes.shape({autoFocus:l.PropTypes.oneOf([!0]),"data-element":l.PropTypes.oneOf(["labelInput"]),onBlur:l.PropTypes.func,onChange:l.PropTypes.func,onKeyDown:l.PropTypes.func,type:l.PropTypes.oneOf(["text"]),value:l.PropTypes.string})});function It(e){return l.generateUtilityClass("MuiTreeItem",e)}const X=l.generateUtilityClasses("MuiTreeItem",["root","groupTransition","content","expanded","selected","focused","disabled","iconContainer","label","checkbox","labelInput","editable","editing","dragAndDropOverlay"]),gt=ae.createSvgIcon(v.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"TreeViewExpandIcon"),bt=ae.createSvgIcon(v.jsx("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"TreeViewCollapseIcon");function Se(e){const{children:t,itemId:n}=e,{wrapItem:o,instance:r}=oe();return o({children:t,itemId:n,instance:r})}Se.propTypes={children:l.PropTypes.node,itemId:l.PropTypes.string.isRequired};const Mn=["children","className","slots","slotProps","ContentComponent","ContentProps","itemId","id","label","onClick","onMouseDown","onFocus","onBlur","onKeyDown"],On=["ownerState"],Dn=["ownerState"],_n=["ownerState"],jn=je(),Ln=e=>{const{classes:t}=e,n={root:["root"],content:["content"],expanded:["expanded"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],labelInput:["labelInput"],editing:["editing"],editable:["editable"],groupTransition:["groupTransition"]};return _.composeClasses(n,It,t)},An=_.styled("li",{name:"MuiTreeItem",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),Vn=_.styled($e,{name:"MuiTreeItem",slot:"Content",overridesResolver:(e,t)=>[t.content,t.iconContainer&&{[`& .${X.iconContainer}`]:t.iconContainer},t.label&&{[`& .${X.label}`]:t.label}],shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${X.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"},[`&.${X.focused}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`&.${X.selected}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity)}},[`&.${X.focused}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}},[`& .${X.iconContainer}`]:{width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}},[`& .${X.label}`]:P._extends({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative"},e.typography.body1),[`& .${X.checkbox}`]:{padding:0},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}}]})),Fn=_.styled(et.Collapse,{name:"MuiTreeItem",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]}),xt=C.forwardRef(function(t,n){var ze,We,Ge,Xe;const{icons:o,runItemPlugins:r,items:{disabledItemsFocusable:I,indentationAtItemLevel:p},selection:{disableSelection:i},expansion:{expansionTrigger:u},treeId:d,instance:s}=oe(),a=C.useContext(Ee),m=jn({props:t,name:"MuiTreeItem"}),{children:c,className:x,slots:g,slotProps:f,ContentComponent:b=$e,ContentProps:h,itemId:w,id:k,label:E,onClick:S,onMouseDown:O,onBlur:$,onKeyDown:U}=m,N=W._objectWithoutPropertiesLoose(m,Mn),{expanded:B,focused:J,selected:q,disabled:z,editing:G,handleExpansion:Z,handleCancelItemLabelEditing:Q,handleSaveItemLabel:H}=ft(w);process.env.NODE_ENV!=="production"&&(m.ContentComponent&&Ce.warnOnce(["MUI X: The ContentComponent prop of the TreeItem component is deprecated and will be removed in the next major release.","You can use the new TreeItem2 component or the new useTreeItem2 hook to customize the rendering of the content.","For more detail, see https://mui.com/x/react-tree-view/tree-item-customization/."]),m.ContentProps&&Ce.warnOnce(["MUI X: The ContentProps prop of the TreeItem component is deprecated and will be removed in the next major release.","You can use the new TreeItem2 component or the new useTreeItem2 hook to customize the rendering of the content.","For more detail, see https://mui.com/x/react-tree-view/tree-item-customization/."]));const{contentRef:L,rootRef:Y,propsEnhancers:A}=r(m),ee=C.useRef(null),Re=C.useRef(null),Be=pe.useForkRef(n,Y,ee),Ke=pe.useForkRef(h==null?void 0:h.ref,L,Re),re={expandIcon:(g==null?void 0:g.expandIcon)??o.slots.expandIcon??gt,collapseIcon:(g==null?void 0:g.collapseIcon)??o.slots.collapseIcon??bt,endIcon:(g==null?void 0:g.endIcon)??o.slots.endIcon,icon:g==null?void 0:g.icon,groupTransition:g==null?void 0:g.groupTransition},ke=M=>Array.isArray(M)?M.length>0&&M.some(ke):!!M,ce=ke(c),ge=P._extends({},m,{expanded:B,focused:J,selected:q,disabled:z,indentationAtItemLevel:p}),T=Ln(ge),y=re.groupTransition??void 0,R=V.useSlotProps({elementType:y,ownerState:{},externalSlotProps:f==null?void 0:f.groupTransition,additionalProps:P._extends({unmountOnExit:!0,in:B,component:"ul",role:"group"},p?{indentationAtItemLevel:!0}:{}),className:T.groupTransition}),D=M=>{u==="iconContainer"&&Z(M)},F=B?re.collapseIcon:re.expandIcon,te=V.useSlotProps({elementType:F,ownerState:{},externalSlotProps:M=>B?P._extends({},j.resolveComponentProps(o.slotProps.collapseIcon,M),j.resolveComponentProps(f==null?void 0:f.collapseIcon,M)):P._extends({},j.resolveComponentProps(o.slotProps.expandIcon,M),j.resolveComponentProps(f==null?void 0:f.expandIcon,M)),additionalProps:{onClick:D}}),be=W._objectWithoutPropertiesLoose(te,On),xe=ce&&F?v.jsx(F,P._extends({},be)):null,Me=ce?void 0:re.endIcon,Ot=V.useSlotProps({elementType:Me,ownerState:{},externalSlotProps:M=>ce?{}:P._extends({},j.resolveComponentProps(o.slotProps.endIcon,M),j.resolveComponentProps(f==null?void 0:f.endIcon,M))}),Dt=W._objectWithoutPropertiesLoose(Ot,Dn),_t=Me?v.jsx(Me,P._extends({},Dt)):null,Oe=re.icon,jt=V.useSlotProps({elementType:Oe,ownerState:{},externalSlotProps:f==null?void 0:f.icon}),Lt=W._objectWithoutPropertiesLoose(jt,_n),At=Oe?v.jsx(Oe,P._extends({},Lt)):null;let he;q?he=!0:i||z?he=void 0:he=!1;function Vt(M){!J&&(!z||I)&&M.currentTarget===M.target&&s.focusItem(M,w)}function Ft(M){var se,de,Je,Qe;$==null||$(M),!(G||M.relatedTarget&&me(M.relatedTarget,ee.current)&&(M.target&&((de=(se=M.target)==null?void 0:se.dataset)==null?void 0:de.element)==="labelInput"&&me(M.target,ee.current)||((Qe=(Je=M.relatedTarget)==null?void 0:Je.dataset)==null?void 0:Qe.element)==="labelInput"))&&s.removeFocusedItem()}const Nt=M=>{var se,de;U==null||U(M),((de=(se=M.target)==null?void 0:se.dataset)==null?void 0:de.element)!=="labelInput"&&s.handleItemKeyDown(M,w)},$t=Le({itemId:w,treeId:d,id:k}),Bt=s.canItemBeTabbed(w)?0:-1,ye={rootRefObject:ee,contentRefObject:Re,interactions:{handleSaveItemLabel:H,handleCancelItemLabelEditing:Q}},Kt=((ze=A.root)==null?void 0:ze.call(A,P._extends({},ye,{externalEventHandlers:j.extractEventHandlers(N)})))??{},qt=((We=A.content)==null?void 0:We.call(A,P._extends({},ye,{externalEventHandlers:j.extractEventHandlers(h)})))??{},qe=((Ge=A.dragAndDropOverlay)==null?void 0:Ge.call(A,P._extends({},ye,{externalEventHandlers:{}})))??{},Ue=((Xe=A.labelInput)==null?void 0:Xe.call(A,P._extends({},ye,{externalEventHandlers:{}})))??{};return v.jsx(Se,{itemId:w,children:v.jsxs(An,P._extends({className:l.clsx(T.root,x),role:"treeitem","aria-expanded":ce?B:void 0,"aria-selected":he,"aria-disabled":z||void 0,id:$t,tabIndex:Bt},N,{ownerState:ge,onFocus:Vt,onBlur:Ft,onKeyDown:Nt,ref:Be,style:p?P._extends({},N.style,{"--TreeView-itemDepth":typeof a=="function"?a(w):a}):N.style},Kt,{children:[v.jsx(Vn,P._extends({as:b,classes:{root:T.content,expanded:T.expanded,selected:T.selected,focused:T.focused,disabled:T.disabled,editable:T.editable,editing:T.editing,iconContainer:T.iconContainer,label:T.label,labelInput:T.labelInput,checkbox:T.checkbox},label:E,itemId:w,onClick:S,onMouseDown:O,icon:At,expansionIcon:xe,displayIcon:_t,ownerState:ge},h,qt,qe.action==null?{}:{dragAndDropOverlayProps:qe},Ue.value==null?{}:{labelInputProps:Ue},{ref:Ke})),c&&v.jsx(Fn,P._extends({as:y},R,{children:c}))]}))})});process.env.NODE_ENV!=="production"&&(xt.propTypes={children:l.PropTypes.node,classes:l.PropTypes.object,className:l.PropTypes.string,ContentComponent:Gt.elementTypeAcceptingRef,ContentProps:l.PropTypes.object,disabled:l.PropTypes.bool,itemId:l.PropTypes.string.isRequired,label:l.PropTypes.node,onFocus:nt.unsupportedProp,onKeyDown:l.PropTypes.func,slotProps:l.PropTypes.object,slots:l.PropTypes.object,sx:l.PropTypes.oneOfType([l.PropTypes.arrayOf(l.PropTypes.oneOfType([l.PropTypes.func,l.PropTypes.object,l.PropTypes.bool])),l.PropTypes.func,l.PropTypes.object])});const Nn=["ownerState"];function $n({slots:e,slotProps:t,label:n,id:o,itemId:r,itemsToRender:I}){const p=(e==null?void 0:e.item)??xt,i=V.useSlotProps({elementType:p,externalSlotProps:t==null?void 0:t.item,additionalProps:{itemId:r,id:o,label:n},ownerState:{itemId:r,label:n}}),u=W._objectWithoutPropertiesLoose(i,Nn),d=C.useMemo(()=>I?v.jsx(ht,{itemsToRender:I,slots:e,slotProps:t}):null,[I,e,t]);return v.jsx(p,P._extends({},u,{children:d}))}function ht(e){const{itemsToRender:t,slots:n,slotProps:o}=e;return v.jsx(C.Fragment,{children:t.map(r=>v.jsx($n,{slots:n,slotProps:o,label:r.label,id:r.id,itemId:r.itemId,itemsToRender:r.children},r.itemId))})}const Bn=je(),Kn=e=>{const{classes:t}=e,n={root:["root"]};return _.composeClasses(n,Zt,t)},qn=_.styled("ul",{name:"MuiRichTreeView",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),yt=C.forwardRef(function(t,n){const o=Bn({props:t,name:"MuiRichTreeView"});process.env.NODE_ENV!=="production"&&o.children!=null&&Ce.warnOnce(["MUI X: The Rich Tree View component does not support JSX children.","If you want to add items, you need to use the `items` prop.","Check the documentation for more details: https://mui.com/x/react-tree-view/rich-tree-view/items/."]);const{getRootProps:r,contextValue:I,instance:p}=cn({plugins:Sn,rootRef:n,props:o}),{slots:i,slotProps:u}=o,d=Kn(o),s=(i==null?void 0:i.root)??qn,a=V.useSlotProps({elementType:s,externalSlotProps:u==null?void 0:u.root,className:d.root,getSlotProps:r,ownerState:o});return v.jsx(dn,{value:I,children:v.jsx(s,P._extends({},a,{children:v.jsx(ht,{slots:i,slotProps:u,itemsToRender:p.getItemsToRender()})}))})});process.env.NODE_ENV!=="production"&&(yt.propTypes={apiRef:l.PropTypes.shape({current:l.PropTypes.shape({focusItem:l.PropTypes.func.isRequired,getItem:l.PropTypes.func.isRequired,getItemDOMElement:l.PropTypes.func.isRequired,getItemOrderedChildrenIds:l.PropTypes.func.isRequired,getItemTree:l.PropTypes.func.isRequired,selectItem:l.PropTypes.func.isRequired,setItemExpansion:l.PropTypes.func.isRequired,updateItemLabel:l.PropTypes.func.isRequired})}),checkboxSelection:l.PropTypes.bool,classes:l.PropTypes.object,className:l.PropTypes.string,defaultExpandedItems:l.PropTypes.arrayOf(l.PropTypes.string),defaultSelectedItems:l.PropTypes.any,disabledItemsFocusable:l.PropTypes.bool,disableSelection:l.PropTypes.bool,expandedItems:l.PropTypes.arrayOf(l.PropTypes.string),expansionTrigger:l.PropTypes.oneOf(["content","iconContainer"]),experimentalFeatures:l.PropTypes.shape({indentationAtItemLevel:l.PropTypes.bool,labelEditing:l.PropTypes.bool}),getItemId:l.PropTypes.func,getItemLabel:l.PropTypes.func,id:l.PropTypes.string,isItemDisabled:l.PropTypes.func,isItemEditable:l.PropTypes.oneOfType([l.PropTypes.func,l.PropTypes.bool]),itemChildrenIndentation:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string]),items:l.PropTypes.array.isRequired,multiSelect:l.PropTypes.bool,onExpandedItemsChange:l.PropTypes.func,onItemClick:l.PropTypes.func,onItemExpansionToggle:l.PropTypes.func,onItemFocus:l.PropTypes.func,onItemLabelChange:l.PropTypes.func,onItemSelectionToggle:l.PropTypes.func,onSelectedItemsChange:l.PropTypes.func,selectedItems:l.PropTypes.any,slotProps:l.PropTypes.object,slots:l.PropTypes.object,sx:l.PropTypes.oneOfType([l.PropTypes.arrayOf(l.PropTypes.oneOfType([l.PropTypes.func,l.PropTypes.object,l.PropTypes.bool])),l.PropTypes.func,l.PropTypes.object])});const Tt=e=>Array.isArray(e)?e.length>0&&e.some(Tt):!!e,Un=({itemId:e,children:t})=>{const{instance:n,selection:{multiSelect:o},publicAPI:r}=oe(),I={expandable:Tt(t),expanded:n.isItemExpanded(e),focused:n.isItemFocused(e),selected:n.isItemSelected(e),disabled:n.isItemDisabled(e),editing:n!=null&&n.isItemBeingEdited?n==null?void 0:n.isItemBeingEdited(e):!1,editable:n.isItemEditable?n.isItemEditable(e):!1},p=c=>{if(I.disabled)return;I.focused||n.focusItem(c,e);const x=o&&(c.shiftKey||c.ctrlKey||c.metaKey);I.expandable&&!(x&&n.isItemExpanded(e))&&n.toggleItemExpansion(c,e)},i=c=>{if(I.disabled)return;I.focused||n.focusItem(c,e),o&&(c.shiftKey||c.ctrlKey||c.metaKey)?c.shiftKey?n.expandSelectionRange(c,e):n.selectItem({event:c,itemId:e,keepExistingSelection:!0}):n.selectItem({event:c,itemId:e,shouldBeSelected:!0})},u=c=>{const x=c.nativeEvent.shiftKey;o&&x?n.expandSelectionRange(c,e):n.selectItem({event:c,itemId:e,keepExistingSelection:o,shouldBeSelected:c.target.checked})},d=()=>{ne(n,K)&&n.isItemEditable(e)&&(n.isItemBeingEdited(e)?n.setEditedItemId(null):n.setEditedItemId(e))};return{interactions:{handleExpansion:p,handleSelection:i,handleCheckboxSelection:u,toggleItemEditing:d,handleSaveItemLabel:(c,x)=>{ne(n,K)&&n.isItemBeingEditedRef(e)&&(n.updateItemLabel(e,x),d(),n.focusItem(c,e))},handleCancelItemLabelEditing:c=>{ne(n,K)&&n.isItemBeingEditedRef(e)&&(d(),n.focusItem(c,e))}},status:I,publicAPI:r}},zn=e=>{const{runItemPlugins:t,items:{onItemClick:n,disabledItemsFocusable:o,indentationAtItemLevel:r},selection:{disableSelection:I,checkboxSelection:p},expansion:{expansionTrigger:i},treeId:u,instance:d,publicAPI:s}=oe(),a=C.useContext(Ee),{id:m,itemId:c,label:x,children:g,rootRef:f}=e,{rootRef:b,contentRef:h,propsEnhancers:w}=t(e),{interactions:k,status:E}=Un({itemId:c,children:g}),S=C.useRef(null),O=C.useRef(null),$=pe.useForkRef(f,b,S),U=pe.useForkRef(h,O),N=C.useRef(null),B=Le({itemId:c,treeId:u,id:m}),J=d.canItemBeTabbed(c)?0:-1,q={rootRefObject:S,contentRefObject:O,interactions:k},z=T=>y=>{var D;if((D=T.onFocus)==null||D.call(T,y),y.defaultMuiPrevented)return;const R=!E.disabled||o;!E.focused&&R&&y.currentTarget===y.target&&d.focusItem(y,c)},G=T=>y=>{var D,F,te,be,xe;if((D=T.onBlur)==null||D.call(T,y),y.defaultMuiPrevented)return;const R=d.getItemDOMElement(c);E.editing||y.relatedTarget&&me(y.relatedTarget,R)&&(y.target&&((te=(F=y.target)==null?void 0:F.dataset)==null?void 0:te.element)==="labelInput"&&me(y.target,R)||((xe=(be=y.relatedTarget)==null?void 0:be.dataset)==null?void 0:xe.element)==="labelInput")||d.removeFocusedItem()},Z=T=>y=>{var R,D,F;(R=T.onKeyDown)==null||R.call(T,y),!(y.defaultMuiPrevented||((F=(D=y.target)==null?void 0:D.dataset)==null?void 0:F.element)==="labelInput")&&d.handleItemKeyDown(y,c)},Q=T=>y=>{var R;(R=T.onDoubleClick)==null||R.call(T,y),!y.defaultMuiPrevented&&k.toggleItemEditing()},H=T=>y=>{var R,D;(R=T.onClick)==null||R.call(T,y),n==null||n(y,c),!(y.defaultMuiPrevented||(D=N.current)!=null&&D.contains(y.target))&&(i==="content"&&k.handleExpansion(y),p||k.handleSelection(y))},L=T=>y=>{var R;(R=T.onMouseDown)==null||R.call(T,y),!y.defaultMuiPrevented&&(y.shiftKey||y.ctrlKey||y.metaKey||E.disabled)&&y.preventDefault()},Y=T=>y=>{var R;(R=T.onChange)==null||R.call(T,y),!y.defaultMuiPrevented&&(I||E.disabled||k.handleCheckboxSelection(y))},A=T=>y=>{var R;(R=T.onClick)==null||R.call(T,y),!y.defaultMuiPrevented&&i==="iconContainer"&&k.handleExpansion(y)};return{getRootProps:(T={})=>{var te;const y=P._extends({},j.extractEventHandlers(e),j.extractEventHandlers(T));let R;E.selected?R=!0:I||E.disabled?R=void 0:R=!1;const D=P._extends({},y,{ref:$,role:"treeitem",tabIndex:J,id:B,"aria-expanded":E.expandable?E.expanded:void 0,"aria-selected":R,"aria-disabled":E.disabled||void 0},T,{onFocus:z(y),onBlur:G(y),onKeyDown:Z(y)});r&&(D.style={"--TreeView-itemDepth":typeof a=="function"?a(c):a});const F=((te=w.root)==null?void 0:te.call(w,P._extends({},q,{externalEventHandlers:y})))??{};return P._extends({},D,F)},getContentProps:(T={})=>{var F;const y=j.extractEventHandlers(T),R=P._extends({},y,T,{ref:U,onClick:H(y),onMouseDown:L(y),status:E});r&&(R.indentationAtItemLevel=!0);const D=((F=w.content)==null?void 0:F.call(w,P._extends({},q,{externalEventHandlers:y})))??{};return P._extends({},R,D)},getGroupTransitionProps:(T={})=>{const y=j.extractEventHandlers(T),R=P._extends({},y,{unmountOnExit:!0,component:"ul",role:"group",in:E.expanded,children:g},T);return r&&(R.indentationAtItemLevel=!0),R},getIconContainerProps:(T={})=>{const y=j.extractEventHandlers(T);return P._extends({},y,T,{onClick:A(y)})},getCheckboxProps:(T={})=>{const y=j.extractEventHandlers(T);return P._extends({},y,{visible:p,ref:N,checked:E.selected,disabled:I||E.disabled,tabIndex:-1},T,{onChange:Y(y)})},getLabelProps:(T={})=>{const y=P._extends({},j.extractEventHandlers(T)),R=P._extends({},y,{children:x},T,{onDoubleClick:Q(y)});return d.isTreeViewEditable&&(R.editable=E.editable),R},getLabelInputProps:(T={})=>{var D;const y=j.extractEventHandlers(T),R=((D=w.labelInput)==null?void 0:D.call(w,{rootRefObject:S,contentRefObject:O,externalEventHandlers:y,interactions:k}))??{};return P._extends({},T,R)},getDragAndDropOverlayProps:(T={})=>{var D;const y=j.extractEventHandlers(T),R=((D=w.dragAndDropOverlay)==null?void 0:D.call(w,P._extends({},q,{externalEventHandlers:y})))??{};return P._extends({},T,R)},rootRef:$,status:E,publicAPI:s}},Pt=zn;function Ct(e){const{slots:t,slotProps:n,status:o}=e,r=oe(),I=P._extends({},r.icons.slots,{expandIcon:r.icons.slots.expandIcon??gt,collapseIcon:r.icons.slots.collapseIcon??bt}),p=r.icons.slotProps;let i;t!=null&&t.icon?i="icon":o.expandable?o.expanded?i="collapseIcon":i="expandIcon":i="endIcon";const u=(t==null?void 0:t[i])??I[i],d=V.useSlotProps({elementType:u,externalSlotProps:s=>P._extends({},j.resolveComponentProps(p[i],s),j.resolveComponentProps(n==null?void 0:n[i],s)),ownerState:{}});return u?v.jsx(u,P._extends({},d)):null}process.env.NODE_ENV!=="production"&&(Ct.propTypes={slotProps:l.PropTypes.object,slots:l.PropTypes.object,status:l.PropTypes.shape({disabled:l.PropTypes.bool.isRequired,editable:l.PropTypes.bool.isRequired,editing:l.PropTypes.bool.isRequired,expandable:l.PropTypes.bool.isRequired,expanded:l.PropTypes.bool.isRequired,focused:l.PropTypes.bool.isRequired,selected:l.PropTypes.bool.isRequired}).isRequired});const Wn=["visible"],Gn=["id","itemId","label","disabled","children","slots","slotProps"],Xn=je(),Et=_.styled("li",{name:"MuiTreeItem2",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),wt=_.styled("div",{name:"MuiTreeItem2",slot:"Content",overridesResolver:(e,t)=>t.content,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="status"&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}},{props:({status:t})=>t.disabled,style:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"}},{props:({status:t})=>t.focused,style:{backgroundColor:(e.vars||e).palette.action.focus}},{props:({status:t})=>t.selected,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity)}}}},{props:({status:t})=>t.selected&&t.focused,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}}]})),vt=_.styled("div",{name:"MuiTreeItem2",slot:"Label",overridesResolver:(e,t)=>t.label,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="editable"})(({theme:e})=>P._extends({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative",overflow:"hidden"},e.typography.body1,{variants:[{props:({editable:t})=>t,style:{paddingLeft:"2px"}}]})),St=_.styled("div",{name:"MuiTreeItem2",slot:"IconContainer",overridesResolver:(e,t)=>t.iconContainer})({width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}}),Rt=_.styled(et.Collapse,{name:"MuiTreeItem2",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]}),Jn=_.styled(C.forwardRef((e,t)=>{const{visible:n}=e,o=W._objectWithoutPropertiesLoose(e,Wn);return n?v.jsx(tt.Checkbox,P._extends({},o,{ref:t})):null}),{name:"MuiTreeItem2",slot:"Checkbox",overridesResolver:(e,t)=>t.checkbox})({padding:0}),Qn=e=>{const{classes:t}=e,n={root:["root"],content:["content"],expanded:["expanded"],editing:["editing"],editable:["editable"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],groupTransition:["groupTransition"],labelInput:["labelInput"],dragAndDropOverlay:["dragAndDropOverlay"]};return _.composeClasses(n,It,t)},Yn=C.forwardRef(function(t,n){const o=Xn({props:t,name:"MuiTreeItem2"}),{id:r,itemId:I,label:p,disabled:i,children:u,slots:d={},slotProps:s={}}=o,a=W._objectWithoutPropertiesLoose(o,Gn),{getRootProps:m,getContentProps:c,getIconContainerProps:x,getCheckboxProps:g,getLabelProps:f,getGroupTransitionProps:b,getLabelInputProps:h,getDragAndDropOverlayProps:w,status:k}=Pt({id:r,itemId:I,children:u,label:p,disabled:i}),E=P._extends({},o,k),S=Qn(E),O=d.root??Et,$=V.useSlotProps({elementType:O,getSlotProps:m,externalForwardedProps:a,externalSlotProps:s.root,additionalProps:{ref:n},ownerState:{},className:S.root}),U=d.content??wt,N=V.useSlotProps({elementType:U,getSlotProps:c,externalSlotProps:s.content,ownerState:{},className:l.clsx(S.content,k.expanded&&S.expanded,k.selected&&S.selected,k.focused&&S.focused,k.disabled&&S.disabled,k.editing&&S.editing,k.editable&&S.editable)}),B=d.iconContainer??St,J=V.useSlotProps({elementType:B,getSlotProps:x,externalSlotProps:s.iconContainer,ownerState:{},className:S.iconContainer}),q=d.label??vt,z=V.useSlotProps({elementType:q,getSlotProps:f,externalSlotProps:s.label,ownerState:{},className:S.label}),G=d.checkbox??Jn,Z=V.useSlotProps({elementType:G,getSlotProps:g,externalSlotProps:s.checkbox,ownerState:{},className:S.checkbox}),Q=d.groupTransition??void 0,H=V.useSlotProps({elementType:Q,getSlotProps:b,externalSlotProps:s.groupTransition,ownerState:{},className:S.groupTransition}),L=d.labelInput??mt,Y=V.useSlotProps({elementType:L,getSlotProps:h,externalSlotProps:s.labelInput,ownerState:{},className:S.labelInput}),A=d.dragAndDropOverlay??Ne,ee=V.useSlotProps({elementType:A,getSlotProps:w,externalSlotProps:s.dragAndDropOverlay,ownerState:{},className:S.dragAndDropOverlay});return v.jsx(Se,{itemId:I,children:v.jsxs(O,P._extends({},$,{children:[v.jsxs(U,P._extends({},N,{children:[v.jsx(B,P._extends({},J,{children:v.jsx(Ct,{status:k,slots:d,slotProps:s})})),v.jsx(G,P._extends({},Z)),k.editing?v.jsx(L,P._extends({},Y)):v.jsx(q,P._extends({},z)),v.jsx(A,P._extends({},ee))]})),u&&v.jsx(Rt,P._extends({as:Q},H))]}))})});process.env.NODE_ENV!=="production"&&(Yn.propTypes={children:l.PropTypes.node,classes:l.PropTypes.object,className:l.PropTypes.string,disabled:l.PropTypes.bool,id:l.PropTypes.string,itemId:l.PropTypes.string.isRequired,label:l.PropTypes.node,onBlur:l.PropTypes.func,onFocus:nt.unsupportedProp,onKeyDown:l.PropTypes.func,slotProps:l.PropTypes.object,slots:l.PropTypes.object});const Zn=()=>C.useRef(void 0);var kt=(e=>(e.FOLDER="FOLDER",e.SHARE="SHARE",e.TRASH="TRASH",e.CUSTOM="CUSTOM",e))(kt||{});const Hn=(e,t)=>{if(!e)return De;if(typeof e!="string")return e;switch(e){case"SHARE":return Yt;case"TRASH":return Ut.DeleteIcon;case"CUSTOM":return t||De;case"FOLDER":default:return De}},eo=ue.forwardRef(function(t,n){const{id:o,itemId:r,label:I,disabled:p,children:i,itemData:u,iconColor:d="primary"}=t,s=Hn(u==null?void 0:u.iconType,u==null?void 0:u.customIcon),{getRootProps:a,getContentProps:m,getLabelProps:c,getGroupTransitionProps:x,getIconContainerProps:g,status:f}=Pt({id:o,itemId:r,label:I,disabled:p,children:i,rootRef:n});return v.jsx(Se,{itemId:r,children:v.jsxs(Et,{...a(),children:[v.jsxs(wt,{...m(),style:{display:"flex",alignItems:"center",width:"100%"},children:[v.jsx(St,{...g(),children:v.jsx(s,{fontSize:"small",color:d})}),v.jsx(vt,{...c()}),v.jsx(He.Box,{sx:{display:"flex",marginLeft:"auto"},children:f.expandable&&(f.expanded?v.jsx(Jt,{fontSize:"small"}):v.jsx(Qt,{fontSize:"small"}))})]}),i&&v.jsx(Rt,{...x(),style:f.expanded?{borderLeft:"1px solid #bdbdbd",paddingLeft:"12px",marginLeft:"15px",marginTop:"4px",marginBottom:"4px"}:void 0})]})})}),to=e=>{const t={},n=o=>{var r;t[o.id]=o,(r=o.children)!=null&&r.length&&o.children.forEach(n)};return e.forEach(n),t},Mt=(e,t,n=[])=>{var o;for(const r of t){if(r.id===e)return n;if((o=r.children)!=null&&o.length){const I=Mt(e,r.children,[...n,r.id]);if(I.length>0)return I}}return[]},no=({items:e,onItemSelect:t,iconColor:n="primary",expandedItemId:o})=>{const r=ue.useMemo(()=>to(e),[e]),I=Zn(),p=ue.useMemo(()=>o?r[o]?[...Mt(o,e),o]:[]:[],[o,r,e]);return ue.useEffect(()=>{I.current&&p.length>0&&p.forEach(i=>{I.current.setItemExpansion(i,!0)})},[I,p]),console.log(p),v.jsx(He.Box,{sx:{minHeight:200,minWidth:200},children:v.jsx(yt,{apiRef:I,items:e,itemChildrenIndentation:"50px",defaultExpandedItems:p,onSelect:(i,u)=>{t&&typeof u=="string"&&t(i,u)},slots:{item:i=>{const u=i.itemId?r[i.itemId]:void 0;return v.jsx(eo,{...i,itemData:u,iconColor:n})}}})})};exports.ICON_TYPE=kt;exports.default=no;
8
+ `));s[p]={id:p,label:c,parentId:i,idAttribute:void 0,expandable:!!((g=d.children)!=null&&g.length),disabled:t?t(d):!1,depth:r},I[p]=d;const x=i??le;f[x]||(f[x]=[]),f[x].push(p),(m=d.children)==null||m.forEach(b=>a(b,r+1,p))};e.forEach(d=>a(d,0,null));const u={};return Object.keys(f).forEach(d=>{u[d]=pn(f[d])}),{itemMetaMap:s,itemMap:I,itemOrderedChildrenIds:f,itemChildrenIndexes:u}},Ie=({instance:e,params:t,state:n,setState:o,experimentalFeatures:s})=>{const I=C.useCallback(b=>n.items.itemMetaMap[b],[n.items.itemMetaMap]),f=C.useCallback(b=>n.items.itemMap[b],[n.items.itemMap]),a=C.useCallback(()=>{const b=h=>{const E=n.items.itemMap[h],k=W._objectWithoutPropertiesLoose(E,fn),w=n.items.itemOrderedChildrenIds[h];return w&&(k.children=w.map(b)),k};return n.items.itemOrderedChildrenIds[le].map(b)},[n.items.itemMap,n.items.itemOrderedChildrenIds]),u=C.useCallback(b=>{if(b==null)return!1;let h=e.getItemMeta(b);if(!h)return!1;if(h.disabled)return!0;for(;h.parentId!=null;)if(h=e.getItemMeta(h.parentId),h.disabled)return!0;return!1},[e]),d=C.useCallback(b=>{const h=e.getItemMeta(b).parentId??le;return n.items.itemChildrenIndexes[h][b]},[e,n.items.itemChildrenIndexes]),r=C.useCallback(b=>n.items.itemOrderedChildrenIds[b??le]??[],[n.items.itemOrderedChildrenIds]),i=b=>{const h=e.getItemMeta(b);return h==null?null:document.getElementById(Le({treeId:n.id.treeId,itemId:b,id:h.idAttribute}))},p=b=>t.disabledItemsFocusable?!0:!e.isItemDisabled(b),c=C.useRef(!1),x=C.useCallback(()=>{c.current=!0},[]),g=C.useCallback(()=>c.current,[]);return C.useEffect(()=>{e.areItemUpdatesPrevented()||o(b=>{const h=st({items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel});return Object.values(b.items.itemMetaMap).forEach(E=>{h.itemMetaMap[E.id]||un(e,"removeItem",{id:E.id})}),P._extends({},b,{items:h})})},[e,o,t.items,t.isItemDisabled,t.getItemId,t.getItemLabel]),{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof t.itemChildrenIndentation=="number"?`${t.itemChildrenIndentation}px`:t.itemChildrenIndentation}}),publicAPI:{getItem:f,getItemDOMElement:i,getItemTree:a,getItemOrderedChildrenIds:r},instance:{getItemMeta:I,getItem:f,getItemTree:a,getItemsToRender:()=>{const b=h=>{var k;const E=n.items.itemMetaMap[h];return{label:E.label,itemId:E.id,id:E.idAttribute,children:(k=n.items.itemOrderedChildrenIds[h])==null?void 0:k.map(b)}};return n.items.itemOrderedChildrenIds[le].map(b)},getItemIndex:d,getItemDOMElement:i,getItemOrderedChildrenIds:r,isItemDisabled:u,isItemNavigable:p,preventItemUpdates:x,areItemUpdatesPrevented:g},contextValue:{items:{onItemClick:t.onItemClick,disabledItemsFocusable:t.disabledItemsFocusable,indentationAtItemLevel:s.indentationAtItemLevel??!1}}}};Ie.getInitialState=e=>({items:st({items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel})});Ie.getDefaultizedParams=({params:e})=>P._extends({},e,{disabledItemsFocusable:e.disabledItemsFocusable??!1,itemChildrenIndentation:e.itemChildrenIndentation??"12px"});Ie.wrapRoot=({children:e,instance:t})=>v.jsx(Ee.Provider,{value:n=>{var o;return((o=t.getItemMeta(n))==null?void 0:o.depth)??0},children:e});Ie.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};const we=({instance:e,params:t,models:n})=>{const o=C.useMemo(()=>{const i=new Map;return n.expandedItems.value.forEach(p=>{i.set(p,!0)}),i},[n.expandedItems.value]),s=(i,p)=>{var c;(c=t.onExpandedItemsChange)==null||c.call(t,i,p),n.expandedItems.setControlledValue(p)},I=C.useCallback(i=>o.has(i),[o]),f=C.useCallback(i=>{var p;return!!((p=e.getItemMeta(i))!=null&&p.expandable)},[e]),a=ae.useEventCallback((i,p)=>{const c=e.isItemExpanded(p);e.setItemExpansion(i,p,!c)}),u=ae.useEventCallback((i,p,c)=>{if(e.isItemExpanded(p)===c)return;let g;c?g=[p].concat(n.expandedItems.value):g=n.expandedItems.value.filter(m=>m!==p),t.onItemExpansionToggle&&t.onItemExpansionToggle(i,p,c),s(i,g)}),d=(i,p)=>{const c=e.getItemMeta(p),g=e.getItemOrderedChildrenIds(c.parentId).filter(b=>e.isItemExpandable(b)&&!e.isItemExpanded(b)),m=n.expandedItems.value.concat(g);g.length>0&&(t.onItemExpansionToggle&&g.forEach(b=>{t.onItemExpansionToggle(i,b,!0)}),s(i,m))},r=C.useMemo(()=>t.expansionTrigger?t.expansionTrigger:e.isTreeViewEditable?"iconContainer":"content",[t.expansionTrigger,e.isTreeViewEditable]);return{publicAPI:{setItemExpansion:u},instance:{isItemExpanded:I,isItemExpandable:f,setItemExpansion:u,toggleItemExpansion:a,expandAllSiblings:d},contextValue:{expansion:{expansionTrigger:r}}}};we.models={expandedItems:{getDefaultValue:e=>e.defaultExpandedItems}};const mn=[];we.getDefaultizedParams=({params:e})=>P._extends({},e,{defaultExpandedItems:e.defaultExpandedItems??mn});we.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const it=(e,t)=>{let n=t.length-1;for(;n>=0&&!e.isItemNavigable(t[n]);)n-=1;if(n!==-1)return t[n]},lt=(e,t)=>{const n=e.getItemMeta(t),o=e.getItemOrderedChildrenIds(n.parentId),s=e.getItemIndex(t);if(s===0)return n.parentId;let I=s-1;for(;!e.isItemNavigable(o[I])&&I>=0;)I-=1;if(I===-1)return n.parentId==null?null:lt(e,n.parentId);let f=o[I],a=it(e,e.getItemOrderedChildrenIds(f));for(;e.isItemExpanded(f)&&a!=null;)f=a,a=e.getItemOrderedChildrenIds(f).find(e.isItemNavigable);return f},Te=(e,t)=>{if(e.isItemExpanded(t)){const o=e.getItemOrderedChildrenIds(t).find(e.isItemNavigable);if(o!=null)return o}let n=e.getItemMeta(t);for(;n!=null;){const o=e.getItemOrderedChildrenIds(n.parentId),s=e.getItemIndex(n.id);if(s<o.length-1){let I=s+1;for(;!e.isItemNavigable(o[I])&&I<o.length-1;)I+=1;if(e.isItemNavigable(o[I]))return o[I]}n=e.getItemMeta(n.parentId)}return null},at=e=>{let t=null;for(;t==null||e.isItemExpanded(t);){const n=e.getItemOrderedChildrenIds(t),o=it(e,n);if(o==null)return t;t=o}return t},fe=e=>e.getItemOrderedChildrenIds(null).find(e.isItemNavigable),ct=(e,t,n)=>{if(t===n)return[t,n];const o=e.getItemMeta(t),s=e.getItemMeta(n);if(o.parentId===s.id||s.parentId===o.id)return s.parentId===o.id?[o.id,s.id]:[s.id,o.id];const I=[o.id],f=[s.id];let a=o.parentId,u=s.parentId,d=f.indexOf(a)!==-1,r=I.indexOf(u)!==-1,i=!0,p=!0;for(;!r&&!d;)i&&(I.push(a),d=f.indexOf(a)!==-1,i=a!==null,!d&&i&&(a=e.getItemMeta(a).parentId)),p&&!d&&(f.push(u),r=I.indexOf(u)!==-1,p=u!==null,!r&&p&&(u=e.getItemMeta(u).parentId));const c=d?a:u,x=e.getItemOrderedChildrenIds(c),g=I[I.indexOf(c)-1],m=f[f.indexOf(c)-1];return x.indexOf(g)<x.indexOf(m)?[t,n]:[n,t]},In=(e,t,n)=>{const o=u=>{if(e.isItemExpandable(u)&&e.isItemExpanded(u))return e.getItemOrderedChildrenIds(u)[0];let d=e.getItemMeta(u);for(;d!=null;){const r=e.getItemOrderedChildrenIds(d.parentId),i=e.getItemIndex(d.id);if(i<r.length-1)return r[i+1];d=e.getItemMeta(d.parentId)}throw new Error("Invalid range")},[s,I]=ct(e,t,n),f=[s];let a=s;for(;a!==I;)a=o(a),e.isItemDisabled(a)||f.push(a);return f},gn=e=>{let t=fe(e);const n=[];for(;t!=null;)n.push(t),t=Te(e,t);return n},me=(e,t)=>t!==e.closest('*[role="treeitem"]'),Pe=e=>Array.isArray(e)?e:e!=null?[e]:[],_e=e=>{const t={};return e.forEach(n=>{t[n]=!0}),t},ve=({instance:e,params:t,models:n})=>{const o=C.useRef(null),s=C.useRef({}),I=C.useMemo(()=>{const g=new Map;return Array.isArray(n.selectedItems.value)?n.selectedItems.value.forEach(m=>{g.set(m,!0)}):n.selectedItems.value!=null&&g.set(n.selectedItems.value,!0),g},[n.selectedItems.value]),f=(g,m)=>{if(t.onItemSelectionToggle)if(t.multiSelect){const b=m.filter(E=>!e.isItemSelected(E)),h=n.selectedItems.value.filter(E=>!m.includes(E));b.forEach(E=>{t.onItemSelectionToggle(g,E,!0)}),h.forEach(E=>{t.onItemSelectionToggle(g,E,!1)})}else m!==n.selectedItems.value&&(n.selectedItems.value!=null&&t.onItemSelectionToggle(g,n.selectedItems.value,!1),m!=null&&t.onItemSelectionToggle(g,m,!0));t.onSelectedItemsChange&&t.onSelectedItemsChange(g,m),n.selectedItems.setControlledValue(m)},a=g=>I.has(g),u=({event:g,itemId:m,keepExistingSelection:b=!1,shouldBeSelected:h})=>{if(t.disableSelection)return;let E;if(b){const k=Pe(n.selectedItems.value),w=e.isItemSelected(m);w&&(h===!1||h==null)?E=k.filter(S=>S!==m):!w&&(h===!0||h==null)?E=[m].concat(k):E=k}else h===!1||h==null&&e.isItemSelected(m)?E=t.multiSelect?[]:null:E=t.multiSelect?[m]:m;f(g,E),o.current=m,s.current={}},d=(g,[m,b])=>{if(t.disableSelection||!t.multiSelect)return;let h=Pe(n.selectedItems.value).slice();Object.keys(s.current).length>0&&(h=h.filter(S=>!s.current[S]));const E=_e(h),k=In(e,m,b),w=k.filter(S=>!E[S]);h=h.concat(w),f(g,h),s.current=_e(k)};return{getRootProps:()=>({"aria-multiselectable":t.multiSelect}),publicAPI:{selectItem:u},instance:{isItemSelected:a,selectItem:u,selectAllNavigableItems:g=>{if(t.disableSelection||!t.multiSelect)return;const m=gn(e);f(g,m),s.current=_e(m)},expandSelectionRange:(g,m)=>{if(o.current!=null){const[b,h]=ct(e,m,o.current);d(g,[b,h])}},selectRangeFromStartToItem:(g,m)=>{d(g,[fe(e),m])},selectRangeFromItemToEnd:(g,m)=>{d(g,[m,at(e)])},selectItemFromArrowNavigation:(g,m,b)=>{if(t.disableSelection||!t.multiSelect)return;let h=Pe(n.selectedItems.value).slice();Object.keys(s.current).length===0?(h.push(b),s.current={[m]:!0,[b]:!0}):(s.current[m]||(s.current={}),s.current[b]?(h=h.filter(E=>E!==m),delete s.current[m]):(h.push(b),s.current[b]=!0)),f(g,h)}},contextValue:{selection:{multiSelect:t.multiSelect,checkboxSelection:t.checkboxSelection,disableSelection:t.disableSelection}}}};ve.models={selectedItems:{getDefaultValue:e=>e.defaultSelectedItems}};const bn=[];ve.getDefaultizedParams=({params:e})=>P._extends({},e,{disableSelection:e.disableSelection??!1,multiSelect:e.multiSelect??!1,checkboxSelection:e.checkboxSelection??!1,defaultSelectedItems:e.defaultSelectedItems??(e.multiSelect?bn:null)});ve.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0};const Ze=1e3;class hn{constructor(t=Ze){this.timeouts=new Map,this.cleanupTimeout=Ze,this.cleanupTimeout=t}register(t,n,o){this.timeouts||(this.timeouts=new Map);const s=setTimeout(()=>{typeof n=="function"&&n(),this.timeouts.delete(o.cleanupToken)},this.cleanupTimeout);this.timeouts.set(o.cleanupToken,s)}unregister(t){const n=this.timeouts.get(t.cleanupToken);n&&(this.timeouts.delete(t.cleanupToken),clearTimeout(n))}reset(){this.timeouts&&(this.timeouts.forEach((t,n)=>{this.unregister({cleanupToken:n})}),this.timeouts=void 0)}}class xn{constructor(){this.registry=new FinalizationRegistry(t=>{typeof t=="function"&&t()})}register(t,n,o){this.registry.register(t,n,o)}unregister(t){this.registry.unregister(t)}reset(){}}class yn{}function Tn(e){let t=0;return function(o,s,I){e.registry===null&&(e.registry=typeof FinalizationRegistry<"u"?new xn:new hn);const[f]=C.useState(new yn),a=C.useRef(null),u=C.useRef(void 0);u.current=I;const d=C.useRef(null);if(!a.current&&u.current){const r=(i,p)=>{var c;p.defaultMuiPrevented||(c=u.current)==null||c.call(u,i,p)};a.current=o.$$subscribeEvent(s,r),t+=1,d.current={cleanupToken:t},e.registry.register(f,()=>{var i;(i=a.current)==null||i.call(a),a.current=null,d.current=null},d.current)}else!u.current&&a.current&&(a.current(),a.current=null,d.current&&(e.registry.unregister(d.current),d.current=null));C.useEffect(()=>{if(!a.current&&u.current){const r=(i,p)=>{var c;p.defaultMuiPrevented||(c=u.current)==null||c.call(u,i,p)};a.current=o.$$subscribeEvent(s,r)}return d.current&&e.registry&&(e.registry.unregister(d.current),d.current=null),()=>{var r;(r=a.current)==null||r.call(a),a.current=null}},[o,s])}}const Pn={registry:null},Cn=Tn(Pn),dt=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?dt(t.shadowRoot):t:null},En=(e,t)=>{let n=Pe(t).find(o=>{if(!e.isItemNavigable(o))return!1;const s=e.getItemMeta(o);return s&&(s.parentId==null||e.isItemExpanded(s.parentId))});return n==null&&(n=fe(e)),n},Fe=({instance:e,params:t,state:n,setState:o,models:s,rootRef:I})=>{const f=En(e,s.selectedItems.value),a=ae.useEventCallback(m=>{const b=typeof m=="function"?m(n.focusedItemId):m;n.focusedItemId!==b&&o(h=>P._extends({},h,{focusedItemId:b}))}),u=C.useCallback(()=>!!I.current&&I.current.contains(dt(Wt.ownerDocument(I.current))),[I]),d=C.useCallback(m=>n.focusedItemId===m&&u(),[n.focusedItemId,u]),r=m=>{const b=e.getItemMeta(m);return b&&(b.parentId==null||e.isItemExpanded(b.parentId))},i=(m,b)=>{const h=e.getItemDOMElement(b);h&&h.focus(),a(b),t.onItemFocus&&t.onItemFocus(m,b)},p=ae.useEventCallback((m,b)=>{r(b)&&i(m,b)}),c=ae.useEventCallback(()=>{if(n.focusedItemId==null)return;if(e.getItemMeta(n.focusedItemId)){const b=e.getItemDOMElement(n.focusedItemId);b&&b.blur()}a(null)}),x=m=>m===f;Cn(e,"removeItem",({id:m})=>{n.focusedItemId===m&&i(null,f)});const g=m=>b=>{var h;(h=m.onFocus)==null||h.call(m,b),!b.defaultMuiPrevented&&b.target===b.currentTarget&&i(b,f)};return{getRootProps:m=>({onFocus:g(m)}),publicAPI:{focusItem:p},instance:{isItemFocused:d,canItemBeTabbed:x,focusItem:p,removeFocusedItem:c}}};Fe.getInitialState=()=>({focusedItemId:null});Fe.params={onItemFocus:!0};const oe=(e,t)=>e.getAvailablePlugins().has(t),wn=({props:e})=>{const{instance:t}=re(),{label:n,itemId:o}=e,[s,I]=C.useState(n),f=t.isItemBeingEdited(o);return C.useEffect(()=>{f||I(n)},[f,n]),{propsEnhancers:{labelInput:({externalEventHandlers:a,interactions:u})=>t.isItemEditable(o)?{value:s??"","data-element":"labelInput",onChange:c=>{var x;(x=a.onChange)==null||x.call(a,c),I(c.target.value)},onKeyDown:c=>{var g;if((g=a.onKeyDown)==null||g.call(a,c),c.defaultMuiPrevented)return;const x=c.target;c.key==="Enter"&&x.value?u.handleSaveItemLabel(c,x.value):c.key==="Escape"&&u.handleCancelItemLabelEditing(c)},onBlur:c=>{var x;(x=a.onBlur)==null||x.call(a,c),!c.defaultMuiPrevented&&c.target.value&&u.handleSaveItemLabel(c,c.target.value)},autoFocus:!0,type:"text"}:{}}}},K=({instance:e,state:t,setState:n,params:o})=>{const s=C.useRef(t.editedItemId),I=i=>s.current===i,f=i=>{n(p=>P._extends({},p,{editedItemId:i})),s.current=i},a=i=>i===t.editedItemId,u=!!o.isItemEditable,d=i=>{if(i==null||!u)return!1;const p=e.getItem(i);return p?typeof o.isItemEditable=="function"?o.isItemEditable(p):!!o.isItemEditable:!1},r=(i,p)=>{if(!p)throw new Error(["MUI X: The Tree View component requires all items to have a `label` property.","The label of an item cannot be empty.",i].join(`
9
+ `));n(c=>{const x=c.items.itemMetaMap[i];return x.label!==p?P._extends({},c,{items:P._extends({},c.items,{itemMetaMap:P._extends({},c.items.itemMetaMap,{[i]:P._extends({},x,{label:p})})})}):c}),o.onItemLabelChange&&o.onItemLabelChange(i,p)};return{instance:{setEditedItemId:f,isItemBeingEdited:a,updateItemLabel:r,isItemEditable:d,isTreeViewEditable:u,isItemBeingEditedRef:I},publicAPI:{updateItemLabel:r}}};K.itemPlugin=wn;K.getDefaultizedParams=({params:e,experimentalFeatures:t})=>{const n=t==null?void 0:t.labelEditing;return process.env.NODE_ENV!=="production"&&e.isItemEditable&&!n&&Ce.warnOnce(["MUI X: The label editing feature requires the `labelEditing` experimental feature to be enabled.","You can do it by passing `experimentalFeatures={{ labelEditing: true}}` to the Rich Tree View Pro component.","Check the documentation for more details: https://mui.com/x/react-tree-view/rich-tree-view/editing/"]),P._extends({},e,{isItemEditable:n?e.isItemEditable??!1:!1})};K.getInitialState=()=>({editedItemId:null});K.params={onItemLabelChange:!0,isItemEditable:!0};function vn(e){return!!e&&e.length===1&&!!e.match(/\S/)}const ut=({instance:e,params:t,state:n})=>{const o=V.useRtl(),s=C.useRef({}),I=ae.useEventCallback(r=>{s.current=r(s.current)});C.useEffect(()=>{if(e.areItemUpdatesPrevented())return;const r={},i=p=>{r[p.id]=p.label.substring(0,1).toLowerCase()};Object.values(n.items.itemMetaMap).forEach(i),s.current=r},[n.items.itemMetaMap,t.getItemId,e]);const f=(r,i)=>{const p=i.toLowerCase(),c=b=>{const h=Te(e,b);return h===null?fe(e):h};let x=null,g=c(r);const m={};for(;x==null&&!m[g];)s.current[g]===p?x=g:(m[g]=!0,g=c(g));return x},a=r=>!t.disableSelection&&!e.isItemDisabled(r),u=r=>!e.isItemDisabled(r)&&e.isItemExpandable(r);return{instance:{updateFirstCharMap:I,handleItemKeyDown:(r,i)=>{if(r.defaultMuiPrevented||r.altKey||me(r.target,r.currentTarget))return;const p=r.ctrlKey||r.metaKey,c=r.key;switch(!0){case(c===" "&&a(i)):{r.preventDefault(),t.multiSelect&&r.shiftKey?e.expandSelectionRange(r,i):e.selectItem({event:r,itemId:i,keepExistingSelection:t.multiSelect,shouldBeSelected:t.multiSelect?void 0:!0});break}case c==="Enter":{oe(e,K)&&e.isItemEditable(i)&&!e.isItemBeingEdited(i)?e.setEditedItemId(i):u(i)?(e.toggleItemExpansion(r,i),r.preventDefault()):a(i)&&(t.multiSelect?(r.preventDefault(),e.selectItem({event:r,itemId:i,keepExistingSelection:!0})):e.isItemSelected(i)||(e.selectItem({event:r,itemId:i}),r.preventDefault()));break}case c==="ArrowDown":{const x=Te(e,i);x&&(r.preventDefault(),e.focusItem(r,x),t.multiSelect&&r.shiftKey&&a(x)&&e.selectItemFromArrowNavigation(r,i,x));break}case c==="ArrowUp":{const x=lt(e,i);x&&(r.preventDefault(),e.focusItem(r,x),t.multiSelect&&r.shiftKey&&a(x)&&e.selectItemFromArrowNavigation(r,i,x));break}case(c==="ArrowRight"&&!o||c==="ArrowLeft"&&o):{if(p)return;if(e.isItemExpanded(i)){const x=Te(e,i);x&&(e.focusItem(r,x),r.preventDefault())}else u(i)&&(e.toggleItemExpansion(r,i),r.preventDefault());break}case(c==="ArrowLeft"&&!o||c==="ArrowRight"&&o):{if(p)return;if(u(i)&&e.isItemExpanded(i))e.toggleItemExpansion(r,i),r.preventDefault();else{const x=e.getItemMeta(i).parentId;x&&(e.focusItem(r,x),r.preventDefault())}break}case c==="Home":{a(i)&&t.multiSelect&&p&&r.shiftKey?e.selectRangeFromStartToItem(r,i):e.focusItem(r,fe(e)),r.preventDefault();break}case c==="End":{a(i)&&t.multiSelect&&p&&r.shiftKey?e.selectRangeFromItemToEnd(r,i):e.focusItem(r,at(e)),r.preventDefault();break}case c==="*":{e.expandAllSiblings(r,i),r.preventDefault();break}case(String.fromCharCode(r.keyCode)==="A"&&p&&t.multiSelect&&!t.disableSelection):{e.selectAllNavigableItems(r),r.preventDefault();break}case(!p&&!r.shiftKey&&vn(c)):{const x=f(i,c);x!=null&&(e.focusItem(r,x),r.preventDefault());break}}}}}};ut.params={};const pt=({slots:e,slotProps:t})=>({contextValue:{icons:{slots:{collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,endIcon:e.endIcon},slotProps:{collapseIcon:t.collapseIcon,expandIcon:t.expandIcon,endIcon:t.endIcon}}}});pt.params={};const Sn=[Ie,we,ve,Fe,ut,pt,K];function ft(e){const{instance:t,items:{onItemClick:n},selection:{multiSelect:o,checkboxSelection:s,disableSelection:I},expansion:{expansionTrigger:f}}=re(),a=t.isItemExpandable(e),u=t.isItemExpanded(e),d=t.isItemFocused(e),r=t.isItemSelected(e),i=t.isItemDisabled(e),p=t!=null&&t.isItemBeingEdited?t==null?void 0:t.isItemBeingEdited(e):!1,c=t.isItemEditable?t.isItemEditable(e):!1,x=w=>{if(!i){d||t.focusItem(w,e);const S=o&&(w.shiftKey||w.ctrlKey||w.metaKey);a&&!(S&&t.isItemExpanded(e))&&t.toggleItemExpansion(w,e)}},g=w=>{i||(d||t.focusItem(w,e),o&&(w.shiftKey||w.ctrlKey||w.metaKey)?w.shiftKey?t.expandSelectionRange(w,e):t.selectItem({event:w,itemId:e,keepExistingSelection:!0}):t.selectItem({event:w,itemId:e,shouldBeSelected:!0}))},m=w=>{if(I||i)return;const S=w.nativeEvent.shiftKey;o&&S?t.expandSelectionRange(w,e):t.selectItem({event:w,itemId:e,keepExistingSelection:o,shouldBeSelected:w.target.checked})},b=w=>{(w.shiftKey||w.ctrlKey||w.metaKey||i)&&w.preventDefault()},h=()=>{oe(t,K)&&t.isItemEditable(e)&&(t.isItemBeingEdited(e)?t.setEditedItemId(null):t.setEditedItemId(e))};return{disabled:i,expanded:u,selected:r,focused:d,editable:c,editing:p,disableSelection:I,checkboxSelection:s,handleExpansion:x,handleSelection:g,handleCheckboxSelection:m,handleContentClick:n,preventSelection:b,expansionTrigger:f,toggleItemEditing:h,handleSaveItemLabel:(w,S)=>{oe(t,K)&&t.isItemBeingEditedRef(e)&&(t.updateItemLabel(e,S),h(),t.focusItem(w,e))},handleCancelItemLabelEditing:w=>{oe(t,K)&&t.isItemBeingEditedRef(e)&&(h(),t.focusItem(w,e))}}}const Rn=_.styled("div",{name:"MuiTreeItem2DragAndDropOverlay",slot:"Root",overridesResolver:(e,t)=>t.root,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="action"})(({theme:e})=>({position:"absolute",left:0,display:"flex",top:0,bottom:0,right:0,pointerEvents:"none",variants:[{props:{action:"make-child"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderRadius:e.shape.borderRadius,backgroundColor:e.vars?`rgba(${e.vars.palette.primary.darkChannel} / ${e.vars.palette.action.focusOpacity})`:l.alpha(e.palette.primary.dark,e.palette.action.focusOpacity)}},{props:{action:"reorder-above"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderTop:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"reorder-below"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"move-to-parent"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * calc(var(--TreeView-itemDepth) - 1))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}}]}));function Ne(e){return e.action==null?null:v.jsx(Rn,P._extends({},e))}process.env.NODE_ENV!=="production"&&(Ne.propTypes={action:l.PropTypes.oneOf(["make-child","move-to-parent","reorder-above","reorder-below"]),style:l.PropTypes.object});const mt=_.styled("input",{name:"MuiTreeItem2",slot:"LabelInput",overridesResolver:(e,t)=>t.labelInput})(({theme:e})=>P._extends({},e.typography.body1,{width:"100%",backgroundColor:e.palette.background.paper,borderRadius:e.shape.borderRadius,border:"none",padding:"0 2px",boxSizing:"border-box","&:focus":{outline:`1px solid ${e.palette.primary.main}`}})),kn=["classes","className","displayIcon","expansionIcon","icon","label","itemId","onClick","onMouseDown","dragAndDropOverlayProps","labelInputProps"],$e=C.forwardRef(function(t,n){const{classes:o,className:s,displayIcon:I,expansionIcon:f,icon:a,label:u,itemId:d,onClick:r,onMouseDown:i,dragAndDropOverlayProps:p,labelInputProps:c}=t,x=W._objectWithoutPropertiesLoose(t,kn),{disabled:g,expanded:m,selected:b,focused:h,editing:E,editable:k,disableSelection:w,checkboxSelection:S,handleExpansion:O,handleSelection:$,handleCheckboxSelection:U,handleContentClick:N,preventSelection:B,expansionTrigger:Q,toggleItemEditing:q}=ft(d),z=a||f||I,G=C.useRef(null),H=L=>{B(L),i&&i(L)},Y=L=>{var Z;N==null||N(L,d),!((Z=G.current)!=null&&Z.contains(L.target))&&(Q==="content"&&O(L),S||$(L),r&&r(L))},ee=L=>{L.defaultMuiPrevented||q()};return v.jsxs("div",P._extends({},x,{className:l.clsx(o.root,s,m&&o.expanded,b&&o.selected,h&&o.focused,g&&o.disabled,E&&o.editing,k&&o.editable),onClick:Y,onMouseDown:H,ref:n,children:[v.jsx("div",{className:o.iconContainer,children:z}),S&&v.jsx(tt.Checkbox,{className:o.checkbox,checked:b,onChange:U,disabled:g||w,ref:G,tabIndex:-1}),E?v.jsx(mt,P._extends({},c,{className:o.labelInput})):v.jsx("div",P._extends({className:o.label},k&&{onDoubleClick:ee},{children:u})),p&&v.jsx(Ne,P._extends({},p))]}))});process.env.NODE_ENV!=="production"&&($e.propTypes={classes:l.PropTypes.object.isRequired,className:l.PropTypes.string,displayIcon:l.PropTypes.node,dragAndDropOverlayProps:l.PropTypes.shape({action:l.PropTypes.oneOf(["make-child","move-to-parent","reorder-above","reorder-below"]),style:l.PropTypes.object}),expansionIcon:l.PropTypes.node,icon:l.PropTypes.node,itemId:l.PropTypes.string.isRequired,label:l.PropTypes.node,labelInputProps:l.PropTypes.shape({autoFocus:l.PropTypes.oneOf([!0]),"data-element":l.PropTypes.oneOf(["labelInput"]),onBlur:l.PropTypes.func,onChange:l.PropTypes.func,onKeyDown:l.PropTypes.func,type:l.PropTypes.oneOf(["text"]),value:l.PropTypes.string})});function It(e){return l.generateUtilityClass("MuiTreeItem",e)}const X=l.generateUtilityClasses("MuiTreeItem",["root","groupTransition","content","expanded","selected","focused","disabled","iconContainer","label","checkbox","labelInput","editable","editing","dragAndDropOverlay"]),gt=ce.createSvgIcon(v.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"TreeViewExpandIcon"),bt=ce.createSvgIcon(v.jsx("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"TreeViewCollapseIcon");function Se(e){const{children:t,itemId:n}=e,{wrapItem:o,instance:s}=re();return o({children:t,itemId:n,instance:s})}Se.propTypes={children:l.PropTypes.node,itemId:l.PropTypes.string.isRequired};const Mn=["children","className","slots","slotProps","ContentComponent","ContentProps","itemId","id","label","onClick","onMouseDown","onFocus","onBlur","onKeyDown"],On=["ownerState"],Dn=["ownerState"],_n=["ownerState"],jn=je(),Ln=e=>{const{classes:t}=e,n={root:["root"],content:["content"],expanded:["expanded"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],labelInput:["labelInput"],editing:["editing"],editable:["editable"],groupTransition:["groupTransition"]};return _.composeClasses(n,It,t)},An=_.styled("li",{name:"MuiTreeItem",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),Vn=_.styled($e,{name:"MuiTreeItem",slot:"Content",overridesResolver:(e,t)=>[t.content,t.iconContainer&&{[`& .${X.iconContainer}`]:t.iconContainer},t.label&&{[`& .${X.label}`]:t.label}],shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${X.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"},[`&.${X.focused}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`&.${X.selected}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity)}},[`&.${X.focused}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}},[`& .${X.iconContainer}`]:{width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}},[`& .${X.label}`]:P._extends({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative"},e.typography.body1),[`& .${X.checkbox}`]:{padding:0},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}}]})),Fn=_.styled(et.Collapse,{name:"MuiTreeItem",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]}),ht=C.forwardRef(function(t,n){var ze,We,Ge,Xe;const{icons:o,runItemPlugins:s,items:{disabledItemsFocusable:I,indentationAtItemLevel:f},selection:{disableSelection:a},expansion:{expansionTrigger:u},treeId:d,instance:r}=re(),i=C.useContext(Ee),p=jn({props:t,name:"MuiTreeItem"}),{children:c,className:x,slots:g,slotProps:m,ContentComponent:b=$e,ContentProps:h,itemId:E,id:k,label:w,onClick:S,onMouseDown:O,onBlur:$,onKeyDown:U}=p,N=W._objectWithoutPropertiesLoose(p,Mn),{expanded:B,focused:Q,selected:q,disabled:z,editing:G,handleExpansion:H,handleCancelItemLabelEditing:Y,handleSaveItemLabel:ee}=ft(E);process.env.NODE_ENV!=="production"&&(p.ContentComponent&&Ce.warnOnce(["MUI X: The ContentComponent prop of the TreeItem component is deprecated and will be removed in the next major release.","You can use the new TreeItem2 component or the new useTreeItem2 hook to customize the rendering of the content.","For more detail, see https://mui.com/x/react-tree-view/tree-item-customization/."]),p.ContentProps&&Ce.warnOnce(["MUI X: The ContentProps prop of the TreeItem component is deprecated and will be removed in the next major release.","You can use the new TreeItem2 component or the new useTreeItem2 hook to customize the rendering of the content.","For more detail, see https://mui.com/x/react-tree-view/tree-item-customization/."]));const{contentRef:L,rootRef:Z,propsEnhancers:A}=s(p),te=C.useRef(null),Re=C.useRef(null),Be=pe.useForkRef(n,Z,te),Ke=pe.useForkRef(h==null?void 0:h.ref,L,Re),se={expandIcon:(g==null?void 0:g.expandIcon)??o.slots.expandIcon??gt,collapseIcon:(g==null?void 0:g.collapseIcon)??o.slots.collapseIcon??bt,endIcon:(g==null?void 0:g.endIcon)??o.slots.endIcon,icon:g==null?void 0:g.icon,groupTransition:g==null?void 0:g.groupTransition},ke=M=>Array.isArray(M)?M.length>0&&M.some(ke):!!M,de=ke(c),ge=P._extends({},p,{expanded:B,focused:Q,selected:q,disabled:z,indentationAtItemLevel:f}),T=Ln(ge),y=se.groupTransition??void 0,R=V.useSlotProps({elementType:y,ownerState:{},externalSlotProps:m==null?void 0:m.groupTransition,additionalProps:P._extends({unmountOnExit:!0,in:B,component:"ul",role:"group"},f?{indentationAtItemLevel:!0}:{}),className:T.groupTransition}),D=M=>{u==="iconContainer"&&H(M)},F=B?se.collapseIcon:se.expandIcon,ne=V.useSlotProps({elementType:F,ownerState:{},externalSlotProps:M=>B?P._extends({},j.resolveComponentProps(o.slotProps.collapseIcon,M),j.resolveComponentProps(m==null?void 0:m.collapseIcon,M)):P._extends({},j.resolveComponentProps(o.slotProps.expandIcon,M),j.resolveComponentProps(m==null?void 0:m.expandIcon,M)),additionalProps:{onClick:D}}),be=W._objectWithoutPropertiesLoose(ne,On),he=de&&F?v.jsx(F,P._extends({},be)):null,Me=de?void 0:se.endIcon,Ot=V.useSlotProps({elementType:Me,ownerState:{},externalSlotProps:M=>de?{}:P._extends({},j.resolveComponentProps(o.slotProps.endIcon,M),j.resolveComponentProps(m==null?void 0:m.endIcon,M))}),Dt=W._objectWithoutPropertiesLoose(Ot,Dn),_t=Me?v.jsx(Me,P._extends({},Dt)):null,Oe=se.icon,jt=V.useSlotProps({elementType:Oe,ownerState:{},externalSlotProps:m==null?void 0:m.icon}),Lt=W._objectWithoutPropertiesLoose(jt,_n),At=Oe?v.jsx(Oe,P._extends({},Lt)):null;let xe;q?xe=!0:a||z?xe=void 0:xe=!1;function Vt(M){!Q&&(!z||I)&&M.currentTarget===M.target&&r.focusItem(M,E)}function Ft(M){var ie,ue,Je,Qe;$==null||$(M),!(G||M.relatedTarget&&me(M.relatedTarget,te.current)&&(M.target&&((ue=(ie=M.target)==null?void 0:ie.dataset)==null?void 0:ue.element)==="labelInput"&&me(M.target,te.current)||((Qe=(Je=M.relatedTarget)==null?void 0:Je.dataset)==null?void 0:Qe.element)==="labelInput"))&&r.removeFocusedItem()}const Nt=M=>{var ie,ue;U==null||U(M),((ue=(ie=M.target)==null?void 0:ie.dataset)==null?void 0:ue.element)!=="labelInput"&&r.handleItemKeyDown(M,E)},$t=Le({itemId:E,treeId:d,id:k}),Bt=r.canItemBeTabbed(E)?0:-1,ye={rootRefObject:te,contentRefObject:Re,interactions:{handleSaveItemLabel:ee,handleCancelItemLabelEditing:Y}},Kt=((ze=A.root)==null?void 0:ze.call(A,P._extends({},ye,{externalEventHandlers:j.extractEventHandlers(N)})))??{},qt=((We=A.content)==null?void 0:We.call(A,P._extends({},ye,{externalEventHandlers:j.extractEventHandlers(h)})))??{},qe=((Ge=A.dragAndDropOverlay)==null?void 0:Ge.call(A,P._extends({},ye,{externalEventHandlers:{}})))??{},Ue=((Xe=A.labelInput)==null?void 0:Xe.call(A,P._extends({},ye,{externalEventHandlers:{}})))??{};return v.jsx(Se,{itemId:E,children:v.jsxs(An,P._extends({className:l.clsx(T.root,x),role:"treeitem","aria-expanded":de?B:void 0,"aria-selected":xe,"aria-disabled":z||void 0,id:$t,tabIndex:Bt},N,{ownerState:ge,onFocus:Vt,onBlur:Ft,onKeyDown:Nt,ref:Be,style:f?P._extends({},N.style,{"--TreeView-itemDepth":typeof i=="function"?i(E):i}):N.style},Kt,{children:[v.jsx(Vn,P._extends({as:b,classes:{root:T.content,expanded:T.expanded,selected:T.selected,focused:T.focused,disabled:T.disabled,editable:T.editable,editing:T.editing,iconContainer:T.iconContainer,label:T.label,labelInput:T.labelInput,checkbox:T.checkbox},label:w,itemId:E,onClick:S,onMouseDown:O,icon:At,expansionIcon:he,displayIcon:_t,ownerState:ge},h,qt,qe.action==null?{}:{dragAndDropOverlayProps:qe},Ue.value==null?{}:{labelInputProps:Ue},{ref:Ke})),c&&v.jsx(Fn,P._extends({as:y},R,{children:c}))]}))})});process.env.NODE_ENV!=="production"&&(ht.propTypes={children:l.PropTypes.node,classes:l.PropTypes.object,className:l.PropTypes.string,ContentComponent:Gt.elementTypeAcceptingRef,ContentProps:l.PropTypes.object,disabled:l.PropTypes.bool,itemId:l.PropTypes.string.isRequired,label:l.PropTypes.node,onFocus:nt.unsupportedProp,onKeyDown:l.PropTypes.func,slotProps:l.PropTypes.object,slots:l.PropTypes.object,sx:l.PropTypes.oneOfType([l.PropTypes.arrayOf(l.PropTypes.oneOfType([l.PropTypes.func,l.PropTypes.object,l.PropTypes.bool])),l.PropTypes.func,l.PropTypes.object])});const Nn=["ownerState"];function $n({slots:e,slotProps:t,label:n,id:o,itemId:s,itemsToRender:I}){const f=(e==null?void 0:e.item)??ht,a=V.useSlotProps({elementType:f,externalSlotProps:t==null?void 0:t.item,additionalProps:{itemId:s,id:o,label:n},ownerState:{itemId:s,label:n}}),u=W._objectWithoutPropertiesLoose(a,Nn),d=C.useMemo(()=>I?v.jsx(xt,{itemsToRender:I,slots:e,slotProps:t}):null,[I,e,t]);return v.jsx(f,P._extends({},u,{children:d}))}function xt(e){const{itemsToRender:t,slots:n,slotProps:o}=e;return v.jsx(C.Fragment,{children:t.map(s=>v.jsx($n,{slots:n,slotProps:o,label:s.label,id:s.id,itemId:s.itemId,itemsToRender:s.children},s.itemId))})}const Bn=je(),Kn=e=>{const{classes:t}=e,n={root:["root"]};return _.composeClasses(n,Zt,t)},qn=_.styled("ul",{name:"MuiRichTreeView",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),yt=C.forwardRef(function(t,n){const o=Bn({props:t,name:"MuiRichTreeView"});process.env.NODE_ENV!=="production"&&o.children!=null&&Ce.warnOnce(["MUI X: The Rich Tree View component does not support JSX children.","If you want to add items, you need to use the `items` prop.","Check the documentation for more details: https://mui.com/x/react-tree-view/rich-tree-view/items/."]);const{getRootProps:s,contextValue:I,instance:f}=cn({plugins:Sn,rootRef:n,props:o}),{slots:a,slotProps:u}=o,d=Kn(o),r=(a==null?void 0:a.root)??qn,i=V.useSlotProps({elementType:r,externalSlotProps:u==null?void 0:u.root,className:d.root,getSlotProps:s,ownerState:o});return v.jsx(dn,{value:I,children:v.jsx(r,P._extends({},i,{children:v.jsx(xt,{slots:a,slotProps:u,itemsToRender:f.getItemsToRender()})}))})});process.env.NODE_ENV!=="production"&&(yt.propTypes={apiRef:l.PropTypes.shape({current:l.PropTypes.shape({focusItem:l.PropTypes.func.isRequired,getItem:l.PropTypes.func.isRequired,getItemDOMElement:l.PropTypes.func.isRequired,getItemOrderedChildrenIds:l.PropTypes.func.isRequired,getItemTree:l.PropTypes.func.isRequired,selectItem:l.PropTypes.func.isRequired,setItemExpansion:l.PropTypes.func.isRequired,updateItemLabel:l.PropTypes.func.isRequired})}),checkboxSelection:l.PropTypes.bool,classes:l.PropTypes.object,className:l.PropTypes.string,defaultExpandedItems:l.PropTypes.arrayOf(l.PropTypes.string),defaultSelectedItems:l.PropTypes.any,disabledItemsFocusable:l.PropTypes.bool,disableSelection:l.PropTypes.bool,expandedItems:l.PropTypes.arrayOf(l.PropTypes.string),expansionTrigger:l.PropTypes.oneOf(["content","iconContainer"]),experimentalFeatures:l.PropTypes.shape({indentationAtItemLevel:l.PropTypes.bool,labelEditing:l.PropTypes.bool}),getItemId:l.PropTypes.func,getItemLabel:l.PropTypes.func,id:l.PropTypes.string,isItemDisabled:l.PropTypes.func,isItemEditable:l.PropTypes.oneOfType([l.PropTypes.func,l.PropTypes.bool]),itemChildrenIndentation:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string]),items:l.PropTypes.array.isRequired,multiSelect:l.PropTypes.bool,onExpandedItemsChange:l.PropTypes.func,onItemClick:l.PropTypes.func,onItemExpansionToggle:l.PropTypes.func,onItemFocus:l.PropTypes.func,onItemLabelChange:l.PropTypes.func,onItemSelectionToggle:l.PropTypes.func,onSelectedItemsChange:l.PropTypes.func,selectedItems:l.PropTypes.any,slotProps:l.PropTypes.object,slots:l.PropTypes.object,sx:l.PropTypes.oneOfType([l.PropTypes.arrayOf(l.PropTypes.oneOfType([l.PropTypes.func,l.PropTypes.object,l.PropTypes.bool])),l.PropTypes.func,l.PropTypes.object])});const Tt=e=>Array.isArray(e)?e.length>0&&e.some(Tt):!!e,Un=({itemId:e,children:t})=>{const{instance:n,selection:{multiSelect:o},publicAPI:s}=re(),I={expandable:Tt(t),expanded:n.isItemExpanded(e),focused:n.isItemFocused(e),selected:n.isItemSelected(e),disabled:n.isItemDisabled(e),editing:n!=null&&n.isItemBeingEdited?n==null?void 0:n.isItemBeingEdited(e):!1,editable:n.isItemEditable?n.isItemEditable(e):!1},f=c=>{if(I.disabled)return;I.focused||n.focusItem(c,e);const x=o&&(c.shiftKey||c.ctrlKey||c.metaKey);I.expandable&&!(x&&n.isItemExpanded(e))&&n.toggleItemExpansion(c,e)},a=c=>{if(I.disabled)return;I.focused||n.focusItem(c,e),o&&(c.shiftKey||c.ctrlKey||c.metaKey)?c.shiftKey?n.expandSelectionRange(c,e):n.selectItem({event:c,itemId:e,keepExistingSelection:!0}):n.selectItem({event:c,itemId:e,shouldBeSelected:!0})},u=c=>{const x=c.nativeEvent.shiftKey;o&&x?n.expandSelectionRange(c,e):n.selectItem({event:c,itemId:e,keepExistingSelection:o,shouldBeSelected:c.target.checked})},d=()=>{oe(n,K)&&n.isItemEditable(e)&&(n.isItemBeingEdited(e)?n.setEditedItemId(null):n.setEditedItemId(e))};return{interactions:{handleExpansion:f,handleSelection:a,handleCheckboxSelection:u,toggleItemEditing:d,handleSaveItemLabel:(c,x)=>{oe(n,K)&&n.isItemBeingEditedRef(e)&&(n.updateItemLabel(e,x),d(),n.focusItem(c,e))},handleCancelItemLabelEditing:c=>{oe(n,K)&&n.isItemBeingEditedRef(e)&&(d(),n.focusItem(c,e))}},status:I,publicAPI:s}},zn=e=>{const{runItemPlugins:t,items:{onItemClick:n,disabledItemsFocusable:o,indentationAtItemLevel:s},selection:{disableSelection:I,checkboxSelection:f},expansion:{expansionTrigger:a},treeId:u,instance:d,publicAPI:r}=re(),i=C.useContext(Ee),{id:p,itemId:c,label:x,children:g,rootRef:m}=e,{rootRef:b,contentRef:h,propsEnhancers:E}=t(e),{interactions:k,status:w}=Un({itemId:c,children:g}),S=C.useRef(null),O=C.useRef(null),$=pe.useForkRef(m,b,S),U=pe.useForkRef(h,O),N=C.useRef(null),B=Le({itemId:c,treeId:u,id:p}),Q=d.canItemBeTabbed(c)?0:-1,q={rootRefObject:S,contentRefObject:O,interactions:k},z=T=>y=>{var D;if((D=T.onFocus)==null||D.call(T,y),y.defaultMuiPrevented)return;const R=!w.disabled||o;!w.focused&&R&&y.currentTarget===y.target&&d.focusItem(y,c)},G=T=>y=>{var D,F,ne,be,he;if((D=T.onBlur)==null||D.call(T,y),y.defaultMuiPrevented)return;const R=d.getItemDOMElement(c);w.editing||y.relatedTarget&&me(y.relatedTarget,R)&&(y.target&&((ne=(F=y.target)==null?void 0:F.dataset)==null?void 0:ne.element)==="labelInput"&&me(y.target,R)||((he=(be=y.relatedTarget)==null?void 0:be.dataset)==null?void 0:he.element)==="labelInput")||d.removeFocusedItem()},H=T=>y=>{var R,D,F;(R=T.onKeyDown)==null||R.call(T,y),!(y.defaultMuiPrevented||((F=(D=y.target)==null?void 0:D.dataset)==null?void 0:F.element)==="labelInput")&&d.handleItemKeyDown(y,c)},Y=T=>y=>{var R;(R=T.onDoubleClick)==null||R.call(T,y),!y.defaultMuiPrevented&&k.toggleItemEditing()},ee=T=>y=>{var R,D;(R=T.onClick)==null||R.call(T,y),n==null||n(y,c),!(y.defaultMuiPrevented||(D=N.current)!=null&&D.contains(y.target))&&(a==="content"&&k.handleExpansion(y),f||k.handleSelection(y))},L=T=>y=>{var R;(R=T.onMouseDown)==null||R.call(T,y),!y.defaultMuiPrevented&&(y.shiftKey||y.ctrlKey||y.metaKey||w.disabled)&&y.preventDefault()},Z=T=>y=>{var R;(R=T.onChange)==null||R.call(T,y),!y.defaultMuiPrevented&&(I||w.disabled||k.handleCheckboxSelection(y))},A=T=>y=>{var R;(R=T.onClick)==null||R.call(T,y),!y.defaultMuiPrevented&&a==="iconContainer"&&k.handleExpansion(y)};return{getRootProps:(T={})=>{var ne;const y=P._extends({},j.extractEventHandlers(e),j.extractEventHandlers(T));let R;w.selected?R=!0:I||w.disabled?R=void 0:R=!1;const D=P._extends({},y,{ref:$,role:"treeitem",tabIndex:Q,id:B,"aria-expanded":w.expandable?w.expanded:void 0,"aria-selected":R,"aria-disabled":w.disabled||void 0},T,{onFocus:z(y),onBlur:G(y),onKeyDown:H(y)});s&&(D.style={"--TreeView-itemDepth":typeof i=="function"?i(c):i});const F=((ne=E.root)==null?void 0:ne.call(E,P._extends({},q,{externalEventHandlers:y})))??{};return P._extends({},D,F)},getContentProps:(T={})=>{var F;const y=j.extractEventHandlers(T),R=P._extends({},y,T,{ref:U,onClick:ee(y),onMouseDown:L(y),status:w});s&&(R.indentationAtItemLevel=!0);const D=((F=E.content)==null?void 0:F.call(E,P._extends({},q,{externalEventHandlers:y})))??{};return P._extends({},R,D)},getGroupTransitionProps:(T={})=>{const y=j.extractEventHandlers(T),R=P._extends({},y,{unmountOnExit:!0,component:"ul",role:"group",in:w.expanded,children:g},T);return s&&(R.indentationAtItemLevel=!0),R},getIconContainerProps:(T={})=>{const y=j.extractEventHandlers(T);return P._extends({},y,T,{onClick:A(y)})},getCheckboxProps:(T={})=>{const y=j.extractEventHandlers(T);return P._extends({},y,{visible:f,ref:N,checked:w.selected,disabled:I||w.disabled,tabIndex:-1},T,{onChange:Z(y)})},getLabelProps:(T={})=>{const y=P._extends({},j.extractEventHandlers(T)),R=P._extends({},y,{children:x},T,{onDoubleClick:Y(y)});return d.isTreeViewEditable&&(R.editable=w.editable),R},getLabelInputProps:(T={})=>{var D;const y=j.extractEventHandlers(T),R=((D=E.labelInput)==null?void 0:D.call(E,{rootRefObject:S,contentRefObject:O,externalEventHandlers:y,interactions:k}))??{};return P._extends({},T,R)},getDragAndDropOverlayProps:(T={})=>{var D;const y=j.extractEventHandlers(T),R=((D=E.dragAndDropOverlay)==null?void 0:D.call(E,P._extends({},q,{externalEventHandlers:y})))??{};return P._extends({},T,R)},rootRef:$,status:w,publicAPI:r}},Pt=zn;function Ct(e){const{slots:t,slotProps:n,status:o}=e,s=re(),I=P._extends({},s.icons.slots,{expandIcon:s.icons.slots.expandIcon??gt,collapseIcon:s.icons.slots.collapseIcon??bt}),f=s.icons.slotProps;let a;t!=null&&t.icon?a="icon":o.expandable?o.expanded?a="collapseIcon":a="expandIcon":a="endIcon";const u=(t==null?void 0:t[a])??I[a],d=V.useSlotProps({elementType:u,externalSlotProps:r=>P._extends({},j.resolveComponentProps(f[a],r),j.resolveComponentProps(n==null?void 0:n[a],r)),ownerState:{}});return u?v.jsx(u,P._extends({},d)):null}process.env.NODE_ENV!=="production"&&(Ct.propTypes={slotProps:l.PropTypes.object,slots:l.PropTypes.object,status:l.PropTypes.shape({disabled:l.PropTypes.bool.isRequired,editable:l.PropTypes.bool.isRequired,editing:l.PropTypes.bool.isRequired,expandable:l.PropTypes.bool.isRequired,expanded:l.PropTypes.bool.isRequired,focused:l.PropTypes.bool.isRequired,selected:l.PropTypes.bool.isRequired}).isRequired});const Wn=["visible"],Gn=["id","itemId","label","disabled","children","slots","slotProps"],Xn=je(),Et=_.styled("li",{name:"MuiTreeItem2",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),wt=_.styled("div",{name:"MuiTreeItem2",slot:"Content",overridesResolver:(e,t)=>t.content,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="status"&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}},{props:({status:t})=>t.disabled,style:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"}},{props:({status:t})=>t.focused,style:{backgroundColor:(e.vars||e).palette.action.focus}},{props:({status:t})=>t.selected,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity)}}}},{props:({status:t})=>t.selected&&t.focused,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:l.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}}]})),vt=_.styled("div",{name:"MuiTreeItem2",slot:"Label",overridesResolver:(e,t)=>t.label,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="editable"})(({theme:e})=>P._extends({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative",overflow:"hidden"},e.typography.body1,{variants:[{props:({editable:t})=>t,style:{paddingLeft:"2px"}}]})),St=_.styled("div",{name:"MuiTreeItem2",slot:"IconContainer",overridesResolver:(e,t)=>t.iconContainer})({width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}}),Rt=_.styled(et.Collapse,{name:"MuiTreeItem2",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>_.shouldForwardProp(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]}),Jn=_.styled(C.forwardRef((e,t)=>{const{visible:n}=e,o=W._objectWithoutPropertiesLoose(e,Wn);return n?v.jsx(tt.Checkbox,P._extends({},o,{ref:t})):null}),{name:"MuiTreeItem2",slot:"Checkbox",overridesResolver:(e,t)=>t.checkbox})({padding:0}),Qn=e=>{const{classes:t}=e,n={root:["root"],content:["content"],expanded:["expanded"],editing:["editing"],editable:["editable"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],groupTransition:["groupTransition"],labelInput:["labelInput"],dragAndDropOverlay:["dragAndDropOverlay"]};return _.composeClasses(n,It,t)},Yn=C.forwardRef(function(t,n){const o=Xn({props:t,name:"MuiTreeItem2"}),{id:s,itemId:I,label:f,disabled:a,children:u,slots:d={},slotProps:r={}}=o,i=W._objectWithoutPropertiesLoose(o,Gn),{getRootProps:p,getContentProps:c,getIconContainerProps:x,getCheckboxProps:g,getLabelProps:m,getGroupTransitionProps:b,getLabelInputProps:h,getDragAndDropOverlayProps:E,status:k}=Pt({id:s,itemId:I,children:u,label:f,disabled:a}),w=P._extends({},o,k),S=Qn(w),O=d.root??Et,$=V.useSlotProps({elementType:O,getSlotProps:p,externalForwardedProps:i,externalSlotProps:r.root,additionalProps:{ref:n},ownerState:{},className:S.root}),U=d.content??wt,N=V.useSlotProps({elementType:U,getSlotProps:c,externalSlotProps:r.content,ownerState:{},className:l.clsx(S.content,k.expanded&&S.expanded,k.selected&&S.selected,k.focused&&S.focused,k.disabled&&S.disabled,k.editing&&S.editing,k.editable&&S.editable)}),B=d.iconContainer??St,Q=V.useSlotProps({elementType:B,getSlotProps:x,externalSlotProps:r.iconContainer,ownerState:{},className:S.iconContainer}),q=d.label??vt,z=V.useSlotProps({elementType:q,getSlotProps:m,externalSlotProps:r.label,ownerState:{},className:S.label}),G=d.checkbox??Jn,H=V.useSlotProps({elementType:G,getSlotProps:g,externalSlotProps:r.checkbox,ownerState:{},className:S.checkbox}),Y=d.groupTransition??void 0,ee=V.useSlotProps({elementType:Y,getSlotProps:b,externalSlotProps:r.groupTransition,ownerState:{},className:S.groupTransition}),L=d.labelInput??mt,Z=V.useSlotProps({elementType:L,getSlotProps:h,externalSlotProps:r.labelInput,ownerState:{},className:S.labelInput}),A=d.dragAndDropOverlay??Ne,te=V.useSlotProps({elementType:A,getSlotProps:E,externalSlotProps:r.dragAndDropOverlay,ownerState:{},className:S.dragAndDropOverlay});return v.jsx(Se,{itemId:I,children:v.jsxs(O,P._extends({},$,{children:[v.jsxs(U,P._extends({},N,{children:[v.jsx(B,P._extends({},Q,{children:v.jsx(Ct,{status:k,slots:d,slotProps:r})})),v.jsx(G,P._extends({},H)),k.editing?v.jsx(L,P._extends({},Z)):v.jsx(q,P._extends({},z)),v.jsx(A,P._extends({},te))]})),u&&v.jsx(Rt,P._extends({as:Y},ee))]}))})});process.env.NODE_ENV!=="production"&&(Yn.propTypes={children:l.PropTypes.node,classes:l.PropTypes.object,className:l.PropTypes.string,disabled:l.PropTypes.bool,id:l.PropTypes.string,itemId:l.PropTypes.string.isRequired,label:l.PropTypes.node,onBlur:l.PropTypes.func,onFocus:nt.unsupportedProp,onKeyDown:l.PropTypes.func,slotProps:l.PropTypes.object,slots:l.PropTypes.object});const Zn=()=>C.useRef(void 0);var kt=(e=>(e.FOLDER="FOLDER",e.SHARE="SHARE",e.TRASH="TRASH",e.CUSTOM="CUSTOM",e))(kt||{});const Hn=(e,t)=>{if(!e)return De;if(typeof e!="string")return e;switch(e){case"SHARE":return Yt;case"TRASH":return Ut.DeleteIcon;case"CUSTOM":return t||De;case"FOLDER":default:return De}},eo=J.forwardRef(function(t,n){const{id:o,itemId:s,label:I,disabled:f,children:a,itemData:u,iconColor:d="primary",onClick:r}=t,i=Hn(u==null?void 0:u.iconType,u==null?void 0:u.customIcon),{getRootProps:p,getContentProps:c,getLabelProps:x,getGroupTransitionProps:g,getIconContainerProps:m,status:b}=Pt({id:o,itemId:s,label:I,disabled:f,children:a,rootRef:n}),h=c(),E=J.useCallback(k=>{h.onClick&&h.onClick(k),r&&s&&r(k)},[h,r,s]);return v.jsx(Se,{itemId:s,children:v.jsxs(Et,{...p(),children:[v.jsxs(wt,{...h,onClick:E,style:{display:"flex",alignItems:"center",width:"100%"},children:[v.jsx(St,{...m(),children:v.jsx(i,{fontSize:"small",color:d})}),v.jsx(vt,{...x()}),v.jsx(He.Box,{sx:{display:"flex",marginLeft:"auto"},children:b.expandable&&(b.expanded?v.jsx(Jt,{fontSize:"small"}):v.jsx(Qt,{fontSize:"small"}))})]}),a&&v.jsx(Rt,{...g(),style:b.expanded?{borderLeft:"1px solid #bdbdbd",paddingLeft:"12px",marginLeft:"15px",marginTop:"4px",marginBottom:"4px"}:void 0})]})})}),to=e=>{const t={},n=o=>{var s;t[o.id]=o,(s=o.children)!=null&&s.length&&o.children.forEach(n)};return e.forEach(n),t},Mt=(e,t,n=[])=>{var o;for(const s of t){if(s.id===e)return n;if((o=s.children)!=null&&o.length){const I=Mt(e,s.children,[...n,s.id]);if(I.length>0)return I}}return[]},no=({items:e,onItemSelect:t,iconColor:n="primary",expandedItemId:o})=>{const s=J.useMemo(()=>to(e),[e]),I=Zn(),[f,a]=J.useState(o||null),u=J.useMemo(()=>o?s[o]?[...Mt(o,e),o]:[]:[],[o,s,e]);J.useEffect(()=>{o&&a(o)},[o]),J.useEffect(()=>{if(I.current&&u.length>0){const r=I.current;u.forEach(i=>{try{r.setItemExpansion({},i,!0)}catch(p){console.error("Erreur lors de l'expansion de l'item:",i,p)}})}},[I,u]);const d=J.useCallback((r,i)=>{t&&(console.log("Clic sur l'item:",i),t(r,i),a(i))},[t]);return v.jsx(He.Box,{sx:{minHeight:200,minWidth:200},children:v.jsx(yt,{apiRef:I,items:e,itemChildrenIndentation:"50px",defaultExpandedItems:u,selectedItems:f?[f]:[],disableSelection:!1,multiSelect:!1,slots:{item:r=>{const i=r.itemId?s[r.itemId]:void 0,p=c=>{r.itemId&&d(c,r.itemId)};return v.jsx(eo,{...r,itemData:i,iconColor:n,onClick:p})}}})})};exports.ICON_TYPE=kt;exports.default=no;