yaml-admin-front 0.0.79 → 0.0.80
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.
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -604,7 +604,7 @@ Avoid returning a new reference inside your input selector, e.g.
|
|
|
604
604
|
`));const C=a?a(m):m.children;d[x]={id:x,label:w,parentId:b,idAttribute:void 0,expandable:u?u(m)>0:!!C?.length,disabled:r?r(m):!1,depth:y},f[x]=m;const S=b??du;h[S]||(h[S]=[]),h[S].push(x),c||C?.forEach(E=>g(E,y+1,x))};e?.forEach(m=>g(m,i,l));const v={};return Object.keys(h).forEach(m=>{v[m]=C6(h[m])}),{disabledItemsFocusable:t,itemMetaLookup:d,itemModelLookup:f,itemOrderedChildrenIdsLookup:h,itemChildrenIndexesLookup:v}},dd=({instance:t,params:e,store:r})=>{const n=O.useCallback(b=>ot.itemModel(r.state,b),[r]),a=O.useCallback(b=>ot.itemMeta(r.state,b)?.parentId||null,[r]),o=rr(b=>{r.set("items",Te({},r.state.items,{loading:b}))}),i=rr(b=>{r.set("items",Te({},r.state.items,{error:b}))}),l=rr(({itemId:b,shouldBeDisabled:x})=>{if(!r.state.items.itemMetaLookup[b])return;const w=Te({},r.state.items.itemMetaLookup);w[b]=Te({},w[b],{disabled:x??!w[b].disabled}),r.set("items",Te({},r.state.items,{itemMetaLookup:w}))}),u=O.useCallback(()=>{const b=x=>{const w=ot.itemModel(r.state,x),C=Te({},w),S=ot.itemOrderedChildrenIds(r.state,x);return S.length>0?C.children=S.map(b):delete C.children,C};return ot.itemOrderedChildrenIds(r.state,null).map(b)},[r]),c=O.useCallback(b=>ot.itemOrderedChildrenIds(r.state,b),[r]),d=b=>{const x=ot.itemMeta(r.state,b);if(x==null)return null;const w=sx({treeId:Sh.treeId(r.state),itemId:b,id:x.idAttribute});return document.getElementById(w)},f=O.useRef(!1),h=O.useCallback(()=>{f.current=!0},[]),g=O.useCallback(()=>f.current,[]),v=({items:b,parentId:x,depth:w,getChildrenCount:C})=>{if(b){const S=L_({disabledItemsFocusable:e.disabledItemsFocusable,items:b,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel,getItemChildren:e.getItemChildren,getChildrenCount:C,initialDepth:w,initialParentId:x,ignoreChildren:!0});let E;x?E={itemModelLookup:Te({},r.state.items.itemModelLookup,S.itemModelLookup),itemMetaLookup:Te({},r.state.items.itemMetaLookup,S.itemMetaLookup),itemOrderedChildrenIdsLookup:Te({},S.itemOrderedChildrenIdsLookup,r.state.items.itemOrderedChildrenIdsLookup),itemChildrenIndexesLookup:Te({},S.itemChildrenIndexesLookup,r.state.items.itemChildrenIndexesLookup)}:E={itemModelLookup:S.itemModelLookup,itemMetaLookup:S.itemMetaLookup,itemOrderedChildrenIdsLookup:S.itemOrderedChildrenIdsLookup,itemChildrenIndexesLookup:S.itemChildrenIndexesLookup},Object.values(r.state.items.itemMetaLookup).forEach(k=>{E.itemMetaLookup[k.id]||Ff(t,"removeItem",{id:k.id})}),r.set("items",Te({},r.state.items,E))}},m=b=>{if(b==null)r.set("items",Te({},r.state.items,{itemMetaLookup:{},itemOrderedChildrenIdsLookup:{},itemChildrenIndexesLookup:{}}));else{const x=Object.keys(r.state.items.itemMetaLookup).reduce((S,E)=>{const k=r.state.items.itemMetaLookup[E];return k.parentId===b?(Ff(t,"removeItem",{id:k.id}),S):Te({},S,{[k.id]:k})},{}),w=Te({},r.state.items.itemOrderedChildrenIdsLookup),C=Te({},r.state.items.itemChildrenIndexesLookup);delete C[b],delete w[b],r.set("items",Te({},r.state.items,{itemMetaLookup:x,itemOrderedChildrenIdsLookup:w,itemChildrenIndexesLookup:C}))}};O.useEffect(()=>{if(t.areItemUpdatesPrevented())return;const b=L_({disabledItemsFocusable:e.disabledItemsFocusable,items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel,getItemChildren:e.getItemChildren});Object.values(r.state.items.itemMetaLookup).forEach(x=>{b.itemMetaLookup[x.id]||Ff(t,"removeItem",{id:x.id})}),r.set("items",Te({},r.state.items,b))},[t,r,e.items,e.disabledItemsFocusable,e.isItemDisabled,e.getItemId,e.getItemLabel,e.getItemChildren]);const y=rr((b,x)=>{e.onItemClick&&e.onItemClick(b,x)});return{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof e.itemChildrenIndentation=="number"?`${e.itemChildrenIndentation}px`:e.itemChildrenIndentation}}),publicAPI:{getItem:n,getItemDOMElement:d,getItemTree:u,getItemOrderedChildrenIds:c,setIsItemDisabled:l,getParentId:a},instance:{getItemDOMElement:d,preventItemUpdates:h,areItemUpdatesPrevented:g,addItems:v,setTreeViewLoading:o,setTreeViewError:i,removeChildren:m,handleItemClick:y}}};dd.getInitialState=t=>({items:Te({},L_({disabledItemsFocusable:t.disabledItemsFocusable,items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel,getItemChildren:t.getItemChildren}),{loading:!1,error:null})});dd.applyDefaultValuesToParams=({params:t})=>Te({},t,{disabledItemsFocusable:t.disabledItemsFocusable??!1,itemChildrenIndentation:t.itemChildrenIndentation??"12px"});dd.wrapRoot=({children:t})=>N.jsx(ju.Provider,{value:ot.itemDepth,children:t});process.env.NODE_ENV!=="production"&&(dd.wrapRoot.displayName="useTreeViewItems.wrapRoot");dd.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemChildren:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};function XAe(t){const{componentName:e,propName:r,controlled:n,defaultValue:a,warningPrefix:o="MUI X"}=t,[{initialDefaultValue:i,isControlled:l}]=O.useState({initialDefaultValue:a,isControlled:n!==void 0});l!==(n!==void 0)&&M_([`${o}: A component is changing the ${l?"":"un"}controlled ${r} state of ${e} to be ${l?"un":""}controlled.`,"Elements should not switch from uncontrolled to controlled (or vice versa).",`Decide between using a controlled or uncontrolled ${r} 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"],"error"),JSON.stringify(i)!==JSON.stringify(a)&&M_([`${o}: A component is changing the default ${r} state of an uncontrolled ${e} after being initialized. To suppress this warning opt to use a controlled ${e}.`],"error")}const O6=process.env.NODE_ENV==="production"?()=>{}:XAe,nB=ix(t=>t.expansion.expandedItems,t=>{const e=new Map;return t.forEach(r=>{e.set(r,!0)}),e}),Xr={expandedItemsRaw:Ft(t=>t.expansion.expandedItems),expandedItemsMap:nB,triggerSlot:Ft(t=>t.expansion.expansionTrigger),isItemExpanded:Ft(nB,(t,e)=>t.has(e)),isItemExpandable:Ft(ot.itemMeta,(t,e)=>t?.expandable??!1)},E6=({isItemEditable:t,expansionTrigger:e})=>e||(t?"iconContainer":"content"),lx=({instance:t,store:e,params:r})=>{O6({componentName:"Tree View",propName:"expandedItems",controlled:r.expandedItems,defaultValue:r.defaultExpandedItems}),cn(()=>{const c=E6({isItemEditable:r.isItemEditable,expansionTrigger:r.expansionTrigger});e.state.expansion.expansionTrigger!==c&&e.set("expansion",Te({},e.state.expansion,{expansionTrigger:c}))},[e,r.isItemEditable,r.expansionTrigger]);const n=(c,d)=>{r.expandedItems===void 0&&e.set("expansion",Te({},e.state.expansion,{expandedItems:d})),r.onExpandedItemsChange?.(c,d)},a=rr(()=>{n(null,[])}),o=rr(({itemId:c,event:d,shouldBeExpanded:f})=>{const h=Xr.expandedItemsRaw(e.state);let g;f?g=[c].concat(h):g=h.filter(v=>v!==c),r.onItemExpansionToggle&&r.onItemExpansionToggle(d,c,f),n(d,g)}),i=rr(({itemId:c,event:d=null,shouldBeExpanded:f})=>{const h=Xr.isItemExpanded(e.state,c),g=f??!h;if(h===g)return;const v={isExpansionPrevented:!1,shouldBeExpanded:g,event:d,itemId:c};Ff(t,"beforeItemToggleExpansion",v),!v.isExpansionPrevented&&t.applyItemExpansion({itemId:c,event:d,shouldBeExpanded:g})}),l=rr(c=>Xr.isItemExpandable(e.state,c)),u=(c,d)=>{const f=ot.itemMeta(e.state,d);if(f==null)return;const g=ot.itemOrderedChildrenIds(e.state,f.parentId).filter(m=>Xr.isItemExpandable(e.state,m)&&!Xr.isItemExpanded(e.state,m)),v=Xr.expandedItemsRaw(e.state).concat(g);g.length>0&&(r.onItemExpansionToggle&&g.forEach(m=>{r.onItemExpansionToggle(c,m,!0)}),n(c,v))};return cn(()=>{const c=r.expandedItems;c!==void 0&&e.set("expansion",Te({},e.state.expansion,{expandedItems:c}))},[e,r.expandedItems]),{publicAPI:{setItemExpansion:i,isItemExpanded:l},instance:{setItemExpansion:i,applyItemExpansion:o,expandAllSiblings:u,resetItemExpansion:a}}},GAe=[];lx.applyDefaultValuesToParams=({params:t})=>Te({},t,{defaultExpandedItems:t.defaultExpandedItems??GAe});lx.getInitialState=t=>({expansion:{expandedItems:t.expandedItems===void 0?t.defaultExpandedItems:t.expandedItems,expansionTrigger:E6(t)}});lx.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const j_=(t,e)=>{let r=e.length-1;for(;r>=0&&!ot.canItemBeFocused(t,e[r]);)r-=1;if(r!==-1)return e[r]},k6=(t,e)=>{const r=ot.itemMeta(t,e);if(!r)return null;const n=ot.itemOrderedChildrenIds(t,r.parentId),a=ot.itemIndex(t,e);if(a===0)return r.parentId;let o=a-1;for(;!ot.canItemBeFocused(t,n[o])&&o>=0;)o-=1;if(o===-1)return r.parentId==null?null:k6(t,r.parentId);let i=n[o],l=j_(t,ot.itemOrderedChildrenIds(t,i));for(;Xr.isItemExpanded(t,i)&&l!=null;)i=l,l=j_(t,ot.itemOrderedChildrenIds(t,i));return i},Gg=(t,e)=>{if(Xr.isItemExpanded(t,e)){const n=ot.itemOrderedChildrenIds(t,e).find(a=>ot.canItemBeFocused(t,a));if(n!=null)return n}let r=ot.itemMeta(t,e);for(;r!=null;){const n=ot.itemOrderedChildrenIds(t,r.parentId),a=ot.itemIndex(t,r.id);if(a<n.length-1){let o=a+1;for(;!ot.canItemBeFocused(t,n[o])&&o<n.length-1;)o+=1;if(ot.canItemBeFocused(t,n[o]))return n[o]}r=ot.itemMeta(t,r.parentId)}return null},_6=t=>{let e=null;for(;e==null||Xr.isItemExpanded(t,e);){const r=ot.itemOrderedChildrenIds(t,e),n=j_(t,r);if(n==null)return e;e=n}return e},ty=t=>ot.itemOrderedChildrenIds(t,null).find(e=>ot.canItemBeFocused(t,e)),P6=(t,e,r)=>{if(e===r)return[e,r];const n=ot.itemMeta(t,e),a=ot.itemMeta(t,r);if(!n||!a)return[e,r];if(n.parentId===a.id||a.parentId===n.id)return a.parentId===n.id?[n.id,a.id]:[a.id,n.id];const o=[n.id],i=[a.id];let l=n.parentId,u=a.parentId,c=i.indexOf(l)!==-1,d=o.indexOf(u)!==-1,f=!0,h=!0;for(;!d&&!c;)f&&(o.push(l),c=i.indexOf(l)!==-1,f=l!==null,!c&&f&&(l=ot.itemParentId(t,l))),h&&!c&&(i.push(u),d=o.indexOf(u)!==-1,h=u!==null,!d&&h&&(u=ot.itemParentId(t,u)));const g=c?l:u,v=ot.itemOrderedChildrenIds(t,g),m=o[o.indexOf(g)-1],y=i[i.indexOf(g)-1];return v.indexOf(m)<v.indexOf(y)?[e,r]:[r,e]},KAe=(t,e,r)=>{const n=u=>{if(Xr.isItemExpandable(t,u)&&Xr.isItemExpanded(t,u))return ot.itemOrderedChildrenIds(t,u)[0];let c=ot.itemMeta(t,u);for(;c!=null;){const d=ot.itemOrderedChildrenIds(t,c.parentId),f=ot.itemIndex(t,c.id);if(f<d.length-1)return d[f+1];c=c.parentId?ot.itemMeta(t,c.parentId):null}throw new Error("Invalid range")},[a,o]=P6(t,e,r),i=[a];let l=a;for(;l!==o;)l=n(l),ot.isItemDisabled(t,l)||i.push(l);return i},QAe=t=>{let e=ty(t);const r=[];for(;e!=null;)r.push(e),e=Gg(t,e);return r},N_=(t,e)=>e!==t.closest('*[role="treeitem"]'),T6=ix(t=>t.selection.selectedItems,t=>Array.isArray(t)?t:t!=null?[t]:[]),aB=ix(T6,t=>{const e=new Map;return t.forEach(r=>{e.set(r,!0)}),e}),tr={selectedItemsRaw:Ft(t=>t.selection.selectedItems),selectedItems:T6,selectedItemsMap:aB,enabled:Ft(t=>t.selection.isEnabled),isMultiSelectEnabled:Ft(t=>t.selection.isMultiSelectEnabled),isCheckboxSelectionEnabled:Ft(t=>t.selection.isCheckboxSelectionEnabled),propagationRules:Ft(t=>t.selection.selectionPropagation),isItemSelected:Ft(aB,(t,e)=>t.has(e)),canItemBeSelected:Ft(ot.isItemDisabled,t=>t.selection.isEnabled,(t,e,r)=>e&&!t)},Kg=t=>{const e={};return t.forEach(r=>{e[r]=!0}),e},A6=({store:t,oldModel:e,newModel:r})=>{const n=new Map;return r.forEach(a=>{n.set(a,!0)}),{added:r.filter(a=>!tr.isItemSelected(t.state,a)),removed:e.filter(a=>!n.has(a))}},JAe=({store:t,selectionPropagation:e,newModel:r,oldModel:n,additionalItemsToPropagate:a})=>{if(!e.descendants&&!e.parents)return r;let o=!1;const i=Kg(r),l=A6({store:t,newModel:r,oldModel:n});return a?.forEach(u=>{i[u]?l.added.includes(u)||l.added.push(u):l.removed.includes(u)||l.removed.push(u)}),l.added.forEach(u=>{if(e.descendants){const c=d=>{d!==u&&(o=!0,i[d]=!0),ot.itemOrderedChildrenIds(t.state,d).forEach(c)};c(u)}if(e.parents){const c=f=>i[f]?ot.itemOrderedChildrenIds(t.state,f).every(c):!1,d=f=>{const h=ot.itemParentId(t.state,f);if(h==null)return;ot.itemOrderedChildrenIds(t.state,h).every(c)&&(o=!0,i[h]=!0,d(h))};d(u)}}),l.removed.forEach(u=>{if(e.parents){let c=ot.itemParentId(t.state,u);for(;c!=null;)i[c]&&(o=!0,delete i[c]),c=ot.itemParentId(t.state,c)}if(e.descendants){const c=d=>{d!==u&&(o=!0,delete i[d]),ot.itemOrderedChildrenIds(t.state,d).forEach(c)};c(u)}}),o?Object.keys(i):r},ZAe=Ft((t,e)=>{if(tr.isItemSelected(t,e))return"checked";let r=!1,n=!1;const a=i=>{i!==e&&(tr.isItemSelected(t,i)?r=!0:n=!0),ot.itemOrderedChildrenIds(t,i).forEach(a)};return a(e),r&&n?"indeterminate":tr.propagationRules(t).parents&&r&&!n?"checked":"empty"}),eIe=({props:t})=>{const{itemId:e}=t,{store:r}=ic(),n=Mr(r,tr.isCheckboxSelectionEnabled),a=Mr(r,tr.canItemBeSelected,e),o=Mr(r,ZAe,e);return{propsEnhancers:{checkbox:({externalEventHandlers:i,interactions:l})=>({tabIndex:-1,onChange:c=>{i.onChange?.(c),!c.defaultMuiPrevented&&tr.canItemBeSelected(r.state,e)&&l.handleCheckboxSelection(c)},visible:n,disabled:!a,checked:o==="checked",indeterminate:o==="indeterminate"})}}},Ch=({store:t,params:e})=>{O6({componentName:"Tree View",propName:"selectedItems",controlled:e.selectedItems,defaultValue:e.defaultSelectedItems});const r=O.useRef(null),n=O.useRef({}),a=(h,g,v)=>{const m=tr.selectedItemsRaw(t.state);let y;const b=tr.isMultiSelectEnabled(t.state);if(b&&(e.selectionPropagation.descendants||e.selectionPropagation.parents)?y=JAe({store:t,selectionPropagation:e.selectionPropagation,newModel:g,oldModel:m,additionalItemsToPropagate:v}):y=g,e.onItemSelectionToggle)if(b){const x=A6({store:t,newModel:y,oldModel:m});e.onItemSelectionToggle&&(x.added.forEach(w=>{e.onItemSelectionToggle(h,w,!0)}),x.removed.forEach(w=>{e.onItemSelectionToggle(h,w,!1)}))}else e.onItemSelectionToggle&&y!==m&&(m!=null&&e.onItemSelectionToggle(h,m,!1),y!=null&&e.onItemSelectionToggle(h,y,!0));e.selectedItems===void 0&&t.set("selection",Te({},t.state.selection,{selectedItems:y})),e.onSelectedItemsChange?.(h,y)},o=({itemId:h,event:g=null,keepExistingSelection:v=!1,shouldBeSelected:m})=>{if(!tr.enabled(t.state))return;let y;const b=tr.isMultiSelectEnabled(t.state);if(v){const x=tr.selectedItems(t.state),w=tr.isItemSelected(t.state,h);w&&(m===!1||m==null)?y=x.filter(C=>C!==h):!w&&(m===!0||m==null)?y=[h].concat(x):y=x}else m===!1||m==null&&tr.isItemSelected(t.state,h)?y=b?[]:null:y=b?[h]:h;a(g,y,[h]),r.current=h,n.current={}},i=(h,[g,v])=>{if(!tr.isMultiSelectEnabled(t.state))return;let y=tr.selectedItems(t.state).slice();Object.keys(n.current).length>0&&(y=y.filter(C=>!n.current[C]));const b=Kg(y),x=KAe(t.state,g,v),w=x.filter(C=>!b[C]);y=y.concat(w),a(h,y),n.current=Kg(x)},l=(h,g)=>{if(r.current!=null){const[v,m]=P6(t.state,g,r.current);i(h,[v,m])}},u=(h,g)=>{i(h,[ty(t.state),g])},c=(h,g)=>{i(h,[g,_6(t.state)])},d=h=>{if(!tr.isMultiSelectEnabled(t.state))return;const v=QAe(t.state);a(h,v),n.current=Kg(v)},f=(h,g,v)=>{if(!tr.isMultiSelectEnabled(t.state))return;let y=tr.selectedItems(t.state).slice();Object.keys(n.current).length===0?(y.push(v),n.current={[g]:!0,[v]:!0}):(n.current[g]||(n.current={}),n.current[v]?(y=y.filter(b=>b!==g),delete n.current[g]):(y.push(v),n.current[v]=!0)),a(h,y)};return cn(()=>{t.set("selection",{selectedItems:e.selectedItems===void 0?t.state.selection.selectedItems:e.selectedItems,isEnabled:!e.disableSelection,isMultiSelectEnabled:e.multiSelect,isCheckboxSelectionEnabled:e.checkboxSelection,selectionPropagation:{descendants:e.selectionPropagation.descendants,parents:e.selectionPropagation.parents}})},[t,e.selectedItems,e.multiSelect,e.checkboxSelection,e.disableSelection,e.selectionPropagation.descendants,e.selectionPropagation.parents]),{getRootProps:()=>({"aria-multiselectable":e.multiSelect}),publicAPI:{setItemSelection:o},instance:{setItemSelection:o,selectAllNavigableItems:d,expandSelectionRange:l,selectRangeFromStartToItem:u,selectRangeFromItemToEnd:c,selectItemFromArrowNavigation:f}}};Ch.itemPlugin=eIe;const tIe=[],rIe={};Ch.applyDefaultValuesToParams=({params:t})=>Te({},t,{disableSelection:t.disableSelection??!1,multiSelect:t.multiSelect??!1,checkboxSelection:t.checkboxSelection??!1,defaultSelectedItems:t.defaultSelectedItems??(t.multiSelect?tIe:null),selectionPropagation:t.selectionPropagation??rIe});Ch.getInitialState=t=>({selection:{selectedItems:t.selectedItems===void 0?t.defaultSelectedItems:t.selectedItems,isEnabled:!t.disableSelection,isMultiSelectEnabled:t.multiSelect,isCheckboxSelectionEnabled:t.checkboxSelection,selectionPropagation:t.selectionPropagation}});Ch.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0,selectionPropagation:!0};const oB=1e3;class nIe{timeouts=new Map;cleanupTimeout=oB;constructor(e=oB){this.cleanupTimeout=e}register(e,r,n){this.timeouts||(this.timeouts=new Map);const a=setTimeout(()=>{typeof r=="function"&&r(),this.timeouts.delete(n.cleanupToken)},this.cleanupTimeout);this.timeouts.set(n.cleanupToken,a)}unregister(e){const r=this.timeouts.get(e.cleanupToken);r&&(this.timeouts.delete(e.cleanupToken),clearTimeout(r))}reset(){this.timeouts&&(this.timeouts.forEach((e,r)=>{this.unregister({cleanupToken:r})}),this.timeouts=void 0)}}class aIe{registry=new FinalizationRegistry(e=>{typeof e=="function"&&e()});register(e,r,n){this.registry.register(e,r,n)}unregister(e){this.registry.unregister(e)}reset(){}}class oIe{}function iIe(t){let e=0;return function(n,a,o){t.registry===null&&(t.registry=typeof FinalizationRegistry<"u"?new aIe:new nIe);const[i]=O.useState(new oIe),l=O.useRef(null),u=O.useRef(void 0);u.current=o;const c=O.useRef(null);if(!l.current&&u.current){const d=(f,h)=>{h.defaultMuiPrevented||u.current?.(f,h)};l.current=n.$$subscribeEvent(a,d),e+=1,c.current={cleanupToken:e},t.registry.register(i,()=>{l.current?.(),l.current=null,c.current=null},c.current)}else!u.current&&l.current&&(l.current(),l.current=null,c.current&&(t.registry.unregister(c.current),c.current=null));O.useEffect(()=>{if(!l.current&&u.current){const d=(f,h)=>{h.defaultMuiPrevented||u.current?.(f,h)};l.current=n.$$subscribeEvent(a,d)}return c.current&&t.registry&&(t.registry.unregister(c.current),c.current=null),()=>{l.current?.(),l.current=null}},[n,a])}}const sIe={registry:null},lIe=iIe(sIe),iB=ix(tr.selectedItems,Xr.expandedItemsMap,ot.itemMetaLookup,ot.disabledItemFocusable,t=>ot.itemOrderedChildrenIds(t,null),(t,e,r,n,a)=>{const o=t.find(l=>{if(!n&&ey(r,l))return!1;const u=r[l];return u&&(u.parentId==null||e.has(u.parentId))});if(o!=null)return o;const i=a.find(l=>n||!ey(r,l));return i??null}),bl={defaultFocusableItemId:iB,isItemTheDefaultFocusableItem:Ft(iB,(t,e)=>t===e),focusedItemId:Ft(t=>t.focus.focusedItemId),isItemFocused:Ft((t,e)=>t.focus.focusedItemId===e)},_I=({instance:t,params:e,store:r})=>{const n=rr(d=>{bl.focusedItemId(r.state)!==d&&r.set("focus",Te({},r.state.focus,{focusedItemId:d}))}),a=d=>{const f=ot.itemMeta(r.state,d);return f&&(f.parentId==null||Xr.isItemExpanded(r.state,f.parentId))},o=(d,f)=>{const h=t.getItemDOMElement(f);h&&h.focus(),n(f),e.onItemFocus&&e.onItemFocus(d,f)},i=rr((d,f)=>{a(f)&&o(d,f)}),l=rr(()=>{const d=bl.focusedItemId(r.state);if(d==null)return;if(ot.itemMeta(r.state,d)){const h=t.getItemDOMElement(d);h&&h.blur()}n(null)});lIe(t,"removeItem",({id:d})=>{const f=bl.focusedItemId(r.state),h=bl.defaultFocusableItemId(r.state);f===d&&h!=null&&o(null,h)});const u=d=>f=>{if(d.onFocus?.(f),f.defaultMuiPrevented)return;const h=bl.defaultFocusableItemId(r.state);f.target===f.currentTarget&&h!=null&&o(f,h)},c=d=>f=>{d.onBlur?.(f),!f.defaultMuiPrevented&&n(null)};return{getRootProps:d=>({onFocus:u(d),onBlur:c(d)}),publicAPI:{focusItem:i},instance:{focusItem:i,removeFocusedItem:l}}};_I.getInitialState=()=>({focus:{focusedItemId:null}});_I.params={onItemFocus:!0};const Qg=(t,e)=>t.getAvailablePlugins().has(e),Ii={isItemEditable:Ft(t=>t.label?.isItemEditable,ot.itemModel,(t,e,r)=>!e||t==null?!1:typeof t=="boolean"?t:t(e)),isItemBeingEdited:Ft((t,e)=>e==null?!1:t.label?.editedItemId===e),isAnyItemBeingEdited:Ft(t=>!!t.label?.editedItemId)},cIe=({props:t})=>{const{store:e}=ic(),{label:r,itemId:n}=t,[a,o]=O.useState(r),i=Mr(e,Ii.isItemEditable,n),l=Mr(e,Ii.isItemBeingEdited,n);return O.useEffect(()=>{l||o(r)},[l,r]),{propsEnhancers:{label:()=>({editable:i}),labelInput:({externalEventHandlers:u,interactions:c})=>i?{value:a??"","data-element":"labelInput",onChange:g=>{u.onChange?.(g),o(g.target.value)},onKeyDown:g=>{if(u.onKeyDown?.(g),g.defaultMuiPrevented)return;const v=g.target;g.key==="Enter"&&v.value?c.handleSaveItemLabel(g,v.value):g.key==="Escape"&&c.handleCancelItemLabelEditing(g)},onBlur:g=>{u.onBlur?.(g),!g.defaultMuiPrevented&&g.target.value&&c.handleSaveItemLabel(g,g.target.value)},autoFocus:!0,type:"text"}:{}}}},Ps=({store:t,params:e})=>{const r=a=>{a!==null&&!Ii.isItemEditable(t.state,a)||t.set("label",Te({},t.state.label,{editedItemId:a}))},n=(a,o)=>{if(!o)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(`
|
|
605
605
|
`));const i=t.state.items.itemMetaLookup[a];i.label!==o&&(t.set("items",Te({},t.state.items,{itemMetaLookup:Te({},t.state.items.itemMetaLookup,{[a]:Te({},i,{label:o})})})),e.onItemLabelChange&&e.onItemLabelChange(a,o))};return cn(()=>{t.set("label",Te({},t.state.items,{isItemEditable:e.isItemEditable}))},[t,e.isItemEditable]),{instance:{setEditedItem:r,updateItemLabel:n},publicAPI:{setEditedItem:r,updateItemLabel:n}}};Ps.itemPlugin=cIe;Ps.applyDefaultValuesToParams=({params:t})=>Te({},t,{isItemEditable:t.isItemEditable??!1});Ps.getInitialState=t=>({label:{isItemEditable:t.isItemEditable,editedItemId:null}});Ps.params={onItemLabelChange:!0,isItemEditable:!0};function uIe(t){return!!t&&t.length===1&&!!t.match(/\S/)}const I6=({instance:t,store:e,params:r})=>{const n=Gs(),a=O.useRef({}),o=rr(f=>{a.current=f(a.current)}),i=Mr(e,ot.itemMetaLookup);O.useEffect(()=>{if(t.areItemUpdatesPrevented())return;const f={},h=g=>{f[g.id]=g.label.substring(0,1).toLowerCase()};Object.values(i).forEach(h),a.current=f},[i,r.getItemId,t]);const l=(f,h)=>{const g=h.toLowerCase(),v=x=>{const w=Gg(e.state,x);return w===null?ty(e.state):w};let m=null,y=v(f);const b={};for(;m==null&&!b[y];)a.current[y]===g?m=y:(b[y]=!0,y=v(y));return m},u=f=>tr.enabled(e.state)&&!ot.isItemDisabled(e.state,f),c=f=>!ot.isItemDisabled(e.state,f)&&Xr.isItemExpandable(e.state,f);return{instance:{updateFirstCharMap:o,handleItemKeyDown:async(f,h)=>{if(f.defaultMuiPrevented||f.altKey||N_(f.target,f.currentTarget))return;const g=f.ctrlKey||f.metaKey,v=f.key,m=tr.isMultiSelectEnabled(e.state);switch(!0){case(v===" "&&u(h)):{f.preventDefault(),m&&f.shiftKey?t.expandSelectionRange(f,h):t.setItemSelection({event:f,itemId:h,keepExistingSelection:m,shouldBeSelected:void 0});break}case v==="Enter":{Qg(t,Ps)&&Ii.isItemEditable(e.state,h)&&!Ii.isItemBeingEdited(e.state,h)?t.setEditedItem(h):c(h)?(t.setItemExpansion({event:f,itemId:h}),f.preventDefault()):u(h)&&(m?(f.preventDefault(),t.setItemSelection({event:f,itemId:h,keepExistingSelection:!0})):tr.isItemSelected(e.state,h)||(t.setItemSelection({event:f,itemId:h}),f.preventDefault()));break}case v==="ArrowDown":{const y=Gg(e.state,h);y&&(f.preventDefault(),t.focusItem(f,y),m&&f.shiftKey&&u(y)&&t.selectItemFromArrowNavigation(f,h,y));break}case v==="ArrowUp":{const y=k6(e.state,h);y&&(f.preventDefault(),t.focusItem(f,y),m&&f.shiftKey&&u(y)&&t.selectItemFromArrowNavigation(f,h,y));break}case(v==="ArrowRight"&&!n||v==="ArrowLeft"&&n):{if(g)return;if(Xr.isItemExpanded(e.state,h)){const y=Gg(e.state,h);y&&(t.focusItem(f,y),f.preventDefault())}else c(h)&&(t.setItemExpansion({event:f,itemId:h}),f.preventDefault());break}case(v==="ArrowLeft"&&!n||v==="ArrowRight"&&n):{if(g)return;if(c(h)&&Xr.isItemExpanded(e.state,h))t.setItemExpansion({event:f,itemId:h}),f.preventDefault();else{const y=ot.itemParentId(e.state,h);y&&(t.focusItem(f,y),f.preventDefault())}break}case v==="Home":{u(h)&&m&&g&&f.shiftKey?t.selectRangeFromStartToItem(f,h):t.focusItem(f,ty(e.state)),f.preventDefault();break}case v==="End":{u(h)&&m&&g&&f.shiftKey?t.selectRangeFromItemToEnd(f,h):t.focusItem(f,_6(e.state)),f.preventDefault();break}case v==="*":{t.expandAllSiblings(f,h),f.preventDefault();break}case(String.fromCharCode(f.keyCode)==="A"&&g&&m&&tr.enabled(e.state)):{t.selectAllNavigableItems(f),f.preventDefault();break}case(!g&&!f.shiftKey&&uIe(v)):{const y=l(h,v);y!=null&&(t.focusItem(f,y),f.preventDefault());break}}}}}};I6.params={};function dIe(t){return t.replace(/["\\]/g,"\\$&")}const PI=O.createContext(null);process.env.NODE_ENV!=="production"&&(PI.displayName="TreeViewChildrenItemContext");function TI(t){const{children:e,itemId:r=null,idAttribute:n}=t,{instance:a,store:o,rootRef:i}=ic(),l=O.useRef(new Map);O.useEffect(()=>{if(!i.current)return;const c=ot.itemOrderedChildrenIds(o.state,r??null)??[],d=dIe(n??i.current.id);if(r!=null){const v=i.current.querySelector(`*[id="${d}"][role="treeitem"]`);if(v&&v.getAttribute("aria-expanded")==="false")return}const f=i.current.querySelectorAll(`${r==null?"":`*[id="${d}"] `}[role="treeitem"]:not(*[id="${d}"] [role="treeitem"] [role="treeitem"])`),h=Array.from(f).map(v=>l.current.get(v.id));(h.length!==c.length||h.some((v,m)=>v!==c[m]))&&a.setJSXItemsOrderedChildrenIds(r??null,h)});const u=O.useMemo(()=>({registerChild:(c,d)=>l.current.set(c,d),unregisterChild:c=>l.current.delete(c),parentId:r}),[r]);return N.jsx(PI.Provider,{value:u,children:e})}process.env.NODE_ENV!=="production"&&(TI.propTypes={children:p.node,id:p.string});const sB={dataSource:Ft(t=>t.lazyLoading?.dataSource),isItemLoading:Ft((t,e)=>t.lazyLoading?.dataSource.loading[e]??!1),itemHasError:Ft((t,e)=>!!t.lazyLoading?.dataSource.errors[e])},AI=t=>Array.isArray(t)?t.length>0&&t.some(AI):!!t,fIe=({itemId:t,children:e})=>{const{instance:r,store:n,publicAPI:a}=ic(),o=Mr(n,Xr.isItemExpandable,t),i=Mr(n,sB.isItemLoading,t),l=Mr(n,sB.itemHasError,t),u=AI(e)||o,c=Mr(n,Xr.isItemExpanded,t),d=Mr(n,bl.isItemFocused,t),f=Mr(n,tr.isItemSelected,t),h=Mr(n,ot.isItemDisabled,t),g=Mr(n,Ii.isItemBeingEdited,t),v=Mr(n,Ii.isItemEditable,t),m={expandable:u,expanded:c,focused:d,selected:f,disabled:h,editing:g,editable:v,loading:i,error:l},y=k=>{if(m.disabled)return;m.focused||r.focusItem(k,t);const _=tr.isMultiSelectEnabled(n.state)&&(k.shiftKey||k.ctrlKey||k.metaKey);m.expandable&&!(_&&Xr.isItemExpanded(n.state,t))&&r.setItemExpansion({event:k,itemId:t})},b=k=>{if(m.disabled)return;!m.focused&&!m.editing&&r.focusItem(k,t),tr.isMultiSelectEnabled(n.state)&&(k.shiftKey||k.ctrlKey||k.metaKey)?k.shiftKey?r.expandSelectionRange(k,t):r.setItemSelection({event:k,itemId:t,keepExistingSelection:!0}):r.setItemSelection({event:k,itemId:t,shouldBeSelected:!0})},x=k=>{const _=k.nativeEvent.shiftKey,P=tr.isMultiSelectEnabled(n.state);P&&_?r.expandSelectionRange(k,t):r.setItemSelection({event:k,itemId:t,keepExistingSelection:P,shouldBeSelected:k.target.checked})},w=()=>{Qg(r,Ps)&&(g?r.setEditedItem(null):r.setEditedItem(t))};return{interactions:{handleExpansion:y,handleSelection:b,handleCheckboxSelection:x,toggleItemEditing:w,handleSaveItemLabel:(k,_)=>{Qg(r,Ps)&&Ii.isItemBeingEdited(n.state,t)&&(r.updateItemLabel(t,_),w(),r.focusItem(k,t))},handleCancelItemLabelEditing:k=>{Qg(r,Ps)&&Ii.isItemBeingEdited(n.state,t)&&(w(),r.focusItem(k,t))}},status:m,publicAPI:a}},sc=({instance:t,store:e})=>{t.preventItemUpdates();const r=rr(o=>{if(e.state.items.itemMetaLookup[o.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: "${o.id}"`].join(`
|
|
606
606
|
`));return e.set("items",Te({},e.state.items,{itemMetaLookup:Te({},e.state.items.itemMetaLookup,{[o.id]:o}),itemModelLookup:Te({},e.state.items.itemModelLookup,{[o.id]:{id:o.id,label:o.label??""}})})),()=>{const i=Te({},e.state.items.itemMetaLookup),l=Te({},e.state.items.itemModelLookup);delete i[o.id],delete l[o.id],e.set("items",Te({},e.state.items,{itemMetaLookup:i,itemModelLookup:l})),Ff(t,"removeItem",{id:o.id})}}),n=(o,i)=>{const l=o??du;e.set("items",Te({},e.state.items,{itemOrderedChildrenIdsLookup:Te({},e.state.items.itemOrderedChildrenIdsLookup,{[l]:i}),itemChildrenIndexesLookup:Te({},e.state.items.itemChildrenIndexesLookup,{[l]:C6(i)})}))},a=rr((o,i)=>(t.updateFirstCharMap(l=>(l[o]=i,l)),()=>{t.updateFirstCharMap(l=>{const u=Te({},l);return delete u[o],u})}));return{instance:{insertJSXItem:r,setJSXItemsOrderedChildrenIds:n,mapFirstCharFromJSX:a}}},pIe=({props:t,rootRef:e,contentRef:r})=>{const{instance:n,store:a}=ic(),{children:o,disabled:i=!1,label:l,itemId:u,id:c}=t,d=O.useContext(PI);if(d==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(`
|
|
607
|
-
`));const{registerChild:f,unregisterChild:h,parentId:g}=d,v=AI(o),m=O.useRef(null),y=nr(m,r),b=Mr(a,Sh.treeId);return cn(()=>{const x=sx({itemId:u,treeId:b,id:c});return f(x,u),()=>{h(x),h(x)}},[a,n,f,h,u,c,b]),cn(()=>n.insertJSXItem({id:u,idAttribute:c,parentId:g,expandable:v,disabled:i}),[n,g,u,v,i,c]),O.useEffect(()=>{if(l)return n.mapFirstCharFromJSX(u,(m.current?.textContent??"").substring(0,1).toLowerCase())},[n,u,l]),{contentRef:y,rootRef:e}};sc.itemPlugin=pIe;sc.wrapItem=({children:t,itemId:e,idAttribute:r})=>{const n=O.useContext(ju);return N.jsx(TI,{itemId:e,idAttribute:r,children:N.jsx(ju.Provider,{value:n+1,children:t})})};process.env.NODE_ENV!=="production"&&(sc.wrapItem.displayName="useTreeViewJSXItems.wrapItem");sc.wrapRoot=({children:t})=>N.jsx(TI,{itemId:null,idAttribute:null,children:N.jsx(ju.Provider,{value:0,children:t})});process.env.NODE_ENV!=="production"&&(sc.wrapRoot.displayName="useTreeViewJSXItems.wrapRoot");sc.params={};const hIe=[dd,lx,Ch,_I,I6,sc],gIe=["slots","slotProps"],mIe=m6(),vIe=t=>{const{classes:e}=t;return O.useMemo(()=>qe({root:["root"],item:["item"],itemContent:["itemContent"],itemGroupTransition:["itemGroupTransition"],itemIconContainer:["itemIconContainer"],itemLabel:["itemLabel"],itemCheckbox:["itemCheckbox"]},cAe,e),[e])},yIe=te("ul",{name:"MuiSimpleTreeView",slot:"Root"})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),bIe=[],II=O.forwardRef(function(e,r){const n=mIe({props:e,name:"MuiSimpleTreeView"}),{slots:a,slotProps:o}=n,i=Gu(n,gIe);process.env.NODE_ENV!=="production"&&n.items!=null&&M_(["MUI X: The Simple Tree View component does not support the `items` prop.","If you want to add items, you need to pass them as JSX children.","Check the documentation for more details: https://mui.com/x/react-tree-view/simple-tree-view/items/."]);const{getRootProps:l,contextValue:u}=WAe({plugins:hIe,rootRef:r,props:Te({},i,{items:bIe})}),c=vIe(n),d=a?.root??yIe,f=Zn({elementType:d,externalSlotProps:o?.root,className:c.root,getSlotProps:l,ownerState:n});return N.jsx(qAe,{contextValue:u,classes:c,slots:a,slotProps:o,children:N.jsx(d,Te({},f))})});process.env.NODE_ENV!=="production"&&(II.displayName="SimpleTreeView");process.env.NODE_ENV!=="production"&&(II.propTypes={apiRef:p.shape({current:p.shape({focusItem:p.func,getItem:p.func,getItemDOMElement:p.func,getItemOrderedChildrenIds:p.func,getItemTree:p.func,getParentId:p.func,isItemExpanded:p.func,setIsItemDisabled:p.func,setItemExpansion:p.func,setItemSelection:p.func})}),checkboxSelection:p.bool,children:p.node,classes:p.object,className:p.string,defaultExpandedItems:p.arrayOf(p.string),defaultSelectedItems:p.any,disabledItemsFocusable:p.bool,disableSelection:p.bool,expandedItems:p.arrayOf(p.string),expansionTrigger:p.oneOf(["content","iconContainer"]),id:p.string,itemChildrenIndentation:p.oneOfType([p.number,p.string]),multiSelect:p.bool,onExpandedItemsChange:p.func,onItemClick:p.func,onItemExpansionToggle:p.func,onItemFocus:p.func,onItemSelectionToggle:p.func,onSelectedItemsChange:p.func,selectedItems:p.any,selectionPropagation:p.shape({descendants:p.bool,parents:p.bool}),slotProps:p.object,slots:p.object,sx:p.oneOfType([p.arrayOf(p.oneOfType([p.func,p.object,p.bool])),p.func,p.object])});const xIe=t=>{const{runItemPlugins:e,instance:r,publicAPI:n,store:a}=ic(),o=O.useContext(ju),i=Mr(a,(...U)=>typeof o=="function"?o(...U):o,t.itemId),{id:l,itemId:u,label:c,children:d,rootRef:f}=t,{rootRef:h,contentRef:g,propsEnhancers:v}=e(t),{interactions:m,status:y}=fIe({itemId:u,children:d}),b=O.useRef(null),x=O.useRef(null),w=nr(f,h,b),C=nr(g,x),S=O.useRef(null),E=Mr(a,Sh.treeId),k=Mr(a,tr.canItemBeSelected,u),_=Mr(a,tr.isCheckboxSelectionEnabled),P=sx({itemId:u,treeId:E,id:l}),I=Mr(a,bl.isItemTheDefaultFocusableItem,u),A={rootRefObject:b,contentRefObject:x,interactions:m},T=U=>q=>{U.onFocus?.(q),!q.defaultMuiPrevented&&!y.focused&&ot.canItemBeFocused(a.state,u)&&q.currentTarget===q.target&&r.focusItem(q,u)},M=U=>q=>{if(U.onBlur?.(q),q.defaultMuiPrevented)return;const G=r.getItemDOMElement(u);y.editing||q.relatedTarget&&N_(q.relatedTarget,G)&&(q.target&&q.target?.dataset?.element==="labelInput"&&N_(q.target,G)||q.relatedTarget?.dataset?.element==="labelInput")||r.removeFocusedItem()},L=U=>q=>{U.onKeyDown?.(q),!(q.defaultMuiPrevented||q.target?.dataset?.element==="labelInput")&&r.handleItemKeyDown(q,u)},D=U=>q=>{U.onDoubleClick?.(q),!q.defaultMuiPrevented&&m.toggleItemEditing()},F=U=>q=>{U.onClick?.(q),r.handleItemClick(q,u),!(q.defaultMuiPrevented||S.current?.contains(q.target))&&(Xr.triggerSlot(a.state)==="content"&&m.handleExpansion(q),_||m.handleSelection(q))},z=U=>q=>{U.onMouseDown?.(q),!q.defaultMuiPrevented&&(q.shiftKey||q.ctrlKey||q.metaKey||y.disabled)&&q.preventDefault()},B=U=>q=>{U.onClick?.(q),!q.defaultMuiPrevented&&Xr.triggerSlot(a.state)==="iconContainer"&&m.handleExpansion(q)};return{getContextProviderProps:()=>({itemId:u,id:l}),getRootProps:(U={})=>{const q=Te({},$n(t),$n(U));let G;y.selected?G=!0:k?G=!1:G=void 0;const de=Te({},q,{ref:w,role:"treeitem",tabIndex:I?0:-1,id:P,"aria-expanded":y.expandable?y.expanded:void 0,"aria-selected":G,"aria-disabled":y.disabled||void 0},U,{style:Te({},U.style??{},{"--TreeView-itemDepth":i}),onFocus:T(q),onBlur:M(q),onKeyDown:L(q)}),he=v.root?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},de,he)},getContentProps:(U={})=>{const q=$n(U),G=Te({},q,U,{ref:C,onClick:F(q),onMouseDown:z(q),status:y});["expanded","selected","focused","disabled","editing","editable"].forEach(he=>{y[he]&&(G[`data-${he}`]="")});const de=v.content?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},G,de)},getGroupTransitionProps:(U={})=>{const q=$n(U);return Te({},q,{unmountOnExit:!0,component:"ul",role:"group",in:y.expanded,children:d},U)},getIconContainerProps:(U={})=>{const q=$n(U);return Te({},q,U,{onClick:B(q)})},getCheckboxProps:(U={})=>{const q=$n(U),G=Te({},q,{ref:S,"aria-hidden":!0},U),de=v.checkbox?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},G,de)},getLabelProps:(U={})=>{const q=Te({},$n(U)),G=Te({},q,{children:c},U,{onDoubleClick:D(q)}),de=v.label?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},de,G)},getLabelInputProps:(U={})=>{const q=$n(U),G=v.labelInput?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},U,G)},getDragAndDropOverlayProps:(U={})=>{const q=$n(U),G=v.dragAndDropOverlay?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},U,G)},getErrorContainerProps:(U={})=>{const q=$n(U);return Te({},q,U)},getLoadingContainerProps:(U={})=>{const q=$n(U);return Te({size:"12px",thickness:6},q,U)},rootRef:w,status:y,publicAPI:n}};function wIe(t){return We("MuiTreeItem",t)}Ge("MuiTreeItem",["root","content","groupTransition","iconContainer","label","checkbox","labelInput","dragAndDropOverlay","errorIcon","loadingIcon","expanded","selected","focused","disabled","editable","editing"]);const SIe=et(N.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"TreeViewExpandIcon"),CIe=et(N.jsx("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"TreeViewCollapseIcon");function R6(t){const{slots:e,slotProps:r,status:n}=t,{slots:a,slotProps:o}=S6(),i={collapseIcon:e?.collapseIcon??a.collapseIcon??CIe,expandIcon:e?.expandIcon??a.expandIcon??SIe,endIcon:e?.endIcon??a.endIcon,icon:e?.icon};let l;i?.icon?l="icon":n.expandable?n.expanded?l="collapseIcon":l="expandIcon":l="endIcon";const u=i[l],c=Zn({elementType:u,externalSlotProps:d=>Te({},Mm(o[l],d),Mm(r?.[l],d)),ownerState:{}});return u?N.jsx(u,Te({},c)):null}process.env.NODE_ENV!=="production"&&(R6.propTypes={slotProps:p.object,slots:p.object,status:p.shape({disabled:p.bool.isRequired,editable:p.bool.isRequired,editing:p.bool.isRequired,error:p.bool.isRequired,expandable:p.bool.isRequired,expanded:p.bool.isRequired,focused:p.bool.isRequired,loading:p.bool.isRequired,selected:p.bool.isRequired}).isRequired});const OIe=te("div",{name:"MuiTreeItemDragAndDropOverlay",slot:"Root",shouldForwardProp:t=>Uc(t)&&t!=="action"})(({theme:t})=>({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:t.shape.borderRadius,backgroundColor:t.vars?`rgba(${t.vars.palette.primary.darkChannel} / ${t.vars.palette.action.focusOpacity})`:Oa(t.palette.primary.dark,t.palette.action.focusOpacity)}},{props:{action:"reorder-above"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderTop:`1px solid ${(t.vars||t).palette.action.active}`}},{props:{action:"reorder-below"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderBottom:`1px solid ${(t.vars||t).palette.action.active}`}},{props:{action:"move-to-parent"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * calc(var(--TreeView-itemDepth) - 1))",borderBottom:`1px solid ${(t.vars||t).palette.action.active}`}}]}));function M6(t){return t.action==null?null:N.jsx(OIe,Te({},t))}process.env.NODE_ENV!=="production"&&(M6.propTypes={action:p.oneOf(["make-child","move-to-parent","reorder-above","reorder-below"]),style:p.object});function L6(t){const{children:e,itemId:r,id:n}=t,{wrapItem:a,instance:o,store:i}=ic(),l=Mr(i,Sh.treeId),u=sx({itemId:r,treeId:l,id:n});return N.jsx(O.Fragment,{children:a({children:e,itemId:r,instance:o,idAttribute:u})})}process.env.NODE_ENV!=="production"&&(L6.propTypes={children:p.node,id:p.string,itemId:p.string.isRequired});const EIe=te("input",{name:"MuiTreeItem",slot:"LabelInput"})(({theme:t})=>Te({},t.typography.body1,{width:"100%",backgroundColor:(t.vars||t).palette.background.paper,borderRadius:t.shape.borderRadius,border:"none",padding:"0 2px",boxSizing:"border-box","&:focus":{outline:`1px solid ${(t.vars||t).palette.primary.main}`}})),kIe=["visible"],_Ie=["id","itemId","label","disabled","children","slots","slotProps","classes"],PIe=m6(),TIe=te("li",{name:"MuiTreeItem",slot:"Root"})({listStyle:"none",margin:0,padding:0,outline:0}),AIe=te("div",{name:"MuiTreeItem",slot:"Content",shouldForwardProp:t=>Uc(t)&&t!=="status"})(({theme:t})=>({padding:t.spacing(.5,1),paddingLeft:`calc(${t.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`,borderRadius:t.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:t.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(t.vars||t).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},"&[data-disabled]":{opacity:(t.vars||t).palette.action.disabledOpacity,backgroundColor:"transparent"},"&[data-focused]":{backgroundColor:(t.vars||t).palette.action.focus},"&[data-selected]":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity),"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity)}}},"&[data-selected][data-focused]":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.focusOpacity}))`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)}})),IIe=te("div",{name:"MuiTreeItem",slot:"Label",shouldForwardProp:t=>Uc(t)&&t!=="editable"})(({theme:t})=>Te({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative",overflow:"hidden"},t.typography.body1,{variants:[{props:({editable:e})=>e,style:{paddingLeft:"2px"}}]})),RIe=te("div",{name:"MuiTreeItem",slot:"IconContainer"})({width:16,display:"flex",flexShrink:0,justifyContent:"center",position:"relative","& svg":{fontSize:18}}),MIe=te(vu,{name:"MuiTreeItem",slot:"GroupTransition",overridesResolver:(t,e)=>e.groupTransition})({margin:0,padding:0}),LIe=te("div",{name:"MuiTreeItem",slot:"ErrorIcon"})({position:"absolute",right:-3,width:7,height:7,borderRadius:"50%",backgroundColor:"red"}),jIe=te(Xi,{name:"MuiTreeItem",slot:"LoadingIcon"})({color:"text.primary"}),j6=te(O.forwardRef((t,e)=>{const{visible:r}=t,n=Gu(t,kIe);return r?N.jsx(Cu,Te({},n,{ref:e})):null}),{name:"MuiTreeItem",slot:"Checkbox"})({padding:0});process.env.NODE_ENV!=="production"&&(j6.displayName="TreeItemCheckbox");const NIe=t=>{const{classes:e}=S6(),r=Te({},t,{root:ce(t?.root,e.root),content:ce(t?.content,e.itemContent),iconContainer:ce(t?.iconContainer,e.itemIconContainer),checkbox:ce(t?.checkbox,e.itemCheckbox),label:ce(t?.label,e.itemLabel),groupTransition:ce(t?.groupTransition,e.itemGroupTransition),labelInput:ce(t?.labelInput,e.itemLabelInput),dragAndDropOverlay:ce(t?.dragAndDropOverlay,e.itemDragAndDropOverlay),errorIcon:ce(t?.errorIcon,e.itemErrorIcon),loadingIcon:ce(t?.loadingIcon,e.itemLoadingIcon)});return qe({root:["root"],content:["content"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],groupTransition:["groupTransition"],labelInput:["labelInput"],dragAndDropOverlay:["dragAndDropOverlay"],errorIcon:["errorIcon"],loadingIcon:["loadingIcon"],expanded:["expanded"],editing:["editing"],editable:["editable"],selected:["selected"],focused:["focused"],disabled:["disabled"]},wIe,r)},RI=O.forwardRef(function(e,r){const n=PIe({props:e,name:"MuiTreeItem"}),{id:a,itemId:o,label:i,disabled:l,children:u,slots:c={},slotProps:d={},classes:f}=n,h=Gu(n,_Ie),{getContextProviderProps:g,getRootProps:v,getContentProps:m,getIconContainerProps:y,getCheckboxProps:b,getLabelProps:x,getGroupTransitionProps:w,getLabelInputProps:C,getDragAndDropOverlayProps:S,getErrorContainerProps:E,getLoadingContainerProps:k,status:_}=xIe({id:a,itemId:o,children:u,label:i,disabled:l}),P=NIe(f),I=c.root??TIe,A=Zn({elementType:I,getSlotProps:v,externalForwardedProps:h,externalSlotProps:d.root,additionalProps:{ref:r},ownerState:{},className:P.root}),T=c.content??AIe,M=Zn({elementType:T,getSlotProps:m,externalSlotProps:d.content,ownerState:{},className:ce(P.content,_.expanded&&P.expanded,_.selected&&P.selected,_.focused&&P.focused,_.disabled&&P.disabled,_.editing&&P.editing,_.editable&&P.editable)}),L=c.iconContainer??RIe,D=Zn({elementType:L,getSlotProps:y,externalSlotProps:d.iconContainer,ownerState:{},className:P.iconContainer}),F=c.label??IIe,z=Zn({elementType:F,getSlotProps:x,externalSlotProps:d.label,ownerState:{},className:P.label}),B=c.checkbox??j6,V=Zn({elementType:B,getSlotProps:b,externalSlotProps:d.checkbox,ownerState:{},className:P.checkbox}),$=c.groupTransition??void 0,H=Zn({elementType:$,getSlotProps:w,externalSlotProps:d.groupTransition,ownerState:{},className:P.groupTransition}),Y=c.labelInput??EIe,re=Zn({elementType:Y,getSlotProps:C,externalSlotProps:d.labelInput,ownerState:{},className:P.labelInput}),K=c.dragAndDropOverlay??M6,J=Zn({elementType:K,getSlotProps:S,externalSlotProps:d.dragAndDropOverlay,ownerState:{},className:P.dragAndDropOverlay}),X=c.errorIcon??LIe,ne=Zn({elementType:X,getSlotProps:E,externalSlotProps:d.errorIcon,ownerState:{},className:P.errorIcon}),ae=c.loadingIcon??jIe,oe=Zn({elementType:ae,getSlotProps:k,externalSlotProps:d.loadingIcon,ownerState:{},className:P.loadingIcon});return N.jsx(L6,Te({},g(),{children:N.jsxs(I,Te({},A,{children:[N.jsxs(T,Te({},M,{children:[N.jsxs(L,Te({},D,{children:[_.error&&N.jsx(X,Te({},ne)),_.loading?N.jsx(ae,Te({},oe)):N.jsx(R6,{status:_,slots:c,slotProps:d})]})),N.jsx(B,Te({},V)),_.editing?N.jsx(Y,Te({},re)):N.jsx(F,Te({},z)),N.jsx(K,Te({},J))]})),u&&N.jsx(MIe,Te({as:$},H))]}))}))});process.env.NODE_ENV!=="production"&&(RI.displayName="TreeItem");process.env.NODE_ENV!=="production"&&(RI.propTypes={children:p.any,classes:p.object,className:p.string,disabled:p.bool,id:p.string,itemId:p.string.isRequired,label:p.node,onBlur:p.func,onFocus:w5,onKeyDown:p.func,slotProps:p.object,slots:p.object,sx:p.oneOfType([p.arrayOf(p.oneOfType([p.func,p.object,p.bool])),p.func,p.object])});const N6=(t,e,{navigate:r})=>{if(!t||!t.type)return t;if(t.type==="body"){let{crud:n,entity:a,filter:o,sort:i}=t,l=`/${a}`;const u={};Array.isArray(o)&&o.forEach(h=>{if(!h||!h.name)return;let g=Lu(h.value,e);u[h.name]=g});const c=new URLSearchParams;Object.keys(u).length>0&&c.set("filter",JSON.stringify(u)),Array.isArray(i)&&i.length>0&&i[0]?.name&&(c.set("sort",i[0].name),c.set("order",i[0].desc?"DESC":"ASC"));const d=c.toString(),f=d?`${l}?${d}`:l;r(f)}else if(t.type==="navigate"){let n=Lu(t.url,e);t.if?QY(t.if,e)&&r(n):r(n)}},D6=({component:t,custom:e,...r})=>{const n=fa(),[a,o]=R.useState([]),{admin:i}=Gn();R.useEffect(()=>{let{entity:g,key:v,parent_key:m,label:y,sort:b}=t;const x=e?.globalFilterDelegate&&e?.globalFilterDelegate(g)||{};let w=`/${g}?${m}=`;x&&(w+=`&${Object.keys(x).map(C=>`${C}=${x[C]}`).join("&")}`),b&&(w+=`&_sort=${b.map(C=>`${C.name}`).join(",")}`,w+=`&_order=${b.map(C=>`${C.desc?"DESC":"ASC"}`).join(",")}`),Ul(w).then(C=>{Array.isArray(C)&&(o(C),C.map(S=>{c(S)}))})},[i]);const l=R.useCallback((g,v)=>{if(g[t.key]==v)return g;if(Array.isArray(g.list))for(let m of g.list){let y=l(m,v);if(y)return y}return null},[t]),u=R.useCallback((g,v,m)=>Array.isArray(g)?g.map(y=>{if(y[t.key]===v)return{...y,list:m};if(Array.isArray(y.list)){const b=u(y.list,v,m);if(b!==y.list)return{...y,list:b}}return y}):g,[t]),c=R.useCallback(g=>{let{entity:v,key:m,parent_key:y,label:b,sort:x}=t;const w=e?.globalFilterDelegate&&e?.globalFilterDelegate(v)||{};let C=g[t.key],S=`/${v}?${y}=${C}`;w&&(S+=`&${Object.keys(w).map(E=>`${E}=${w[E]}`).join("&")}`),x&&(S+=`&_sort=${x.map(E=>`${E.name}`).join(",")}`,S+=`&_order=${x.map(E=>`${E.desc?"DESC":"ASC"}`).join(",")}`),Ul(S).then(E=>{let k=Array.isArray(E)?E:[];k=k.filter(_=>_?.[t.key]!==C),o(_=>u(_,C,k))})},[t,e,u]),d=R.useCallback((g,v)=>{for(let m of g)N6(m,v,{navigate:n})},[t,e,n]),f=R.useCallback((g,v)=>{let m=l({list:a},v),y=!m.list||m.list.length==0;m.list.map(b=>{c(b)}),t.peer_click&&y&&d(t.peer_click.action,m),t.parent_click&&!y&&d(t.parent_click.action,m),t.item_click&&d(t.item_click.action,m),e?.itemClick&&typeof e?.itemClick=="function"&&e.itemClick(m)},[t,e,a,l]),h=(g,v)=>{const m=g[t.key];if(v?.has(m))return null;const y=v?new Set(v):new Set;y.add(m);let b;return t.label_format?b=Lu(t.label_format,g):b=g[t.label],N.jsx(RI,{itemId:`${m}`,label:N.jsx("span",{children:b}),children:g.list?.map(x=>h(x,y))},m)};return N.jsx(zr,{sx:{minHeight:352,minWidth:250},children:N.jsx(II,{onItemClick:f,children:a.map(g=>h(g))})})},DIe=({entity:t,custom:e,children:r})=>N.jsxs(Zl,{direction:"row",spacing:1,children:[t.layout?.left&&N.jsx(zr,{padding:1,children:t.layout.left.map((n,a)=>n.component=="tree"?N.jsx(pa,{sx:{marginTop:1,padding:1},children:N.jsx(D6,{component:n,custom:e})},a):N.jsxs(N.Fragment,{children:["Unknown component: ",n.component]}))}),N.jsx(zr,{width:"100%",children:r})]}),FIe=({custom:t,...e})=>{const r=Gn(),n=wt(e),a=R.useMemo(()=>r.entity[n],[r,n]);return N.jsx(cxe,{...e,children:a.crud?.search?.map(o=>{const i=a.fields.find(l=>l.name==o.name);return ox({field:i,search:!0,globalFilter:t?.globalFilterDelegate?t.globalFilterDelegate(n):{}})})})},$Ie=({crud:t,custom:e,...r})=>{const n=wt(r),a=R.createRef(),o=wn(),i=Ui(),l=Qr(),u=async g=>{if(g){const v=await g.arrayBuffer(),y=new Uint8Array(v).reduce((b,x)=>b+String.fromCharCode(x),"");return btoa(y)}else return null},c=async g=>{const v=g[0],m=await u(v);await R_(`/excel/${n}/import`,{},{base64:m}).then(y=>{y&&y.r?(o(y.msg,{type:"success"},{},!1),i()):o(y.msg,{type:"error"},{},!1)}).catch(y=>{o(y.message,{type:"error"},{},!1)})},d=()=>{a.current.click()},f=()=>{let v=new URLSearchParams(l.search).get("filter");v?v=JSON.parse(v):v={};const m=e?.globalFilterDelegate?e.globalFilterDelegate(n):{};let y={};m&&(y={...v,...m}),R_(`/excel/${n}/export`,{},{filter:y}).then(b=>{if(!b.r)o(b.msg?b.msg:"xlsx 생성에 실패하였습니다.","warning",{},!1);else if(b&&b.r){const x=document.createElement("a");x.href=b.url;const w=Ke().format("YYYYMMDDHHmmss");x.setAttribute("download",`${w}.csv`),document.body.appendChild(x),x.click(),document.body.removeChild(x),o("Download Start...","info",{},!1)}})},h=R.useMemo(()=>{let g="";if(Array.isArray(t.create)){let m=new URLSearchParams(l.search).get("filter");m?m=JSON.parse(m):m=null,m&&t.create.forEach(y=>{if(y.default){let b=y.default;typeof b=="number"||b.startsWith("$")&&(b=b.replace("$",""),g!==""&&(g+="&"),g+=`${b}=${m[b]}`)}})}return g},[t.create,l]);return N.jsxs(sh,{children:[t?.create&&N.jsx(lA,{to:{pathname:`/${n}/create`,search:h}}),t?.import&&N.jsxs(N.Fragment,{children:[N.jsx("input",{type:"file",accept:".xlsx",ref:a,style:{display:"none"},onChange:g=>c(g.target.files)}),N.jsx(Rn,{onClick:d,startIcon:N.jsx(OOe,{}),label:"Import"})]}),t?.export&&N.jsx(Rn,{onClick:f,startIcon:N.jsx(COe,{}),label:"Export"})]})},zIe=({crud_field:t})=>{const e=fa(),r=xr();return N.jsx(Rn,{label:t.label,onClick:n=>{n.stopPropagation(),n.preventDefault(),t.action.forEach(a=>{N6(a,r,{navigate:e})})}})},BIe=({custom:t,...e})=>{fa(),Ui();const r=Gn(),n=wt(e),a=R.useMemo(()=>r.entity[n].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[r,n]),o=R.useMemo(()=>r.entity[n].fields,[r,n]),i=R.useCallback(c=>{let d=c.split(".")[0],f=o.find(h=>h.name==d);return f||(f=o.find(h=>h.name==c)),f},[o]),l=R.useCallback(c=>o.map(d=>d.name).includes(c.name)||c.type=="button"?!0:i(name)!=null,[o]),u=R.useMemo(()=>{const c=o.find(d=>d.key);if(a.list==!0){if(c)return{field:c.name,order:"DESC"}}else if(a.list){let d=a.list.find(f=>f.sort);return d?{field:d.name,order:d.desc?"DESC":"ASC"}:c?{field:c.name,order:"DESC"}:{field:"id",order:"DESC"}}},[a.list,o]);return N.jsx(DIe,{entity:r.entity[n],custom:t,children:N.jsx(Sxe,{...e,filters:N.jsx(FIe,{custom:t}),mutationMode:"optimistic",exporter:!1,sort:u,perPage:r?.front?.appearance?.pagination?.rowsPerPage||50,pagination:N.jsx(Fq,{rowsPerPageOptions:r?.front?.appearance?.pagination?.rowsPerPageOptions||[5,10,30,50,100]}),actions:N.jsx($Ie,{crud:a,custom:t}),filter:t?.globalFilterDelegate?t.globalFilterDelegate(n):{},children:N.jsxs(Sb,{rowClick:a.show?"show":!1,bulkActionButtons:!!a.delete,children:[a.list==!0&&o.map(c=>Xl({field:c,isList:!0})),a.list!=!0&&a.list.filter(c=>c.name).filter(c=>l(c)).map((c,d)=>{if(c.type=="button")return N.jsx(zIe,{crud_field:c},d);{let f=i(c.name);return Xl({crud_field:c,field:f,isList:!0})}}),a.edit&&N.jsx(cq,{})]})})})},VIe=()=>xr()?N.jsx("span",{}):null,HIe=t=>N.jsx(PA,{...t,children:N.jsx(vA,{})}),WIe=({custom:t,...e})=>{const{permissions:r}=Ly(),n=Gn(),a=wt(e),o=Qr(),i=R.useMemo(()=>n.entity[a].fields,[n,a]),l=R.useMemo(()=>n.entity[a].api_generate||{},[n,a]),u=R.useCallback(f=>l?!(l[f]||f.includes(".")&&l[f.split(".")[0]]):!0,[l]),c=R.useMemo(()=>n.entity[a].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[n,a]),d=R.useCallback(f=>{let h=f?.name,g=f?.default;if(g){if(Number.isInteger(g))return g;if(g.startsWith("$")){const v=new URLSearchParams(o.search);let m=g,y=i.find(x=>x.name==h),b="string";if(y.type=="integer")b="integer";else if(y.type=="reference"){let{reference_match:x,reference_entity:w}=y;n.entity[w].fields.find(k=>k.name==x).type=="integer"?b="integer":b="string"}if(m.startsWith("$")){m=m.replace("$","");let x=v.get(m);return b=="integer"&&x&&(x=parseInt(x)),x}}else return g}return null},[o,n,i]);return N.jsx(Hwe,{title:N.jsx(VIe,{}),...e,mutationMode:"pessimistic",redirect:"list",children:N.jsx(E3,{toolbar:N.jsx(HIe,{}),children:i.filter(f=>c.create==!0||c.create.map(h=>h.name).includes(f.name)).filter(f=>u(f.name)).map(f=>{let h=c.create==!0?null:c.create.find(v=>v.name==f.name),g=d(h);return ox({field:f,crud_field:h,search:!1,globalFilter:t?.globalFilterDelegate?t.globalFilterDelegate(a):{},defaultValue:g})})})})},qIe=()=>xr()?N.jsx("span",{}):null,YIe=t=>N.jsx(PA,{...t,children:N.jsx(vA,{})}),UIe=({custom:t,...e})=>{const{permissions:r}=Ly(),n=Gn(),a=wt(e),o=R.useMemo(()=>n.entity[a].fields,[n,a]),i=R.useMemo(()=>n.entity[a].api_generate||{},[n,a]),l=R.useMemo(()=>n.entity[a].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[n,a]),u=R.useCallback(d=>i?!(i[d]||d.includes(".")&&i[d.split(".")[0]]):!0,[i]),c=R.useCallback(d=>{let f=d?.name,h=d?.default;if(h){if(Number.isInteger(h))return h;if(h.startsWith("$")){const g=new URLSearchParams(location.search);let v=h,m=o.find(b=>b.name==f),y="string";if(m.type=="integer")y="integer";else if(m.type=="reference"){let{reference_match:b,reference_entity:x}=m;n.entity[x].fields.find(E=>E.name==b).type=="integer"?y="integer":y="string"}if(v.startsWith("$")){v=v.replace("$","");let b=g.get(v);return y=="integer"&&b&&(b=parseInt(b)),b}}else return h}return null},[location,n,o]);return N.jsx(e1e,{title:N.jsx(qIe,{}),...e,mutationMode:"pessimistic",redirect:"list",children:N.jsx(E3,{toolbar:N.jsx(YIe,{}),children:o.filter(d=>l.edit==!0||l.edit.map(f=>f.name).includes(d.name)).filter(d=>d.key!=!0).filter(d=>u(d.name)).map(d=>{let f=l.create==!0?null:l.create.find(g=>g.name==d.name),h=c(f);return ox({field:d,crud_field:f,search:!1,globalFilter:t?.globalFilterDelegate?t.globalFilterDelegate(a):{},defaultValue:h})})})})},XIe=()=>xr()?N.jsx("span",{}):null,GIe=({customFunc:t})=>{const e=xr();return e?N.jsx(N.Fragment,{children:t(e)}):null},KIe=({custom:t,...e})=>{Ui();const r=Gn(),n=wt(e),a=R.useMemo(()=>r.entity[n].fields,[r,n]),o=R.useMemo(()=>t?.entity?.[n]?.show,[r,n]),i=R.useMemo(()=>r.entity[n].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[r,n]),l=R.useCallback(c=>{let d=c.split(".")[0];return a.find(h=>h.name==d)},[a]),u=R.useCallback(c=>a.map(d=>d.name).includes(c)?!0:l(c)!=null,[a]);return N.jsx(m1e,{title:N.jsx(XIe,{}),...e,children:N.jsxs(b1e,{children:[o&&N.jsx(GIe,{customFunc:o,fields:a}),!o&&i.show==!0&&a.map(c=>Xl({field:c})),!o&&i.show!=!0&&i.show.filter(c=>c.name).filter(c=>u(c.name)).map(c=>{let d=l(c.name);return Xl({crud_field:c,field:d})}),"//Custom Show Start //Custom Show End"]})})};function QIe(t){var e={};return t.replace(/[?&]+([^=&]+)=([^&]*)/gi,function(r,n,a){e[n]=a}),e}const lB={login:t=>{const{username:e,password:r}=t;return R_("/member/login",{},{type:"email",email:e,pass:r}).then(({token:n,r:a,msg:o,...i})=>{if(!a)throw new Error(o);return localStorage.setItem("token",n),Ns.defaults.headers.common["x-access-token"]=n,tO({token:n}),{token:n,...i}})},checkError:t=>Promise.resolve(),checkAuth:t=>{localStorage.setItem(CH,window.location.href);const e=QIe(window.location.href);let{token:r}=e;return r||(r=localStorage.getItem("token")),r?(Ns.defaults.headers.common["x-access-token"]=r,Ul(`/member/islogin?token=${encodeURIComponent(r)}`).then(n=>n.r?(tO({token:r,...n?.member}),Promise.resolve()):Promise.reject())):Promise.reject()},logout:()=>(localStorage.removeItem("token"),document.cookie="",tO({token:null}),Promise.resolve()),getIdentity:()=>Ul("/member/islogin").then(t=>{if(t?.r&&t?.member){const e=t.member;return{id:e.id||e.email,fullName:e.name||e.email,avatar:e.avatar}}return Promise.reject()}),handleCallback:()=>Promise.resolve(),getPermissions:()=>Promise.resolve()},cB=(t,e=!1,r={})=>{const n=i=>i&&typeof i=="object"&&!Array.isArray(i),a=async(i,l,u)=>{if(u&&u.rawFile&&u.title){let c,d=!1;if(r[i]&&r[i][l]&&(d=!0),console.log("fileUploader",i,l,e?"local":"s3",d?"secure":"public"),e?d?c=await aAe(u.rawFile,u.title):c=await nAe(u.rawFile,u.title):d?c=await rAe(u.rawFile,u.title):c=await tAe(u.rawFile,u.title),c){const f={...u};return f.src=c,delete f.rawFile,f}}return u},o=async(i,l)=>{if(Array.isArray(l))return await Promise.all(l.map(d=>o(i,d)));if(!n(l))return l;const u=await Promise.all(Object.entries(l).map(async([c,d])=>{if(d&&d.rawFile){const f=await a(i,c,d);return[c,f]}if(Array.isArray(d)||n(d)){const f=await o(i,d);return[c,f]}return[c,d]}));return Object.fromEntries(u)};return{...t,async create(i,l){const u=await o(i,l?.data??{});return t.create(i,{...l,data:u})},async update(i,l){const u=await o(i,l?.data??{});return t.update(i,{...l,data:u})}}};var mO={};/*!
|
|
607
|
+
`));const{registerChild:f,unregisterChild:h,parentId:g}=d,v=AI(o),m=O.useRef(null),y=nr(m,r),b=Mr(a,Sh.treeId);return cn(()=>{const x=sx({itemId:u,treeId:b,id:c});return f(x,u),()=>{h(x),h(x)}},[a,n,f,h,u,c,b]),cn(()=>n.insertJSXItem({id:u,idAttribute:c,parentId:g,expandable:v,disabled:i}),[n,g,u,v,i,c]),O.useEffect(()=>{if(l)return n.mapFirstCharFromJSX(u,(m.current?.textContent??"").substring(0,1).toLowerCase())},[n,u,l]),{contentRef:y,rootRef:e}};sc.itemPlugin=pIe;sc.wrapItem=({children:t,itemId:e,idAttribute:r})=>{const n=O.useContext(ju);return N.jsx(TI,{itemId:e,idAttribute:r,children:N.jsx(ju.Provider,{value:n+1,children:t})})};process.env.NODE_ENV!=="production"&&(sc.wrapItem.displayName="useTreeViewJSXItems.wrapItem");sc.wrapRoot=({children:t})=>N.jsx(TI,{itemId:null,idAttribute:null,children:N.jsx(ju.Provider,{value:0,children:t})});process.env.NODE_ENV!=="production"&&(sc.wrapRoot.displayName="useTreeViewJSXItems.wrapRoot");sc.params={};const hIe=[dd,lx,Ch,_I,I6,sc],gIe=["slots","slotProps"],mIe=m6(),vIe=t=>{const{classes:e}=t;return O.useMemo(()=>qe({root:["root"],item:["item"],itemContent:["itemContent"],itemGroupTransition:["itemGroupTransition"],itemIconContainer:["itemIconContainer"],itemLabel:["itemLabel"],itemCheckbox:["itemCheckbox"]},cAe,e),[e])},yIe=te("ul",{name:"MuiSimpleTreeView",slot:"Root"})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),bIe=[],II=O.forwardRef(function(e,r){const n=mIe({props:e,name:"MuiSimpleTreeView"}),{slots:a,slotProps:o}=n,i=Gu(n,gIe);process.env.NODE_ENV!=="production"&&n.items!=null&&M_(["MUI X: The Simple Tree View component does not support the `items` prop.","If you want to add items, you need to pass them as JSX children.","Check the documentation for more details: https://mui.com/x/react-tree-view/simple-tree-view/items/."]);const{getRootProps:l,contextValue:u}=WAe({plugins:hIe,rootRef:r,props:Te({},i,{items:bIe})}),c=vIe(n),d=a?.root??yIe,f=Zn({elementType:d,externalSlotProps:o?.root,className:c.root,getSlotProps:l,ownerState:n});return N.jsx(qAe,{contextValue:u,classes:c,slots:a,slotProps:o,children:N.jsx(d,Te({},f))})});process.env.NODE_ENV!=="production"&&(II.displayName="SimpleTreeView");process.env.NODE_ENV!=="production"&&(II.propTypes={apiRef:p.shape({current:p.shape({focusItem:p.func,getItem:p.func,getItemDOMElement:p.func,getItemOrderedChildrenIds:p.func,getItemTree:p.func,getParentId:p.func,isItemExpanded:p.func,setIsItemDisabled:p.func,setItemExpansion:p.func,setItemSelection:p.func})}),checkboxSelection:p.bool,children:p.node,classes:p.object,className:p.string,defaultExpandedItems:p.arrayOf(p.string),defaultSelectedItems:p.any,disabledItemsFocusable:p.bool,disableSelection:p.bool,expandedItems:p.arrayOf(p.string),expansionTrigger:p.oneOf(["content","iconContainer"]),id:p.string,itemChildrenIndentation:p.oneOfType([p.number,p.string]),multiSelect:p.bool,onExpandedItemsChange:p.func,onItemClick:p.func,onItemExpansionToggle:p.func,onItemFocus:p.func,onItemSelectionToggle:p.func,onSelectedItemsChange:p.func,selectedItems:p.any,selectionPropagation:p.shape({descendants:p.bool,parents:p.bool}),slotProps:p.object,slots:p.object,sx:p.oneOfType([p.arrayOf(p.oneOfType([p.func,p.object,p.bool])),p.func,p.object])});const xIe=t=>{const{runItemPlugins:e,instance:r,publicAPI:n,store:a}=ic(),o=O.useContext(ju),i=Mr(a,(...U)=>typeof o=="function"?o(...U):o,t.itemId),{id:l,itemId:u,label:c,children:d,rootRef:f}=t,{rootRef:h,contentRef:g,propsEnhancers:v}=e(t),{interactions:m,status:y}=fIe({itemId:u,children:d}),b=O.useRef(null),x=O.useRef(null),w=nr(f,h,b),C=nr(g,x),S=O.useRef(null),E=Mr(a,Sh.treeId),k=Mr(a,tr.canItemBeSelected,u),_=Mr(a,tr.isCheckboxSelectionEnabled),P=sx({itemId:u,treeId:E,id:l}),I=Mr(a,bl.isItemTheDefaultFocusableItem,u),A={rootRefObject:b,contentRefObject:x,interactions:m},T=U=>q=>{U.onFocus?.(q),!q.defaultMuiPrevented&&!y.focused&&ot.canItemBeFocused(a.state,u)&&q.currentTarget===q.target&&r.focusItem(q,u)},M=U=>q=>{if(U.onBlur?.(q),q.defaultMuiPrevented)return;const G=r.getItemDOMElement(u);y.editing||q.relatedTarget&&N_(q.relatedTarget,G)&&(q.target&&q.target?.dataset?.element==="labelInput"&&N_(q.target,G)||q.relatedTarget?.dataset?.element==="labelInput")||r.removeFocusedItem()},L=U=>q=>{U.onKeyDown?.(q),!(q.defaultMuiPrevented||q.target?.dataset?.element==="labelInput")&&r.handleItemKeyDown(q,u)},D=U=>q=>{U.onDoubleClick?.(q),!q.defaultMuiPrevented&&m.toggleItemEditing()},F=U=>q=>{U.onClick?.(q),r.handleItemClick(q,u),!(q.defaultMuiPrevented||S.current?.contains(q.target))&&(Xr.triggerSlot(a.state)==="content"&&m.handleExpansion(q),_||m.handleSelection(q))},z=U=>q=>{U.onMouseDown?.(q),!q.defaultMuiPrevented&&(q.shiftKey||q.ctrlKey||q.metaKey||y.disabled)&&q.preventDefault()},B=U=>q=>{U.onClick?.(q),!q.defaultMuiPrevented&&Xr.triggerSlot(a.state)==="iconContainer"&&m.handleExpansion(q)};return{getContextProviderProps:()=>({itemId:u,id:l}),getRootProps:(U={})=>{const q=Te({},$n(t),$n(U));let G;y.selected?G=!0:k?G=!1:G=void 0;const de=Te({},q,{ref:w,role:"treeitem",tabIndex:I?0:-1,id:P,"aria-expanded":y.expandable?y.expanded:void 0,"aria-selected":G,"aria-disabled":y.disabled||void 0},U,{style:Te({},U.style??{},{"--TreeView-itemDepth":i}),onFocus:T(q),onBlur:M(q),onKeyDown:L(q)}),he=v.root?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},de,he)},getContentProps:(U={})=>{const q=$n(U),G=Te({},q,U,{ref:C,onClick:F(q),onMouseDown:z(q),status:y});["expanded","selected","focused","disabled","editing","editable"].forEach(he=>{y[he]&&(G[`data-${he}`]="")});const de=v.content?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},G,de)},getGroupTransitionProps:(U={})=>{const q=$n(U);return Te({},q,{unmountOnExit:!0,component:"ul",role:"group",in:y.expanded,children:d},U)},getIconContainerProps:(U={})=>{const q=$n(U);return Te({},q,U,{onClick:B(q)})},getCheckboxProps:(U={})=>{const q=$n(U),G=Te({},q,{ref:S,"aria-hidden":!0},U),de=v.checkbox?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},G,de)},getLabelProps:(U={})=>{const q=Te({},$n(U)),G=Te({},q,{children:c},U,{onDoubleClick:D(q)}),de=v.label?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},de,G)},getLabelInputProps:(U={})=>{const q=$n(U),G=v.labelInput?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},U,G)},getDragAndDropOverlayProps:(U={})=>{const q=$n(U),G=v.dragAndDropOverlay?.(Te({},A,{externalEventHandlers:q}))??{};return Te({},U,G)},getErrorContainerProps:(U={})=>{const q=$n(U);return Te({},q,U)},getLoadingContainerProps:(U={})=>{const q=$n(U);return Te({size:"12px",thickness:6},q,U)},rootRef:w,status:y,publicAPI:n}};function wIe(t){return We("MuiTreeItem",t)}Ge("MuiTreeItem",["root","content","groupTransition","iconContainer","label","checkbox","labelInput","dragAndDropOverlay","errorIcon","loadingIcon","expanded","selected","focused","disabled","editable","editing"]);const SIe=et(N.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"TreeViewExpandIcon"),CIe=et(N.jsx("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"TreeViewCollapseIcon");function R6(t){const{slots:e,slotProps:r,status:n}=t,{slots:a,slotProps:o}=S6(),i={collapseIcon:e?.collapseIcon??a.collapseIcon??CIe,expandIcon:e?.expandIcon??a.expandIcon??SIe,endIcon:e?.endIcon??a.endIcon,icon:e?.icon};let l;i?.icon?l="icon":n.expandable?n.expanded?l="collapseIcon":l="expandIcon":l="endIcon";const u=i[l],c=Zn({elementType:u,externalSlotProps:d=>Te({},Mm(o[l],d),Mm(r?.[l],d)),ownerState:{}});return u?N.jsx(u,Te({},c)):null}process.env.NODE_ENV!=="production"&&(R6.propTypes={slotProps:p.object,slots:p.object,status:p.shape({disabled:p.bool.isRequired,editable:p.bool.isRequired,editing:p.bool.isRequired,error:p.bool.isRequired,expandable:p.bool.isRequired,expanded:p.bool.isRequired,focused:p.bool.isRequired,loading:p.bool.isRequired,selected:p.bool.isRequired}).isRequired});const OIe=te("div",{name:"MuiTreeItemDragAndDropOverlay",slot:"Root",shouldForwardProp:t=>Uc(t)&&t!=="action"})(({theme:t})=>({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:t.shape.borderRadius,backgroundColor:t.vars?`rgba(${t.vars.palette.primary.darkChannel} / ${t.vars.palette.action.focusOpacity})`:Oa(t.palette.primary.dark,t.palette.action.focusOpacity)}},{props:{action:"reorder-above"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderTop:`1px solid ${(t.vars||t).palette.action.active}`}},{props:{action:"reorder-below"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderBottom:`1px solid ${(t.vars||t).palette.action.active}`}},{props:{action:"move-to-parent"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * calc(var(--TreeView-itemDepth) - 1))",borderBottom:`1px solid ${(t.vars||t).palette.action.active}`}}]}));function M6(t){return t.action==null?null:N.jsx(OIe,Te({},t))}process.env.NODE_ENV!=="production"&&(M6.propTypes={action:p.oneOf(["make-child","move-to-parent","reorder-above","reorder-below"]),style:p.object});function L6(t){const{children:e,itemId:r,id:n}=t,{wrapItem:a,instance:o,store:i}=ic(),l=Mr(i,Sh.treeId),u=sx({itemId:r,treeId:l,id:n});return N.jsx(O.Fragment,{children:a({children:e,itemId:r,instance:o,idAttribute:u})})}process.env.NODE_ENV!=="production"&&(L6.propTypes={children:p.node,id:p.string,itemId:p.string.isRequired});const EIe=te("input",{name:"MuiTreeItem",slot:"LabelInput"})(({theme:t})=>Te({},t.typography.body1,{width:"100%",backgroundColor:(t.vars||t).palette.background.paper,borderRadius:t.shape.borderRadius,border:"none",padding:"0 2px",boxSizing:"border-box","&:focus":{outline:`1px solid ${(t.vars||t).palette.primary.main}`}})),kIe=["visible"],_Ie=["id","itemId","label","disabled","children","slots","slotProps","classes"],PIe=m6(),TIe=te("li",{name:"MuiTreeItem",slot:"Root"})({listStyle:"none",margin:0,padding:0,outline:0}),AIe=te("div",{name:"MuiTreeItem",slot:"Content",shouldForwardProp:t=>Uc(t)&&t!=="status"})(({theme:t})=>({padding:t.spacing(.5,1),paddingLeft:`calc(${t.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`,borderRadius:t.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:t.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(t.vars||t).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},"&[data-disabled]":{opacity:(t.vars||t).palette.action.disabledOpacity,backgroundColor:"transparent"},"&[data-focused]":{backgroundColor:(t.vars||t).palette.action.focus},"&[data-selected]":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity),"&:hover":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.hoverOpacity}))`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / ${t.vars.palette.action.selectedOpacity})`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity)}}},"&[data-selected][data-focused]":{backgroundColor:t.vars?`rgba(${t.vars.palette.primary.mainChannel} / calc(${t.vars.palette.action.selectedOpacity} + ${t.vars.palette.action.focusOpacity}))`:Oa(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)}})),IIe=te("div",{name:"MuiTreeItem",slot:"Label",shouldForwardProp:t=>Uc(t)&&t!=="editable"})(({theme:t})=>Te({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative",overflow:"hidden"},t.typography.body1,{variants:[{props:({editable:e})=>e,style:{paddingLeft:"2px"}}]})),RIe=te("div",{name:"MuiTreeItem",slot:"IconContainer"})({width:16,display:"flex",flexShrink:0,justifyContent:"center",position:"relative","& svg":{fontSize:18}}),MIe=te(vu,{name:"MuiTreeItem",slot:"GroupTransition",overridesResolver:(t,e)=>e.groupTransition})({margin:0,padding:0}),LIe=te("div",{name:"MuiTreeItem",slot:"ErrorIcon"})({position:"absolute",right:-3,width:7,height:7,borderRadius:"50%",backgroundColor:"red"}),jIe=te(Xi,{name:"MuiTreeItem",slot:"LoadingIcon"})({color:"text.primary"}),j6=te(O.forwardRef((t,e)=>{const{visible:r}=t,n=Gu(t,kIe);return r?N.jsx(Cu,Te({},n,{ref:e})):null}),{name:"MuiTreeItem",slot:"Checkbox"})({padding:0});process.env.NODE_ENV!=="production"&&(j6.displayName="TreeItemCheckbox");const NIe=t=>{const{classes:e}=S6(),r=Te({},t,{root:ce(t?.root,e.root),content:ce(t?.content,e.itemContent),iconContainer:ce(t?.iconContainer,e.itemIconContainer),checkbox:ce(t?.checkbox,e.itemCheckbox),label:ce(t?.label,e.itemLabel),groupTransition:ce(t?.groupTransition,e.itemGroupTransition),labelInput:ce(t?.labelInput,e.itemLabelInput),dragAndDropOverlay:ce(t?.dragAndDropOverlay,e.itemDragAndDropOverlay),errorIcon:ce(t?.errorIcon,e.itemErrorIcon),loadingIcon:ce(t?.loadingIcon,e.itemLoadingIcon)});return qe({root:["root"],content:["content"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],groupTransition:["groupTransition"],labelInput:["labelInput"],dragAndDropOverlay:["dragAndDropOverlay"],errorIcon:["errorIcon"],loadingIcon:["loadingIcon"],expanded:["expanded"],editing:["editing"],editable:["editable"],selected:["selected"],focused:["focused"],disabled:["disabled"]},wIe,r)},RI=O.forwardRef(function(e,r){const n=PIe({props:e,name:"MuiTreeItem"}),{id:a,itemId:o,label:i,disabled:l,children:u,slots:c={},slotProps:d={},classes:f}=n,h=Gu(n,_Ie),{getContextProviderProps:g,getRootProps:v,getContentProps:m,getIconContainerProps:y,getCheckboxProps:b,getLabelProps:x,getGroupTransitionProps:w,getLabelInputProps:C,getDragAndDropOverlayProps:S,getErrorContainerProps:E,getLoadingContainerProps:k,status:_}=xIe({id:a,itemId:o,children:u,label:i,disabled:l}),P=NIe(f),I=c.root??TIe,A=Zn({elementType:I,getSlotProps:v,externalForwardedProps:h,externalSlotProps:d.root,additionalProps:{ref:r},ownerState:{},className:P.root}),T=c.content??AIe,M=Zn({elementType:T,getSlotProps:m,externalSlotProps:d.content,ownerState:{},className:ce(P.content,_.expanded&&P.expanded,_.selected&&P.selected,_.focused&&P.focused,_.disabled&&P.disabled,_.editing&&P.editing,_.editable&&P.editable)}),L=c.iconContainer??RIe,D=Zn({elementType:L,getSlotProps:y,externalSlotProps:d.iconContainer,ownerState:{},className:P.iconContainer}),F=c.label??IIe,z=Zn({elementType:F,getSlotProps:x,externalSlotProps:d.label,ownerState:{},className:P.label}),B=c.checkbox??j6,V=Zn({elementType:B,getSlotProps:b,externalSlotProps:d.checkbox,ownerState:{},className:P.checkbox}),$=c.groupTransition??void 0,H=Zn({elementType:$,getSlotProps:w,externalSlotProps:d.groupTransition,ownerState:{},className:P.groupTransition}),Y=c.labelInput??EIe,re=Zn({elementType:Y,getSlotProps:C,externalSlotProps:d.labelInput,ownerState:{},className:P.labelInput}),K=c.dragAndDropOverlay??M6,J=Zn({elementType:K,getSlotProps:S,externalSlotProps:d.dragAndDropOverlay,ownerState:{},className:P.dragAndDropOverlay}),X=c.errorIcon??LIe,ne=Zn({elementType:X,getSlotProps:E,externalSlotProps:d.errorIcon,ownerState:{},className:P.errorIcon}),ae=c.loadingIcon??jIe,oe=Zn({elementType:ae,getSlotProps:k,externalSlotProps:d.loadingIcon,ownerState:{},className:P.loadingIcon});return N.jsx(L6,Te({},g(),{children:N.jsxs(I,Te({},A,{children:[N.jsxs(T,Te({},M,{children:[N.jsxs(L,Te({},D,{children:[_.error&&N.jsx(X,Te({},ne)),_.loading?N.jsx(ae,Te({},oe)):N.jsx(R6,{status:_,slots:c,slotProps:d})]})),N.jsx(B,Te({},V)),_.editing?N.jsx(Y,Te({},re)):N.jsx(F,Te({},z)),N.jsx(K,Te({},J))]})),u&&N.jsx(MIe,Te({as:$},H))]}))}))});process.env.NODE_ENV!=="production"&&(RI.displayName="TreeItem");process.env.NODE_ENV!=="production"&&(RI.propTypes={children:p.any,classes:p.object,className:p.string,disabled:p.bool,id:p.string,itemId:p.string.isRequired,label:p.node,onBlur:p.func,onFocus:w5,onKeyDown:p.func,slotProps:p.object,slots:p.object,sx:p.oneOfType([p.arrayOf(p.oneOfType([p.func,p.object,p.bool])),p.func,p.object])});const N6=(t,e,{navigate:r})=>{if(!t||!t.type)return t;if(t.type==="body"){let{crud:n,entity:a,filter:o,sort:i}=t,l=`/${a}`;const u={};Array.isArray(o)&&o.forEach(h=>{if(!h||!h.name)return;let g=Lu(h.value,e);u[h.name]=g});const c=new URLSearchParams;Object.keys(u).length>0&&c.set("filter",JSON.stringify(u)),Array.isArray(i)&&i.length>0&&i[0]?.name&&(c.set("sort",i[0].name),c.set("order",i[0].desc?"DESC":"ASC"));const d=c.toString(),f=d?`${l}?${d}`:l;r(f)}else if(t.type==="navigate"){let n=Lu(t.url,e);t.if?QY(t.if,e)&&r(n):r(n)}},D6=({component:t,custom:e,...r})=>{const n=fa(),[a,o]=R.useState([]),{admin:i}=Gn();R.useEffect(()=>{let{entity:g,key:v,parent_key:m,label:y,sort:b}=t;const x=e?.globalFilterDelegate&&e?.globalFilterDelegate(g)||{};let w=`/${g}?${m}=`;x&&(w+=`&${Object.keys(x).map(C=>`${C}=${x[C]}`).join("&")}`),b&&(w+=`&_sort=${b.map(C=>`${C.name}`).join(",")}`,w+=`&_order=${b.map(C=>`${C.desc?"DESC":"ASC"}`).join(",")}`),Ul(w).then(C=>{Array.isArray(C)&&(o(C),C.map(S=>{c(S)}))})},[i]);const l=R.useCallback((g,v)=>{if(g[t.key]==v)return g;if(Array.isArray(g.list))for(let m of g.list){let y=l(m,v);if(y)return y}return null},[t]),u=R.useCallback((g,v,m)=>Array.isArray(g)?g.map(y=>{if(y[t.key]===v)return{...y,list:m};if(Array.isArray(y.list)){const b=u(y.list,v,m);if(b!==y.list)return{...y,list:b}}return y}):g,[t]),c=R.useCallback(g=>{let{entity:v,key:m,parent_key:y,label:b,sort:x}=t;const w=e?.globalFilterDelegate&&e?.globalFilterDelegate(v)||{};let C=g[t.key],S=`/${v}?${y}=${C}`;w&&(S+=`&${Object.keys(w).map(E=>`${E}=${w[E]}`).join("&")}`),x&&(S+=`&_sort=${x.map(E=>`${E.name}`).join(",")}`,S+=`&_order=${x.map(E=>`${E.desc?"DESC":"ASC"}`).join(",")}`),Ul(S).then(E=>{let k=Array.isArray(E)?E:[];k=k.filter(_=>_?.[t.key]!==C),o(_=>u(_,C,k))})},[t,e,u]),d=R.useCallback((g,v)=>{for(let m of g)N6(m,v,{navigate:n})},[t,e,n]),f=R.useCallback((g,v)=>{let m=l({list:a},v),y=!m.list||m.list.length==0;m.list.map(b=>{c(b)}),t.peer_click&&y&&d(t.peer_click.action,m),t.parent_click&&!y&&d(t.parent_click.action,m),t.item_click&&d(t.item_click.action,m),e?.itemClick&&typeof e?.itemClick=="function"&&e.itemClick(m)},[t,e,a,l]),h=(g,v)=>{const m=g[t.key];if(v?.has(m))return null;const y=v?new Set(v):new Set;y.add(m);let b;return t.label_format?b=Lu(t.label_format,g):b=g[t.label],N.jsx(RI,{itemId:`${m}`,label:N.jsx("span",{children:b}),children:g.list?.map(x=>h(x,y))},m)};return N.jsx(zr,{sx:{minHeight:352,minWidth:250},children:N.jsx(II,{onItemClick:f,children:a.map(g=>h(g))})})},DIe=({entity:t,custom:e,children:r})=>N.jsxs(Zl,{direction:"row",spacing:1,children:[t.layout?.left&&N.jsx(zr,{padding:1,children:t.layout.left.map((n,a)=>n.component=="tree"?N.jsx(pa,{sx:{marginTop:1,padding:1},children:N.jsx(D6,{component:n,custom:e})},a):N.jsxs(N.Fragment,{children:["Unknown component: ",n.component]}))}),N.jsx(zr,{width:"100%",children:r})]}),FIe=({custom:t,...e})=>{const r=Gn(),n=wt(e),a=R.useMemo(()=>r.entity[n],[r,n]);return N.jsx(cxe,{...e,children:a.crud?.search?.map(o=>{const i=a.fields.find(l=>l.name==o.name);return ox({field:i,search:!0,globalFilter:t?.globalFilterDelegate?t.globalFilterDelegate(n):{}})})})},$Ie=({crud:t,custom:e,...r})=>{const n=wt(r),a=R.createRef(),o=wn(),i=Ui(),l=Qr(),u=async g=>{if(g){const v=await g.arrayBuffer(),y=new Uint8Array(v).reduce((b,x)=>b+String.fromCharCode(x),"");return btoa(y)}else return null},c=async g=>{const v=g[0],m=await u(v);await R_(`/excel/${n}/import`,{},{base64:m}).then(y=>{y&&y.r?(o(y.msg,{type:"success"},{},!1),i()):o(y.msg,{type:"error"},{},!1)}).catch(y=>{o(y.message,{type:"error"},{},!1)})},d=()=>{a.current.click()},f=()=>{let v=new URLSearchParams(l.search).get("filter");v?v=JSON.parse(v):v={};const m=e?.globalFilterDelegate?e.globalFilterDelegate(n):{};let y={};m&&(y={...v,...m}),R_(`/excel/${n}/export`,{},{filter:y}).then(b=>{if(!b.r)o(b.msg?b.msg:"xlsx 생성에 실패하였습니다.","warning",{},!1);else if(b&&b.r){const x=document.createElement("a");x.href=b.url;const w=Ke().format("YYYYMMDDHHmmss");x.setAttribute("download",`${w}.csv`),document.body.appendChild(x),x.click(),document.body.removeChild(x),o("Download Start...","info",{},!1)}})},h=R.useMemo(()=>{let g="";if(Array.isArray(t.create)){let m=new URLSearchParams(l.search).get("filter");m?m=JSON.parse(m):m=null,m&&t.create.forEach(y=>{if(y.default){let b=y.default;typeof b=="number"||b.startsWith("$")&&(b=b.replace("$",""),g!==""&&(g+="&"),g+=`${b}=${m[b]}`)}})}return g},[t.create,l]);return N.jsxs(sh,{children:[t?.create&&N.jsx(lA,{to:{pathname:`/${n}/create`,search:h}}),t?.import&&N.jsxs(N.Fragment,{children:[N.jsx("input",{type:"file",accept:".xlsx",ref:a,style:{display:"none"},onChange:g=>c(g.target.files)}),N.jsx(Rn,{onClick:d,startIcon:N.jsx(OOe,{}),label:"Import"})]}),t?.export&&N.jsx(Rn,{onClick:f,startIcon:N.jsx(COe,{}),label:"Export"})]})},zIe=({crud_field:t})=>{const e=fa(),r=xr();return N.jsx(Rn,{label:t.label,onClick:n=>{n.stopPropagation(),n.preventDefault(),t.action.forEach(a=>{N6(a,r,{navigate:e})})}})},BIe=({custom:t,...e})=>{fa(),Ui();const r=Gn(),n=wt(e),a=R.useMemo(()=>r.entity[n].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[r,n]),o=R.useMemo(()=>r.entity[n].fields,[r,n]),i=R.useCallback(c=>{let d=c.split(".")[0],f=o.find(h=>h.name==d);return f||(f=o.find(h=>h.name==c)),f},[o]),l=R.useCallback(c=>o.map(d=>d.name).includes(c.name)||c.type=="button"?!0:i(name)!=null,[o]),u=R.useMemo(()=>{const c=o.find(d=>d.key);if(a.list==!0){if(c)return{field:c.name,order:"DESC"}}else if(a.list){let d=a.list.find(f=>f.sort);return d?{field:d.name,order:d.desc?"DESC":"ASC"}:c?{field:c.name,order:"DESC"}:{field:"id",order:"DESC"}}},[a.list,o]);return N.jsx(DIe,{entity:r.entity[n],custom:t,children:N.jsx(Sxe,{...e,filters:N.jsx(FIe,{custom:t}),mutationMode:"optimistic",exporter:!1,sort:u,perPage:r?.front?.appearance?.pagination?.rowsPerPage||50,pagination:N.jsx(Fq,{rowsPerPageOptions:r?.front?.appearance?.pagination?.rowsPerPageOptions||[5,10,30,50,100]}),actions:N.jsx($Ie,{crud:a,custom:t}),filter:t?.globalFilterDelegate?t.globalFilterDelegate(n):{},children:N.jsxs(Sb,{rowClick:a.show?"show":!1,bulkActionButtons:!!a.delete,children:[a.list==!0&&o.map(c=>Xl({field:c,isList:!0})),a.list!=!0&&a.list.filter(c=>c.name).filter(c=>l(c)).map((c,d)=>{if(c.type=="button")return N.jsx(zIe,{crud_field:c},d);{let f=i(c.name);return Xl({crud_field:c,field:f,isList:!0})}}),a.edit&&N.jsx(cq,{})]})})})},VIe=()=>xr()?N.jsx("span",{}):null,HIe=t=>N.jsx(PA,{...t,children:N.jsx(vA,{})}),WIe=({custom:t,...e})=>{const{permissions:r}=Ly(),n=Gn(),a=wt(e),o=Qr(),i=R.useMemo(()=>n.entity[a].fields,[n,a]),l=R.useMemo(()=>n.entity[a].api_generate||{},[n,a]),u=R.useCallback(f=>l?!(l[f]||f.includes(".")&&l[f.split(".")[0]]):!0,[l]),c=R.useMemo(()=>n.entity[a].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[n,a]),d=R.useCallback(f=>{let h=f?.name,g=f?.default;if(g){if(Number.isInteger(g))return g;if(g.startsWith("$")){const v=new URLSearchParams(o.search);let m=g,y=i.find(x=>x.name==h),b="string";if(y.type=="integer")b="integer";else if(y.type=="reference"){let{reference_match:x,reference_entity:w}=y;n.entity[w].fields.find(k=>k.name==x).type=="integer"?b="integer":b="string"}if(m.startsWith("$")){m=m.replace("$","");let x=v.get(m);return b=="integer"&&x&&(x=parseInt(x)),x}}else return g}return null},[o,n,i]);return N.jsx(Hwe,{title:N.jsx(VIe,{}),...e,mutationMode:"pessimistic",redirect:"list",children:N.jsx(E3,{toolbar:N.jsx(HIe,{}),children:i.filter(f=>c.create==!0||c.create.map(h=>h.name).includes(f.name)).filter(f=>u(f.name)).filter(f=>f.type!="objectId").map(f=>{let h=c.create==!0?null:c.create.find(v=>v.name==f.name),g=d(h);return ox({field:f,crud_field:h,search:!1,globalFilter:t?.globalFilterDelegate?t.globalFilterDelegate(a):{},defaultValue:g})})})})},qIe=()=>xr()?N.jsx("span",{}):null,YIe=t=>N.jsx(PA,{...t,children:N.jsx(vA,{})}),UIe=({custom:t,...e})=>{const{permissions:r}=Ly(),n=Gn(),a=wt(e),o=R.useMemo(()=>n.entity[a].fields,[n,a]),i=R.useMemo(()=>n.entity[a].api_generate||{},[n,a]),l=R.useMemo(()=>n.entity[a].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[n,a]),u=R.useCallback(d=>i?!(i[d]||d.includes(".")&&i[d.split(".")[0]]):!0,[i]),c=R.useCallback(d=>{let f=d?.name,h=d?.default;if(h){if(Number.isInteger(h))return h;if(h.startsWith("$")){const g=new URLSearchParams(location.search);let v=h,m=o.find(b=>b.name==f),y="string";if(m.type=="integer")y="integer";else if(m.type=="reference"){let{reference_match:b,reference_entity:x}=m;n.entity[x].fields.find(E=>E.name==b).type=="integer"?y="integer":y="string"}if(v.startsWith("$")){v=v.replace("$","");let b=g.get(v);return y=="integer"&&b&&(b=parseInt(b)),b}}else return h}return null},[location,n,o]);return N.jsx(e1e,{title:N.jsx(qIe,{}),...e,mutationMode:"pessimistic",redirect:"list",children:N.jsx(E3,{toolbar:N.jsx(YIe,{}),children:o.filter(d=>l.edit==!0||l.edit.map(f=>f.name).includes(d.name)).filter(d=>d.key!=!0).filter(d=>u(d.name)).map(d=>{let f=l.create==!0?null:l.create.find(g=>g.name==d.name),h=c(f);return ox({field:d,crud_field:f,search:!1,globalFilter:t?.globalFilterDelegate?t.globalFilterDelegate(a):{},defaultValue:h})})})})},XIe=()=>xr()?N.jsx("span",{}):null,GIe=({customFunc:t})=>{const e=xr();return e?N.jsx(N.Fragment,{children:t(e)}):null},KIe=({custom:t,...e})=>{Ui();const r=Gn(),n=wt(e),a=R.useMemo(()=>r.entity[n].fields,[r,n]),o=R.useMemo(()=>t?.entity?.[n]?.show,[r,n]),i=R.useMemo(()=>r.entity[n].crud||{show:!0,edit:!0,create:!0,delete:!0,list:!0,import:!1,export:!1},[r,n]),l=R.useCallback(c=>{let d=c.split(".")[0];return a.find(h=>h.name==d)},[a]),u=R.useCallback(c=>a.map(d=>d.name).includes(c)?!0:l(c)!=null,[a]);return N.jsx(m1e,{title:N.jsx(XIe,{}),...e,children:N.jsxs(b1e,{children:[o&&N.jsx(GIe,{customFunc:o,fields:a}),!o&&i.show==!0&&a.map(c=>Xl({field:c})),!o&&i.show!=!0&&i.show.filter(c=>c.name).filter(c=>u(c.name)).map(c=>{let d=l(c.name);return Xl({crud_field:c,field:d})}),"//Custom Show Start //Custom Show End"]})})};function QIe(t){var e={};return t.replace(/[?&]+([^=&]+)=([^&]*)/gi,function(r,n,a){e[n]=a}),e}const lB={login:t=>{const{username:e,password:r}=t;return R_("/member/login",{},{type:"email",email:e,pass:r}).then(({token:n,r:a,msg:o,...i})=>{if(!a)throw new Error(o);return localStorage.setItem("token",n),Ns.defaults.headers.common["x-access-token"]=n,tO({token:n}),{token:n,...i}})},checkError:t=>Promise.resolve(),checkAuth:t=>{localStorage.setItem(CH,window.location.href);const e=QIe(window.location.href);let{token:r}=e;return r||(r=localStorage.getItem("token")),r?(Ns.defaults.headers.common["x-access-token"]=r,Ul(`/member/islogin?token=${encodeURIComponent(r)}`).then(n=>n.r?(tO({token:r,...n?.member}),Promise.resolve()):Promise.reject())):Promise.reject()},logout:()=>(localStorage.removeItem("token"),document.cookie="",tO({token:null}),Promise.resolve()),getIdentity:()=>Ul("/member/islogin").then(t=>{if(t?.r&&t?.member){const e=t.member;return{id:e.id||e.email,fullName:e.name||e.email,avatar:e.avatar}}return Promise.reject()}),handleCallback:()=>Promise.resolve(),getPermissions:()=>Promise.resolve()},cB=(t,e=!1,r={})=>{const n=i=>i&&typeof i=="object"&&!Array.isArray(i),a=async(i,l,u)=>{if(u&&u.rawFile&&u.title){let c,d=!1;if(r[i]&&r[i][l]&&(d=!0),console.log("fileUploader",i,l,e?"local":"s3",d?"secure":"public"),e?d?c=await aAe(u.rawFile,u.title):c=await nAe(u.rawFile,u.title):d?c=await rAe(u.rawFile,u.title):c=await tAe(u.rawFile,u.title),c){const f={...u};return f.src=c,delete f.rawFile,f}}return u},o=async(i,l)=>{if(Array.isArray(l))return await Promise.all(l.map(d=>o(i,d)));if(!n(l))return l;const u=await Promise.all(Object.entries(l).map(async([c,d])=>{if(d&&d.rawFile){const f=await a(i,c,d);return[c,f]}if(Array.isArray(d)||n(d)){const f=await o(i,d);return[c,f]}return[c,d]}));return Object.fromEntries(u)};return{...t,async create(i,l){const u=await o(i,l?.data??{});return t.create(i,{...l,data:u})},async update(i,l){const u=await o(i,l?.data??{});return t.update(i,{...l,data:u})}}};var mO={};/*!
|
|
608
608
|
* ApexCharts v5.3.5
|
|
609
609
|
* (c) 2018-2025 ApexCharts
|
|
610
610
|
*/function D_(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function F6(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function Ye(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function uB(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,B6(n.key),n)}}function Ue(t,e,r){return e&&uB(t.prototype,e),r&&uB(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function tf(t,e){var r=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=MI(t))||e){r&&(t=r);var n=0,a=function(){};return{s:a,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(u){throw u},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
package/dist/index.es.js
CHANGED
|
@@ -75374,7 +75374,7 @@ const X6 = (t, e, { navigate: r }) => {
|
|
|
75374
75374
|
D3,
|
|
75375
75375
|
{
|
|
75376
75376
|
toolbar: /* @__PURE__ */ L.jsx(cRe, {}),
|
|
75377
|
-
children: o.filter((f) => c.create == !0 || c.create.map((h) => h.name).includes(f.name)).filter((f) => u(f.name)).map((f) => {
|
|
75377
|
+
children: o.filter((f) => c.create == !0 || c.create.map((h) => h.name).includes(f.name)).filter((f) => u(f.name)).filter((f) => f.type != "objectId").map((f) => {
|
|
75378
75378
|
let h = c.create == !0 ? null : c.create.find((v) => v.name == f.name), g = d(h);
|
|
75379
75379
|
return yx({
|
|
75380
75380
|
field: f,
|