1import{u as tn,g as Ue,b as We,a as y,m as nn,_ as W,p as ge,j as h,k as z,L as rn,d as on,l as sn,s as H,e as re,h as Xe,w as ln,o as j,f as qe,an as Je,c as Ge,V as $e,a$ as Qe,am as an,U as Z,b0 as _e,a7 as N,N as U,I as cn,ab as Ee,ao as dn,at as un,n as Be,ar as Ne,ac as ze,X as pn,ai as fn,Z as gn,aq as mn,O as In,T as Se}from"./mui-CRsYZxVY.js";import{r as C}from"./vendor-Dwao9eNC.js";import{u as bn,m as hn,w as xn,b as Ye,bc as Cn,az as Ze,js as yn,dV as He,dW as me,dX as et,T as wn,dY as tt,dZ as nt,d_ as rt,d$ as ot,iA as Tn,e0 as En,fo as Sn,aD as st,e1 as it,e2 as lt,aE as vn,e3 as at,e4 as ct}from"./index-TALscxEc.js";import{u as dt}from"./useBatchUpdateCategoryOrder-CUUUOfvi.js";import{a as Mn,b as Rn}from"./query-8ViTdhdk.js";import{C as kn}from"./CategoryQuickCreateSheet-DWRrPzmh.js";import{M as Pn,G as Dn}from"./icons-D8aatgQ4.js";import"./datePickers-BIJXYOKG.js";import"./lab-DSem1Osk.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};e.SENTRY_RELEASE={id:"2ad85febf9735404429b0670d4acf56a0af5a0a2"}}catch{}})();try{(function(){var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="325b996c-bf08-4f5d-908a-9c343445f583",e._sentryDebugIdIdentifier="sentry-dbid-325b996c-bf08-4f5d-908a-9c343445f583")})()}catch{}function ut(e){return tn}function jn(e){return Ue("MuiSimpleTreeView",e)}We("MuiSimpleTreeView",["root"]);const An=(e,t)=>{const n=C.useRef({}),[r,a]=C.useState(()=>{const l={};return e.forEach(o=>{o.models&&Object.entries(o.models).forEach(([u,c])=>{n.current[u]={isControlled:t[u]!==void 0,getDefaultValue:c.getDefaultValue},l[u]=c.getDefaultValue(t)})}),l});return Object.fromEntries(Object.entries(n.current).map(([l,o])=>{const u=t[l]??r[l];return[l,{value:u,setControlledValue:c=>{o.isControlled||a(s=>y({},s,{[l]:c}))}}]}))};class On{constructor(){this.maxListeners=20,this.warnOnce=!1,this.events={}}on(t,n,r={}){let a=this.events[t];a||(a={highPriority:new Map,regular:new Map},this.events[t]=a),r.isFirst?a.highPriority.set(n,!0):a.regular.set(n,!0)}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 r=this.events[t];if(!r)return;const a=Array.from(r.highPriority.keys()),d=Array.from(r.regular.keys());for(let l=a.length-1;l>=0;l-=1){const o=a[l];r.highPriority.has(o)&&o.apply(this,n)}for(let l=0;l<d.length;l+=1){const o=d[l];r.regular.has(o)&&o.apply(this,n)}}once(t,n){const r=this;this.on(t,function a(...d){r.removeListener(t,a),n.apply(r,d)})}}const Vn=e=>e.isPropagationStopped!==void 0,pt=()=>{const[e]=C.useState(()=>new On),t=C.useCallback((...r)=>{const[a,d,l={}]=r;l.defaultMuiPrevented=!1,!(Vn(l)&&l.isPropagationStopped())&&e.emit(a,d,l)},[e]),n=C.useCallback((r,a)=>(e.on(r,a),()=>{e.removeListener(r,a)}),[e]);return{instance:{$$publishEvent:t,$$subscribeEvent:n}}};pt.params={};const ft=({plugins:e})=>{const t=new Set(e);return{instance:{getAvailablePlugins:()=>t}}};ft.params={};const gt=({params:e})=>{const t=nn(e.id),n=C.useCallback((r,a)=>a??`${t}-${r}`,[t]);return{getRootProps:()=>({id:t}),instance:{getTreeItemIdAttribute:n}}};gt.params={id:!0};const Ln=[pt,ft,gt],Fn=["slots","slotProps","apiRef","experimentalFeatures"],$n=e=>{let{props:{slots:t,slotProps:n,apiRef:r,experimentalFeatures:a},plugins:d}=e,l=W(e.props,Fn);const o={};d.forEach(i=>{Object.assign(o,i.params)});const u={},c={};Object.keys(l).forEach(i=>{const p=l[i];o[i]?u[i]=p:c[i]=p});const s=d.reduce((i,p)=>p.getDefaultizedParams?p.getDefaultizedParams(i):i,u);return{apiRef:r,forwardedProps:c,pluginParams:s,slots:t??{},slotProps:n??{},experimentalFeatures:a??{}}},_n=({plugins:e,instance:t,publicAPI:n,rootRef:r})=>({runItemPlugins:o=>{let u=null,c=null;const s=[],i={};e.forEach(I=>{if(!I.itemPlugin)return;const g=I.itemPlugin({props:o,rootRef:u,contentRef:c});g!=null&&g.rootRef&&(u=g.rootRef),g!=null&&g.contentRef&&(c=g.contentRef),g!=null&&g.propsEnhancers&&(s.push(g.propsEnhancers),Object.keys(g.propsEnhancers).forEac
1h(m=>{i[m]=!0}))});const p=I=>g=>{const m={};return s.forEach(b=>{const x=b[I];x!=null&&Object.assign(m,x(g))}),m},f=Object.fromEntries(Object.keys(i).map(I=>[I,p(I)]));return{contentRef:c,rootRef:u,propsEnhancers:f}},wrapItem:({itemId:o,children:u})=>{let c=u;for(let s=e.length-1;s>=0;s-=1){const i=e[s];i.wrapItem&&(c=i.wrapItem({itemId:o,children:c,instance:t}))}return c},wrapRoot:({children:o})=>{let u=o;for(let c=e.length-1;c>=0;c-=1){const s=e[c];s.wrapRoot&&(u=s.wrapRoot({children:u,instance:t}))}return u},instance:t,rootRef:r,publicAPI:n});function Bn(e){const t=C.useRef({});return e?(e.current==null&&(e.current={}),e.current):t.current}const Nn=({plugins:e,rootRef:t,props:n})=>{const r=[...Ln,...e],{pluginParams:a,forwardedProps:d,apiRef:l,experimentalFeatures:o,slots:u,slotProps:c}=$n({plugins:r,props:n}),s=An(r,a),p=C.useRef({}).current,f=Bn(l),I=C.useRef(null),g=ge(I,t),m=_n({plugins:r,instance:p,publicAPI:f,rootRef:I}),[b,x]=C.useState(()=>{const v={};return r.forEach(R=>{R.getInitialState&&Object.assign(v,R.getInitialState(a))}),v}),w=[],M=v=>{const R=v({instance:p,params:a,slots:u,slotProps:c,experimentalFeatures:o,state:b,setState:x,rootRef:I,models:s,plugins:r});R.getRootProps&&w.push(R.getRootProps),R.publicAPI&&Object.assign(f,R.publicAPI),R.instance&&Object.assign(p,R.instance),R.contextValue&&Object.assign(m,R.contextValue)};return r.forEach(M),{getRootProps:(v={})=>{const R=y({role:"tree"},d,v,{ref:g});return w.forEach(L=>{Object.assign(R,L(v))}),R},rootRef:g,contextValue:m,instance:p}},mt=C.createContext(null);function zn(e){const{value:t,children:n}=e;return h.jsx(mt.Provider,{value:t,children:t.wrapRoot({children:n})})}const ee=()=>{const e=C.useContext(mt);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(` 2`));return e},It=(e,t,n)=>{e.$$publishEvent(t,n)},X="__TREE_VIEW_ROOT_PARENT_ID__",bt=e=>{const t={};return e.forEach((n,r)=>{t[n]=r}),t},oe=C.createContext(()=>-1),Kn=["children"],ht=({items:e,isItemDisabled:t,getItemLabel:n,getItemId:r})=>{const a={},d={},l={[X]:[]},o=(c,s,i)=>{var g,m;const p=r?r(c):c.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(c)].join(` 3`));if(a[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(` 4`));const f=n?n(c):c.label;if(f==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(c)].join(` 5`));a[p]={id:p,label:f,parentId:i,idAttribute:void 0,expandable:!!((g=c.children)!=null&&g.length),disabled:t?t(c):!1,depth:s},d[p]=c;const I=i??X;l[I]||(l[I]=[]),l[I].push(p),(m=c.children)==null||m.forEach(b=>o(b,s+1,p))};e.forEach(c=>o(c,0,null));const u={};return Object.keys(l).forEach(c=>{u[c]=bt(l[c])}),{itemMetaMap:a,itemMap:d,itemOrderedChildrenIds:l,itemChildrenIndexes:u}},ie=({instance:e,params:t,state:n,setState:r,experimentalFeatures:a})=>{const d=C.useCallback(b=>n.items.itemMetaMap[b],[n.items.itemMetaMap]),l=C.useCallback(b=>n.items.itemMap[b],[n.items.itemMap]),o=C.useCallback(()=>{const b=x=>{const w=n.items.itemMap[x],M=W(w,Kn),T=n.items.itemOrderedChildrenIds[x];return T&&(M.children=T.map(b)),M};return n.items.itemOrderedChildrenIds[X].map(b)},[n.items.itemMap,n.items.itemOrderedChildrenIds]),u=C.useCallback(b=>{if(b==null)return!1;let x=e.getItemMeta(b);if(!x)return!1;if(x.disabled)return!0;for(;x.parentId!=null;)if(x=e.getItemMeta(x.parentId),x.disabled)return!0;return!1},[e]),c=C.useCallback(b=>{const x=e.getItemMeta(b).parentId??X;return n.items.itemChildrenIndexes[x][b]},[e,n.items.itemChildrenIndexes]),s=C.useCallback(b=>n.items.itemOrderedChildrenIds[b??X]??[],[n.items.itemOrderedChildrenIds]),i=b=>{const x=e.getItemMeta(b);
5return x==null?null:document.getElementById(e.getTreeItemIdAttribute(b,x.idAttribute))},p=b=>t.disabledItemsFocusable?!0:!e.isItemDisabled(b),f=C.useRef(!1),I=C.useCallback(()=>{f.current=!0},[]),g=C.useCallback(()=>f.current,[]);return C.useEffect(()=>{e.areItemUpdatesPrevented()||r(b=>{const x=ht({items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel});return Object.values(b.items.itemMetaMap).forEach(w=>{x.itemMetaMap[w.id]||It(e,"removeItem",{id:w.id})}),y({},b,{items:x})})},[e,r,t.items,t.isItemDisabled,t.getItemId,t.getItemLabel]),{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof t.itemChildrenIndentation=="number"?`${t.itemChildrenIndentation}px`:t.itemChildrenIndentation}}),publicAPI:{getItem:l,getItemDOMElement:i,getItemTree:o,getItemOrderedChildrenIds:s},instance:{getItemMeta:d,getItem:l,getItemTree:o,getItemsToRender:()=>{const b=x=>{var M;const w=n.items.itemMetaMap[x];return{label:w.label,itemId:w.id,id:w.idAttribute,children:(M=n.items.itemOrderedChildrenIds[x])==null?void 0:M.map(b)}};return n.items.itemOrderedChildrenIds[X].map(b)},getItemIndex:c,getItemDOMElement:i,getItemOrderedChildrenIds:s,isItemDisabled:u,isItemNavigable:p,preventItemUpdates:I,areItemUpdatesPrevented:g},contextValue:{items:{onItemClick:t.onItemClick,disabledItemsFocusable:t.disabledItemsFocusable,indentationAtItemLevel:a.indentationAtItemLevel??!1}}}};ie.getInitialState=e=>({items:ht({items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel})});ie.getDefaultizedParams=e=>y({},e,{disabledItemsFocusable:e.disabledItemsFocusable??!1,itemChildrenIndentation:e.itemChildrenIndentation??"12px"});ie.wrapRoot=({children:e,instance:t})=>h.jsx(oe.Provider,{value:n=>{var r;return((r=t.getItemMeta(n))==null?void 0:r.depth)??0},children:e});ie.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};const Ie=({instance:e,params:t,models:n})=>{const r=C.useMemo(()=>{const i=new Map;return n.expandedItems.value.forEach(p=>{i.set(p,!0)}),i},[n.expandedItems.value]),a=(i,p)=>{var f;(f=t.onExpandedItemsChange)==null||f.call(t,i,p),n.expandedItems.setControlledValue(p)},d=C.useCallback(i=>r.has(i),[r]),l=C.useCallback(i=>{var p;return!!((p=e.getItemMeta(i))!=null&&p.expandable)},[e]),o=z((i,p)=>{const f=e.isItemExpanded(p);e.setItemExpansion(i,p,!f)}),u=z((i,p,f)=>{if(e.isItemExpanded(p)===f)return;let g;f?g=[p].concat(n.expandedItems.value):g=n.expandedItems.value.filter(m=>m!==p),t.onItemExpansionToggle&&t.onItemExpansionToggle(i,p,f),a(i,g)}),c=(i,p)=>{const f=e.getItemMeta(p),g=e.getItemOrderedChildrenIds(f.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)}),a(i,m))},s=C.useMemo(()=>t.expansionTrigger?t.expansionTrigger:e.isTreeViewEditable?"iconContainer":"content",[t.expansionTrigger,e.isTreeViewEditable]);return{publicAPI:{setItemExpansion:u},instance:{isItemExpanded:d,isItemExpandable:l,setItemExpansion:u,toggleItemExpansion:o,expandAllSiblings:c},contextValue:{expansion:{expansionTrigger:s}}}};Ie.models={expandedItems:{getDefaultValue:e=>e.defaultExpandedItems}};const Un=[];Ie.getDefaultizedParams=e=>y({},e,{defaultExpandedItems:e.defaultExpandedItems??Un});Ie.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const xt=(e,t)=>
5{let n=t.length-1;for(;n>=0&&!e.isItemNavigable(t[n]);)n-=1;if(n!==-1)return t[n]},Ct=(e,t)=>{const n=e.getItemMeta(t),r=e.getItemOrderedChildrenIds(n.parentId),a=e.getItemIndex(t);if(a===0)return n.parentId;let d=a-1;for(;!e.isItemNavigable(r[d])&&d>=0;)d-=1;if(d===-1)return n.parentId==null?null:Ct(e,n.parentId);let l=r[d],o=xt(e,e.getItemOrderedChildrenIds(l));for(;e.isItemExpanded(l)&&o!=null;)l=o,o=e.getItemOrderedChildrenIds(l).find(e.isItemNavigable);return l},ue=(e,t)=>{if(e.isItemExpanded(t)){const r=e.getItemOrderedChildrenIds(t).find(e.isItemNavigable);if(r!=null)return r}let n=e.getItemMeta(t);for(;n!=null;){const r=e.getItemOrderedChildrenIds(n.parentId),a=e.getItemIndex(n.id);if(a<r.length-1){let d=a+1;for(;!e.isItemNavigable(r[d])&&d<r.length-1;)d+=1;if(e.isItemNavigable(r[d]))return r[d]}n=e.getItemMeta(n.parentId)}return null},yt=e=>{let t=null;for(;t==null||e.isItemExpanded(t);){const n=e.getItemOrderedChildrenIds(t),r=xt(e,n);if(r==null)return t;t=r}return t},se=e=>e.getItemOrderedChildrenIds(null).find(e.isItemNavigable),wt=(e,t,n
5)=>{if(t===n)return[t,n];const r=e.getItemMeta(t),a=e.getItemMeta(n);if(r.parentId===a.id||a.parentId===r.id)return a.parentId===r.id?[r.id,a.id]:[a.id,r.id];const d=[r.id],l=[a.id];let o=r.parentId,u=a.parentId,c=l.indexOf(o)!==-1,s=d.indexOf(u)!==-1,i=!0,p=!0;for(;!s&&!c;)i&&(d.push(o),c=l.indexOf(o)!==-1,i=o!==null,!c&&i&&(o=e.getItemMeta(o).parentId)),p&&!c&&(l.push(u),s=d.indexOf(u)!==-1,p=u!==null,!s&&p&&(u=e.getItemMeta(u).parentId));const f=c?o:u,I=e.getItemOrderedChildrenIds(f),g=d[d.indexOf(f)-1],m=l[l.indexOf(f)-1];return I.indexOf(g)<I.indexOf(m)?[t,n]:[n,t]},Wn=(e,t,n)=>{const r=u=>{if(e.isItemExpandable(u)&&e.isItemExpanded(u))return e.getItemOrderedChildrenIds(u)[0];let c=e.getItemMeta(u);for(;c!=null;){const s=e.getItemOrderedChildrenIds(c.parentId),i=e.getItemIndex(c.id);if(i<s.length-1)return s[i+1];c=e.getItemMeta(c.parentId)}throw new Error("Invalid range")},[a,d]=wt(e,t,n),l=[a];let o=a;for(;o!==d;)o=r(o),e.isItemDisabled(o)||l.push(o);return l},Xn=e=>{let t=se(e);const n=[];for(;t!=null;)n.push(t),t=ue(e,t);return n},ve=(e,t)=>t!==e.closest('*[role="treeitem"]'),pe=e=>Array.isArray(e)?e:e!=null?[e]:[],Te=e=>{const t={};return e.forEach(n=>{t[n]=!0}),t},be=({instance:e,params:t,models:n})=>{const r=C.useRef(null),a=C.useRef({}),d=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]),l=(g,m)=>{if(t.onItemSelectionToggle)if(t.multiSelect){const b=m.filter(w=>!e.isItemSelected(w)),x=n.selectedItems.value.filter(w=>!m.includes(w));b.forEach(w=>{t.onItemSelectionToggle(g,w,!0)}),x.forEach(w=>{t.onItemSelectionToggle(g,w,!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)},o=g=>d.has(g),u=({event:g,itemId:m,keepExistingSelection:b=!1,shouldBeSelected:x})=>{if(t.disableSelection)return;let w;if(b){const M=pe(n.selectedItems.value),T=e.isItemSelected(m);T&&(x===!1||x==null)?w=M.filter(v=>v!==m):!T&&(x===!0||x==null)?w=[m].concat(M):w=M}else x===!1||x==null&&e.isItemSelected(m)?w=t.multiSelect?[]:null:w=t.multiSelect?[m]:m;l(g,w),r.current=m,a.current={}},c=(g,[m,b])=>
5{if(t.disableSelection||!t.multiSelect)return;let x=pe(n.selectedItems.value).slice();Object.keys(a.current).length>0&&(x=x.filter(v=>!a.current[v]));const w=Te(x),M=Wn(e,m,b),T=M.filter(v=>!w[v]);x=x.concat(T),l(g,x),a.current=Te(M)};return{getRootProps:()=>({"aria-multiselectable":t.multiSelect}),publicAPI:{selectItem:u},instance:{isItemSelected:o,selectItem:u,selectAllNavigableItems:g=>{if(t.disableSelection||!t.multiSelect)return;const m=Xn(e);l(g,m),a.current=Te(m)},expandSelectionRange:(g,m)=>{if(r.current!=null){const[b,x]=wt(e,m,r.current);c(g,[b,x])}},selectRangeFromStartToItem:(g,m)=>{c(g,[se(e),m])},selectRangeFromItemToEnd:(g,m)=>{c(g,[m,yt(e)])},selectItemFromArrowNavigation:(g,m,b)=>{if(t.disableSelection||!t.multiSelect)return;let x=pe(n.selectedItems.value).slice();Object.keys(a.current).length===0?(x.push(b),a.current={[m]:!0,[b]:!0}):(a.current[m]||(a.current={}),a.current[b]?(x=x.filter(w=>w!==m),delete a.current[m]):(x.push(b),a.current[b]=!0)),l(g,x)}},contextValue:{selection:{multiSelect:t.multiSelect,checkboxSelection:t.checkboxSelection,disableSelection:t.disableSelection}}}};be.models={selectedItems:{getDefaultValue:e=>e.defaultSelectedItems}};const qn=[];be.getDefaultizedParams=e=>y({},e,{disableSelection:e.disableSelection??!1,multiSelect:e.multiSelect??!1,checkboxSelection:e.checkboxSelection??!1,defaultSelectedItems:e.defaultSelectedItems??(e.multiSelect?qn:null)});be.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0};const Ke=1e3;class Jn{constructor(t=Ke){this.timeouts=new Map,this.cleanupTimeout=Ke,this.cleanupTimeout=t}register(t,n,r){this.timeouts||(this.timeouts=new Map);const a=setTimeout(()=>{typeof n=="function"&&n(),this.timeouts.delete(r.cleanupToken)},this.cleanupTimeout);this.timeouts.set(r.cleanupToken,a)}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 Gn{constructor(){this.registry=new FinalizationRegistry(t=>{typeof t=="function"&&t()})}register(t,n,r){this.registry.register(t,n,r)}unregister(t){this.registry.unregister(t)}reset(){}}class Qn{}function Yn(e){let t=0;return function(r,a,d){e.registry===null&&(e.registry=typeof FinalizationRegistry<"u"?new Gn:new Jn);const[l]=C.useState(new Qn),o=C.useRef(null),u=C.useRef();u.current=d;const c=C.useRef(null);if(!o.current&&u.current){const s=(i,p)=>{var f;p.defaultMuiPrevented||(f=u.current)==null||f.call(u,i,p)};o.current=r.$$subscribeEvent(a,s),t+=1,c.current={cleanupToken:t},e.registry.register(l,()=>{var i;(i=o.current)==null||i.call(o),o.current=null,c.current=null},c.current)}else!u.current&&o.current&&(o.current(),o.current=null,c.current&&(e.registry.unregister(c.current),c.current=null));C.useEffect(()=>{if(!o.current&&u.current){const s=(i,p)=>{var f;p.defaultMuiPrevented||(f=u.current)==null||f.call(u,i,p)};o.current=r.$$subscribeEvent(a,s)}return c.current&&e.registry&&(e.registry.unregister(c.current),c.current=null),()=>{var s;(s=o.current)==null||s.call(o),o.current=null}},[r,a])}}const Zn={registry:null},Hn=Yn(Zn),Tt=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?Tt(t.shadowRoot):t:null};function er(e){return e.replace(/["\\]/g,"\\$&")}const tr=(e,t)=>{let n=pe(t).find(r=>{if(!e.isItemNavigable(r))return!1;const a=e.getItemMeta(r);return a&&(a.parentId==null||e.isItemExpanded(a.parentId))});return n==null&&(n=se(e)),n},Me=({instance:e,params:t,state:n,setState:r,models:a,rootRef:d})=>{const l=tr(e,a.selectedItems.value),o=z(m=>{const b=typeof m=="function"?m(n.focusedItemId):m;n.focusedItemId!==b&&r(x=>y({},x,{focusedItemId:b}))}),u=C.useCallback(()=>!!d.current&&d.current.contains(Tt(rn(d.current))),[d]),c=C.useCallback(m=>n.focusedItemId===m&&u(),[n.focusedItemId,u]),s=m=>{const b=e.getItemMeta(m);return b&&(b.parentId==null||e.isItemExpanded(b.parentId))},i=(m,b)=>{const x=e.getItemDOMElement(b);x&&x.focus(),o(b),t.onItemFocus&&t.onItemFocus(m,b)},p=z((m,b)=>{s(b)&&i(m,b)}),f=z(()=>{if(n.focusedItemId==null)return;const m=e.getItemMeta(n.focusedItemId);if(m){const b=document.getElementById(e.getTreeItemIdAttribute(n.focusedItemId,m.idAttribute));b&&b.blur()}o(null)}),I=m=>m===l;Hn(e,"removeItem",({id:m})=>{n.focusedItemId===m&&i(null,l)});const g=m=>b=>{var x;(x=m.onFocus)==null||x.call(m,b),!b.defaultMuiPrevented&&b.target===b.currentTarget&&i(b,l)};return{getRootProps:m=>({onFocus:g(m)}),publicAPI:{focusItem:p},instance:{isItemFocused:c,canItemBeTabbed:I,focusItem:p,removeFocusedItem:f}}};Me.getInitialState=()=>({focusedItemId:null});Me.params={onItemFocus:!0};const fe=(e,t)=>
5e.getAvailablePlugins().has(t),nr=({props:e})=>{const{instance:t}=ee(),{label:n,itemId:r}=e,[a,d]=C.useState(n),l=t.isItemBeingEdited(r);return C.useEffect(()=>{l||d(n)},[l,n]),{propsEnhancers:{labelInput:({externalEventHandlers:o,interactions:u})=>t.isItemEditable(r)?{value:a??"","data-element":"labelInput",onChange:f=>{var I;(I=o.onChange)==null||I.call(o,f),d(f.target.value)},onKeyDown:f=>{var g;if((g=o.onKeyDown)==null||g.call(o,f),f.defaultMuiPrevented)return;const I=f.target;f.key==="Enter"&&I.value?u.handleSaveItemLabel(f,I.value):f.key==="Escape"&&u.handleCancelItemLabelEditing(f)},onBlur:f=>{var I;(I=o.onBlur)==null||I.call(o,f),!f.defaultMuiPrevented&&f.target.value&&u.handleSaveItemLabel(f,f.target.value)},autoFocus:!0,type:"text"}:{}}}},q=({instance:e,state:t,setState:n,params:r,experimentalFeatures:a})=>{const d=C.useRef(t.editedItemId),l=p=>d.current===p,o=p=>{n(f=>y({},f,{editedItemId:p})),d.current=p},u=p=>p===t.editedItemId,c=!!r.isItemEditable&&!!a.labelEditing,s=p=>{if(p==null||!c)return!1;const f=e.getItem(p);return f?typeof r.isItemEditable=="function"?r.isItemEditable(f):!!r.isItemEditable:!1},i=(p,f)=>{if(!f)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.",p].join(` 6`));n(I=>{const g=I.items.itemMetaMap[p];return g.label!==f?y({},I,{items:y({},I.items,{itemMetaMap:y({},I.items.itemMetaMap,{[p]:y({},g,{label:f})})})}):I}),r.onItemLabelChange&&r.onItemLabelChange(p,f)};return{instance:{setEditedItemId:o,isItemBeingEdited:u,updateItemLabel:i,isItemEditable:s,isTreeViewEditable:c,isItemBeingEditedRef:l},publicAPI:{updateItemLabel:i}}};q.itemPlugin=nr;q.getInitialState=()=>({editedItemId:null});q.params={onItemLabelChange:!0,isItemEditable:!0};function rr(e){return!!e&&e.length===1&&!!e.match(/\S/)}const Et=({instance:e,params:t,state:n})=>{const r=on(),a=C.useRef({}),d=z(s=>{a.current=s(a.current)});C.useEffect(()=>{if(e.areItemUpdatesPrevented())return;const s={},i=p=>{s[p.id]=p.label.substring(0,1).toLowerCase()};Object.values(n.items.itemMetaMap).forEach(i),a.current=s},[n.items.itemMetaMap,t.getItemId,e]);const l=(s,i)=>{const p=i.toLowerCase(),f=b=>{const x=ue(e,b);return x===null?se(e):x};let I=null,g=f(s);const m={};for(;I==null&&!m[g];)a.current[g]===p?I=g:(m[g]=!0,g=f(g));return I},o=s=>!t.disableSelection&&!e.isItemDisabled(s),u=s=>!e.isItemDisabled(s)&&e.isItemExpandable(s);return{instance:{updateFirstCharMap:d,handleItemKeyDown:(s,i)=>{if(s.defaultMuiPrevented||s.altKey||ve(s.target,s.currentTarget))return;const p=s.ctrlKey||s.metaKey,f=s.key;switch(!0){case(f===" "&&o(i)):{s.preventDefault(),t.multiSelect&&s.shiftKey?e.expandSelectionRange(s,i):e.selectItem({event:s,itemId:i,keepExistingSelection:t.multiSelect,shouldBeSelected:t.multiSelect?void 0:!0});break}case f==="Enter":{fe(e,q)&&e.isItemEditable(i)&&!e.isItemBeingEdited(i)?e.setEditedItemId(i):u(i)?(e.toggleItemExpansion(s,i),s.preventDefault()):o(i)&&(t.multiSelect?(s.preventDefault(),e.selectItem({event:s,itemId:i,keepExistingSelection:!0}
6)):e.isItemSelected(i)||(e.selectItem({event:s,itemId:i}),s.preventDefault()));break}case f==="ArrowDown":{const I=ue(e,i);I&&(s.preventDefault(),e.focusItem(s,I),t.multiSelect&&s.shiftKey&&o(I)&&e.selectItemFromArrowNavigation(s,i,I));break}case f==="ArrowUp":{const I=Ct(e,i);I&&(s.preventDefault(),e.focusItem(s,I),t.multiSelect&&s.shiftKey&&o(I)&&e.selectItemFromArrowNavigation(s,i,I));break}case(f==="ArrowRight"&&!r||f==="ArrowLeft"&&r):{if(e.isItemExpanded(i)){const I=ue(e,i);I&&(e.focusItem(s,I),s.preventDefault())}else u(i)&&(e.toggleItemExpansion(s,i),s.preventDefault());break}case(f==="ArrowLeft"&&!r||f==="ArrowRight"&&r):{if(u(i)&&e.isItemExpanded(i))e.toggleItemExpansion(s,i),s.preventDefault();else{const I=e.getItemMeta(i).parentId;I&&(e.focusItem(s,I),s.preventDefault())}break}case f==="Home":{o(i)&&t.multiSelect&&p&&s.shiftKey?e.selectRangeFromStartToItem(s,i):e.focusItem(s,se(e)),s.preventDefault();break}case f==="End":{o(i)&&t.multiSelect&&p&&s.shiftKey?e.selectRangeFromItemToEnd(s,i):e.focusItem(s,yt(e)),s.preventDefault();break}case f==="*":{e.expandAllSiblings(s,i),s.preventDefault();break}case(f==="a"&&p&&t.multiSelect&&!t.disableSelection):{e.selectAllNavigableItems(s),s.preventDefault();break}case(!p&&!s.shiftKey&&rr(f)):{const I=l(i,f);I!=null&&(e.focusItem(s,I),s.preventDefault());break}}}}}};Et.params={};const St=({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}}}});St.params={};const vt=C.createContext(null);function Mt(e){const{children:t,itemId:n=null}=e,{instance:r,rootRef:a}=ee(),d=C.useRef(new Map);C.useEffect(()=>{if(!a.current)return;let o=null;if(n==null)o=a.current.id;else{const f=r.getItemMeta(n);f!==void 0&&(o=r.getTreeItemIdAttribute(n,f.idAttribute))}if(o==null)return;const u=r.getItemOrderedChildrenIds(n??null)??[],c=er(o),s=a.current.querySelectorAll(`${n==null?"":`*[id="${c}"] `}[role="treeitem"]:not(*[id="${c}"] [role="treeitem"] [role="treeitem"])`),i=Array.from(s).map(f=>d.current.get(f.id));(i.length!==u.length||i.some((f,I)=>f!==u[I]))&&r.setJSXItemsOrderedChildrenIds(n??null,i)});const l=C.useMemo(()=>({registerChild:(o,u)=>d.current.set(o,u),unregisterChild:o=>d.current.delete(o),parentId:n}),[n]);return h.jsx(vt.Provider,{value:l,children:t})}const le=({instance:e,setState:t})=>{e.preventItemUpdates();const n=z(d=>(t(l=>{if(l.items.itemMetaMap[d.id]!=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: "${d.id}"`].join(` 7`));return y({},l,{items:y({},l.items,{itemMetaMap:y({},l.items.itemMetaMap,{[d.id]:d}),itemMap:y({},l.items.itemMap,{[d.id]:{id:d.id,label:d.label}})})})}),()=>{t(l=>{const o=y({},l.items.itemMetaMap),u=y({},l.items.itemMap);return delete o[d.id],delete u[d.id],y({},l,{items:y({},l.items,{itemMetaMap:o,itemMap:u})})}),It(e,"removeItem",{id:d.id})})),r=(d,l)=>{const o=d??X;t(u=>y({},u,{items:y({},u.items,{itemOrderedChildrenIds:y({},u.items.itemOrderedChildrenIds,{[o]:l}),itemChildrenIndexes:y({},u.items.itemChildrenIndexes,{[o]:bt(l)})})}))},a=z((d,l)=>(e.updateFirstCharMap(o=>(o[d]=l,o)),()=>{e.updateFirstCharMap(o=>{const u=y({},o);return delete u[d],u})}));return{instance:{insertJSXItem:n,setJSXItemsOrderedChildrenIds:r,mapFirstCharFromJSX:a}}},Rt=e=>Array.isArray(e)?e.length>0&&e.some(Rt):!!e,or=({props:e,rootRef:t,contentRef:n})=>{const{instance:r}=ee(),{children:a,disabled:d=!1,label:l,itemId:o,id:u}=e,c=C.useContext(vt);if(c==null)throw new Error(["MUI X: Could not find the Tree View Children Item context.","It looks like you rendered your component outside of a SimpleTreeView parent component.","This can also happen if you are bundling multiple versions of the Tree View."].join(` 8`));const{registerChild:s,unregisterChild:i,parentId:p}=c,f=Rt(a),I=C.useRef(null),g=ge(I,n);return sn(()=>{const m=r.getTreeItemIdAttribute(o,u);return s(m,o),()=>{i(m)}},[r,s,i,o,u]),C.useEffect(()=>r.insertJSXItem({id:o,idAttribute:u,parentId:p,expandable:f,disabled:d}),[r,p,o,f,d,u]),C.useEffect(()=>{var m;if(l)return r.mapFirstCharFromJSX(o,(((m=I.current)==null?void 0:m.textContent)??"").substring(0,1).toLowerCase())},[r,o,l]),{contentRef:g,rootRef:t}};le.itemPlugin=or;le.wrapItem=({children:e,itemId:t})=>{const n=C.useContext(oe);return h.jsx(Mt,{itemId:t,children:h.jsx(oe.Provider,{value:n+1,children:e})})};le.wrapRoot=({children:e})=>h.jsx(Mt,{children:h.jsx(oe.Provider,{value:0,children:e})});le.params={};const sr=[ie,Ie,be,Me,Et,St,le],ir=ut(),lr=e=>{const{classes:t}=e;return Xe({root:["root"]},jn,t)},ar=H("ul",{name:"MuiSimpleTreeView",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),cr=[],dr=C.forwardRef(function(t,n){const r=ir({props:t,name:"MuiSimpleTreeView"}),a=r,{getRootProps:d,contextValue:l}=Nn({plugins:sr,rootRef:n,props:y({},r,{items:cr})}),{slots:o,slotProps:u}=r,c=lr(r),s=(o==null?void 0:o.root)??ar,i=re({elementType:s,externalSlotProps:u==null?void 0:u.root,className:c.root,getSlotProps:d,ownerState:a});return h.jsx(zn,{value:l,children:h.jsx(s,y({},i))})});function kt(e){const{instance:t,items:{onItemClick:n},selection:{multiSelect:r,checkboxSelection:a,disableSelection:d},expansion:{expansionTrigger:l}}=ee(),o=t.isItemExpandable(e),u=t.isItemExpanded(e),c=t.isItemFocused(e),s=t.isItemSelected(e),i=t.isItemDisabled(e),p=t!=null&&t.isItemBeingEdited?t==null?void 0:t.isItemBeingEdited(e):!1,f=t.isItemEditable?t.isItemEditable(e):!1,I=T=>
8{if(!i){c||t.focusItem(T,e);const v=r&&(T.shiftKey||T.ctrlKey||T.metaKey);o&&!(v&&t.isItemExpanded(e))&&t.toggleItemExpansion(T,e)}},g=T=>{i||(c||t.focusItem(T,e),r&&(T.shiftKey||T.ctrlKey||T.metaKey)?T.shiftKey?t.expandSelectionRange(T,e):t.selectItem({event:T,itemId:e,keepExistingSelection:!0}):t.selectItem({event:T,itemId:e,shouldBeSelected:!0}))},m=T=>{if(d||i)return;const v=T.nativeEvent.shiftKey;r&&v?t.expandSelectionRange(T,e):t.selectItem({event:T,itemId:e,keepExistingSelection:r,shouldBeSelected:T.target.checked})},b=T=>{(T.shiftKey||T.ctrlKey||T.metaKey||i)&&T.preventDefault()},x=()=>{fe(t,q)&&t.isItemEditable(e)&&(t.isItemBeingEdited(e)?t.setEditedItemId(null):t.setEditedItemId(e))};return{disabled:i,expanded:u,selected:s,focused:c,editable:f,editing:p,disableSelection:d,checkboxSelection:a,handleExpansion:I,handleSelection:g,handleCheckboxSelection:m,handleContentClick:n,preventSelection:b,expansionTrigger:l,toggleItemEditing:x,handleSaveItemLabel:(T,v)=>{fe(t,q)&&t.isItemBeingEditedRef(e)&&(t.updateItemLabel(e,v),x(),t.focusItem(T,e))},handleCancelItemLabelEditing:T=>{fe(t,q)&&t.isItemBeingEditedRef(e)&&(x(),t.focusItem(T,e))}}}const ur=H("div",{name:"MuiTreeItem2DragAndDropOverlay",slot:"Root",overridesResolver:(e,t)=>t.root,shouldForwardProp:e=>ln(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:j((e.vars||e).palette.primary.dark,.15)}},{props:{action:"reorder-above"},style:y({marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderTop:`1px solid ${j((e.vars||e).palette.grey[900],.6)}`},e.applyStyles("dark",{borderTopColor:j((e.vars||e).palette.grey[100],.6)}))},{props:{action:"reorder-below"},style:y({marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderBottom:`1px solid ${j((e.vars||e).palette.grey[900],.6)}`},e.applyStyles("dark",{borderBottomColor:j((e.vars||e).palette.grey[100],.6)}))},{props:{action:"move-to-parent"},style:y({marginLeft:"calc(var(--TreeView-indentMultiplier) * calc(var(--TreeView-itemDepth) - 1))",borderBottom:`1px solid ${j((e.vars||e).palette.grey[900],.6)}`},e.applyStyles("dark",{borderBottomColor:j((e.vars||e).palette.grey[900],.6)}))}]}));function pr(e){return e.action==null?null:h.jsx(ur,y({},e))}const fr=H("input",{name:"MuiTreeItem2",slot:"LabelInput",overridesResolver:(e,t)=>t.labelInput})(({theme:e})=>y({},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}`}})),gr=["classes","className","displayIcon","expansionIcon","icon","label","itemId","onClick","onMouseDown","dragAndDropOverlayProps","labelInputProps"],Pt=C.forwardRef(function(t,n){const{classes:r,className:a,displayIcon:d,expansionIcon:l,icon:o,label:u,itemId:c,onClick:s,onMouseDown:i,dragAndDropOverlayProps:p,labelInputProps:f}=t,I=W(t,gr),{disabled:g,expanded:m,selected:b,focused:x,editing:w,editable:M,disableSelection:T,checkboxSelection:v,handleExpansion:R,handleSelection:L,handleCheckboxSelection:F,handleContentClick:A,preventSelection:J,expansionTrigger:K,toggleItemEditing:$}=kt(c),E=o||l||d,_=C.useRef(null),O=P=>{J(P),i&&i(P)},G=P=>{var k;A==null||A(P,c),!((k=_.current)!=null&&k.contains(P.target))&&(K==="content"&&R(P),v||L(P),s&&s(P))},Q=P=>{P.defaultMuiPrevented||$()};return h.jsxs("div",y({},I,{className:qe(a,r.root,m&&r.expanded,b&&r.selected,x&&r.focused,g&&r.disabled,w&&r.editing,M&&r.editable),onClick:G,onMouseDown:O,ref:n,children:[h.jsx("div",{className:r.iconContainer,children:E}),v&&h.jsx(Je,{className:r.checkbox,checked:b,onChange:F,disabled:g||T,ref:_,tabIndex:-1}),w?h.jsx(fr,y({},f,{className:r.labelInput})):h.jsx("div",y({className:r.label},M&&{onDoubleClick:Q},{children:u})),p&&h.jsx(pr,y({},p))]}))});function mr(e){return Ue("MuiTreeItem",e)}const B=We("MuiTreeItem",["root","groupTransition","content","expanded","selected","focused","disabled","iconContainer","label","checkbox","labelInput","editable","editing","dragAndDropOverlay"]),Ir=Ge(h.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"TreeViewExpandIcon"),br=Ge(h.jsx("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"TreeViewCollapseIcon");function Dt(e){const{children:t,itemId:n}=e,{wrapItem:r,instance:a}=ee();return r({children:t,itemId:n,instance:a})}Dt.propTypes={children:$e.node,itemId:$e.string.isRequired};const hr=["children","className","slots","slotProps","ContentComponent","ContentProps","itemId","id","label","onClick","onMouseDown","onFocus","onBlur","onKeyDown"],xr=["ownerState"],Cr=["ownerState"],yr=["ownerState"],wr=ut(),Tr=e=>{const{classes:t}=e;
8return Xe({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"]},mr,t)},Er=H("li",{name:"MuiTreeItem",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),Sr=H(Pt,{name:"MuiTreeItem",slot:"Content",overridesResolver:(e,t)=>[t.content,t.iconContainer&&{[`& .${B.iconContainer}`]:t.iconContainer},t.label&&{[`& .${B.label}`]:t.label}],shouldForwardProp:e=>Qe(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"}},[`&.${B.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"},[`&.${B.focused}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`&.${B.selected}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:j(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}))`:j(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})`:j(e.palette.primary.main,e.palette.action.selectedOpacity)}},[`&.${B.focused}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:j(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}},[`& .${B.iconContainer}`]:{width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}},[`& .${B.label}`]:y({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative"},e.typography.body1),[`& .${B.checkbox}`]:{padding:0},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}}]})),vr=H(an,{name:"MuiTreeItem",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>Qe(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]}),jt=C.forwardRef(function(t,n){var je,Ae,Oe,Ve;const{icons:r,runItemPlugins:a,items:{disabledItemsFocusable:d,indentationAtItemLevel:l},selection:{multiSelect:o},expansion:{expansionTrigger:u},instance:c}=ee(),s=C.useContext(oe),i=wr({props:t,name:"MuiTreeItem"}),{children:p,className:f,slots:I,slotProps:g,ContentComponent:m=Pt,ContentProps:b,itemId:x,id:w,label:M,onClick:T,onMouseDown:v,onBlur:R,onKeyDown:L}=i,F=W(i,hr),{expanded:A,focused:J,selected:K,disabled:$,editing:E,handleExpansion:_,handleCancelItemLabelEditing:O,handleSaveItemLabel:G}=kt(x),{contentRef:Q,rootRef:P,propsEnhancers:k}=a(i),V=C.useRef(null),ae=C.useRef(null),Vt=ge(n,P,V),Lt=ge(b==null?void 0:b.ref,Q,ae),te={expandIcon:(I==null?void 0:I.expandIcon)??r.slots.expandIcon??Ir,collapseIcon:(I==null?void 0:I.collapseIcon)??r.slots.collapseIcon??br,endIcon:(I==null?void 0:I.endIcon)??r.slots.endIcon,icon:I==null?void 0:I.icon,groupTransition:I==null?void 0:I.groupTransition},Re=S=>Array.isArray(S)?S.length>0&&S.some(Re):!!S,ce=Re(p),he=y({},i,{expanded:A,focused:J,selected:K,disabled:$,indentationAtItemLevel:l}),D=Tr(he),ke=te.groupTransition??void 0,Ft=re({elementType:ke,ownerState:{},externalSlotProps:g==null?void 0:g.groupTransition,additionalProps:y({unmountOnExit:!0,in:A,component:"ul",role:"group"},l?{indentationAtItemLevel:!0}:{}),className:D.groupTransition}),$t=S=>{u==="iconContainer"&&_(S)},xe=A?te.collapseIcon:te.expandIcon,_t=re({elementType:xe,ownerState:{},externalSlotProps:S=>A?y({},Z(r.slotProps.collapseIcon,S),Z(g==null?void 0:g.collapseIcon,S)):y({},Z(r.slotProps.expandIcon,S),Z(g==null?void 0:g.expandIcon,S)),additionalProps:{onClick:$t}}),Bt=W(_t,xr),Nt=ce&&xe?h.jsx(xe,y({},Bt)):null,Ce=ce?void 0:te.endIcon,zt=re({elementType:Ce,ownerState:{},externalSlotProps:S=>ce?{}:y({},Z(r.slotProps.endIcon,S),Z(g==null?void 0:g.endIcon,S))}),Kt=W(zt,Cr),Ut=Ce?h.jsx(Ce,y({},Kt)):null,ye=te.icon,Wt=re({elementType:ye,ownerState:{},externalSlotProps:g==null?void 0:g.icon}),Xt=W(Wt,yr),qt=ye?h.jsx(ye,y({},Xt)):null;let we;o?we=K:K&&(we=!0);function Jt(S){!J&&(!$||d)&&S.currentTarget===S.target&&c.focusItem(S,x)}function Gt(S){var Y,ne,Le,Fe;R==null||R(S),!(E||S.relatedTarget&&ve(S.relatedTarget,V.current)&&(S.target&&((ne=(Y=S.target)==null?void 0:Y.dataset)==null?void 0:ne.element)==="labelInput"&&ve(S.target,V.current)||((Fe=(Le=S.relatedTarget)==null?void 0:Le.dataset)==null?void 0:Fe.element)==="labelInput"))&&c.removeFocusedItem()}const Qt=S=>{var Y,ne;L==null||L(S),((ne=(Y=S.target)==null?void 0:Y.dataset)==null?void 0:ne.element)!=="labelInput"&&c.handleItemKeyDown(S,x)},Yt=c.getTreeItemIdAttribute(x,w),Zt=c.canItemBeTabbed(x)?0:-1,de={rootRefObject:V,contentRefObject:ae,interactions:{handleSaveItemLabel:G,handleCancelItemLabelEditing:O}},Ht=((je=k.root)==null?void 0:je.call(k,y({},de,{externalEventHandlers:_e(F)})))??{},en=((Ae=k.content)==null?void 0:Ae.call(k,y({},de,{externalEventHandlers:_e(b)})))??{},Pe=((Oe=k.dragAndDropOverlay)==null?void 0:Oe.call(k,y({},de,{externalEventHandlers:{}})))??{},De=((Ve=k.labelInput)==null?void 0:Ve.call(k,y({},de,{externalEventHandlers:{}})))??{};return h.jsx(Dt,{itemId:x,children:h.jsxs(Er,y({className:qe(D.root,f),role:"treeitem","aria-expanded":ce?A:void 0,"aria-selected":we,"aria-disabled":$||void 0,id:Yt,tabIndex:Zt},F,{ownerState:he,onFocus:Jt,onBlur:Gt,onKeyDown:Qt,ref:Vt,style:l?y({},F.style,{"--TreeView-itemDepth":typeof s=="function"?s(x):s}):F.style},Ht,{children:[h.jsx(Sr,y({as:m,classes:{root:D.content,expanded:D.expanded,selected:D.selected,focused:D.focused,disabled:D.disabled,editable:D.editable,editing:D.editing,iconContainer:D.iconContainer,label:D.label,labelInput:D.labelInput,checkbox:D.checkbox},label:M,itemId:x,onClick:T,onMouseDown:v,icon:qt,expansionIcon:Nt,displayIcon:Ut,ownerState:he},b,en,Pe.action==null?{}:{dragAndDropOverlayProps:Pe},De.value==null?{}:{labelInputProps:De},{ref:Lt})),p&&h.jsx(vr,y({as:ke},Ft,{children:p}))]}))})}),Mr=()=>{const e=Mn(),{user:t}=bn(),n=t==null?void 0:t.id,{triggerRevalidation:r}=hn();return Rn({mutationFn:async({categoryIds:a})=>{if(!n)throw new Error("User must be logged in to delete categories.");const{error:d}=await xn.from("categoria").delete().in("id",a);if(d)throw d},onMutate:async({categoryIds:a})=>{await e.cancelQueries({queryKey:["categories"]});const d=e.getQueryData(["categories"]);return e.setQueryData(["categories"],l=>l?l.filter(o=>!a.includes(o.id)):[]),{previousCategories:d}},onError:(a,d,l)=>{l!=null&&l.previousCategories&&e.setQueryData(["categories"],l.previousCategories)},onSettled:()=>
8{e.invalidateQueries({queryKey:["categories"]}),r()}})},Br=()=>{const e=Ye(),{appBarWidth:t,appBarMarginLeft:n}=Cn(),{data:r,isLoading:a}=Ze(),d=dt(),l=Mr(),[o,u]=C.useState("browse"),[c,s]=C.useState(new Set),[i,p]=C.useState(null),[f,I]=C.useState(!1),[g,m]=C.useState(!1),[b,x]=C.useState(null),w=C.useMemo(()=>r?yn(r.filter(E=>E.id>0)):[],[r]),M=He(me(ct,{activationConstraint:{distance:5}}),me(at,{activationConstraint:{delay:200,tolerance:12}})),T=E=>{x(E.active.id.toString())},v=C.useCallback(async E=>{x(null);const{active:_,over:O}=E;if(!O||_.id===O.id||!r)return;const G=w.findIndex(V=>V.id.toString()===_.id),Q=w.findIndex(V=>V.id.toString()===O.id);if(G===-1||Q===-1)return;const P=et(w,G,Q),k=P.length;d.mutate({categories:P.map((V,ae)=>({id:V.id,destaque:k-ae,category:V})),originalCategories:r})},[w,d,r]),R=E=>{s(_=>{const O=new Set(_);return O.has(E)?O.delete(E):O.add(E),O})},L=()=>{c.size===w.length?s(new Set):s(new Set(w.map(E=>E.id)))},F=E=>{u(E),E!=="select"&&s(new Set),p(null)},A=()=>{u("browse"),s(new Set)},J=()=>{l.mutate({categoryIds:Array.from(c)},{onSuccess:()=>{m(!1),s(new Set),u("browse")}})},K=!a&&w.length===0,$=o!=="browse";return h.jsxs(N,{sx:{position:"relative",minHeight:"100%",pb:12},children:[h.jsx(wn,{title:o==="select"?c.size>0?`${c.size} ${c.size===1?"selecionada":"selecionadas"}`:"Selecionar":o==="reorder"?"Reordenar":"Categorias",navigateBack:!$,onBack:$?A:void 0,children:$?h.jsx(U,{size:"small",onClick:A,sx:{fontWeight:600},children:"Pronto"}):w.length>0&&h.jsx(cn,{edge:"end",onClick:E=>p(E.currentTarget),"aria-label":"Mais opções",children:h.jsx(Pn,{})})}),h.jsx(N,{sx:{px:2,py:2},children:a?h.jsx(Ee,{spacing:1,children:[0,1,2].map(E=>h.jsx(dn,{variant:"rounded",height:56,sx:{borderRadius:2}},E))}):K?h.jsx(Pr,{onCreate:()=>I(!0)}):h.jsx(N,{sx:{bgcolor:"white",borderRadius:2,py:1,px:.5},children:h.jsx(tt,{sensors:M,collisionDetection:nt,onDragStart:T,onDragEnd:v,children:h.jsx(dr,{sx:{"& .MuiTreeItem-content":{py:.5,borderRadius:1.5},"& .MuiTreeItem-content.Mui-selected, & .MuiTreeItem-content.Mui-selected.Mui-focused, & .MuiTreeItem-content.Mui-focused":{backgroundColor:"transparent"},"& .MuiTreeItem-content:hover":{backgroundColor:j("#041E42",.04)}},children:h.jsx(rt,{items:w.map(E=>E.id.toString()),strategy:ot,children:w.map(E=>h.jsx(Rr,{category:E,mode:o,selected:c.has(E.id),isBeingDragged:b===E.id.toString(),onTap:()=>e(`/categories/${E.id}`),onToggleSelect:()=>R(E.id)},E.id))})})})})}),h.jsxs(un,{anchorEl:i,open:!!i,onClose:()=>p(null),children:[h.jsxs(Be,{onClick:()=>F("select"),children:[h.jsx(Ne,{children:h.jsx(Tn,{size:20})}),h.jsx(ze,{children:"Selecionar"})]}),w.length>=2&&h.jsxs(Be,{onClick:()=>F("reorder"),children:[h.jsx(Ne,{children:h.jsx(En,{size:20})}),h.jsx(ze,{children:"Reordenar"})]})]}),h.jsx(N,{sx:{position:"fixed",bottom:0,left:0,right:0,width:t,ml:n,bgcolor:"white",borderTop:"1px solid",borderColor:"divider",p:1.5,pb:"calc(0.75rem + var(--safe-area-inset-bottom, 0px))",zIndex:5},children:o==="select"?h.jsxs(Ee,{direction:"row",spacing:1,children:[h.jsx(U,{fullWidth:!0,onClick:L,sx:{borderRadius:2},children:c.size===w.length?"Limpar":"Selecionar tudo"}),h.jsx(U,{fullWidth:!0,variant:"contained",color:"error",startIcon:h.jsx(Sn,{size:18}),onClick:()=>m(!0),disabled:c.size===0,sx:{borderRadius:2},children:"Excluir"})]}):h.jsx(U,{fullWidth:!0,variant:"contained",size:"large",startIcon:h.jsx(st,{size:18}),onClick:()=>I(!0),sx:{borderRadius:2,py:1.5},children:"Criar categoria"})}),h.jsx(kn,{open:f,onClose:()=>I(!1),parentId:null,parentName:null,onCreated:E=>e(`/categories/${E}`)}),h.jsxs(pn,{open:g,onClose:()=>m(!1),children:[h.jsx(fn,{children:c.size===1?"Excluir categoria?":`Excluir ${c.size} categorias?`}),h.jsx(gn,{children:h.jsx(mn,{children:"Os produtos não serão excluÃdos, apenas ficarão sem categoria."})}),h.jsxs(In,{children:[h.jsx(U,{onClick:()=>m(!1),color:"primary",children:"Cancelar"}),h.jsx(U,{onClick:J,color:"error",disabled:l.isPending,autoFocus:!0,children:l.isPending?"Excluindo...":"Excluir"})]})]})]})},Rr=({category:e,mode:t,selected:n,isBeingDragged:r,onTap:a,onToggleSelect:d})=>
8{const l=t==="reorder",{attributes:o,listeners:u,setNodeRef:c,transform:s,transition:i,isDragging:p}=it({id:e.id.toString(),disabled:!l}),f=l?{transform:lt.Transform.toString(s),transition:i,position:"relative",zIndex:p?999:"auto",opacity:p?.85:1,boxShadow:p?"0 8px 24px rgba(8,10,20,0.16)":"none",backgroundColor:p?"white":"transparent"}:{};return h.jsx(jt,{itemId:e.id.toString(),ref:c,style:f,label:h.jsx(Ot,{category:e,depth:0,mode:t,selected:n,dragHandleProps:l?{...o,...u}:null,onTap:a,onToggleSelect:d}),sx:{"& .MuiTreeItem-iconContainer":{color:"text.secondary"}},children:e.subCategories.length>0&&!r&&h.jsx(At,{parentId:e.id,subcategories:e.subCategories,mode:t,depth:1})})},At=({parentId:e,subcategories:t,mode:n,depth:r})=>{const a=dt(),{data:d}=Ze(),[l,o]=C.useState(null),u=He(me(ct,{activationConstraint:{distance:5}}),me(at,{activationConstraint:{delay:200,tolerance:12}})),c=C.useCallback(async s=>{o(null);const{active:i,over:p}=s;if(!p||i.id===p.id||!d)return;const f=t.findIndex(b=>b.id.toString()===i.id),I=t.findIndex(b=>b.id.toString()===p.id);if(f===-1||I===-1)return;const g=et(t,f,I),m=g.length;a.mutate({categories:g.map((b,x)=>({id:b.id,destaque:m-x,category:b})),originalCategories:d,isSubcategoryUpdate:!0,parentCategoryId:e})},[t,a,d,e]);return h.jsx(tt,{sensors:u,collisionDetection:nt,onDragStart:s=>o(s.active.id.toString()),onDragEnd:c,children:h.jsx(rt,{items:t.map(s=>s.id.toString()),strategy:ot,children:t.map(s=>h.jsx(kr,{category:s,depth:r,mode:n,isBeingDragged:l===s.id.toString()},s.id))})})},kr=({category:e,depth:t,mode:n,isBeingDragged:r})=>{const a=Ye(),d=n==="reorder",{attributes:l,listeners:o,setNodeRef:u,transform:c,transition:s,isDragging:i}=it({id:e.id.toString(),disabled:!d}),p=d?{transform:lt.Transform.toString(c),transition:s,position:"relative",zIndex:i?999:"auto",opacity:i?.85:1,boxShadow:i?"0 8px 24px rgba(8,10,20,0.16)":"none",backgroundColor:i?"white":"transparent"}:{};return h.jsx(jt,{itemId:e.id.toString(),ref:u,style:p,label:h.jsx(Ot,{category:e,depth:t,mode:n==="select"?"browse":n,selected:!1,dragHandleProps:d?{...l,...o}:null,onTap:()=>a(`/categories/${e.id}`),onToggleSelect:()=>{}}),children:e.subCategories.length>0&&!r&&h.jsx(At,{parentId:e.id,subcategories:e.subCategories,mode:n,depth:t+1})})},Ot=({category:e,mode:t,selected:n,dragHandleProps:r,onTap:a,onToggleSelect:d})=>{const l=o=>{o.stopPropagation(),t==="select"?d():t==="browse"&&a()};return h.jsxs(Ee,{direction:"row",alignItems:"center",spacing:1,onClick:l,sx:{width:"100%",py:.75,cursor:t==="reorder"?"default":"pointer"},children:[t==="select"&&h.jsx(Je,{checked:n,onClick:o=>o.stopPropagation(),onChange:d,sx:{p:.5}}),t==="reorder"&&r&&h.jsx(N,{...r,sx:{color:"text.disabled",cursor:"grab",touchAction:"none",display:"flex",alignItems:"center","&:active":{cursor:"grabbing"}},"aria-label":"Arrastar para reordenar",onClick:o=>o.stopPropagation(),children:h.jsx(Dn,{})}),h.jsxs(N,{sx:{flex:1,minWidth:0},children:[h.jsx(Se,{variant:"body2",sx:{fontWeight:500,textTransform:"none",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.nome}),h.jsxs(Se,{variant:"caption",color:"text.secondary",sx:{fontSize:"0.7rem"},children:[e.product_count??0," ",(e.product_count??0)===1?"produto":"produtos"]})]})]})},Pr=({onCreate:e})=>h.jsxs(N,{sx:{p:4,textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",gap:2,mt:6},children:[h.jsx(N,{sx:{width:72,height:72,borderRadius:"50%",bgcolor:j("#8865FE",.08),color:"primary.main",display:"flex",alignItems:"center",justifyContent:"center"},children:h.jsx(vn,{size:32})}),h.jsx(Se,{variant:"h6",sx:{fontWeight:700},children:"Nenhuma categoria ainda"}),h.jsx(U,{variant:"contained",size:"large",startIcon:h.jsx(st,{size:18}),onClick:e,sx:{borderRadius:2,mt:1},children:"Criar categoria"})]});export{Br as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.