@tap-payments/os-micro-frontend-shared 0.3.229 → 0.3.231

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.
Files changed (73) hide show
  1. package/build/_chunks/chunk-4QF66SHZ.js +1 -0
  2. package/build/_chunks/{chunk-DBFH6OKQ.js → chunk-ACYZKBPV.js} +1 -1
  3. package/build/_chunks/{chunk-TH5E43JD.js → chunk-AFARM6XG.js} +1 -1
  4. package/build/_chunks/chunk-B456PAFV.js +2 -0
  5. package/build/_chunks/{chunk-MBTSXCJW.js → chunk-I44O3S7R.js} +1 -1
  6. package/build/_chunks/{chunk-FKG3SYY6.js → chunk-ILCM3NDX.js} +1 -1
  7. package/build/_chunks/{chunk-WAY7BWQL.js → chunk-KZRRNZPG.js} +1 -1
  8. package/build/_chunks/chunk-M5WXIRWE.js +1 -0
  9. package/build/_chunks/{chunk-33C463YL.js → chunk-STH6XR2G.js} +1 -1
  10. package/build/_chunks/{chunk-W4PURLBP.js → chunk-X7OBJ7R3.js} +1 -1
  11. package/build/components/AppServices/index.js +1 -1
  12. package/build/components/AppServicesBar/index.js +1 -1
  13. package/build/components/AppWindowWrapper/index.js +1 -1
  14. package/build/components/AvatarStack/AnimatedStack.d.ts +9 -0
  15. package/build/components/AvatarStack/AvatarStack.d.ts +5 -0
  16. package/build/components/AvatarStack/AvatarStackItem.d.ts +4 -0
  17. package/build/components/AvatarStack/StaticStack.d.ts +4 -0
  18. package/build/components/AvatarStack/constants.d.ts +40 -0
  19. package/build/components/AvatarStack/hooks/useAnimatedStack.d.ts +25 -0
  20. package/build/components/AvatarStack/index.d.ts +4 -0
  21. package/build/components/AvatarStack/index.js +1 -0
  22. package/build/components/AvatarStack/style.d.ts +303 -0
  23. package/build/components/AvatarStack/type.d.ts +122 -0
  24. package/build/components/AvatarStack/utils.d.ts +63 -0
  25. package/build/components/BrandLogo/index.js +1 -1
  26. package/build/components/ColumnViews/index.js +1 -1
  27. package/build/components/CurrencyAmount/index.js +1 -1
  28. package/build/components/CurrencyAmount/style.d.ts +6 -0
  29. package/build/components/DateFilter/index.js +1 -1
  30. package/build/components/ExpandableSideBar/index.js +1 -1
  31. package/build/components/FileInputPreview/index.js +1 -1
  32. package/build/components/FilterDropdown/index.js +1 -1
  33. package/build/components/FormSelect/index.js +1 -1
  34. package/build/components/JSONViewer/index.js +1 -1
  35. package/build/components/ListColumnFilter/index.js +1 -1
  36. package/build/components/ListHeader/index.js +1 -1
  37. package/build/components/MerchantLogo/index.js +1 -1
  38. package/build/components/MultiSelect/index.js +1 -1
  39. package/build/components/PaymentSourceFilter/index.js +1 -1
  40. package/build/components/PhoneFilter/index.js +1 -1
  41. package/build/components/PhoneInput/index.js +1 -1
  42. package/build/components/RHFPhoneInput/index.js +1 -1
  43. package/build/components/RangeCalender/index.js +1 -1
  44. package/build/components/ReferenceTypeFilter/index.js +1 -1
  45. package/build/components/StatusFilter/index.js +1 -1
  46. package/build/components/StatusIcons/index.js +1 -1
  47. package/build/components/TableCells/index.js +1 -1
  48. package/build/components/TableReports/index.js +1 -1
  49. package/build/components/TreeDropdown/index.js +1 -1
  50. package/build/components/VerificationIcon/index.js +1 -1
  51. package/build/components/ViewColumnRadioFilter/index.js +1 -1
  52. package/build/components/VirtualTables/index.js +1 -1
  53. package/build/components/Widget/index.js +1 -1
  54. package/build/components/WindowSideBar/index.js +1 -1
  55. package/build/components/index.d.ts +2 -1
  56. package/build/components/index.js +1 -1
  57. package/build/index.js +1 -1
  58. package/package.json +1 -1
  59. package/build/_chunks/chunk-6DPXZ3E3.js +0 -2
  60. package/build/_chunks/chunk-MFFVCCTZ.js +0 -1
  61. package/build/_chunks/chunk-WE7NB24K.js +0 -1
  62. package/build/components/ChipStack/ChipStack.d.ts +0 -67
  63. package/build/components/ChipStack/components/AnimatedStack.d.ts +0 -24
  64. package/build/components/ChipStack/components/ChipStackFaceSlot.d.ts +0 -11
  65. package/build/components/ChipStack/components/OverlapChip.d.ts +0 -9
  66. package/build/components/ChipStack/components/StaticStack.d.ts +0 -12
  67. package/build/components/ChipStack/constants.d.ts +0 -14
  68. package/build/components/ChipStack/hooks/useAnimatedStack.d.ts +0 -28
  69. package/build/components/ChipStack/index.d.ts +0 -10
  70. package/build/components/ChipStack/index.js +0 -1
  71. package/build/components/ChipStack/style.d.ts +0 -31
  72. package/build/components/ChipStack/types.d.ts +0 -127
  73. package/build/components/ChipStack/util.d.ts +0 -74
@@ -0,0 +1 @@
1
+ import {j}from'./chunk-TIO3V7XA.js';import {Ia,lc}from'./chunk-4XXNGLS6.js';import {forwardRef,memo}from'react';import {styled}from'@mui/material/styles';import {jsxs,jsx,Fragment}from'react/jsx-runtime';var r="os-shared-CurrencyAmount",e={root:`${r}-root`,integer:`${r}-integer`,separator:`${r}-separator`,decimal:`${r}-decimal`};var l=styled(j)(({theme:t})=>{let{fontSize:n,fontWeight:o}=t.v2.typography.textVariants.body.small.bold;return {fontSize:n,fontWeight:o,fontFamily:"inherit",lineHeight:"inherit",letterSpacing:"inherit",color:"inherit",display:"inline-flex",alignItems:"center",whiteSpace:"nowrap",overflow:"auto"}}),u=styled("span")(({theme:t})=>({fontWeight:t.v2.typography.fontWeightRegular}));var f=forwardRef(({amount:t,currency:n,id:o,className:C,sx:A,...d},g)=>{let{integerAmount:h,decimalAmount:s}=Ia(t,n??"");return jsxs(l,{ref:g,component:"span",id:o,"data-testid":o??"CurrencyAmount",className:lc(e.root,C),sx:A,...d,children:[jsx("span",{className:e.integer,children:h}),s?jsxs(Fragment,{children:[jsx("span",{className:e.separator,children:"."}),jsx(u,{className:e.decimal,children:s})]}):null]})});f.displayName="CurrencyAmount";var S=memo(f);export{e as a,S as b};
@@ -1,4 +1,4 @@
1
- import {b,k}from'./chunk-SWXXEAIZ.js';import {a as a$1}from'./chunk-TY3LDUTP.js';import {a,g,e}from'./chunk-KSTOW7O3.js';import {aa,ba}from'./chunk-TIO3V7XA.js';import {a as a$2}from'./chunk-44UNMXKS.js';import {a as a$3,b as b$1}from'./chunk-MUR4ILTY.js';import {zc,Bc}from'./chunk-4XXNGLS6.js';import {Pc}from'./chunk-V2RLDP5A.js';import mo,{useState,useEffect,useMemo,useRef,useCallback,useId}from'react';import {useFormContext,Controller}from'react-hook-form';import Pe from'@mui/material/Box';import Ie from'@mui/material/MenuItem';import lo from'@mui/material/Popper';import io from'@mui/material/TextField';import {keyframes,styled}from'@mui/material/styles';import {jsx,jsxs,Fragment}from'react/jsx-runtime';var so=keyframes`
1
+ import {b,k}from'./chunk-SWXXEAIZ.js';import {a as a$1}from'./chunk-TY3LDUTP.js';import {a,g,e}from'./chunk-KSTOW7O3.js';import {a as a$2}from'./chunk-44UNMXKS.js';import {a as a$3,b as b$1}from'./chunk-MUR4ILTY.js';import {aa,ba}from'./chunk-TIO3V7XA.js';import {zc,Bc}from'./chunk-4XXNGLS6.js';import {Pc}from'./chunk-V2RLDP5A.js';import mo,{useState,useEffect,useMemo,useRef,useCallback,useId}from'react';import {useFormContext,Controller}from'react-hook-form';import Pe from'@mui/material/Box';import Ie from'@mui/material/MenuItem';import lo from'@mui/material/Popper';import io from'@mui/material/TextField';import {keyframes,styled}from'@mui/material/styles';import {jsx,jsxs,Fragment}from'react/jsx-runtime';var so=keyframes`
2
2
  0% {
3
3
  transform: rotate(-90deg);
4
4
  }
@@ -1 +1 @@
1
- import {b}from'./chunk-4SWNFKMX.js';import {V as V$1,f,l,R,v}from'./chunk-TIO3V7XA.js';import {o}from'./chunk-OBHJVUFA.js';import {wb}from'./chunk-V2RLDP5A.js';import {createContext,forwardRef,useMemo,useState,useRef,useCallback,useEffect,useImperativeHandle,useContext}from'react';import Re from'@mui/material/Stack';import ne from'@mui/material/Typography';import ie from'@mui/material/Box';import {styled,alpha}from'@mui/material/styles';import {jsx,jsxs}from'react/jsx-runtime';import {Stack}from'@mui/material';import it from'lodash/debounce';import j from'memoize-one';var Ue=(r=>(r.CHECKED="CHECKED",r.UNCHECKED="UNCHECKED",r.INDETERMINATE="INDETERMINATE",r))(Ue||{});styled("img",{shouldForwardProp:e=>e!=="expanded"})(({theme:e,expanded:t})=>({transform:t?"rotate(180deg)":"rotate(0deg)",marginLeft:"auto",transition:e.transitions.create("transform",{duration:e.transitions.duration.shortest})}));styled(ie)(()=>({display:"flex",justifyContent:"center",alignItems:"center",paddingBlock:"4px",borderTop:"1px solid #F2F2F2"}));var F=styled(V$1)({minWidth:120,minHeight:36,maxHeight:36,paddingTop:0,paddingBottom:0,backgroundColor:"#fff","--menuitem-border-rad":"4px","&:hover":{boxShadow:"0px 0px 16px rgba(0, 0, 0, 0.13)",zIndex:1}}),V=styled(e=>jsx(F,{startAdornment:null,...e}))(({theme:e})=>({fontSize:11,fontWeight:500,color:e.palette.grey[700],minHeight:36,maxHeight:"auto",cursor:"auto",":hover":{boxShadow:"none",zIndex:1}}));var _=createContext({treeMapper:{},handleSelect:()=>{},multiple:false}),Ve=({children:e,treeMapper:t,handleSelect:o,multiple:r,IconComponent:n})=>{let i=useMemo(()=>({treeMapper:t,handleSelect:o,multiple:r,IconComponent:n}),[t,o,r,n]);return jsx(_.Provider,{value:i,children:e})},re=Ve;var Ge=()=>{let e=useContext(_);if(!e)throw new Error("'useTreeDropdown' must be used within an 'TreeDropdownProvider'");return e},B=Ge;var ae=styled(f)({padding:0,paddingRight:"4px",width:"14px !important",".MuiSvgIcon-root":{width:"12px !important",height:"12px !important"}}),se=styled(l)({padding:0}),le=styled(ie)(()=>({display:"flex",gap:"8px",justifyContent:"space-between",flexGrow:1,width:"100%",alignItems:"center",minWidth:0})),pe=styled(e=>jsx(ne,{noWrap:true,component:"span",...e}))(({theme:e})=>({flex:1,fontSize:"inherit",width:"100%",display:"inline-block",color:e.palette.text.primary})),de=styled(e=>jsx(ne,{noWrap:true,...e}))(({theme:e})=>({color:alpha(e.palette.text.primary,.5),fontSize:8})),ce=styled(ie,{shouldForwardProp:e=>e!=="isOneDigit"})(({theme:e,isOneDigit:t=true})=>({borderRadius:t?"50%":"4px",background:e.palette.divider,width:t?13:"auto",height:14,fontSize:"8px",fontWeight:700,display:"flex",alignItems:"center",justifyContent:"center",lineHeight:"10px",...!t&&{padding:"0 3px"}})),ue=styled("img")(()=>({height:12}));var Je=e=>{let{checked:t,indeterminate:o,onSelect:r}=e,{multiple:n}=B(),i=useCallback(a=>{a.stopPropagation(),r(a);},[r]);return n?jsx(ae,{size:"small",checked:t,indeterminate:o,onChange:i}):jsx(se,{checked:t,onChange:i})},he=Je;var Ze=e=>{let{renderItem:t,header:o,footer:r,...n}=e,{treeMapper:i,handleSelect:a,multiple:c,IconComponent:p}=B(),{label:s,icon:d,iconComponent:l,levelIndex:h=0,children:f,nestedMenuSx:I,hintText:y,disableHovering:m,itemProps:T,searchProps:u,subLevelKey:E}=n,[x,N]=useState(null),w=!!f,H=f?.length,L=useCallback(R=>{m||N(R.currentTarget);},[m]),S=useCallback(()=>{m||N(null);},[m]);useEffect(()=>{m&&N(null);},[m]);let M=useMemo(()=>l||(d&&p?jsx(p,{fileId:d.fileId,width:d.width??20,height:d.height??20}):null),[l,d,p]),g=i[n.id]?.status==="CHECKED",k=c?i[n.id]?.status==="INDETERMINATE":false,O=c||!w,v=useCallback(R=>{R.stopPropagation(),a(R.target.checked,n);},[a,n]);return jsxs(F,{startAdornment:null,onMouseEnter:L,onMouseLeave:S,"data-testid":n.id,onClick:()=>{a(!g,n);},...T,children:[t?t({nodeProps:n,checked:g,indeterminate:k,onSelect:v}):jsxs(le,{width:"100%","data-testid":"Content",children:[O&&jsx(he,{checked:g,indeterminate:k,onSelect:v}),M,jsxs(Stack,{flex:1,width:"100%",minWidth:0,children:[jsx(pe,{title:typeof s=="string"?s:void 0,children:s}),y&&jsx(de,{title:typeof y=="string"?y:void 0,children:y})]}),jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[H&&jsx(ce,{isOneDigit:Math.floor(H/10)===0,children:H}),w&&jsx(ue,{src:wb,alt:"Expand"})]})]}),!!f&&jsx(U,{anchorEl:x,menuItems:f,levelIndex:h+1,sx:I,header:o,levelKey:E,footer:r,searchProps:u})]})},ge=Ze;var xe=ge;var Ce=styled(R)({maxHeight:"100%"}),ye=styled("div")({position:"relative","&:before, &:after":{display:"none"},"&.scrollable":{position:"relative","&::before, &::after":{display:"block",content:'""',position:"absolute",left:0,width:"100%",height:"20px",opacity:1,pointerEvents:"none",zIndex:2,transition:"opacity 0.3s ease-out"},"&::before":{top:0,background:"linear-gradient(to top, transparent, rgba(255, 255, 255, 1))"},"&::after":{bottom:0,background:"linear-gradient(to bottom, transparent, rgba(255, 255, 255, 1))"}},"&.scrolled-to-top":{"&::before":{opacity:0}},"&.scrolled-to-bottom":{"&::after":{opacity:0}}}),be=styled("ul")({listStyle:"none",padding:0,margin:0,maxHeight:300,overflow:"auto"});var rt=({children:e,onScroll:t})=>{let o$1=useRef(null),{scrolledToBottom:r,scrolledToTop:n,scrollable:i,handleScroll:a}=o({containerRef:o$1}),c=useMemo(()=>[r&&"scrolled-to-bottom",n&&"scrolled-to-top",i&&"scrollable"].filter(Boolean).join(" "),[r,n,i]),p=useCallback(s=>{t(s),a(s);},[t,a]);return jsx(ye,{sx:{position:"relative"},className:c,children:jsx(be,{ref:o$1,onScroll:p,children:e})})},Ne=rt;var at=e=>{let{initialValue:t="",getValues:o,filterItem:r,onChange:n,items:i,enabled:a=false,debounceMs:c=300}=e,[p,s]=useState(t),[d,l]=useState(t),h=useMemo(()=>it(m=>{l(m);},c),[c]);useEffect(()=>(h(p),()=>h.cancel()),[h,p]);let f=useCallback(m=>{let T=m.target.value;s(T),h(T),n?.(m);},[n,h]),I=useCallback(()=>{s(""),l(""),h.cancel(),n?.({target:{value:""}});},[n,h]),y=useMemo(()=>{if(!a||!d.trim())return i;let m=d.toLowerCase();return r?i.reduce((T,u)=>{let E=r(u,m);return E&&T.push(E),T},[]):o?i.filter(T=>o(T).some(u=>u.toLowerCase().includes(m))):(console.error("`searchProps.getValues` is required for searching, provide it on the tree node level or the global search props"),i)},[i,d,o,r,a]);return {searchText:p,filteredItems:y,handleSearch:f,handleReset:I}},ve=at;var ft=e=>{let{anchorEl:t,sx:o,levelIndex:r=0,placement:n,menuItems:i,header:a,footer:c,levelKey:p,searchProps:s}=e,[d,l]=useState(false),h=!!t,f=!!s,{searchText:I,filteredItems:y,handleSearch:m,handleReset:T}=ve({...s,enabled:f,items:i}),u=useRef(),E=useCallback(()=>{l(true),clearTimeout(u.current),u.current=setTimeout(()=>{l(false);},100);},[]);return useEffect(()=>()=>clearTimeout(u.current),[]),jsx(Ce,{open:h,anchorEl:t,placement:r>0?"right-start":n,"data-level":r,"data-level-key":p,onClick:x=>x.stopPropagation(),sx:{...o,"&.MuiPopper-dropdown":{"&:after":{display:"none"}}},children:jsxs(Re,{divider:jsx(v,{flexItem:true}),children:[a&&jsx(V,{children:a}),f&&jsxs(Re,{divider:jsx(v,{flexItem:true,sx:{my:1}}),children:[jsx(ie,{sx:{p:1},children:jsx(b,{id:`tree-search-input-${r}`,...s?.inputProps,placeholder:s?.inputProps?.placeholder??"Search...",onChange:m,value:I,inputProps:{autoComplete:"off"},onClear:T})}),y.length===0&&s?.noResultsText&&jsx(ne,{component:"div",fontSize:10,color:x=>alpha(x.palette.text.primary,.4),textAlign:"center",minHeight:36,fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",children:jsx("span",{children:"No results found"})})]}),jsx(Ne,{onScroll:E,children:y.map((x,N)=>jsx(xe,{disableHovering:d,...x,levelIndex:r,subLevelKey:x.levelKey,nestedMenuSx:o},`${r}-${x.id}-${N}`))}),c&&jsx(V,{children:c})]})})},U=ft;function ht(e){function t(o){let r=o.children?o.children.map(t):void 0;if(r?.length===1&&r[0].children?.length&&!r[0].disablePromotion){let n=r[0];r=n.children,o={...o,header:n.header??o.header,footer:n.footer??o.footer,searchProps:n.searchProps??o.searchProps};}return {...o,children:r}}return e.map(t)}function we(e,t,o=[]){for(let r of e)r.status==="CHECKED"&&o.push(r.id),r.children&&we(r.children,t,o);return o}function He(e,t=[],o={},r=false){for(let n of e){let i=r?"CHECKED":n.status??"UNCHECKED";o[n.id]={status:i,...t.length?{_parents:t}:{}},n.children&&He(n.children,[...t,n.id],o,i==="CHECKED");}return o}function Le(e,t){let o=He(e),r=we(e,t),n=o;for(let i of r)n=q(n,i,true);return n}function ke(e,t){return e.map(o=>({...o,status:t[o.id]?.status??"UNCHECKED",children:o.children?ke(o.children,t):void 0}))}function Tt(e){let t={};for(let o of Object.keys(e)){let r=e[o]._parents;if(!r?.length)continue;let n=r[r.length-1];t[n]??(t[n]=[]),t[n].push(o);}return t}function q(e,t,o){let r=structuredClone(e),n=Tt(e),i=o?"CHECKED":"UNCHECKED";function a(p){r[p].status=i;for(let s of n[p]??[])a(s);}function c(p){let s=r[p]._parents;if(!s?.length)return;let d=s[s.length-1],h=(n[d]??[]).map(f=>r[f].status);h.every(f=>f==="CHECKED")?r[d].status="CHECKED":h.every(f=>f==="UNCHECKED")?r[d].status="UNCHECKED":r[d].status="INDETERMINATE",c(d);}return a(t),c(t),r}function gt(e){function t(o){let r=o.children?.map(t).filter(Boolean);return o.status==="CHECKED"||o.status==="INDETERMINATE"||r&&r.length>0?{...o,children:r}:null}return e.map(t).filter(Boolean)}function De(e){let t={};for(let o in e)t[o]={status:"UNCHECKED",...e[o]._parents?{_parents:e[o]._parents}:{}};return t}function Ke(e,t,o,r){if(r)return q(e,t,o);if(!o)return De(e);let n=De(e);return q(n,t,true)}function xt(e,t){let o=[];function r(n){n.levelKey===t&&o.push(n),n.children?.forEach(i=>r(i));}return e.forEach(r),o}var C={denormalizeTree:j((e,t)=>ke(e,t)),extractSelectedBranches:j(e=>gt(e)),filterNodesByLevelKey:j((e,t)=>xt(e,t))};function J(e){let t=ht(e.children??[]);if(t.length===1&&t[0].children?.length&&!t[0].disablePromotion){let[o]=t;return J({levelKey:o.levelKey,children:o.children,header:o.header??e.header,footer:o.footer??e.footer,searchProps:o.searchProps??e.searchProps})}return {...e,children:t}}var It=forwardRef((e,t)=>{let{anchorEl:o,placement:r="bottom-start",treeDefinition:n,sx:i,onChange:a,multiple:c=true,exposeOnlySelectedTree:p=false,IconComponent:s,onMounted:d}=e,{children:l=[]}=n,h=useMemo(()=>J(n),[n]),{header:f,footer:I,children:y=[],searchProps:m,levelKey:T}=h,[u,E]=useState({}),x=useRef(d);x.current=d;let N=useCallback(()=>C.denormalizeTree(l,u),[l,u]),w=useCallback(()=>C.extractSelectedBranches(N()),[N]),H=useCallback((S,M)=>{let g=Ke(u,M.id,S,c);E(g),a&&a(p?C.extractSelectedBranches(C.denormalizeTree(l,g)):C.denormalizeTree(l,g));},[a,l,u,c,p]),L=useCallback(S=>{let g=((k,O)=>{let v={...k};return Object.keys(v).forEach(R=>{v[R]={...v[R],status:O?"CHECKED":"UNCHECKED"};}),v})(u,S);E(g),a&&a(p?C.extractSelectedBranches(C.denormalizeTree(l,g)):C.denormalizeTree(l,g));},[u,a,l,p]);return useEffect(()=>{let S=Le(l||[],c);E(S);let M=C.denormalizeTree(l,S),g=C.extractSelectedBranches(M);x.current?.({state:S,tree:M,selectedTree:g});},[l,c]),useImperativeHandle(t,()=>({treeMapper:u,getFullTree:N,getSelectedTree:w,toggleAll:L}),[u,N,w,L]),jsx(re,{treeMapper:u,IconComponent:s,handleSelect:H,multiple:c,children:jsx(U,{anchorEl:o,sx:i,header:f,footer:I,menuItems:y,levelKey:T,searchProps:m,placement:r})})}),ze=It;var Xo=ze;export{Ue as a,C as b,Xo as c};
1
+ import {b}from'./chunk-4SWNFKMX.js';import {o}from'./chunk-OBHJVUFA.js';import {V as V$1,f,l,R,v}from'./chunk-TIO3V7XA.js';import {wb}from'./chunk-V2RLDP5A.js';import {createContext,forwardRef,useMemo,useState,useRef,useCallback,useEffect,useImperativeHandle,useContext}from'react';import Re from'@mui/material/Stack';import ne from'@mui/material/Typography';import ie from'@mui/material/Box';import {styled,alpha}from'@mui/material/styles';import {jsx,jsxs}from'react/jsx-runtime';import {Stack}from'@mui/material';import it from'lodash/debounce';import j from'memoize-one';var Ue=(r=>(r.CHECKED="CHECKED",r.UNCHECKED="UNCHECKED",r.INDETERMINATE="INDETERMINATE",r))(Ue||{});styled("img",{shouldForwardProp:e=>e!=="expanded"})(({theme:e,expanded:t})=>({transform:t?"rotate(180deg)":"rotate(0deg)",marginLeft:"auto",transition:e.transitions.create("transform",{duration:e.transitions.duration.shortest})}));styled(ie)(()=>({display:"flex",justifyContent:"center",alignItems:"center",paddingBlock:"4px",borderTop:"1px solid #F2F2F2"}));var F=styled(V$1)({minWidth:120,minHeight:36,maxHeight:36,paddingTop:0,paddingBottom:0,backgroundColor:"#fff","--menuitem-border-rad":"4px","&:hover":{boxShadow:"0px 0px 16px rgba(0, 0, 0, 0.13)",zIndex:1}}),V=styled(e=>jsx(F,{startAdornment:null,...e}))(({theme:e})=>({fontSize:11,fontWeight:500,color:e.palette.grey[700],minHeight:36,maxHeight:"auto",cursor:"auto",":hover":{boxShadow:"none",zIndex:1}}));var _=createContext({treeMapper:{},handleSelect:()=>{},multiple:false}),Ve=({children:e,treeMapper:t,handleSelect:o,multiple:r,IconComponent:n})=>{let i=useMemo(()=>({treeMapper:t,handleSelect:o,multiple:r,IconComponent:n}),[t,o,r,n]);return jsx(_.Provider,{value:i,children:e})},re=Ve;var Ge=()=>{let e=useContext(_);if(!e)throw new Error("'useTreeDropdown' must be used within an 'TreeDropdownProvider'");return e},B=Ge;var ae=styled(f)({padding:0,paddingRight:"4px",width:"14px !important",".MuiSvgIcon-root":{width:"12px !important",height:"12px !important"}}),se=styled(l)({padding:0}),le=styled(ie)(()=>({display:"flex",gap:"8px",justifyContent:"space-between",flexGrow:1,width:"100%",alignItems:"center",minWidth:0})),pe=styled(e=>jsx(ne,{noWrap:true,component:"span",...e}))(({theme:e})=>({flex:1,fontSize:"inherit",width:"100%",display:"inline-block",color:e.palette.text.primary})),de=styled(e=>jsx(ne,{noWrap:true,...e}))(({theme:e})=>({color:alpha(e.palette.text.primary,.5),fontSize:8})),ce=styled(ie,{shouldForwardProp:e=>e!=="isOneDigit"})(({theme:e,isOneDigit:t=true})=>({borderRadius:t?"50%":"4px",background:e.palette.divider,width:t?13:"auto",height:14,fontSize:"8px",fontWeight:700,display:"flex",alignItems:"center",justifyContent:"center",lineHeight:"10px",...!t&&{padding:"0 3px"}})),ue=styled("img")(()=>({height:12}));var Je=e=>{let{checked:t,indeterminate:o,onSelect:r}=e,{multiple:n}=B(),i=useCallback(a=>{a.stopPropagation(),r(a);},[r]);return n?jsx(ae,{size:"small",checked:t,indeterminate:o,onChange:i}):jsx(se,{checked:t,onChange:i})},he=Je;var Ze=e=>{let{renderItem:t,header:o,footer:r,...n}=e,{treeMapper:i,handleSelect:a,multiple:c,IconComponent:p}=B(),{label:s,icon:d,iconComponent:l,levelIndex:h=0,children:f,nestedMenuSx:I,hintText:y,disableHovering:m,itemProps:T,searchProps:u,subLevelKey:E}=n,[x,N]=useState(null),w=!!f,H=f?.length,L=useCallback(R=>{m||N(R.currentTarget);},[m]),S=useCallback(()=>{m||N(null);},[m]);useEffect(()=>{m&&N(null);},[m]);let M=useMemo(()=>l||(d&&p?jsx(p,{fileId:d.fileId,width:d.width??20,height:d.height??20}):null),[l,d,p]),g=i[n.id]?.status==="CHECKED",k=c?i[n.id]?.status==="INDETERMINATE":false,O=c||!w,v=useCallback(R=>{R.stopPropagation(),a(R.target.checked,n);},[a,n]);return jsxs(F,{startAdornment:null,onMouseEnter:L,onMouseLeave:S,"data-testid":n.id,onClick:()=>{a(!g,n);},...T,children:[t?t({nodeProps:n,checked:g,indeterminate:k,onSelect:v}):jsxs(le,{width:"100%","data-testid":"Content",children:[O&&jsx(he,{checked:g,indeterminate:k,onSelect:v}),M,jsxs(Stack,{flex:1,width:"100%",minWidth:0,children:[jsx(pe,{title:typeof s=="string"?s:void 0,children:s}),y&&jsx(de,{title:typeof y=="string"?y:void 0,children:y})]}),jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[H&&jsx(ce,{isOneDigit:Math.floor(H/10)===0,children:H}),w&&jsx(ue,{src:wb,alt:"Expand"})]})]}),!!f&&jsx(U,{anchorEl:x,menuItems:f,levelIndex:h+1,sx:I,header:o,levelKey:E,footer:r,searchProps:u})]})},ge=Ze;var xe=ge;var Ce=styled(R)({maxHeight:"100%"}),ye=styled("div")({position:"relative","&:before, &:after":{display:"none"},"&.scrollable":{position:"relative","&::before, &::after":{display:"block",content:'""',position:"absolute",left:0,width:"100%",height:"20px",opacity:1,pointerEvents:"none",zIndex:2,transition:"opacity 0.3s ease-out"},"&::before":{top:0,background:"linear-gradient(to top, transparent, rgba(255, 255, 255, 1))"},"&::after":{bottom:0,background:"linear-gradient(to bottom, transparent, rgba(255, 255, 255, 1))"}},"&.scrolled-to-top":{"&::before":{opacity:0}},"&.scrolled-to-bottom":{"&::after":{opacity:0}}}),be=styled("ul")({listStyle:"none",padding:0,margin:0,maxHeight:300,overflow:"auto"});var rt=({children:e,onScroll:t})=>{let o$1=useRef(null),{scrolledToBottom:r,scrolledToTop:n,scrollable:i,handleScroll:a}=o({containerRef:o$1}),c=useMemo(()=>[r&&"scrolled-to-bottom",n&&"scrolled-to-top",i&&"scrollable"].filter(Boolean).join(" "),[r,n,i]),p=useCallback(s=>{t(s),a(s);},[t,a]);return jsx(ye,{sx:{position:"relative"},className:c,children:jsx(be,{ref:o$1,onScroll:p,children:e})})},Ne=rt;var at=e=>{let{initialValue:t="",getValues:o,filterItem:r,onChange:n,items:i,enabled:a=false,debounceMs:c=300}=e,[p,s]=useState(t),[d,l]=useState(t),h=useMemo(()=>it(m=>{l(m);},c),[c]);useEffect(()=>(h(p),()=>h.cancel()),[h,p]);let f=useCallback(m=>{let T=m.target.value;s(T),h(T),n?.(m);},[n,h]),I=useCallback(()=>{s(""),l(""),h.cancel(),n?.({target:{value:""}});},[n,h]),y=useMemo(()=>{if(!a||!d.trim())return i;let m=d.toLowerCase();return r?i.reduce((T,u)=>{let E=r(u,m);return E&&T.push(E),T},[]):o?i.filter(T=>o(T).some(u=>u.toLowerCase().includes(m))):(console.error("`searchProps.getValues` is required for searching, provide it on the tree node level or the global search props"),i)},[i,d,o,r,a]);return {searchText:p,filteredItems:y,handleSearch:f,handleReset:I}},ve=at;var ft=e=>{let{anchorEl:t,sx:o,levelIndex:r=0,placement:n,menuItems:i,header:a,footer:c,levelKey:p,searchProps:s}=e,[d,l]=useState(false),h=!!t,f=!!s,{searchText:I,filteredItems:y,handleSearch:m,handleReset:T}=ve({...s,enabled:f,items:i}),u=useRef(),E=useCallback(()=>{l(true),clearTimeout(u.current),u.current=setTimeout(()=>{l(false);},100);},[]);return useEffect(()=>()=>clearTimeout(u.current),[]),jsx(Ce,{open:h,anchorEl:t,placement:r>0?"right-start":n,"data-level":r,"data-level-key":p,onClick:x=>x.stopPropagation(),sx:{...o,"&.MuiPopper-dropdown":{"&:after":{display:"none"}}},children:jsxs(Re,{divider:jsx(v,{flexItem:true}),children:[a&&jsx(V,{children:a}),f&&jsxs(Re,{divider:jsx(v,{flexItem:true,sx:{my:1}}),children:[jsx(ie,{sx:{p:1},children:jsx(b,{id:`tree-search-input-${r}`,...s?.inputProps,placeholder:s?.inputProps?.placeholder??"Search...",onChange:m,value:I,inputProps:{autoComplete:"off"},onClear:T})}),y.length===0&&s?.noResultsText&&jsx(ne,{component:"div",fontSize:10,color:x=>alpha(x.palette.text.primary,.4),textAlign:"center",minHeight:36,fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",children:jsx("span",{children:"No results found"})})]}),jsx(Ne,{onScroll:E,children:y.map((x,N)=>jsx(xe,{disableHovering:d,...x,levelIndex:r,subLevelKey:x.levelKey,nestedMenuSx:o},`${r}-${x.id}-${N}`))}),c&&jsx(V,{children:c})]})})},U=ft;function ht(e){function t(o){let r=o.children?o.children.map(t):void 0;if(r?.length===1&&r[0].children?.length&&!r[0].disablePromotion){let n=r[0];r=n.children,o={...o,header:n.header??o.header,footer:n.footer??o.footer,searchProps:n.searchProps??o.searchProps};}return {...o,children:r}}return e.map(t)}function we(e,t,o=[]){for(let r of e)r.status==="CHECKED"&&o.push(r.id),r.children&&we(r.children,t,o);return o}function He(e,t=[],o={},r=false){for(let n of e){let i=r?"CHECKED":n.status??"UNCHECKED";o[n.id]={status:i,...t.length?{_parents:t}:{}},n.children&&He(n.children,[...t,n.id],o,i==="CHECKED");}return o}function Le(e,t){let o=He(e),r=we(e,t),n=o;for(let i of r)n=q(n,i,true);return n}function ke(e,t){return e.map(o=>({...o,status:t[o.id]?.status??"UNCHECKED",children:o.children?ke(o.children,t):void 0}))}function Tt(e){let t={};for(let o of Object.keys(e)){let r=e[o]._parents;if(!r?.length)continue;let n=r[r.length-1];t[n]??(t[n]=[]),t[n].push(o);}return t}function q(e,t,o){let r=structuredClone(e),n=Tt(e),i=o?"CHECKED":"UNCHECKED";function a(p){r[p].status=i;for(let s of n[p]??[])a(s);}function c(p){let s=r[p]._parents;if(!s?.length)return;let d=s[s.length-1],h=(n[d]??[]).map(f=>r[f].status);h.every(f=>f==="CHECKED")?r[d].status="CHECKED":h.every(f=>f==="UNCHECKED")?r[d].status="UNCHECKED":r[d].status="INDETERMINATE",c(d);}return a(t),c(t),r}function gt(e){function t(o){let r=o.children?.map(t).filter(Boolean);return o.status==="CHECKED"||o.status==="INDETERMINATE"||r&&r.length>0?{...o,children:r}:null}return e.map(t).filter(Boolean)}function De(e){let t={};for(let o in e)t[o]={status:"UNCHECKED",...e[o]._parents?{_parents:e[o]._parents}:{}};return t}function Ke(e,t,o,r){if(r)return q(e,t,o);if(!o)return De(e);let n=De(e);return q(n,t,true)}function xt(e,t){let o=[];function r(n){n.levelKey===t&&o.push(n),n.children?.forEach(i=>r(i));}return e.forEach(r),o}var C={denormalizeTree:j((e,t)=>ke(e,t)),extractSelectedBranches:j(e=>gt(e)),filterNodesByLevelKey:j((e,t)=>xt(e,t))};function J(e){let t=ht(e.children??[]);if(t.length===1&&t[0].children?.length&&!t[0].disablePromotion){let[o]=t;return J({levelKey:o.levelKey,children:o.children,header:o.header??e.header,footer:o.footer??e.footer,searchProps:o.searchProps??e.searchProps})}return {...e,children:t}}var It=forwardRef((e,t)=>{let{anchorEl:o,placement:r="bottom-start",treeDefinition:n,sx:i,onChange:a,multiple:c=true,exposeOnlySelectedTree:p=false,IconComponent:s,onMounted:d}=e,{children:l=[]}=n,h=useMemo(()=>J(n),[n]),{header:f,footer:I,children:y=[],searchProps:m,levelKey:T}=h,[u,E]=useState({}),x=useRef(d);x.current=d;let N=useCallback(()=>C.denormalizeTree(l,u),[l,u]),w=useCallback(()=>C.extractSelectedBranches(N()),[N]),H=useCallback((S,M)=>{let g=Ke(u,M.id,S,c);E(g),a&&a(p?C.extractSelectedBranches(C.denormalizeTree(l,g)):C.denormalizeTree(l,g));},[a,l,u,c,p]),L=useCallback(S=>{let g=((k,O)=>{let v={...k};return Object.keys(v).forEach(R=>{v[R]={...v[R],status:O?"CHECKED":"UNCHECKED"};}),v})(u,S);E(g),a&&a(p?C.extractSelectedBranches(C.denormalizeTree(l,g)):C.denormalizeTree(l,g));},[u,a,l,p]);return useEffect(()=>{let S=Le(l||[],c);E(S);let M=C.denormalizeTree(l,S),g=C.extractSelectedBranches(M);x.current?.({state:S,tree:M,selectedTree:g});},[l,c]),useImperativeHandle(t,()=>({treeMapper:u,getFullTree:N,getSelectedTree:w,toggleAll:L}),[u,N,w,L]),jsx(re,{treeMapper:u,IconComponent:s,handleSelect:H,multiple:c,children:jsx(U,{anchorEl:o,sx:i,header:f,footer:I,menuItems:y,levelKey:T,searchProps:m,placement:r})})}),ze=It;var Xo=ze;export{Ue as a,C as b,Xo as c};