@imj_media/ui 1.2.66 → 1.2.67

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.js CHANGED
@@ -34,5 +34,5 @@ ${u}
34
34
  tr[data-editing="true"] td {
35
35
  box-shadow: inset 0 1px 0 0 var(--ui-color-border-brand), inset 0 -1px 0 0 var(--ui-color-border-brand) !important;
36
36
  }
37
- `]}),!B&&r.jsxs("table",{className:L,style:W>0?{minWidth:`${W}px`}:void 0,children:[(t.length>0||i)&&r.jsx(Ho,{columns:e,sortConfig:o,filters:a,showSelection:n==null?void 0:n.enabled,showExpand:l,allSelected:w,someSelected:x,resizable:u,stickyHeader:m,stickyCheckbox:g,stickyActions:b,onSelectAll:N,onSort:C,onFilter:T,onLock:S,onResize:D,onResizeDoubleClick:I,onResizeHover:j}),r.jsx(qo,{rows:t,columns:e,loading:i,empty:s,selectedIds:y,expandable:l,showSelection:n==null?void 0:n.enabled,showExpand:l,stickyCheckbox:g,stickyActions:b,onRowClick:E,onRowExpand:R,onRowSelect:k,onCellFocus:z,isCellFocused:$,onCellChange:F})]}),B&&s&&r.jsx(tr,{...s})]})},Uo=({selectedCount:e,selectedIds:t,actions:i=[],onClearSelection:s,selectionText:n="Seleccionados",className:o})=>{if(e===0)return null;const a=M("ui-inline-flex ui-items-center ui-gap-16","ui-bg-fill-brand","ui-px-16 ui-py-8","ui-rounded-surface-modal","ui-shadow-03",o);return r.jsxs("div",{className:a,children:[r.jsxs("span",{className:"ui-whitespace-nowrap ui-text-body-sm-regular ui-font-body-sm-regular ui-text-on-color",children:["(",e,") ",n]}),i.length>0&&r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx("div",{className:"ui-flex ui-items-center ui-gap-16",children:i.map((l,u)=>r.jsx(Ce,{theme:l.label?"solid":"icon",color:l.color||"secondary",size:"xs",icon:l.label?void 0:l.icon,leftSlot:l.label&&l.icon?l.icon:void 0,disabled:l.disabled,onClick:()=>l.onClick(t),children:l.label},`action-${u}-${l.label||l.icon}`))}),s&&r.jsxs(r.Fragment,{children:[r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx(me,{theme:"solid",color:"secondary",size:"xs",pill:"pill",iconProps:{icon:V.faXmark},onClick:s})]})]})},Go=(e,t,i,s)=>{if(!i)return e;const n=s.find(a=>a.id===t);return n?[...e].sort((a,l)=>{const u=n.accessor?typeof n.accessor=="function"?n.accessor(a):a[n.accessor]:null,h=n.accessor?typeof n.accessor=="function"?n.accessor(l):l[n.accessor]:null;if(u==null)return 1;if(h==null)return-1;let f;return typeof u=="string"&&typeof h=="string"?f=u.localeCompare(h):typeof u=="number"&&typeof h=="number"?f=u-h:u instanceof Date&&h instanceof Date?f=u.getTime()-h.getTime():f=String(u).localeCompare(String(h)),i==="asc"?f:-f}):e},ir=e=>e===null?"asc":e==="asc"?"desc":null,Ko=(e,t)=>{if((e==null?void 0:e.columnId)===t){const i=ir(e.direction);return i?{columnId:t,direction:i}:void 0}return{columnId:t,direction:"asc"}},Xo=e=>{const[t,i]=c.useState(e),s=c.useCallback(a=>{i(l=>{if((l==null?void 0:l.columnId)===a){const u=ir(l.direction);return u?{columnId:a,direction:u}:void 0}return{columnId:a,direction:"asc"}})},[]),n=c.useCallback(()=>{i(void 0)},[]),o=c.useCallback((a,l)=>{i(l?{columnId:a,direction:l}:void 0)},[]);return{sortConfig:t,handleSort:s,clearSort:n,setSort:o}},Qo=(e,t)=>e.includes(t)?e.filter(s=>s!==t):[...e,t],wd=(e,t)=>{const i=e.map(n=>n.id);return i.every(n=>t.includes(n))?[]:i},jd=(e,t,i,s)=>{const n=t.indexOf(i),o=t.indexOf(s);if(n===-1||o===-1)return e;const a=Math.min(n,o),l=Math.max(n,o),u=t.slice(a,l+1),h=new Set([...e,...u]);return Array.from(h)},sr=(e,t)=>e.length===0?!1:e.every(i=>t.includes(i.id)),Zo=(e,t)=>t.length===0?!1:e.some(i=>t.includes(i.id))&&!sr(e,t),Jo=(e,t=!0)=>{const[i,s]=c.useState([]),n=c.useMemo(()=>sr(e,i),[e,i]),o=c.useMemo(()=>Zo(e,i),[e,i]),a=c.useCallback(d=>{if(!t){s([d.id]);return}s(p=>Qo(p,d.id))},[t]),l=c.useCallback(d=>{s(d?e.map(p=>p.id):[])},[e]),u=c.useCallback(()=>{s([])},[]),h=c.useCallback(d=>{s(d)},[]),f=c.useCallback(d=>i.includes(d),[i]);return{selectedIds:i,selectedCount:i.length,allSelected:n,someSelected:o,handleRowSelect:a,handleSelectAll:l,clearSelection:u,selectRows:h,isSelected:f}},ea=(e,t,i)=>{const s=[...e],[n]=s.splice(t,1);return s.splice(i,0,n),s},ta=(e,t)=>e.map(i=>i.id===t?{...i,visible:!i.visible}:i),ia=(e,t,i)=>e.map(s=>s.id===t?{...s,visible:i}:s),sa=(e,t)=>e.map(i=>i.id===t?{...i,locked:!i.locked}:i),ra=(e,t,i)=>e.map(s=>s.id===t?{...s,width:i}:s),Sd=e=>e.map(t=>({...t,visible:!0,locked:!1,width:t.width})),Cd=e=>e.filter(t=>t.visible!==!1),kd=e=>e.filter(t=>t.locked===!0),na=e=>{const[t,i]=c.useState(e);c.useEffect(()=>{i(f=>{const d=new Map(e.map(y=>[y.id,y])),p=new Set(f.map(y=>y.id)),m=new Set(e.map(y=>y.id)),g=p.size===m.size&&[...p].every(y=>m.has(y)),b=(y,w)=>{if(!w){const k=typeof y.width=="number"?y.width:void 0;return{...y,originalWidth:k??y.originalWidth}}const x=w.width??y.width,N=w.originalWidth??(typeof y.width=="number"?y.width:y.originalWidth);return{...y,width:x,originalWidth:N,visible:w.visible!==void 0?w.visible:y.visible,locked:w.locked??y.locked}};let v;return g?v=f.map(y=>{const w=d.get(y.id);return w?b(w,y):y}):v=e.map(y=>b(y,f.find(w=>w.id===y.id))),v.length===f.length&&v.every((y,w)=>{const x=f[w];return y.id===x.id&&y.width===x.width&&y.originalWidth===x.originalWidth&&y.visible===x.visible&&y.locked===x.locked&&y.columnOptions===x.columnOptions&&y.columnOptionsLoading===x.columnOptionsLoading&&y.editable===x.editable&&y.header===x.header})?f:v})},[e]);const s=c.useCallback(f=>{i(d=>ta(d,f))},[]),n=c.useCallback((f,d)=>{i(p=>ia(p,f,d))},[]),o=c.useCallback(f=>{i(d=>sa(d,f))},[]),a=c.useCallback((f,d)=>{i(p=>ra(p,f,d))},[]),l=c.useCallback((f,d)=>{i(p=>ea(p,f,d))},[]),u=c.useCallback(f=>{i(d=>{const p=new Map(d.map(v=>[v.id,v])),m=f.map(v=>p.get(v)).filter(v=>v!==void 0),g=new Set(f),b=d.filter(v=>!g.has(v.id));return[...m,...b]})},[]),h=c.useCallback(()=>{i(e)},[e]);return{columns:t,handleToggleVisibility:s,handleSetVisibility:n,handleToggleLock:o,handleResize:a,handleReorder:l,setColumnsOrder:u,resetColumns:h}},oa=(e=[])=>{const[t,i]=c.useState(new Set(e)),s=c.useCallback(d=>{i(p=>{const m=new Set(p);return m.has(d.id)?m.delete(d.id):m.add(d.id),m})},[]),n=c.useCallback(d=>{i(p=>new Set(p).add(d))},[]),o=c.useCallback(d=>{i(p=>{const m=new Set(p);return m.delete(d),m})},[]),a=c.useCallback(d=>{i(p=>{const m=new Set(p);return m.has(d)?m.delete(d):m.add(d),m})},[]),l=c.useCallback(d=>{const p=d.filter(m=>m.isParent).map(m=>m.id);i(new Set(p))},[]),u=c.useCallback(()=>{i(new Set)},[]),h=c.useCallback(d=>t.has(d),[t]),f=c.useCallback(d=>d.map(p=>({...p,expanded:t.has(p.id)})),[t]);return{expandedIds:Array.from(t),expandedCount:t.size,handleRowExpand:s,expandRow:n,collapseRow:o,toggleRow:a,expandAll:l,collapseAll:u,isExpanded:h,applyExpandedState:f}},aa=()=>{const[e,t]=c.useState(null),i=c.useCallback((o,a)=>{t({rowId:o,columnId:a})},[]),s=c.useCallback(()=>{t(null)},[]),n=c.useCallback((o,a)=>e?e.rowId===o&&e.columnId===a:!1,[e]);return{focusedCell:e,handleCellFocus:i,handleCellBlur:s,isCellFocused:n}},pi=e=>({columnId:e.columnId,operator:e.operator,value:e.value,value2:e.value2}),Nd=({initialFilters:e=[],onFiltersChange:t}={})=>{const[i,s]=c.useState(()=>e.map((h,f)=>({id:`filter-${f}`,columnId:h.columnId,columnLabel:h.columnId,operator:h.operator,value:h.value,value2:h.value2}))),n=c.useCallback(h=>{const f={...h,id:`filter-${Date.now()}-${Math.random()}`};s(d=>{const p=[...d,f];return t==null||t(p.map(pi)),p})},[t]),o=c.useCallback((h,f)=>{s(d=>{const p=d.map(m=>m.id===h?{...m,...f}:m);return t==null||t(p.map(pi)),p})},[t]),a=c.useCallback(h=>{s(f=>{const d=f.filter(p=>p.id!==h);return t==null||t(d.map(pi)),d})},[t]),l=c.useCallback(()=>{s([]),t==null||t([])},[t]),u=c.useCallback(h=>{s(h),t==null||t(h.map(pi))},[t]);return{filters:i,addFilter:n,updateFilter:o,removeFilter:a,clearFilters:l,setAllFilters:u}},la=(e={})=>{const{externalEditingRowIds:t,onEditingRowIdsChange:i,onEditModeChange:s}=e,[n,o]=c.useState(new Set);c.useEffect(()=>{t!==void 0&&o(new Set(t))},[t]);const a=c.useMemo(()=>t!==void 0?new Set(t):n,[t,n]),l=c.useCallback(g=>{i&&i(Array.from(g))},[i]),u=c.useCallback(g=>{const b=new Set(a),v=b.has(g);v?b.delete(g):b.add(g),s&&s(g,!v),t!==void 0?l(b):o(b)},[a,t,l,s]),h=c.useCallback(g=>{const b=new Set(a),v=b.has(g);b.add(g),!v&&s&&s(g,!0),t!==void 0?l(b):o(b)},[a,t,l,s]),f=c.useCallback(g=>{const b=new Set(a),v=b.has(g);b.delete(g),v&&s&&s(g,!1),t!==void 0?l(b):o(b)},[a,t,l,s]),d=c.useCallback(()=>{t!==void 0?l(new Set):o(new Set)},[t,l]),p=c.useCallback(g=>a.has(g),[a]),m=c.useCallback(g=>g.map(b=>({...b,_isEditing:a.has(b.id)})),[a]);return{editingRowIds:a,toggleRowEdit:u,startEdit:h,stopEdit:f,stopAllEdits:d,isRowEditing:p,applyEditState:m}},on=1,Td="table-config-",Dd=({configKey:e,persistConfig:t=!1,initialColumns:i,initialSort:s,initialFilters:n=[],onConfigChange:o})=>{const a=e?`${Td}${e}`:null,l=c.useCallback(()=>({version:on,updatedAt:new Date().toISOString(),columns:i.map((T,S)=>({id:T.id,order:S,visible:T.visible!==!1,locked:T.locked||!1,width:T.width})),sort:s,filters:n}),[i,s,n]),u=c.useCallback(()=>{if(!a||!t)return null;try{const T=localStorage.getItem(a);if(!T)return null;const S=JSON.parse(T);return S.version!==on?(process.env.NODE_ENV!=="production"&&console.warn(`[useTableConfig] Config version mismatch, resetting config for ${e}`),null):S}catch(T){return process.env.NODE_ENV!=="production"&&console.error(`[useTableConfig] Error loading config for ${e}:`,T),null}},[a,t,e]),h=c.useCallback(T=>{if(!(!a||!t))try{localStorage.setItem(a,JSON.stringify(T))}catch(S){process.env.NODE_ENV!=="production"&&console.error(`[useTableConfig] Error saving config for ${e}:`,S)}},[a,t,e]),[f,d]=c.useState(()=>u()||l());c.useEffect(()=>{u()||d(l())},[i.length]);const p=c.useCallback((T,S)=>{d(D=>{const I={...D,...T,updatedAt:new Date().toISOString()};return h(I),o==null||o(I,S),I})},[h,o]),m=c.useCallback(()=>{const T=new Map(i.map(I=>[I.id,I])),S=[],D=new Set(f.columns.map(I=>I.id));return f.columns.sort((I,j)=>I.order-j.order).forEach(I=>{const j=T.get(I.id);j&&S.push({...j,visible:I.visible,locked:I.locked,width:I.width??j.width})}),i.forEach(I=>{D.has(I.id)||S.push(I)}),S},[i,f.columns]),g=c.useCallback(T=>{const S=T.map((D,I)=>{const j=f.columns.find(E=>E.id===D.id);return{id:D.id,order:I,visible:(j==null?void 0:j.visible)??D.visible!==!1,locked:D.locked||(j==null?void 0:j.locked)||!1,width:D.width??(j==null?void 0:j.width)}});p({columns:S},"column-reorder")},[f.columns,p]),b=c.useCallback((T,S)=>{const D=f.columns.map(I=>I.id===T?{...I,visible:S}:I);p({columns:D},"column-visibility")},[f.columns,p]),v=c.useCallback(T=>{const S=new Map(T.map(I=>[I.columnId,I.visible])),D=f.columns.map(I=>S.has(I.id)?{...I,visible:S.get(I.id)}:I);p({columns:D},"column-visibility")},[f.columns,p]),y=c.useCallback((T,S)=>{const D=f.columns.map(I=>I.id===T?{...I,locked:S}:I);if(S){const I=D.filter(R=>R.locked),j=D.filter(R=>!R.locked),E=[...I,...j].map((R,z)=>({...R,order:z}));p({columns:E},"column-lock")}else p({columns:D},"column-lock")},[f.columns,p]),w=c.useCallback((T,S)=>{const D=f.columns.map(I=>I.id===T?{...I,width:S}:I);p({columns:D},"column-resize")},[f.columns,p]),x=c.useCallback(T=>{p({sort:T},"sort")},[p]),N=c.useCallback(T=>{p({filters:T},"filter")},[p]),k=c.useCallback(()=>{const T=l();d(T),a&&t&&localStorage.removeItem(a),o==null||o(T,"reset")},[l,a,t,o]);return{columns:c.useMemo(()=>m(),[m]),sort:f.sort,filters:f.filters||[],updateColumnOrder:g,updateColumnVisibility:b,updateMultipleColumnVisibility:v,updateColumnLock:y,updateColumnWidth:w,updateSort:x,updateFilters:N,resetConfig:k,currentConfig:f}},Fe=e=>!e||typeof e!="string"?!1:/^\d{4}-\d{2}-\d{2}/.test(e),Ut=e=>{const[t,i,s]=e.split("T")[0].split("-").map(Number);return new Date(t,i-1,s)},Dt=(e,t,i)=>{const s=Ut(String(e)),n=Ut(String(t)),o=s.getTime(),a=n.getTime();switch(i){case"equals":return o===a;case"notEquals":return o!==a;case"gt":case"afterDate":return o>a;case"gte":return o>=a;case"lt":case"beforeDate":return o<a;case"lte":return o<=a;default:return!1}},Ed=e=>{const t=new Date,i=new Date(t.getFullYear(),t.getMonth(),t.getDate());switch(e){case"thisMonth":{const s=new Date(t.getFullYear(),t.getMonth(),1),n=new Date(t.getFullYear(),t.getMonth()+1,0);return{start:s,end:n}}case"lastMonth":{const s=new Date(t.getFullYear(),t.getMonth()-1,1),n=new Date(t.getFullYear(),t.getMonth(),0);return{start:s,end:n}}case"thisYear":{const s=new Date(t.getFullYear(),0,1),n=new Date(t.getFullYear(),11,31);return{start:s,end:n}}case"lastYear":{const s=new Date(t.getFullYear()-1,0,1),n=new Date(t.getFullYear()-1,11,31);return{start:s,end:n}}default:return{start:i,end:i}}},Id=(e,t)=>{if(!Fe(e))return!1;const i=Ut(String(e)),{start:s,end:n}=Ed(t),o=i.getTime(),a=s.getTime(),l=n.getTime();return o>=a&&o<=l},an=(e,t,i,s)=>{const n=e==null||e==="";switch(t){case"isEmpty":return n;case"isNotEmpty":return!n;case"equals":return n&&(i==null||i==="")?!0:Fe(e)&&Fe(i)?Dt(e,i,"equals"):String(e).toLowerCase()===String(i).toLowerCase();case"notEquals":return n&&(i==null||i==="")?!1:Fe(e)&&Fe(i)?Dt(e,i,"notEquals"):String(e).toLowerCase()!==String(i).toLowerCase();case"in":if(n||!Array.isArray(i))return!1;if(Array.isArray(e))return e.some(u=>{const h=typeof u=="object"&&u!==null?u.name||u.label||u.value||u.id||JSON.stringify(u):String(u);return i.some(f=>String(f).toLowerCase()===String(h).toLowerCase())});if(typeof e=="object"&&e!==null&&!Array.isArray(e)){const u=e,h=u.name&&String(u.name)||u.label&&String(u.label)||u.value&&String(u.value)||u.id&&String(u.id)||JSON.stringify(e);return i.some(f=>String(f).toLowerCase()===String(h).toLowerCase())}return i.some(u=>String(u).toLowerCase()===String(e).toLowerCase());case"contains":return n?!1:String(e).toLowerCase().includes(String(i).toLowerCase());case"notContains":return n?!0:!String(e).toLowerCase().includes(String(i).toLowerCase());case"startsWith":return n?!1:String(e).toLowerCase().startsWith(String(i).toLowerCase());case"endsWith":return n?!1:String(e).toLowerCase().endsWith(String(i).toLowerCase());case"gt":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"gt"):Number(e)>Number(i);case"gte":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"gte"):Number(e)>=Number(i);case"lt":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"lt"):Number(e)<Number(i);case"lte":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"lte"):Number(e)<=Number(i);case"between":if(n)return!1;if(Fe(e)&&Fe(i)&&Fe(s)){const u=Ut(String(e)),h=Ut(String(i)),f=Ut(String(s)),d=u.getTime(),p=Math.min(h.getTime(),f.getTime()),m=Math.max(h.getTime(),f.getTime());return d>=p&&d<=m}const o=Number(e),a=Math.min(Number(i),Number(s)),l=Math.max(Number(i),Number(s));return o>=a&&o<=l;case"afterDate":return n||!Fe(e)||!Fe(i)?!1:Dt(e,i,"afterDate");case"beforeDate":return n||!Fe(e)||!Fe(i)?!1:Dt(e,i,"beforeDate");case"thisMonth":case"lastMonth":case"thisYear":case"lastYear":return n?!1:Id(e,t);default:return!0}},ln=(e,t,i)=>{const s=i.find(n=>n.id===t);if(s)return s.accessor?typeof s.accessor=="function"?s.accessor(e):e[s.accessor]:e[t]},Md=(e,t,i)=>t.length===0?e:e.filter(s=>{if(t.length===1){const o=ln(s,t[0].columnId,i);return an(o,t[0].operator,t[0].value,t[0].value2)}let n=!1;for(let o=0;o<t.length;o++){const a=t[o],l=ln(s,a.columnId,i),u=an(l,a.operator,a.value,a.value2);if(o===0)n=u;else{const f=t[o-1].logicOperator||"and";f==="and"?n=n&&u:f==="or"&&(n=n||u)}}return n}),Rd=({columns:e,rows:t,loading:i=!1,empty:s={title:"Aun no hay nada aquí...",description:"Aun no hay contenido disponible por aquí para mostrar."},selection:n,pagination:o,toolbar:a,sort:l,filters:u=[],expandable:h=!1,resizable:f=!1,striped:d=!1,bordered:p=!1,borderable:m=!1,hoverable:g=!0,dense:b=!1,stickyHeader:v=!0,stickyCheckbox:y=!0,stickyActions:w=!0,showEditActions:x,configKey:N,persistConfig:k=!1,onConfigChange:C,className:T,onSort:S,onFilter:D,onColumnResize:I,onColumnReorder:j,onColumnVisibilityChange:E,onRowClick:R,onRowExpand:z,onHandleChange:$,editingRowIds:F,onEditingRowIdsChange:W,onEditModeChange:L,onSuccessComplete:P})=>{const B=c.useRef(null),[q,Q]=c.useState(null),se=c.useRef(new Set),ie=c.useRef(new Set),A=Dd({configKey:N,persistConfig:k,initialColumns:e,initialSort:l,initialFilters:u,onConfigChange:C}),O=k&&N?A.columns:e,H=c.useMemo(()=>O.some(X=>X.editable&&X.editable!=="none"),[O]),Z=c.useMemo(()=>{if(x===!1||!H)return O;const X=O.findIndex(ge=>ge.type==="actions"&&ge.id!=="_editActions");if(X!==-1){const ge=O[X],ve=ge.render,Ne={...ge,render:(Ge,dt,$t)=>{const Pt=ve?ve(Ge,dt,$t):[],Ki=Array.isArray(Pt)?Pt:[];return[{icon:dt._isEditing?V.faCheck:V.faPen,tooltip:dt._isEditing?"Guardar":"Editar",color:dt._isEditing?"secondary":"tertiary",onClick:()=>{dt._toggleEdit&&dt._toggleEdit()}},...Ki]}},tt=[...O];return tt[X]=Ne,tt}const ue={id:"_editActions",header:"Acciones",type:"actions",width:120,sortable:!1,filterable:!1,lockable:!1,resizable:!1,editable:"none",render:(ge,ve)=>[{icon:ve._isEditing?V.faCheck:V.faPen,tooltip:ve._isEditing?"Guardar ":"Editar",onClick:()=>{ve._toggleEdit&&ve._toggleEdit()}}]};return[...O,ue]},[O,H,x]),ae=c.useMemo(()=>Z.map(X=>X.width===void 0&&X.resizable!==!1?{...X,resizable:!0}:X),[Z]),{columns:le,handleSetVisibility:xe,handleToggleLock:he,handleResize:ye,setColumnsOrder:Y}=na(ae),{sortConfig:U,handleSort:K}=Xo(l),{selectedIds:ee,selectedCount:_,allSelected:J,someSelected:te,handleRowSelect:ne,handleSelectAll:re,clearSelection:de}=Jo(t,n==null?void 0:n.multiple),{handleRowExpand:Te,applyExpandedState:je}=oa(),{handleCellFocus:ze,handleCellBlur:Se,isCellFocused:Le}=aa(),{filters:Re,setAllFilters:Ve}=Nd({initialFilters:u,onFiltersChange:D}),{toggleRowEdit:ke,applyEditState:et}=la({externalEditingRowIds:F,onEditingRowIdsChange:W,onEditModeChange:L}),[De,zt]=c.useState("");c.useEffect(()=>{const X=ue=>{B.current&&!B.current.contains(ue.target)&&Se()};return document.addEventListener("mousedown",X),()=>{document.removeEventListener("mousedown",X)}},[Se]);const Ct=c.useRef(Re.length),ht=c.useRef(De);c.useEffect(()=>{var ge;const X=Ct.current!==Re.length,ue=ht.current!==De;o!=null&&o.enabled&&(X||ue)&&o.currentPage!==1&&((ge=o==null?void 0:o.onPageChange)==null||ge.call(o,1)),Ct.current=Re.length,ht.current=De},[Re.length,De,o]);const ut=c.useMemo(()=>{if(!De.trim()||!((a==null?void 0:a.internalSearch)??!1))return t;const ue=De.toLowerCase().trim();return t.filter(ge=>le.some(ve=>{if(ve.visible===!1)return!1;let Ne;return typeof ve.accessor=="function"?Ne=ve.accessor(ge):ve.accessor&&(Ne=ge[ve.accessor]),Ne!==null?String(Ne).toLowerCase().includes(ue):!1}))},[t,De,le,a==null?void 0:a.internalSearch]),rt=c.useMemo(()=>Re.length===0||!((a==null?void 0:a.internalFilters)??!1)?ut:Md(ut,Re,le),[ut,Re,le,a==null?void 0:a.internalFilters]),nt=c.useMemo(()=>!U||!U.direction?rt:[...rt].sort((X,ue)=>{const ge=le.find(Pt=>Pt.id===U.columnId);if(!ge)return 0;let ve,Ne;if(typeof ge.accessor=="function")ve=ge.accessor(X),Ne=ge.accessor(ue);else if(ge.accessor)ve=X[ge.accessor],Ne=ue[ge.accessor];else return 0;const tt=ve==null,Ge=Ne==null;if(tt&&Ge)return 0;if(tt)return U.direction==="asc"?1:-1;if(Ge)return U.direction==="asc"?-1:1;const dt=ve,$t=Ne;return dt<$t?U.direction==="asc"?-1:1:dt>$t?U.direction==="asc"?1:-1:0}),[rt,U,le]),ct=nt.length,vt=c.useMemo(()=>{if(!(o!=null&&o.enabled))return nt;const X=o.currentPage||1,ue=o.pageSize||10,ge=!((a==null?void 0:a.internalSearch)??!1),ve=!((a==null?void 0:a.internalFilters)??!1);if(o.total!==void 0&&o.total!==ct||ge&&ve)return nt;const tt=(X-1)*ue,Ge=tt+ue;return nt.slice(tt,Ge)},[nt,o,ct,a==null?void 0:a.internalSearch,a==null?void 0:a.internalFilters]),Lt=je(vt),pt=c.useMemo(()=>et(Lt).map(ue=>({...ue,_toggleEdit:()=>ke(ue.id)})),[Lt,et,ke]),Xt=c.useMemo(()=>{if(pt.length>0)return s;const X=De.trim().length>0,ue=Re.length>0;return t.length===0&&!X&&!ue?{...s,type:s.type||"empty"}:X&&(ut.length===0||pt.length===0)?{type:"no-results",title:`No hay resultados para "${De}"`,description:void 0,action:s.action}:ue&&rt.length===0?{type:"no-filters",title:void 0,description:void 0,action:s.action}:s},[s,pt.length,De,Re.length,t.length,ut.length,rt.length]),kt=X=>{const ue=Ko(U,X);K(X),S==null||S(ue),k&&N&&ue&&A.updateSort(ue)},oe=X=>{},we=X=>{he(X);const ue=le.find(ge=>ge.id===X);k&&N&&ue&&A.updateColumnLock(X,!ue.locked)},Pe=(X,ue)=>{ye(X,ue),I==null||I(X,ue),k&&N&&A.updateColumnWidth(X,ue)},G=X=>{if(le.find(ge=>ge.id===X)&&B.current){const ge=B.current.querySelector(`th[data-column-id="${X}"]`),ve=B.current.querySelectorAll(`td[data-column-id="${X}"]`);if(ge||ve.length>0){let Ne=0;if(ge){const Ge=ge.querySelector(".ui-truncate");Ge&&(Ne=Math.max(Ne,Ge.scrollWidth+80))}ve.forEach(Ge=>{Ne=Math.max(Ne,Ge.scrollWidth+32)});const tt=Math.min(Math.max(Ne,100),500);ye(X,tt),I==null||I(X,tt)}}},Ee=(X,ue)=>{Q(ue?X:null)},ot=X=>{var ue;zt(X),(ue=a==null?void 0:a.onSearch)==null||ue.call(a,X)},ce=(X,ue)=>{xe(X,ue),E==null||E(X,ue),k&&N&&A.updateColumnVisibility(X,ue)},fe=X=>{X.forEach(({columnId:ue,visible:ge})=>{xe(ue,ge),E==null||E(ue,ge)}),k&&N&&A.updateMultipleColumnVisibility(X)},Ie=X=>{const ue=X.map(ge=>ge.id);Y(ue),j==null||j(X),k&&N&&A.updateColumnOrder(X)},Me=X=>{Te(X),z==null||z(X)},Oe=(X,ue,ge)=>{se.current.add(X);const ve=t.find(Ne=>Ne.id===X);$&&$(X,ue,ge,ve)};c.useEffect(()=>{if(!P)return;const X=new Set(F||[]),ue=ie.current,ge=[];if(ue.forEach(ve=>{X.has(ve)||ge.push(ve)}),ge.length>0){const ve=ge.filter(Ne=>se.current.has(Ne));ve.length>0&&(P(ve),ve.forEach(Ne=>{se.current.delete(Ne)}))}ie.current=new Set(X)},[F,P]);const _t=X=>{var ue;(ue=o==null?void 0:o.onPageChange)==null||ue.call(o,X)},qt=X=>{var ue;(ue=o==null?void 0:o.onPageSizeChange)==null||ue.call(o,X)},Qt=M("ui-imj ui-relative ui-flex ui-h-full ui-w-full ui-max-w-full ui-flex-col ui-overflow-hidden ui-bg-fill ui-rounded-surface-sheet ui-p-16",m&&"ui-border ui-border-default",T),fi=X=>{Ve(X),!((a==null?void 0:a.internalFilters)??!1)&&D&&D(X)};return r.jsxs("div",{ref:B,className:Qt,children:[a&&r.jsx(Eo,{...a,showFilters:a.showFilters??!0,selectedCount:_,selectedIds:ee,columns:le,rows:t,filters:Re,onSearch:ot,onColumnVisibilityChange:ce,onMultipleColumnVisibilityChange:fe,onColumnReorder:Ie,onFiltersApply:fi}),r.jsx("div",{className:"ui-flex-1 ui-min-h-0 ui-min-w-0 ui-overflow-hidden",children:r.jsx(Yo,{columns:le,rows:pt,loading:i,empty:Xt,selection:n,sort:U,filters:Re,expandable:h,resizable:f,resizeHoverColumnId:q,striped:d,bordered:p,hoverable:g,dense:b,stickyHeader:v,stickyCheckbox:y,stickyActions:w,selectedIds:ee,allSelected:J,someSelected:te,onSelectAll:re,onRowSelect:ne,onSort:kt,onFilter:oe,onLock:we,onResize:Pe,onResizeDoubleClick:G,onResizeHover:Ee,onRowClick:R,onRowExpand:Me,onCellFocus:ze,isCellFocused:Le,onCellChange:Oe})}),(n==null?void 0:n.showSelectionBar)&&_>0&&r.jsx("div",{className:M("ui-pointer-events-none ui-absolute ui-left-0 ui-right-0 ui-z-50 ui-flex ui-justify-center",o!=null&&o.enabled?"ui-bottom-20":"ui-bottom-8"),children:r.jsx(Uo,{selectedCount:_,selectedIds:ee,actions:n.actions,selectionText:n.selectionText,onClearSelection:n.showClearSelection?de:void 0,className:"ui-pointer-events-auto"})}),(o==null?void 0:o.enabled)&&pt.length>0&&r.jsx(go,{currentPage:o.currentPage||1,pageCount:Math.ceil((o.total!==void 0?o.total:ct)/(o.pageSize||10)),pageSize:o.pageSize||10,total:o.total!==void 0?o.total:ct,onPageChange:_t,handlePageSize:qt,showVisiblePages:!0,showPagesSelector:!0})]})},zd=(e=[])=>{const[t,i]=c.useState(e),[s,n]=c.useState(""),o=c.useCallback(f=>{i(d=>{const p=d.findIndex(m=>m.columnId===f.columnId);if(p>=0){const m=[...d];return m[p]=f,m}return[...d,f]})},[]),a=c.useCallback(f=>{i(d=>d.filter(p=>p.columnId!==f))},[]),l=c.useCallback(()=>{i([]),n("")},[]),u=c.useCallback((f,d)=>{i(p=>p.map(m=>m.columnId===f?{...m,...d}:m))},[]),h=t.length>0||s.length>0;return{filters:t,searchQuery:s,setSearchQuery:n,addFilter:o,removeFilter:a,clearFilters:l,updateFilter:u,hasActiveFilters:h}},Ld=(e,t=10,i=1)=>{const[s,n]=c.useState(i),[o,a]=c.useState(t),l=c.useMemo(()=>Math.ceil(e/o),[e,o]),u=c.useCallback(v=>{v>=1&&v<=l&&n(v)},[l]),h=c.useCallback(v=>{a(v),n(1)},[]),f=c.useCallback(()=>{u(s+1)},[s,u]),d=c.useCallback(()=>{u(s-1)},[s,u]),p=c.useCallback(()=>{n(1)},[]),m=c.useCallback(()=>{n(l)},[l]),g=(s-1)*o,b=Math.min(g+o,e);return{currentPage:s,pageSize:o,pageCount:l,startIndex:g,endIndex:b,handlePageChange:u,handlePageSizeChange:h,nextPage:f,previousPage:d,firstPage:p,lastPage:m,hasNextPage:s<l,hasPreviousPage:s>1}},Ae=e=>!e||typeof e!="string"?!1:/^\d{4}-\d{2}-\d{2}/.test(e),$e=e=>{const[t,i,s]=e.split("T")[0].split("-").map(Number);return new Date(t,i-1,s)},$d=e=>{const t=new Date,i=new Date(t.getFullYear(),t.getMonth(),t.getDate());switch(e){case"thisMonth":{const s=new Date(t.getFullYear(),t.getMonth(),1),n=new Date(t.getFullYear(),t.getMonth()+1,0);return{start:s,end:n}}case"lastMonth":{const s=new Date(t.getFullYear(),t.getMonth()-1,1),n=new Date(t.getFullYear(),t.getMonth(),0);return{start:s,end:n}}case"thisYear":{const s=new Date(t.getFullYear(),0,1),n=new Date(t.getFullYear(),11,31);return{start:s,end:n}}case"lastYear":{const s=new Date(t.getFullYear()-1,0,1),n=new Date(t.getFullYear()-1,11,31);return{start:s,end:n}}default:return{start:i,end:i}}},ua=(e,t,i)=>t.length===0?e:e.filter(s=>t.every(n=>{const o=i.find(l=>l.id===n.columnId);if(!o)return!0;const a=o.accessor?typeof o.accessor=="function"?o.accessor(s):s[o.accessor]:null;return Pd(a,n)})),Pd=(e,t)=>{const i=t.value,s=e==null||e==="";switch(t.operator){case"isEmpty":return s;case"isNotEmpty":return!s}if(s)return!1;const n=String(e).toLowerCase(),o=String(i).toLowerCase();switch(t.operator){case"equals":return Ae(e)&&Ae(i)?$e(e).getTime()===$e(i).getTime():n===o;case"notEquals":return Ae(e)&&Ae(i)?$e(e).getTime()!==$e(i).getTime():n!==o;case"contains":return n.includes(o);case"notContains":return!n.includes(o);case"startsWith":return n.startsWith(o);case"endsWith":return n.endsWith(o);case"gt":return Ae(e)&&Ae(i)?$e(e).getTime()>$e(i).getTime():Number(e)>Number(i);case"gte":return Ae(e)&&Ae(i)?$e(e).getTime()>=$e(i).getTime():Number(e)>=Number(i);case"lt":return Ae(e)&&Ae(i)?$e(e).getTime()<$e(i).getTime():Number(e)<Number(i);case"lte":return Ae(e)&&Ae(i)?$e(e).getTime()<=$e(i).getTime():Number(e)<=Number(i);case"between":if(!t.value2)return!1;if(Ae(e)&&Ae(i)&&Ae(t.value2)){const h=$e(e).getTime(),f=Math.min($e(i).getTime(),$e(t.value2).getTime()),d=Math.max($e(i).getTime(),$e(t.value2).getTime());return h>=f&&h<=d}const a=Number(e),l=Math.min(Number(i),Number(t.value2)),u=Math.max(Number(i),Number(t.value2));return a>=l&&a<=u;case"in":return Array.isArray(i)?Array.isArray(e)?e.some(h=>i.some(f=>String(f).toLowerCase()===String(h).toLowerCase())):i.some(h=>String(h).toLowerCase()===n):!1;case"afterDate":return!Ae(e)||!Ae(i)?!1:$e(e).getTime()>$e(i).getTime();case"beforeDate":return!Ae(e)||!Ae(i)?!1:$e(e).getTime()<$e(i).getTime();case"thisMonth":case"lastMonth":case"thisYear":case"lastYear":{if(!Ae(e))return!1;const h=$e(e),{start:f,end:d}=$d(t.operator),p=h.getTime();return p>=f.getTime()&&p<=d.getTime()}default:return!0}},ca=(e,t,i)=>{if(!t.trim())return e;const s=t.toLowerCase();return e.filter(n=>i.some(o=>{const a=o.accessor?typeof o.accessor=="function"?o.accessor(n):n[o.accessor]:null;return a==null?!1:String(a).toLowerCase().includes(s)}))},Od=({rows:e,columns:t,sortConfig:i,filters:s=[],searchQuery:n="",currentPage:o=1,pageSize:a})=>{const l=c.useMemo(()=>{let h=[...e];return n&&(h=ca(h,n,t)),s.length>0&&(h=ua(h,s,t)),i&&(h=Go(h,i.columnId,i.direction,t)),h},[e,t,i,s,n]),u=c.useMemo(()=>{if(!a)return l;const h=(o-1)*a,f=h+a;return l.slice(h,f)},[l,o,a]);return{processedRows:l,paginatedRows:u,totalRows:l.length}};function da(e,t){return t(e.id,e.attributes)}function rr(e,t){return e.data.map(i=>da(i,t))}function nr(e,t){return{id:e,nombre:t.nombre,color:t.color,createdAt:new Date(t.createdAt),updatedAt:new Date(t.updatedAt)}}function or(e){return{data:rr(e,nr),pagination:{page:e.meta.pagination.page,pageSize:e.meta.pagination.pageSize,pageCount:e.meta.pagination.pageCount,total:e.meta.pagination.total}}}function Ad(e){return t=>({data:rr(t,e),pagination:{page:t.meta.pagination.page,pageSize:t.meta.pagination.pageSize,pageCount:t.meta.pagination.pageCount,total:t.meta.pagination.total}})}const Fd={equals:"$eq",notEquals:"$ne",contains:"$containsi",notContains:"$notContainsi",startsWith:"$startsWithi",endsWith:"$endsWithi",gt:"$gt",gte:"$gte",lt:"$lt",lte:"$lte",between:"$between",in:"$in",isEmpty:"$null",isNotEmpty:"$notNull",afterDate:"$gt",beforeDate:"$lt",thisMonth:"$gte",lastMonth:"$gte",thisYear:"$gte",lastYear:"$gte"};function Wd(){const e=new Date,t=new Date(e.getFullYear(),e.getMonth(),1),i=new Date(e.getFullYear(),e.getMonth()+1,0);return{start:t.toISOString().split("T")[0],end:i.toISOString().split("T")[0]}}function Bd(){const e=new Date,t=new Date(e.getFullYear(),e.getMonth()-1,1),i=new Date(e.getFullYear(),e.getMonth(),0);return{start:t.toISOString().split("T")[0],end:i.toISOString().split("T")[0]}}function Vd(){const e=new Date;return{start:`${e.getFullYear()}-01-01`,end:`${e.getFullYear()}-12-31`}}function Hd(){const t=new Date().getFullYear()-1;return{start:`${t}-01-01`,end:`${t}-12-31`}}function ds(e){const{field:t,operator:i,value:s,value2:n}=e,o=Fd[i];if(i==="thisMonth"){const a=Wd();return{[t]:{$gte:a.start,$lte:a.end}}}if(i==="lastMonth"){const a=Bd();return{[t]:{$gte:a.start,$lte:a.end}}}if(i==="thisYear"){const a=Vd();return{[t]:{$gte:a.start,$lte:a.end}}}if(i==="lastYear"){const a=Hd();return{[t]:{$gte:a.start,$lte:a.end}}}return i==="between"&&n!==void 0?{[t]:{$gte:s,$lte:n}}:i==="isEmpty"?{[t]:{$null:!0}}:i==="isNotEmpty"?{[t]:{$notNull:!0}}:{[t]:{[o]:s}}}function fa(e){return{field:e.columnId,operator:e.operator,value:e.value,value2:e.value2,logicOperator:e.logicOperator}}function ar(e){if(e.length===0)return{};if(e.length===1)return ds(e[0]);const t=[];let i=[];return e.forEach((s,n)=>{const o=ds(s);i.push(o),s.logicOperator==="or"&&n<e.length-1&&(t.push([...i]),i=[])}),i.length>0&&t.push(i),t.length===1?Object.assign({},...t[0]):{$or:t.map(s=>s.length===1?s[0]:{$and:s})}}function ma(e){const t=e.map(fa);return ar(t)}function lr(e){const t=new URLSearchParams;if(e.page!==void 0&&t.append("pagination[page]",e.page.toString()),e.pageSize!==void 0&&t.append("pagination[pageSize]",e.pageSize.toString()),e.sort){const i=e.sortDirection==="desc"?":desc":":asc";t.append("sort",`${e.sort}${i}`)}return e.filters&&Object.keys(e.filters).length>0&&ha(t,e.filters,"filters"),t.toString()}function ha(e,t,i){Object.entries(t).forEach(([s,n])=>{const o=`${i}[${s}]`;n!=null&&(Array.isArray(n)?n.forEach((a,l)=>{e.append(`${o}[${l}]`,String(a))}):typeof n=="object"?ha(e,n,o):e.append(o,String(n)))})}let Ci=null;class pa extends Error{constructor(t,i,s,n){super(t),this.status=i,this.statusText=s,this.data=n,this.name="StrapiApiError"}}function _d(e){Ci=e}function ga(){if(!Ci)throw new Error("Strapi client not configured. Call configureStrapiClient() first.");return Ci}function qd(){return Ci!==null}async function ui(e,t={}){const i=ga(),s=e.startsWith("http")?e:`${i.baseUrl}${e.startsWith("/")?e:`/${e}`}`,n={"Content-Type":"application/json",Authorization:`Bearer ${i.token}`,...t.headers},o=await fetch(s,{...t,headers:n});if(!o.ok){let a;try{a=await o.json()}catch{a=await o.text()}throw new pa(`API Error: ${o.status} ${o.statusText}`,o.status,o.statusText,a)}return o.json()}async function ur(e,t){const i=t?`${e}?${t}`:e;return ui(i,{method:"GET"})}async function Yd(e,t){return ui(e,{method:"POST",body:JSON.stringify(t)})}async function ba(e,t){return ui(e,{method:"PUT",body:JSON.stringify(t)})}async function Ud(e){return ui(e,{method:"DELETE"})}const cr="/api/equipos";async function xa(e){const t=Gd(e);return ur(cr,t)}async function ki(e){const t=await xa(e);return or(t)}async function Ni(e,t){const i=ma(e),s=lr({filters:i,sort:t==null?void 0:t.sortField,sortDirection:t==null?void 0:t.sortDirection,page:t==null?void 0:t.page,pageSize:t==null?void 0:t.pageSize}),n=await ur(cr,s);return or(n)}function Gd(e){if(!e)return"";const{page:t,pageSize:i,sortField:s,sortDirection:n,filters:o,search:a}=e;let l={};return o&&o.length>0&&(l=ar(o)),a&&a.trim()&&(l={...l,nombre:{$containsi:a.trim()}}),lr({filters:l,sort:s,sortDirection:n,page:t,pageSize:i})}async function dr(e,t){const i=await ba(`${cr}/${e}`,{data:t});return nr(i.data.id,i.data.attributes)}async function ya(e,t){return dr(e,{nombre:t})}const Be={all:["teams"],lists:()=>[...Be.all,"list"],list:e=>[...Be.lists(),e],details:()=>[...Be.all,"detail"],detail:e=>[...Be.details(),e]};function Kd(e,t){return at.useQuery({queryKey:Be.list(e),queryFn:()=>ki(e),staleTime:1e3*60*5,...t})}function Xd(e,t,i){return at.useQuery({queryKey:[...Be.lists(),"filtered",{advancedFilters:e,params:t}],queryFn:()=>Ni(e,t),staleTime:1e3*60*5,...i})}function Qd(e={}){var m,g;const{page:t=1,pageSize:i=10,sortField:s,sortDirection:n="asc",filters:o=[],search:a,enabled:l=!0}=e,u=at.useQueryClient(),h=at.useQuery({queryKey:[...Be.lists(),"table",{page:t,pageSize:i,sortField:s,sortDirection:n,filters:o,search:a}],queryFn:async()=>o.length>0?Ni(o,{page:t,pageSize:i,sortField:s,sortDirection:n}):ki({page:t,pageSize:i,sortField:s,sortDirection:n,search:a}),staleTime:1e3*60*5,placeholderData:at.keepPreviousData,enabled:l}),f=()=>{h.data&&t<h.data.pagination.pageCount&&u.prefetchQuery({queryKey:[...Be.lists(),"table",{page:t+1,pageSize:i,sortField:s,sortDirection:n,filters:o,search:a}],queryFn:()=>o.length>0?Ni(o,{page:t+1,pageSize:i,sortField:s,sortDirection:n}):ki({page:t+1,pageSize:i,sortField:s,sortDirection:n,search:a})})},d=()=>u.invalidateQueries({queryKey:Be.lists()}),p=(m=h.data)==null?void 0:m.pagination;return{data:((g=h.data)==null?void 0:g.data)??[],pagination:p??null,isLoading:h.isLoading,isFetching:h.isFetching,isError:h.isError,error:h.error,isSuccess:h.isSuccess,isPlaceholderData:h.isPlaceholderData,refetch:d,prefetchNextPage:f,query:h}}function Zd(){const e=at.useQueryClient();return{invalidateAll:()=>e.invalidateQueries({queryKey:Be.all}),invalidateLists:()=>e.invalidateQueries({queryKey:Be.lists()})}}function Jd(){const e=at.useQueryClient();return at.useMutation({mutationFn:({id:t,data:i})=>dr(t,i),onMutate:async({id:t,data:i})=>{await e.cancelQueries({queryKey:Be.all});const s=e.getQueriesData({queryKey:Be.all});return e.setQueriesData({queryKey:Be.all},n=>n!=null&&n.data?{...n,data:n.data.map(o=>o.id===t?{...o,...i}:o)}:n),{previousData:s}},onError:(t,i,s)=>{s!=null&&s.previousData&&s.previousData.forEach(([n,o])=>{e.setQueryData(n,o)})},onSettled:async()=>{await e.invalidateQueries({queryKey:Be.all})}})}function ef(){const e=at.useQueryClient();return at.useMutation({mutationFn:({id:t,nombre:i})=>ya(t,i),onMutate:async({id:t,nombre:i})=>{await e.cancelQueries({queryKey:Be.all});const s=e.getQueriesData({queryKey:Be.all});return e.setQueriesData({queryKey:Be.all},n=>n!=null&&n.data?{...n,data:n.data.map(o=>o.id===t?{...o,nombre:i}:o)}:n),{previousData:s}},onError:(t,i,s)=>{s!=null&&s.previousData&&s.previousData.forEach(([n,o])=>{e.setQueryData(n,o)})},onSettled:async()=>{await e.invalidateQueries({queryKey:Be.all})}})}function tf(e={}){const{initialPage:t=1,initialPageSize:i=10,initialSortField:s,initialSortDirection:n="asc",initialFilters:o=[],initialSearch:a=""}=e,[l,u]=c.useState(t),[h,f]=c.useState(i),[d,p]=c.useState(s),[m,g]=c.useState(n),[b,v]=c.useState(o),[y,w]=c.useState(a),x=c.useCallback(E=>{u(E)},[]),N=c.useCallback(E=>{f(E),u(1)},[]),k=c.useCallback((E,R="asc")=>{p(E),g(R),u(1)},[]),C=c.useCallback(E=>{v(E),u(1)},[]),T=c.useCallback(E=>{v(R=>[...R,E]),u(1)},[]),S=c.useCallback(E=>{v(R=>R.filter(z=>z.id!==E)),u(1)},[]),D=c.useCallback(()=>{v([]),u(1)},[]),I=c.useCallback(E=>{w(E),u(1)},[]),j=c.useCallback(()=>{u(t),f(i),p(s),g(n),v(o),w(a)},[t,i,s,n,o,a]);return{page:l,pageSize:h,sortField:d,sortDirection:m,filters:b,search:y,setPage:x,setPageSize:N,setSort:k,setFilters:C,addFilter:T,removeFilter:S,clearFilters:D,setSearch:I,reset:j}}function sf(e,t){return c.useMemo(()=>e.map(i=>{const s=t.sortField===i.id,n=t.filters.some(o=>o.columnId===i.id);return{...i,sortDirection:s?t.sortDirection:null,filterActive:n}}),[e,t.sortField,t.sortDirection,t.filters])}function rf(e,t=300){const[i,s]=c.useState(e);return c.useEffect(()=>{const n=setTimeout(()=>{s(e)},t);return()=>{clearTimeout(n)}},[e,t]),i}function nf(e,t=300){const[i,s]=c.useState(null),n=((...o)=>{i&&clearTimeout(i);const a=setTimeout(()=>{e(...o)},t);s(a)});return c.useEffect(()=>()=>{i&&clearTimeout(i)},[i]),n}function of({children:e,staleTime:t=1e3*60*5,gcTime:i=1e3*60*30,retry:s=3,refetchOnWindowFocus:n=!0}){const[o]=c.useState(()=>new at.QueryClient({defaultOptions:{queries:{staleTime:t,gcTime:i,retry:s,refetchOnWindowFocus:n}}}));return r.jsx(at.QueryClientProvider,{client:o,children:e})}function af(e={}){const{staleTime:t=1e3*60*5,gcTime:i=1e3*60*30,retry:s=3,refetchOnWindowFocus:n=!0}=e;return new at.QueryClient({defaultOptions:{queries:{staleTime:t,gcTime:i,retry:s,refetchOnWindowFocus:n}}})}const ci=["primary","secondary","tertiary","disabled","on-color","on-canvas-inverse","brand","brand-hover","brand-pressed","brand-selected","success","success-hover","success-pressed","success-selected","warning","warning-hover","warning-pressed","warning-selected","danger","danger-hover","danger-pressed","danger-selected","info","info-hover","info-pressed","info-selected","link","link-hover","link-pressed","link-visited","all-colors-red","all-colors-orange","all-colors-yellow","all-colors-lime","all-colors-green","all-colors-cyan","all-colors-azure","all-colors-blue","all-colors-violet","all-colors-magenta","all-colors-rose"],fr=({size:e="h3",weight:t="regular",children:i,className:s,as:n,color:o,textColor:a,...l})=>{const h=n||(e&&["h1","h2","h3","h4","h5","h6"].includes(e)?e:"h3"),d=(()=>{const v=[];return e&&["h1","h2","h3","h4","h5","h6"].includes(e)?(v.push(`ui-text-heading-${e}`),v.push(`ui-font-heading-${e}`),v.push(`ui-leading-tracking-${e}`)):e&&(v.push(`ui-text-${e}`),t!=="regular"&&v.push(`ui-font-${t}`)),v.join(" ")})(),p=o&&ci.includes(o),m=o&&!p?{color:o}:void 0,b=p?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-primary";return r.jsx(h,{className:M("ui-imj",d,b,s),style:m,...l,children:i})};fr.displayName="Title";const Ti=({size:e="xs",weight:t="regular",children:i,className:s,as:n="span",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return e&&["xs","sm","md","lg"].includes(e)?(b.push(`ui-text-body-${e}-${t}`),b.push(`ui-font-body-${e}-${t}`),b.push(`ui-leading-body-${e}-${t}`),b.push(`ui-tracking-body-${e}`)):e&&(b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`)),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-secondary";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};Ti.displayName="Body";const mr=({size:e="xs",weight:t="regular",children:i,className:s,as:n="span",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return e&&["xs","md"].includes(e)?(b.push(`ui-text-caption-${e}`),b.push(`ui-font-caption-${e}`),b.push(`ui-leading-caption-${e}`),b.push(`ui-tracking-caption-${e}`)):e&&(b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`)),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-tertiary";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};mr.displayName="Caption";const hr=({size:e="md",weight:t="regular",children:i,className:s,as:n="code",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return e==="md"?(b.push("ui-text-code-md"),b.push("ui-font-code-md"),b.push("ui-leading-code-md"),b.push("ui-tracking-code-md")):e&&(b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`)),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-tertiary";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};hr.displayName="Code";const pr=({size:e,weight:t="regular",children:i,className:s,as:n="span",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};pr.displayName="CustomText";const gr=({type:e="body",size:t,weight:i="regular",children:s,className:n,as:o,color:a,textColor:l,...u})=>{if(t&&["2xs","xs","sm","md","lg","xl","2xl","3xl","4xl","5xl"].includes(t))return r.jsx(pr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});switch(e){case"title":return r.jsx(fr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});case"body":return r.jsx(Ti,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});case"caption":return r.jsx(mr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});case"code":return r.jsx(hr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});default:return r.jsx(Ti,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s})}};gr.displayName="Text";const lf={duration:5e3,maxMessages:5,position:"bottom-right",variant:"outlined",primaryButtonText:"Aceptar",secondaryButtonText:"Cancelar",animationDuration:300,size:"sm"};let Ke={...lf};const uf=e=>{Ke={...Ke,...e}};class cf{constructor(){this.listeners=[],this.idCounter=0,this.recentMessages=new Map}show(t,i="success",s={}){const n=Date.now()+ ++this.idCounter;let o,a;typeof t=="string"?(o="",a={...s,title:t}):(o=t.message??"",a={...s,...t});const l=`${o||a.title||""}-${i}`,u=Date.now(),h=this.recentMessages.get(l);if(h&&u-h<100)return n;if(this.recentMessages.set(l,u),this.recentMessages.size>50)for(const[d,p]of this.recentMessages.entries())u-p>1e3&&this.recentMessages.delete(d);const f={id:n,message:o,title:a.title,description:a.description,color:i,onClick:a.onClick,onClose:a.onClose,onPrimaryClick:a.onPrimaryClick,onSecondaryClick:a.onSecondaryClick,showCloseButton:a.showCloseButton??!0,isLeaving:!1,position:a.position??Ke.position,variant:a.variant??Ke.variant,primaryButtonText:a.primaryButtonText??Ke.primaryButtonText,secondaryButtonText:a.secondaryButtonText??Ke.secondaryButtonText,size:a.size??Ke.size,duration:a.duration!==void 0?a.duration:Ke.duration,animation:a.animation};return process.env.NODE_ENV!=="production"&&(f.duration!==void 0&&(isNaN(f.duration)||!isFinite(f.duration)||f.duration<0)&&(console.warn(`[MessageService] Invalid duration "${f.duration}". Using default.`),f.duration=Ke.duration),f.position&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(f.position)&&(console.warn(`[MessageService] Invalid position "${f.position}". Using default.`),f.position=Ke.position),f.color&&!["success","danger","info","warning","neutral","brand"].includes(f.color)&&console.warn(`[MessageService] Invalid color "${f.color}".`)),this.listeners.forEach(d=>d(f)),n}success(t,i){return this.show(t,"success",i)}error(t,i){return this.show(t,"danger",i)}info(t,i){return this.show(t,"info",i)}warning(t,i){return this.show(t,"warning",i)}neutral(t,i){return this.show(t,"neutral",i)}brand(t,i){return this.show(t,"brand",i)}dismiss(t){this.listeners.forEach(i=>i({id:t,message:"",title:"",color:"success",position:Ke.position,showCloseButton:!0,isLeaving:!0,variant:Ke.variant}))}configure(t){Object.assign(Ke,t)}getListeners(){return this.listeners}subscribe(t){return this.listeners.push(t),()=>{const i=this.listeners.indexOf(t);i>-1&&this.listeners.splice(i,1)}}}const We=new cf,df=()=>We,br=()=>{const[e,t]=c.useState([]),i=c.useRef(new Map),s=c.useRef(null);return c.useEffect(()=>{const o=We.getListeners();if(s.current){const l=o.indexOf(s.current);l>-1&&o.splice(l,1)}const a=l=>{if(l.isLeaving){t(f=>f.map(d=>d.id===l.id?{...d,isLeaving:!0}:d));const u=i.current.get(l.id);u&&(clearTimeout(u),i.current.delete(l.id));const h=setTimeout(()=>{t(f=>f.filter(d=>d.id!==l.id))},Ke.animationDuration);i.current.set(l.id,h);return}t(u=>{if(u.some(g=>g.id===l.id))return u;const f={...l,isLeaving:!1},d=[...u,f],p=f.duration!==void 0?f.duration:Ke.duration,m=p>0&&isFinite(p)&&!isNaN(p)?p:0;if(m>0){const g=setTimeout(()=>{We.dismiss(f.id)},m);i.current.set(f.id,g)}return d.slice(-Ke.maxMessages)})};return s.current=a,o.push(a),()=>{const l=o.indexOf(a);l>-1&&o.splice(l,1);const u=i.current;u.forEach(h=>clearTimeout(h)),u.clear(),s.current=null}},[]),{messagesByPosition:c.useMemo(()=>e.reduce((o,a)=>{const l=["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"],u=a.position&&l.includes(a.position)?a.position:"top-right";return o[u]||(o[u]=[]),o[u].push(a),o},{}),[e]),messages:e}},xr=()=>({getPositionClasses:t=>{const i={"top-left":"ui-fixed ui-top-5 ui-left-5","top-center":"ui-fixed ui-top-5 ui-left-1/2 ui--translate-x-1/2","top-right":"ui-fixed ui-top-5 ui-right-5","center-left":"ui-fixed ui-top-1/2 ui-left-5 ui--translate-y-1/2",center:"ui-fixed ui-top-1/2 ui-left-1/2 ui--translate-x-1/2 ui--translate-y-1/2","center-right":"ui-fixed ui-top-1/2 ui-right-5 ui--translate-y-1/2","bottom-left":"ui-fixed ui-bottom-5 ui-left-5","bottom-center":"ui-fixed ui-bottom-5 ui-left-1/2 ui--translate-x-1/2","bottom-right":"ui-fixed ui-bottom-5 ui-right-5"},s=i[t];return process.env.NODE_ENV!=="production"&&!s?(console.warn(`[useMessageStyles] Invalid position "${t}". Using "top-right" as fallback.`),i["top-right"]):s||i["top-right"]}}),ff={position:"top-right",duration:5e3,animationDuration:300,size:"sm",showTimer:!0},gt={...ff};class mf{constructor(){this.listeners=[],this.idCounter=0,this.groups={brand:null,neutral:null},this.timers={brand:null,neutral:null},this.progressIntervals={brand:null,neutral:null},this.removeTimers={brand:null,neutral:null}}show(t,i="brand",s={}){const n=Date.now()+ ++this.idCounter;let o,a,l;typeof t=="string"?(o="",a=t,l={...s}):(o=t.message??"",a=t.title,l={...s,...t});const u={id:n,message:o,title:a,subtitle:l.subtitle,description:l.description,color:i,avatar:l.avatar,icon:l.icon,position:l.position??gt.position,duration:l.duration??gt.duration,showCloseButton:l.showCloseButton??!0,isLeaving:!1,showTimer:gt.showTimer,onClick:l.onClick,onClose:l.onClose,onPrimaryClick:l.onPrimaryClick,onSecondaryClick:l.onSecondaryClick,primaryButtonText:l.primaryButtonText,secondaryButtonText:l.secondaryButtonText,size:l.size??(gt.size==="lg"?"md":gt.size),variant:l.variant??"outlined",animation:l.animation??"fade"};return process.env.NODE_ENV!=="production"&&(u.duration!==void 0&&(isNaN(u.duration)||!isFinite(u.duration)||u.duration<0)&&(console.warn(`[NotificationService] Invalid duration "${u.duration}". Using default.`),u.duration=gt.duration),u.position&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(u.position)&&(console.warn(`[NotificationService] Invalid position "${u.position}". Using default.`),u.position=gt.position),["brand","neutral"].includes(i)||console.warn(`[NotificationService] Invalid color "${i}".`)),this.addToGroup(i,u),n}addToGroup(t,i){const s=this.groups[t];s?(s.queue.push(i),s.count=s.queue.length,this.resetTimer(t)):(this.groups[t]={color:t,notification:i,queue:[i],count:1,timerProgress:100,isLeaving:!1},this.startTimer(t)),this.notifyListeners()}startTimer(t){const i=this.groups[t];if(!i)return;const s=i.notification.duration??gt.duration;if(s<=0)return;this.clearTimer(t);const n=Date.now();i.timerProgress=100,this.progressIntervals[t]=setInterval(()=>{const o=Date.now()-n,a=Math.max(0,100-o/s*100);this.groups[t]&&(this.groups[t].timerProgress=a,this.notifyListeners())},50),this.timers[t]=setTimeout(()=>{this.dismissGroup(t)},s)}resetTimer(t){this.clearTimer(t),this.startTimer(t)}clearTimer(t){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.progressIntervals[t]&&(clearInterval(this.progressIntervals[t]),this.progressIntervals[t]=null),this.removeTimers[t]&&(clearTimeout(this.removeTimers[t]),this.removeTimers[t]=null)}dismissGroup(t){const i=this.groups[t];i&&(i.isLeaving=!0,this.notifyListeners(),this.clearTimer(t),this.removeTimers[t]=setTimeout(()=>{this.groups[t]=null,this.removeTimers[t]=null,this.notifyListeners()},gt.animationDuration))}dismiss(t){for(const i of["brand","neutral"]){const s=this.groups[i];if(s&&s.queue.some(n=>n.id===t)){this.dismissGroup(i);return}}}brand(t,i){return this.show(t,"brand",i)}neutral(t,i){return this.show(t,"neutral",i)}configure(t){Object.assign(gt,t)}getGroups(){return{...this.groups}}subscribe(t){return this.listeners.push(t),()=>{const i=this.listeners.indexOf(t);i>-1&&this.listeners.splice(i,1)}}notifyListeners(){const t=this.getGroups();this.listeners.forEach(i=>i(t))}getConfig(){return{...gt}}}const Xe=new mf,hf=()=>Xe,yr=()=>{const[e,t]=c.useState({brand:null,neutral:null});c.useEffect(()=>{t(Xe.getGroups());const n=Xe.subscribe(o=>{t({...o})});return()=>{n()}},[]);const i=Object.values(e).filter(n=>n!==null&&!n.isLeaving),s=Object.values(e).filter(n=>n!==null&&n.isLeaving);return{groups:e,activeGroups:i,leavingGroups:s,dismissGroup:n=>Xe.dismissGroup(n)}},vr=c.memo(({message:e})=>{const[t,i]=c.useState(!0),s=c.useRef(null);c.useEffect(()=>(e.isLeaving&&(s.current=setTimeout(()=>{i(!1)},300)),()=>{s.current&&(clearTimeout(s.current),s.current=null)}),[e.isLeaving]);const n=a=>{a.stopPropagation();const l=e.id??0;process.env.NODE_ENV!=="production"&&!e.id&&console.warn("[MessageItem] message.id is undefined. Using fallback value 0."),We.dismiss(l),e.onClose&&e.onClose()};if(!t)return null;const o=e.color==="brand"?"info":e.color;return process.env.NODE_ENV!=="production"&&!["success","danger","info","warning","neutral","brand"].includes(e.color)&&console.warn(`[MessageItem] Invalid color "${e.color}". Using fallback.`),r.jsx(Es,{color:o,variant:e.variant||"outlined",message:e.message,title:e.title,description:e.description,showCloseButton:e.showCloseButton,open:!0,onClose:n,onPrimaryClick:e.onPrimaryClick,onSecondaryClick:e.onSecondaryClick,primaryButtonText:e.primaryButtonText,secondaryButtonText:e.secondaryButtonText,isLeaving:e.isLeaving,onClick:e.onClick,animation:e.animation||"fade",size:e.size||"sm",duration:e.duration})});vr.displayName="MessageItem";const _i=c.memo(({messages:e})=>{const{getPositionClasses:t}=xr();return Object.keys(e).length===0?null:r.jsx(r.Fragment,{children:Object.entries(e).map(([i,s])=>{const n=i;return process.env.NODE_ENV!=="production"&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(i)&&console.warn(`[MessagePositions] Invalid position "${i}". Using as-is.`),!s||s.length===0?null:r.jsx("div",{className:`${t(n)} ui-z-50 ui-max-w-[350px] ui-space-y-2`,children:s.map(o=>o.id?r.jsx(vr,{message:o},o.id):(process.env.NODE_ENV!=="production"&&console.warn("[MessagePositions] Message without id. Skipping."),null))},i)})})});_i.displayName="MessagePositions";const pf=()=>{const{messagesByPosition:e}=br();return st.createPortal(r.jsx(_i,{messages:e}),document.body)},wr=c.memo(({group:e})=>{const{notification:t,count:i,isLeaving:s,color:n}=e,[o,a]=c.useState(!0),l=c.useRef(null);c.useEffect(()=>(s&&(l.current=setTimeout(()=>{a(!1)},300)),()=>{l.current&&(clearTimeout(l.current),l.current=null)}),[s]);const u=d=>{var p;d.stopPropagation(),Xe.dismissGroup(n),(p=t.onClose)==null||p.call(t)};if(!o)return null;const f={brand:"brand",neutral:"neutral"}[n];return r.jsx(Es,{color:f,variant:t.variant||"outlined",message:t.message,title:t.title,description:t.description,showCloseButton:t.showCloseButton,open:!0,onClose:u,onPrimaryClick:t.onPrimaryClick,onSecondaryClick:t.onSecondaryClick,primaryButtonText:t.primaryButtonText,secondaryButtonText:t.secondaryButtonText,isLeaving:s,onClick:t.onClick,animation:t.animation||"fade",size:t.size||"sm",duration:t.duration,avatar:t.avatar,children:i>1&&r.jsxs("div",{className:"ui-mb-2 ui-flex ui-items-center ui-justify-center ui-gap-1 ui-py-2",children:[r.jsx(pe,{name:V.faPaperPlane,size:"xs",color:"tertiary"}),r.jsxs("span",{className:"ui-text-xs ui-text-tertiary",children:["Tienes ",i," mensajes nuevos"]})]})})});wr.displayName="NotificationItem";const qi=c.memo(({groups:e})=>{const{getPositionClasses:t}=xr(),i=Xe.getConfig(),s=Object.values(e).filter(o=>o!==null);if(s.length===0)return null;const n=i.position;return process.env.NODE_ENV!=="production"&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(n)&&console.warn(`[NotificationPositions] Invalid position "${n}" from config. Using as-is.`),r.jsx("div",{className:`${t(n)} ui-z-50 ui-space-y-2`,children:s.map(o=>o.notification.id?r.jsx(wr,{group:o},`${o.color}-${o.count}`):(process.env.NODE_ENV!=="production"&&console.warn("[NotificationPositions] Group notification without id. Skipping."),null))})});qi.displayName="NotificationPositions";const gf=()=>{const{groups:e}=yr();return st.createPortal(r.jsx(qi,{groups:e}),document.body)},bf=()=>{const{messagesByPosition:e}=br(),{groups:t}=yr();return st.createPortal(r.jsxs(r.Fragment,{children:[r.jsx(_i,{messages:e}),r.jsx(qi,{groups:t})]}),document.body)},xf=We,yf=Xe,vf={success:We.success.bind(We),error:We.error.bind(We),info:We.info.bind(We),warning:We.warning.bind(We),show:We.show.bind(We),dismiss:We.dismiss.bind(We),configure:We.configure.bind(We),brand:Xe.brand.bind(Xe),neutral:Xe.neutral.bind(Xe),dismissNotification:Xe.dismissGroup.bind(Xe),configureNotification:Xe.configure.bind(Xe)},wf=({text:e,count:t,buttons:i=[],onClose:s,className:n,visible:o=!0,activeButtonId:a,onActiveButtonIdChange:l,onBackClick:u})=>{var I;const h=a!==void 0,[f,d]=c.useState(-1),[p,m]=c.useState(!1);if(c.useEffect(()=>{m(!0)},[]),!o)return null;const g=i.filter(j=>j.show!==!1);if(g.length===0)return null;let b=null;h?a!==null&&(b=g.find(j=>j.id===a)||null):b=f>=0?g[f]:null;const v=((I=b==null?void 0:b.addons)==null?void 0:I.filter(j=>j.show!==!1))||[],y=M("ui-flex ui-items-center ui-gap-8 sm:ui-gap-16","ui-bg-fill-brand","ui-px-12 ui-py-8 sm:ui-px-16","ui-rounded-surface-modal","ui-shadow-03","ui-border-1 ui-border-default",n),w=M("ui-fixed ui-bottom-6 ui-left-1/2 ui--translate-x-1/2","ui-z-[1000]","ui-max-w-[calc(100vw-48px)]","ui-flex ui-justify-center"),x=(j,E)=>{var z;if(j.onClick&&j.onClick(),(((z=j.addons)==null?void 0:z.filter($=>$.show!==!1))||[]).length>0){const $=j.id??E.toString();h?l==null||l($):d(E)}},N=()=>{u==null||u(),h?l==null||l(null):d(-1)},k=(j,E)=>{j.onChange&&j.onChange(E)},C=()=>r.jsxs("div",{className:y,children:[r.jsx(Ce,{color:"secondary",size:"xs",pill:"pill",icon:V.faArrowTurnLeft,onClick:N}),(e||t!==void 0)&&r.jsxs("span",{className:"ui-whitespace-nowrap ui-text-body-sm-regular ui-font-body-sm-regular ui-text-on-color",children:[t!==void 0?`(${t}) `:"",e]}),v.length>0&&r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx("div",{className:"ui-flex ui-min-w-max ui-items-center ui-gap-16",children:v.map((j,E)=>{var R,z,$,F,W;if(j.type==="input")return r.jsx("div",{className:"ui-w-[160px]",children:r.jsx(Ue,{size:"xs",leftSlot:j.leftSlot,fullWidth:!0,rightSlot:j.rightSlot,disabled:j.disabled,value:j.value,placeholder:j.placeholder,type:j.type,name:j.name,onValueChange:L=>k(j,L)})},`addon-${E}`);if(j.type==="date")return r.jsx("div",{className:"ui-w-[160px]",children:r.jsx(Gt,{size:"xs",mode:((R=j.datePickerProps)==null?void 0:R.mode)||"single",selectedDate:j.selectedDate,selectedRange:j.selectedRange,minDate:(z=j.datePickerProps)==null?void 0:z.minDate,maxDate:($=j.datePickerProps)==null?void 0:$.maxDate,autoCloseRange:!1,format:((F=j.datePickerProps)==null?void 0:F.format)||"dd/MM/yyyy",placeholder:((W=j.datePickerProps)==null?void 0:W.placeholder)||j.placeholder||"Seleccionar fecha",onDateChange:L=>{var P;((P=j.datePickerProps)==null?void 0:P.mode)==="range"?k(j,{start:null,end:null}):k(j,L)},onRangeChange:L=>{k(j,L)}})},`addon-${E}`);if(j.type==="button"){const L=j.label?void 0:j.icon,P=j.label&&j.icon?j.icon:void 0;return r.jsx(Ce,{color:j.color||"secondary",size:"xs",icon:L,leftSlot:P,disabled:j.disabled,pill:j.pill,tooltip:j.tooltip,tooltipPosition:j.tooltipPosition,tooltipAlignment:j.tooltipAlignment,tooltipDelay:j.tooltipDelay,onClick:()=>{j.onClick&&j.onClick()},children:j.label},`addon-${E}`)}return null})}),s&&r.jsxs(r.Fragment,{children:[r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx(Ce,{color:"secondary",size:"xs",pill:"pill",icon:V.faXmark,onClick:s})]})]}),T=()=>r.jsxs("div",{className:y,children:[r.jsx("div",{className:"ui-flex ui-min-w-max ui-items-center ui-gap-16",children:g.map((j,E)=>{const R=j.label?void 0:j.icon,z=j.label&&j.icon?j.icon:void 0;return r.jsx(Ce,{color:j.color||"secondary",size:"xs",icon:R,leftSlot:z,disabled:j.disabled,pill:j.pill,tooltip:j.tooltip,tooltipPosition:j.tooltipPosition,tooltipAlignment:j.tooltipAlignment,tooltipDelay:j.tooltipDelay,onClick:()=>x(j,E),children:j.label},`button-${E}-${j.label||j.icon}`)})}),s&&r.jsxs(r.Fragment,{children:[r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx(Ce,{color:"secondary",size:"xs",pill:"pill",icon:V.faXmark,onClick:s})]})]}),D=(h?a!==null&&b!==null&&v.length>0:f>=0&&b!==null&&v.length>0)?C():T();return p?st.createPortal(r.jsx("div",{className:M("ui-imj",w),children:D}),document.body):null},va=({id:e,label:t,icon:i,badge:s,active:n=!1,disabled:o=!1,hasSubmenu:a=!1,onClick:l,className:u})=>{const h=f=>{o||l==null||l(e)};return r.jsxs(xt,{icon:i,current:n,disabled:o,onClick:h,className:M("ui-h-32",u),children:[r.jsx("span",{className:"ui-flex-1 ui-truncate",children:t}),s&&r.jsx(Kt,{label:String(s.label),color:s.color||"accent",theme:s.theme||"solid",size:"sm"}),a&&r.jsx(pe,{name:V.faChevronRight,size:"md",color:"tertiary",className:"ui-shrink-0"})]})},di=({className:e,withText:t=!1,text:i})=>t&&i?r.jsxs("div",{className:M("ui-flex ui-w-full ui-items-center ui-gap-8",e),children:[r.jsx("span",{className:"ui-shrink-0 ui-whitespace-nowrap ui-text-body-xs-regular ui-font-body-xs-regular ui-text-tertiary",children:i}),r.jsx("div",{className:"ui-flex-1 ui-border-t-1 ui-border-default"})]}):r.jsx("div",{className:M("ui-w-full ui-py-4",e),children:r.jsx("div",{className:"ui-border-t-1 ui-border-default"})}),jf=({title:e,className:t})=>r.jsx("span",{className:M("ui-text-body-xs-regular ui-font-body-xs-regular","ui-uppercase ui-text-tertiary",t),children:e}),wa=({title:e,items:t,className:i})=>r.jsxs("div",{className:M("ui-flex ui-w-full ui-flex-col ui-gap-16",i),children:[e&&r.jsx(di,{withText:!0,text:e}),r.jsx("div",{className:"ui-flex ui-w-full ui-flex-col ui-gap-4",children:t.map(s=>r.jsx(va,{...s},s.id))})]}),ja=({name:e,role:t,avatarProps:i,onLogout:s,className:n})=>{const o=()=>{const a=(i==null?void 0:i.type)||"people",{type:l,...u}=i||{};return r.jsx(yt,{type:a,size:"md",...u})};return r.jsxs("div",{className:M("ui-flex ui-w-full ui-flex-col ui-gap-8",n),children:[r.jsx(ai,{name:e,subtitle:t,avatar:o(),className:"ui-h-auto ui-px-0 ui-py-0"}),r.jsx(di,{}),r.jsx(Ce,{theme:"solid",color:"tertiary",size:"sm",fullWidth:!0,leftSlot:V.faArrowRightToBracket,onClick:s,children:"Cerrar sesión"})]})},Sa=({icon:e=V.faTableLayout,title:t="Mesa de trabajo",badge:i,projectId:s,clientName:n,status:o,showActions:a=!1,onOpen:l,onClose:u,className:h})=>{const[f,d]=c.useState(!1),p=f||a,m={success:"ui-bg-surface-success-hover ui-text-success",warning:"ui-bg-surface-warning-hover ui-text-warning",danger:"ui-bg-surface-danger ui-text-danger",info:"ui-bg-surface-info-hover ui-text-info"},g={success:it.faArrowUpRight,warning:it.faArrowUpRight,danger:it.faArrowUpRight,info:it.faArrowUpRight};return r.jsxs("div",{className:M("ui-flex ui-flex-col ui-gap-8 ui-p-16","ui-border-1 ui-border-default ui-bg-surface-default","ui-w-full ui-rounded-control-sm ui-transition-all",h),onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),children:[r.jsxs("div",{className:"ui-flex ui-w-full ui-items-center ui-gap-8",children:[r.jsx("div",{className:"ui-flex ui-shrink-0 ui-items-center ui-justify-center ui-rounded-control-pill ui-bg-surface-brand-hover ui-p-8",children:r.jsx(pe,{name:e,size:"md",color:"info"})}),r.jsx("span",{className:"ui-flex-1 ui-truncate ui-text-body-sm-regular ui-font-body-sm-regular ui-text-primary",children:t}),i&&r.jsx(Kt,{label:String(i.label),color:i.color||"accent",theme:i.theme||"solid",size:"sm"})]}),r.jsx(di,{}),r.jsxs("div",{className:"ui-flex ui-w-full ui-flex-col ui-items-center ui-text-center",children:[s&&r.jsx("span",{className:"ui-w-full ui-truncate ui-text-body-xs-regular ui-font-body-xs-medium ui-text-brand",children:s}),n&&r.jsxs("span",{className:"ui-w-full ui-text-body-xs-regular ui-font-body-xs-regular ui-text-tertiary",children:["Cliente: ",n]})]}),o&&r.jsx("div",{className:"ui-w-full",children:r.jsxs("div",{className:M("ui-flex ui-items-center ui-justify-center ui-gap-4","ui-h-16 ui-w-full ui-rounded-control-xs ui-px-8 ui-py-2",m[o.color]),children:[r.jsx(pe,{name:g[o.color],size:"xs",color:"current"}),r.jsx("span",{className:"ui-text-body-xs-regular ui-font-body-xs-regular",children:o.label})]})}),p&&r.jsxs("div",{className:"ui-flex ui-w-full ui-items-center ui-gap-8",children:[r.jsx(Ce,{theme:"solid",color:"tertiary",size:"xxs",fullWidth:!0,leftSlot:V.faFolderOpen,onClick:l,children:"Abrir"}),r.jsx(Ce,{theme:"solid",color:"tertiary",size:"xxs",fullWidth:!0,leftSlot:V.faXmark,onClick:u,children:"Concluir"})]})]})},Sf=({logo:e,onLogoClick:t,workspace:i,menuGroups:s=[],userProfile:n,collapsed:o=!1,onToggleCollapse:a,className:l,width:u=248})=>{const h=o?64:u;return r.jsxs("aside",{className:M("ui-imj","ui-flex ui-flex-col ui-justify-between","ui-h-full ui-bg-surface-secondary","ui-border-r-1 ui-border-default","ui-relative ui-p-16 ui-transition-all ui-duration-300",l),style:{width:h},children:[r.jsxs("div",{className:"ui-flex ui-w-full ui-flex-col ui-items-center ui-gap-8 ui-overflow-y-auto",children:[e&&r.jsx("div",{className:M("ui-flex ui-items-center ui-justify-center ui-py-8","ui-cursor-pointer"),onClick:t,children:typeof e=="string"?r.jsx("img",{src:e,alt:"Logo",className:"ui-h-40 ui-w-40 ui-rounded-control-pill ui-object-cover"}):e}),e&&r.jsx(di,{}),i&&!o&&r.jsx(Sa,{...i}),s.map((f,d)=>r.jsx(wa,{...f},f.title||`group-${d}`))]}),n&&!o&&r.jsx(ja,{...n}),a&&r.jsx("button",{className:M("ui-absolute ui-flex ui-items-center ui-justify-center","ui-size-32 ui-rounded-control-pill ui-bg-fill-brand","ui-cursor-pointer ui-transition-all ui-duration-200","hover:ui-bg-fill-brand-hover",o?"ui-right-[-16px]":"-ui-right-16"),style:{top:68,right:-16},onClick:a,children:r.jsx(pe,{name:V.faChevronLeft,size:"md",color:"white",className:M("ui-transition-transform ui-duration-300",o&&"ui-rotate-180")})})]})},fs={brand:"var(--ui-color-blue-500)",success:"var(--ui-color-green-500)",warning:"var(--ui-color-orange-500)",danger:"var(--ui-color-red-500)",info:"var(--ui-color-cyan-500)",neutral:"var(--ui-color-light-gray-500)",yellow:"var(--ui-color-yellow-500)"},Cf=["brand","success","warning","danger","info"],kf=e=>fs[e]||fs.neutral,Nf=e=>typeof e=="string"&&e in fs?e:"neutral",jr=c.memo(({data:e,index:t,width:i,color:s,isFirst:n,isLast:o,height:a,transitionDuration:l,showTooltip:u,onHover:h,onLeave:f})=>{const[d,p]=c.useState(!1),m=Math.max(0,Math.min(100,i)),g=M(n&&"ui-rounded-l-control-pill",o&&"ui-rounded-r-control-pill",!n&&!o&&"ui-rounded-none"),b=kf(s),v={flex:`0 0 ${m}%`,width:`${m}%`,minWidth:m>0&&m<.5?"1px":void 0,height:`${a}px`,maxHeight:`${a}px`,transition:`flex-basis ${l}ms ease-in-out, width ${l}ms ease-in-out`,backgroundColor:b},y=`${e.name}: ${e.percent}%`,w=()=>{p(!0),h==null||h(e,t)},x=()=>{p(!1),f==null||f(e,t)};return r.jsx("div",{className:M("ui-relative ui-h-full ui-flex-shrink-0",g),style:v,onMouseEnter:w,onMouseLeave:x,role:"progressbar","aria-valuenow":e.percent,"aria-valuemin":0,"aria-valuemax":100,"aria-label":y,children:u&&r.jsx($i,{label:y,isVisible:d,position:"bottom"})})});jr.displayName="LinearGraphicSegment";const ms={brand:"var(--ui-color-blue-500)",success:"var(--ui-color-green-500)",warning:"var(--ui-color-orange-500)",danger:"var(--ui-color-red-500)",info:"var(--ui-color-cyan-500)",neutral:"var(--ui-color-light-gray-500)",yellow:"var(--ui-color-yellow-500)"},Tf=["brand","success","warning","danger","info"],Df=e=>ms[e]||ms.neutral,Ef=e=>typeof e=="string"&&e in ms?e:"neutral",Ca=c.memo(({item:e,index:t,color:i,indicatorSize:s,gap:n,showTooltip:o,showPercent:a,tooltipPosition:l,onHover:u,onLeave:h})=>{const[f,d]=c.useState(!1),p=e.name!==null?String(e.name):"",m=Math.max(0,Math.min(100,Number(e.percent)||0)),g=Df(i),b=()=>{d(!0),u==null||u(e,t)},v=()=>{d(!1),h==null||h(e,t)};return r.jsxs("div",{className:"ui-relative ui-flex ui-cursor-default ui-items-center",onMouseEnter:b,onMouseLeave:v,style:{gap:`${n}px`},children:[r.jsx("span",{className:"ui-block ui-flex-shrink-0 ui-rounded-full",style:{width:`${s}px`,height:`${s}px`,backgroundColor:g}}),r.jsx("span",{className:"ui-text-body-sm-regular ui-text-primary",children:p}),a&&r.jsxs("span",{className:"ui-text-body-md-bold ui-font-body-md-bold ui-text-primary",children:[m,"%"]}),o&&r.jsx($i,{label:`${m}%`,isVisible:f,position:l})]})});Ca.displayName="ListWithDataInHoverItem";const Sr=c.memo(({data:e,colors:t,className:i,disabled:s=!1,indicatorSize:n=8,gap:o=4,showTooltips:a=!0,showPercent:l=!0,tooltipPosition:u="over",onItemHover:h,onItemLeave:f})=>{const d=c.useMemo(()=>!Array.isArray(e)||e.length===0?[]:e.filter(y=>y!==null&&typeof y=="object").map(y=>({name:String(y.name??""),percent:Math.max(0,Math.min(100,Number(y.percent)||0))})),[e]),p=c.useMemo(()=>!Array.isArray(t)||t.length===0?Tf:t.map(y=>Ef(y)),[t]),m=Math.max(4,Math.min(32,Number(n)||8)),g=Math.max(0,Math.min(32,Number(o)||4)),b=M("ui-flex ui-flex-wrap ui-justify-around ui-w-full",s&&"ui-opacity-50 ui-pointer-events-none",i),v={gap:`${g}px`,marginTop:"8px"};return d.length===0?r.jsx("div",{className:b,style:v,role:"list","aria-label":"Lista vacía"}):r.jsx("div",{className:M("ui-imj",b),style:v,role:"list","aria-label":"Lista con datos en hover",children:d.map((y,w)=>{const x=p[w%p.length];return r.jsx(Ca,{item:y,index:w,color:x,indicatorSize:m,gap:g,showTooltip:a,showPercent:l,tooltipPosition:u,onHover:h,onLeave:f},`list-item-${w}-${y.name}`)})})});Sr.displayName="ListWithDataInHover";const ka=c.memo(({data:e,colors:t,className:i,height:s=8,showTooltips:n=!0,showLegend:o=!1,showLegendPercent:a=!1,legendGap:l=8,transitionDuration:u=500,disabled:h=!1,onSegmentHover:f,onSegmentLeave:d})=>{const p=c.useMemo(()=>!Array.isArray(e)||e.length===0?[]:e.filter(w=>w!==null&&typeof w=="object").map(w=>({name:String(w.name??""),percent:Math.max(0,Math.min(100,Number(w.percent)||0))})).filter(w=>w.percent>0),[e]),m=c.useMemo(()=>!Array.isArray(t)||t.length===0?Cf:t.map(w=>Nf(w)),[t]),g=c.useMemo(()=>p.reduce((w,x)=>w+x.percent,0),[p]),b=c.useMemo(()=>g===0?p.map(()=>0):g>100?p.map(w=>w.percent/g*100):p.map(w=>w.percent),[p,g]),v=M("ui-relative ui-w-full",h&&"ui-opacity-50 ui-pointer-events-none",i),y={height:`${s}px`,borderRadius:"8px",backgroundColor:"var(--ui-color-neutral-200-legacy, #D9D9D9)",display:"flex",alignItems:"stretch"};return p.length===0?r.jsx("div",{className:"ui-imj ui-flex ui-w-full ui-flex-col ui-gap-8",children:r.jsx("div",{className:v,style:y,role:"progressbar","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,"aria-label":"Gráfica lineal vacía"})}):r.jsxs("div",{className:"ui-flex ui-w-full ui-flex-col ui-gap-8",children:[r.jsx("div",{className:v,style:y,role:"progressbar","aria-valuenow":g,"aria-valuemin":0,"aria-valuemax":100,"aria-label":"Gráfica lineal de progreso",children:p.map((w,x)=>{const N=m[x%m.length],k=b[x];return r.jsx(jr,{data:w,index:x,width:k,color:N,isFirst:x===0,isLast:x===p.length-1,height:s,transitionDuration:u,showTooltip:n,onHover:f,onLeave:d},`linear-graphic-segment-${x}-${w.name}`)})}),o&&r.jsx(Sr,{data:p,colors:m,gap:l,showTooltips:!0,showPercent:a,tooltipPosition:"over"})]})});ka.displayName="LinearGraphic";const Cr=c.memo(({color:e,size:t,className:i})=>{const s={width:`${t}px`,height:`${t}px`,borderRadius:"50%",backgroundColor:e,flexShrink:0};return r.jsx("div",{className:M("ui-flex-shrink-0",i),style:s,role:"presentation","aria-hidden":"true"})});Cr.displayName="TextListIndicator";const un={brand:"var(--ui-color-blue-500)",success:"var(--ui-color-green-500)",warning:"var(--ui-color-orange-500)",danger:"var(--ui-color-red-500)",info:"var(--ui-color-cyan-500)",neutral:"var(--ui-color-light-gray-500)",yellow:"var(--ui-color-yellow-500)"},If=e=>un[e]||un.neutral,Na=c.memo(({title:e,color:t,data:i,className:s,disabled:n=!1,indicatorSize:o=8,showIndicator:a=!0})=>{const l=e!==null?String(e):"",u=i!==null?String(i):"",h=If(t),f=Math.max(4,Math.min(32,Number(o)||8)),d=M("ui-flex ui-flex-wrap ui-items-center ui-justify-between ui-w-full ui-gap-4",n&&"ui-opacity-50 ui-pointer-events-none",s);return r.jsxs("div",{className:M("ui-imj",d),role:"listitem",children:[r.jsxs("div",{className:"ui-flex ui-items-center ui-gap-4",children:[a&&r.jsx(Cr,{color:h,size:f}),l&&r.jsx(gr,{type:"body",size:"sm",color:"primary",children:l})]}),u&&r.jsx(oi,{className:"ui-text-heading-h6 ui-font-heading-h6 ui-leading-heading-h6 ui-tracking-heading-h6 ui-text-primary",children:u})]})});Na.displayName="TextListWithData";function be(e,t){return typeof e.get=="function"?e.get(t):e[t]}function cn(e){return typeof e.count=="function"?e.count():e.length}function rs(e,t){return cn(e)===cn(t)&&e.every((i,s)=>i===be(t,s.toString()))}function Mf(e,t){const i={};return e.forEach(s=>{i[s[t]]=s}),i}function ns(){}function Wt(...e){return(t,...i)=>{t.preventDefault(),e.forEach(s=>s&&s(t,...i))}}function Rf({item:e,itemContext:t,getItemProps:i,getResizeProps:s}){const{left:n,right:o}=s(),a=i(e.itemProps),{key:l,...u}=a;return r.jsxs("div",{...u,children:[t.useResizeHandle?r.jsx("div",{...n}):"",r.jsx("div",{className:"rct-item-content",style:{maxHeight:`${t.dimensions.height}`},children:t.title}),t.useResizeHandle?r.jsx("div",{...o}):""]},l)}function hs(e,t,i){return(t-e)/i}function Di(e,t,i,s){const n=i/(t-e);return(s-e)*n}function kr(e,t,i,s){return(t-e)/i*s+e}function Nr(e,t,i,s,n){let o=jt(e).startOf(i);if(s[i]&&s[i]>1){const a=o.get(i);o.set(i,a-a%s[i])}for(;o.valueOf()<t;){const a=jt(o).add(s[i]||1,i);n(o,a),o=a}}const ps=17;function xi(e,t,i){const s={second:1e3,minute:60,hour:60,day:24,month:30,year:12};let n="year",o=e;return Object.keys(s).some(a=>{const l=a;o=o/s[l];const u=o/i[l],h=i[l]&&i[l]>1?3*ps:ps,f=t/h;if(u<f)return n=a,!0}),n}const gs={second:"minute",minute:"hour",hour:"day",day:"month",month:"year",year:"year"};function Tr(e){if(!gs[e])throw new Error(`unit ${e} is not acceptable`);return gs[e]}function Ta({itemTimeStart:e,itemTimeEnd:t,dragTime:i,isDragging:s,isResizing:n,resizingEdge:o,resizeTime:a}){const l=t-e;return[s&&i?i:n&&o==="left"&&a?a:e,s&&i?i+l:n&&o==="right"&&a?a:t]}function Da({itemTimeStart:e,itemTimeEnd:t,canvasTimeStart:i,canvasTimeEnd:s,canvasWidth:n}){const o=t-e,a=Math.max(e,i),l=Math.min(t,s),u=Di(i,s,n,a),f=Di(i,s,n,l)-u;return{left:u,width:Math.max(f,3),collisionLeft:e,collisionWidth:o}}function Dr(e,t){const{groupIdKey:i}=t,s={};for(let n=0;n<e.length;n++)s[be(e[n],i)]={index:n,group:e[n]};return s}function Ea(e,t){var n,o;const i={},s=Object.keys(t);for(let a=0;a<s.length;a++){const l=t[s[a]];i[a]={index:l.index,group:l.group,items:[]}}for(let a=0;a<e.length;a++)if(e[a].dimensions!==void 0&&((n=e[a].dimensions)==null?void 0:n.order)!==void 0){const l=i[((o=e[a].dimensions)==null?void 0:o.order.index)??0];l&&l.items.push(e[a])}return i}function Er(e,t,i,s){const{itemTimeStartKey:n,itemTimeEndKey:o}=s;return e.filter(a=>{const l=jt(be(a,n)).valueOf()<=i,u=jt(be(a,o)).valueOf()>=t;return l&&u})}const zf=.001;function Ia(e,t,i=zf){return e.collisionLeft+i<t.collisionLeft+t.collisionWidth&&e.collisionLeft+e.collisionWidth-i>t.collisionLeft&&e.top-0+i<t.top+t.height&&e.top+e.height+0-i>t.top}function Ma(e,t,i,s,n,o){let a=s;const l=(e-t.dimensions.height)/2;if(t.dimensions.stack&&t.dimensions.top===null){t.dimensions.top=n+l,a=Math.max(a,e);do{var u=null;for(let h=o-1,f=0;h>=f;h--){const d=i[h];if(d.dimensions.top!==null&&d.dimensions.stack&&Ia(t.dimensions,d.dimensions)){u=d;break}}u!=null&&(t.dimensions.top=u.dimensions.top+e,a=Math.max(a,t.dimensions.top+t.dimensions.height+l-n))}while(u)}return{groupHeight:a,verticalMargin:l,itemTop:t.dimensions.top}}function Ra(e,t,i,s){var o,a;const n=(e-(((o=t.dimensions)==null?void 0:o.height)??1))/2;return t.dimensions&&t.dimensions.top===null&&(t.dimensions.top=s+n,i=Math.max(i,e)),{groupHeight:i,verticalMargin:0,itemTop:((a=t.dimensions)==null?void 0:a.top)??0}}function dn(e=[]){return e.reduce((t,i)=>t+i,0)}function za(e,t,i,s){const n=[],o=[],a=Ea(e,t);for(const l in a){const u=a[l],{items:h,group:f}=u,d=dn(n),p=f.stackItems!==void 0?f.stackItems:s,{groupHeight:m}=La(h,p,i,d);o.push(d),f.height?n.push(f.height):n.push(Math.max(m,i))}return{height:dn(n),groupHeights:n,groupTops:o}}function La(e,t,i,s){let n=0,o=0;for(let a=0;a<e.length;a++){const l=t?Ma(i,e[a],e,n,s,a):Ra(i,e[a],n,s);n=l.groupHeight,o=l.verticalMargin}return{groupHeight:n,verticalMargin:o}}function Yt(e,t,i,s,n,o,a,l,u,h,f,d,p,m,g){const v=Er(e,s,n,o).map(C=>Pa({item:C,keys:o,draggingItem:h,resizingItem:f,dragTime:d,resizingEdge:p,resizeTime:m,groups:t,newGroupOrder:g}));if(t.length===0)return{dimensionItems:[],height:0,groupHeights:[],groupTops:[]};const y=Dr(t,o),w=v.map(C=>$a({item:C,keys:o,canvasTimeStart:s,canvasTimeEnd:n,canvasWidth:i,groupOrders:y,lineHeight:a,itemHeightRatio:l})).filter(C=>!!C),{height:x,groupHeights:N,groupTops:k}=za(w,y,a,u);return{dimensionItems:w,height:x,groupHeights:N,groupTops:k}}function Et(e,t){return e*t}function $a({item:e,keys:t,canvasTimeStart:i,canvasTimeEnd:s,canvasWidth:n,groupOrders:o,lineHeight:a,itemHeightRatio:l}){const u=be(e,t.itemIdKey),h=Da({itemTimeStart:be(e,t.itemTimeStartKey),itemTimeEnd:be(e,t.itemTimeEndKey),canvasTimeStart:i,canvasTimeEnd:s,canvasWidth:n});if(h)return h.top=null,h.order=o[be(e,t.itemGroupKey)],h.stack=!e.isOverlay,h.height=a*l,{id:u,dimensions:h}}function Pa({item:e,keys:t,draggingItem:i,resizingItem:s,dragTime:n,resizingEdge:o,resizeTime:a,groups:l,newGroupOrder:u}){if(!s&&!i)return e;const h=be(e,t.itemIdKey),f=h===i,d=h===s,[p,m]=Ta({itemTimeStart:be(e,t.itemTimeStartKey),itemTimeEnd:be(e,t.itemTimeEndKey),isDragging:f,isResizing:d,dragTime:n,resizingEdge:o,resizeTime:a});return{...e,[t.itemTimeStartKey]:p,[t.itemTimeEndKey]:m,[t.itemGroupKey]:f?be(l[u],t.groupIdKey):be(e,t.itemGroupKey)}}function Ir(e,t,i){const s=t-e,n=e-s*(i-1)/2,o=n+s*i;return[n,o]}function bs(e,t,i,s,n,o,a){const l=o.buffer,u=a.canvasTimeStart,h=a.canvasTimeEnd,f=a.visibleTimeEnd-a.visibleTimeStart,d=t-e,p={...a,visibleTimeStart:e,visibleTimeEnd:t};if(!(d===f&&e>=u+f*.5&&e<=h-f*1.5&&t>=u+f*1.5&&t<=h-f*.5)||i){const[g,b]=Ir(e,t,l);p.canvasTimeStart=g,p.canvasTimeEnd=b;const v={...a,...p},y=Et(v.width,o.buffer);Object.assign(p,Yt(s,n,y,v.canvasTimeStart,v.canvasTimeEnd,o.keys,o.lineHeight,o.itemHeightRatio,o.stackItems,v.draggingItem,v.resizingItem,v.dragTime,v.resizingEdge,v.resizeTime,v.newGroupOrder))}return p}const Lf=Object.freeze(Object.defineProperty({__proto__:null,NEXT_UNITS:gs,calculateDimensions:Da,calculateInteractionNewTimes:Ta,calculateScrollCanvas:bs,calculateTimeForXPosition:kr,calculateXPositionForTime:Di,collision:Ia,coordinateToTimeRatio:hs,getCanvasBoundariesFromVisibleTime:Ir,getCanvasWidth:Et,getGroupOrders:Dr,getGroupedItems:Ea,getItemDimensions:$a,getItemWithInteractions:Pa,getMinUnit:xi,getNextUnit:Tr,getVisibleItems:Er,groupNoStack:Ra,groupStack:Ma,iterateTimes:Nr,minCellWidth:ps,stackAll:za,stackGroup:La,stackTimelineItems:Yt},Symbol.toStringTag,{value:"Module"}));function fn(e){let t=0,i=0,s=!0;for(;e;)!e.offsetParent&&e.tagName==="BODY"&&e.scrollLeft===0&&e.scrollTop===0&&(e=document.scrollingElement||e),t+=e.offsetLeft-(s?0:e.scrollLeft)+e.clientLeft,i+=e.offsetTop-(s?0:e.scrollTop)+e.clientTop,e=e.offsetParent,s=!1;return{x:t,y:i}}function xs(e){if(e===document.body)return{scrollLeft:0,scrollTop:0};{const t=xs(e.parentNode);return{scrollLeft:e.scrollLeft+t.scrollLeft,scrollTop:e.scrollTop+t.scrollTop}}}function ys(e){if(e===document.body||!e.offsetParent)return{offsetLeft:0,offsetTop:0};{const t=ys(e.offsetParent);return{offsetLeft:e.offsetLeft+t.offsetLeft,offsetTop:e.offsetTop+t.offsetTop}}}const $f={fontSize:12,color:"white",cursor:"pointer",background:"#2196f3",border:"1px solid #1a6fb3",zIndex:10},Pf={background:"#ffc107",border:"1px solid #ff9800",zIndex:10},Of={willChange:"left, top, width",cursor:"move"},Af={borderLeftWidth:3},Ff={cursor:"w-resize"},Wf={borderRightWidth:3},Bf={cursor:"e-resize"},Vf={position:"absolute",width:24,maxWidth:"20%",minWidth:2,height:"100%",top:0,left:0,cursor:"pointer",zIndex:88},Hf={position:"absolute",width:24,maxWidth:"20%",minWidth:2,height:"100%",top:0,right:0,cursor:"pointer",zIndex:88},_f={getTimelineState:()=>(console.warn('"getTimelineState" default func is being used'),{}),getLeftOffsetFromDate:()=>(console.warn('"getLeftOffsetFromDate" default func is being used'),0),getDateFromLeftOffsetPosition:()=>(console.warn('"getDateFromLeftOffsetPosition" default func is being used'),0),showPeriod:()=>{console.warn('"showPeriod" default func is being used')}},Yi=c.createContext(_f);function Oa(e){const{visibleTimeStart:t,visibleTimeEnd:i,canvasTimeStart:s,canvasTimeEnd:n,canvasWidth:o,showPeriod:a,timelineUnit:l,timelineWidth:u}=e,h=c.useMemo(()=>({getTimelineState:()=>({visibleTimeStart:t,visibleTimeEnd:i,canvasTimeStart:s,canvasTimeEnd:n,canvasWidth:o,timelineUnit:l,timelineWidth:u}),getLeftOffsetFromDate:f=>Di(s,n,o,f),getDateFromLeftOffsetPosition:f=>kr(s,n,o,f),showPeriod:a}),[t,i,s,n,o,l,u,a]);return r.jsx(Yi.Provider,{value:h,children:e.children})}Oa.displayName="TimelineStateProvider";const Ui=Yi.Consumer,qf=()=>c.useContext(Yi);jt.extend(pl);const Ri=class Ri extends c.Component{constructor(t){super(t),this.state={interactMounted:!1,dragging:!1,dragStart:null,preDragPosition:null,dragTime:null,dragGroupDelta:null,resizing:!1,resizeEdge:null,resizeStart:null,resizeTime:null},this.itemId="",this.itemTitle="",this.startedClicking=!1,this.startedTouching=!1,this.dragInProgress=!1,this.fireInteractEvent=i=>{if(this.item){const s=new CustomEvent("itemInteraction",{bubbles:!0,detail:{itemInteraction:i}});this.item.dispatchEvent(s)}},this.onMouseDown=i=>{this.state.interactMounted||(i.preventDefault(),this.startedClicking=!0)},this.onMouseUp=i=>{!this.state.interactMounted&&this.startedClicking&&(this.startedClicking=!1,this.actualClick(i,"click"))},this.onTouchStart=i=>{this.state.interactMounted||(i.preventDefault(),this.startedTouching=!0)},this.onTouchEnd=i=>{!this.state.interactMounted&&this.startedTouching&&(this.startedTouching=!1,this.actualClick(i,"touch"))},this.handleDoubleClick=i=>{i.stopPropagation(),this.props.onItemDoubleClick&&this.props.onItemDoubleClick(this.itemId,i)},this.handleContextMenu=i=>{this.props.onContextMenu&&(i.preventDefault(),i.stopPropagation(),this.props.onContextMenu(this.itemId,i))},this.getItemRef=i=>this.item=i,this.getDragLeftRef=i=>this.dragLeft=i,this.getDragRightRef=i=>this.dragRight=i,this.getItemProps=(i={})=>{const s="rct-item"+(this.props.item.className?` ${this.props.item.className}`:"");return{key:this.itemId,ref:this.getItemRef,title:this.itemDivTitle,className:s+` ${i.className?i.className:""}`,onMouseDown:Wt(this.onMouseDown,i.onMouseDown),onMouseUp:Wt(this.onMouseUp,i.onMouseUp),onTouchStart:Wt(this.onTouchStart,i.onTouchStart),onTouchEnd:Wt(this.onTouchEnd,i.onTouchEnd),onDoubleClick:Wt(this.handleDoubleClick,i.onDoubleClick),onContextMenu:Wt(this.handleContextMenu,i.onContextMenu),style:Object.assign({},this.getItemStyle(i))}},this.getResizeProps=(i={})=>{let s="rct-item-handler rct-item-handler-left rct-item-handler-resize-left";i.leftClassName&&(s+=` ${i.leftClassName}`);let n="rct-item-handler rct-item-handler-right rct-item-handler-resize-right";return i.rightClassName&&(n+=` ${i.rightClassName}`),{left:{ref:this.getDragLeftRef,className:s,style:Object.assign({},Vf,i.leftStyle)},right:{ref:this.getDragRightRef,className:n,style:Object.assign({},Hf,i.rightStyle)}}},this.cacheDataFromProps(t)}shouldComponentUpdate(t,i){return!_r(this.props,t)||!_r(this.state,i)}cacheDataFromProps(t){this.itemId=be(t.item,t.keys.itemIdKey),this.itemTitle=be(t.item,t.keys.itemTitleKey),this.itemDivTitle=t.keys.itemDivTitleKey?be(t.item,t.keys.itemDivTitleKey):this.itemTitle,this.itemTimeStart=be(t.item,t.keys.itemTimeStartKey),this.itemTimeEnd=be(t.item,t.keys.itemTimeEndKey)}getTimeRatio(){const{canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s}=this.props;return hs(t,i,s)}dragTimeSnap(t,i){const{dragSnap:s}=this.props;if(s){const n=i?jt().utcOffset()*60*1e3:0;return Math.round(t/s)*s-n%s}else return t}resizeTimeSnap(t){const{dragSnap:i}=this.props;if(i){const s=this.itemTimeEnd%i;return Math.round((t-s)/i)*i+s}else return t}dragTime(t){const i=jt(this.itemTimeStart);return this.state.dragging?this.dragTimeSnap(this.timeFor(t)+this.state.dragStart.offset,!0):i.valueOf()}timeFor(t){const i=hs(this.props.canvasTimeStart,this.props.canvasTimeEnd,this.props.canvasWidth),s=ys(this.props.scrollRef).offsetLeft,n=xs(this.props.scrollRef);return(t.pageX-s+n.scrollLeft)*i+this.props.canvasTimeStart}dragGroupDelta(t){const{groupTops:i,order:s}=this.props;if(this.state.dragging){if(!this.props.canChangeGroup)return 0;let n=0;const o=ys(this.props.scrollRef).offsetTop,a=xs(this.props.scrollRef);for(const l of Object.keys(i)){const u=i[l];if(t.pageY-o+a.scrollTop>u)n=parseInt(l,10)-s.index;else break}return this.props.order.index+n<0?0-this.props.order.index:n}else return 0}resizeTimeDelta(t,i){const s=this.itemTimeEnd-this.itemTimeStart,n=this.dragTimeSnap((t.pageX-this.state.resizeStart)*this.getTimeRatio());return s+(i==="left"?-n:n)<(this.props.dragSnap||1e3)?i==="left"?s-(this.props.dragSnap||1e3):(this.props.dragSnap||1e3)-s:n}mountInteract(){const t=this.props.useResizeHandle?".rct-item-handler-resize-left":!0,i=this.props.useResizeHandle?".rct-item-handler-resize-right":!0;is(this.item).resizable({edges:{left:this.canResizeLeft()&&t,right:this.canResizeRight()&&i,top:!1,bottom:!1},enabled:this.props.selected&&(this.canResizeLeft()||this.canResizeRight())}).draggable({enabled:this.props.selected&&this.canMove()}).styleCursor(!1).on("dragstart",s=>{if(this.props.selected){this.dragInProgress=!0,this.fireInteractEvent(!0);const n=this.timeFor(s);this.setState({dragging:!0,dragStart:{x:s.pageX,y:s.pageY,offset:this.itemTimeStart-n},preDragPosition:{x:s.target.offsetLeft,y:s.target.offsetTop},dragTime:this.itemTimeStart,dragGroupDelta:0})}else return!1}).on("dragmove",s=>{this.state.dragging&&this.setState(n=>{if(!this.dragInProgress)return{...n};let o=this.dragTime(s);const a=this.dragGroupDelta(s);return this.props.moveResizeValidator&&(o=this.props.moveResizeValidator("move",this.props.item,o)),this.props.onDrag&&this.props.onDrag(this.itemId,o,this.props.order.index+a),{dragTime:o,dragGroupDelta:a}})}).on("dragend",s=>{if(this.state.dragging){if(this.props.onDrop){this.dragInProgress=!1,this.fireInteractEvent(!1);let n=this.dragTime(s);this.props.moveResizeValidator&&(n=this.props.moveResizeValidator("move",this.props.item,n)),this.props.onDrop(this.itemId,n,this.props.order.index+this.dragGroupDelta(s))}this.setState({dragging:!1,dragStart:null,preDragPosition:null,dragTime:null,dragGroupDelta:null})}}).on("resizestart",s=>{if(this.props.selected)this.fireInteractEvent(!0),this.setState({resizing:!0,resizeEdge:null,resizeStart:s.pageX,resizeTime:0});else return!1}).on("resizemove",s=>{if(this.state.resizing){let n=this.state.resizeEdge;n||(n=s.deltaRect.left!==0?"left":"right",this.setState({resizeEdge:n}));let o=this.resizeTimeSnap(this.timeFor(s));this.props.moveResizeValidator&&(o=this.props.moveResizeValidator("resize",this.props.item,o,n)),this.props.onResizing&&this.props.onResizing(this.itemId,o,n),this.setState({resizeTime:o})}}).on("resizeend",s=>{if(this.state.resizing){this.fireInteractEvent(!1);const{resizeEdge:n}=this.state;let o=this.resizeTimeSnap(this.timeFor(s));this.props.moveResizeValidator&&(o=this.props.moveResizeValidator("resize",this.props.item,o,n)),this.props.onResized&&this.props.onResized(this.itemId,o,n,this.resizeTimeDelta(s,n)),this.setState({resizing:!1,resizeStart:null,resizeEdge:null,resizeTime:null})}}).on("tap",s=>{this.actualClick(s,s.pointerType==="mouse"?"click":"touch")}),this.setState({interactMounted:!0})}canResizeLeft(t=this.props){var s;return!t.canResizeLeft||t.minResizeWidth===void 0?!1:parseInt((s=t.dimensions.width)==null?void 0:s.toString(),10)>=t.minResizeWidth}canResizeRight(t=this.props){var s;return!t.canResizeRight||t.minResizeWidth===void 0?!1:parseInt((s=t.dimensions.width)==null?void 0:s.toString(),10)>=t.minResizeWidth}canMove(t=this.props){return!!t.canMove}componentDidUpdate(t){this.cacheDataFromProps(this.props);let{interactMounted:i}=this.state;const s=t.selected&&this.canMove(t),n=t.selected&&this.canResizeLeft(t),o=t.selected&&this.canResizeRight(t),a=this.props.selected&&this.canMove(this.props),l=this.props.selected&&this.canResizeLeft(this.props),u=this.props.selected&&this.canResizeRight(this.props);if(this.item){if(this.props.selected&&!i&&(this.mountInteract(),i=!0),i&&(n!==l||o!==u)){const h=this.props.useResizeHandle?this.dragLeft:!0,f=this.props.useResizeHandle?this.dragRight:!0;is(this.item).resizable({enabled:l||u,edges:{top:!1,bottom:!1,left:l&&h,right:u&&f}})}i&&s!==a&&is(this.item).draggable({enabled:a})}else i=!1;i!==this.state.interactMounted&&this.setState({interactMounted:i})}actualClick(t,i){this.props.canSelect&&this.props.onSelect&&this.props.onSelect(this.itemId,i,t)}getItemStyle(t){const i=this.props.dimensions,s={position:"absolute",boxSizing:"border-box",left:`${i.left}px`,top:`${i.top}px`,width:`${i.width}px`,height:`${i.height}px`,lineHeight:`${i.height}px`};return Object.assign({},$f,this.props.selected?Pf:{},this.props.selected&&this.canMove(this.props)?Of:{},this.props.selected&&this.canResizeLeft(this.props)?Af:{},this.props.selected&&this.canResizeLeft(this.props)&&this.state.dragging?Ff:{},this.props.selected&&this.canResizeRight(this.props)?Wf:{},this.props.selected&&this.canResizeRight(this.props)&&this.state.dragging?Bf:{},t.style,s)}render(){var s,n;if(typeof this.props.order>"u"||this.props.order===null)return null;const t=this.context,i={dimensions:this.props.dimensions,useResizeHandle:!!this.props.useResizeHandle,title:this.itemTitle,canMove:this.canMove(this.props),canResizeLeft:this.canResizeLeft(this.props),canResizeRight:this.canResizeRight(this.props),selected:this.props.selected,dragging:this.state.dragging,dragStart:this.state.dragStart,dragTime:this.state.dragTime,dragGroupDelta:this.state.dragGroupDelta,resizing:this.state.resizing,resizeEdge:this.state.resizeEdge,resizeStart:this.state.resizeStart,resizeTime:this.state.resizeTime};return(n=(s=this.props)==null?void 0:s.itemRenderer)==null?void 0:n.call(s,{item:this.props.item,timelineContext:t,itemContext:i,getItemProps:this.getItemProps,getResizeProps:this.getResizeProps})}};Ri.defaultProps={selected:!1,itemRenderer:Rf},Ri.contextType=Yi;let vs=Ri;function Yf(e,t){const i=be(e,"canResize")!==void 0?be(e,"canResize"):t;return i==="left"||i==="both"}function Uf(e,t){const i=be(e,"canResize")!==void 0?be(e,"canResize"):t;return i==="right"||i==="both"||i===!0}class Aa extends c.Component{shouldComponentUpdate(t){return!(rs(t.groups,this.props.groups)&&rs(t.items,this.props.items)&&rs(t.dimensionItems,this.props.dimensionItems)&&t.keys===this.props.keys&&t.canvasTimeStart===this.props.canvasTimeStart&&t.canvasTimeEnd===this.props.canvasTimeEnd&&t.canvasWidth===this.props.canvasWidth&&t.selectedItem===this.props.selectedItem&&t.selected===this.props.selected&&t.dragSnap===this.props.dragSnap&&t.minResizeWidth===this.props.minResizeWidth&&t.canChangeGroup===this.props.canChangeGroup&&t.canMove===this.props.canMove&&t.canResize===this.props.canResize&&t.canSelect===this.props.canSelect)}isSelected(t,i){if(this.props.selected){const s=be(t,i);return this.props.selected.includes(s)}else return this.props.selectedItem===be(t,i)}getVisibleItems(t,i){const{keys:s,items:n}=this.props;return Er(n,t,i,s)}render(){const{canvasTimeStart:t,canvasTimeEnd:i,dimensionItems:s,keys:n,groups:o}=this.props,{itemIdKey:a,itemGroupKey:l}=n,u=Dr(o,n),h=this.getVisibleItems(t,i),f=Mf(s,"id");return r.jsx("div",{className:"rct-items",children:h.filter(d=>f[be(d,a)]).map(d=>r.jsx(vs,{itemProps:d.itemProps,item:d,keys:this.props.keys,order:u[be(d,l)],dimensions:f[be(d,a)].dimensions,selected:this.isSelected(d,a),canChangeGroup:be(d,"canChangeGroup")!==void 0?be(d,"canChangeGroup"):this.props.canChangeGroup,canMove:be(d,"canMove")!==void 0?be(d,"canMove"):this.props.canMove,canResizeLeft:Yf(d,this.props.canResize),canResizeRight:Uf(d,this.props.canResize),canSelect:be(d,"canSelect")!==void 0?be(d,"canSelect"):this.props.canSelect,useResizeHandle:this.props.useResizeHandle,groupTops:this.props.groupTops,canvasTimeStart:this.props.canvasTimeStart,canvasTimeEnd:this.props.canvasTimeEnd,canvasWidth:this.props.canvasWidth,dragSnap:this.props.dragSnap,minResizeWidth:this.props.minResizeWidth,onResizing:this.props.itemResizing,onResized:this.props.itemResized,moveResizeValidator:this.props.moveResizeValidator,onDrag:this.props.itemDrag,onDrop:this.props.itemDrop,onItemDoubleClick:this.props.onItemDoubleClick,onContextMenu:this.props.onItemContextMenu,onSelect:this.props.itemSelect,itemRenderer:this.props.itemRenderer,scrollRef:this.props.scrollRef},be(d,a)))})}}function Gf(e,t,i,s,n){return n?n({group:e,isRightSidebar:t}):be(e,t?s:i)}function ws({groups:e,width:t,height:i,groupHeights:s,keys:n,groupRenderer:o,isRightSidebar:a=!1}){const{groupIdKey:l,groupTitleKey:u,groupRightTitleKey:h}=n,f={width:`${t}px`,height:`${i}px`},d={width:`${t}px`},p=e.map((m,g)=>{const b={height:`${s[g]}px`,lineHeight:`${s[g]}px`};return r.jsx("div",{className:"rct-sidebar-row rct-sidebar-row-"+(g%2===0?"even":"odd"),style:b,children:Gf(m,a,u,h,o)},String(be(m,l)))});return r.jsx("div",{className:"rct-sidebar"+(a?" rct-sidebar-right":""),style:f,children:r.jsx("div",{style:d,children:p})})}ws.displayName="Sidebar";function Kf({canvasTimeStart:e,canvasTimeEnd:t,minUnit:i,timeSteps:s,height:n,verticalLineClassNamesForTime:o,getLeftOffsetFromDate:a}){const l=[];return Nr(e,t,i,s,(u,h)=>{const d=u.get(i==="day"?"date":i)===(i==="day"?1:0);let p=[];o&&(p=o(u.unix()*1e3,h.unix()*1e3-1));const m="rct-vl"+(d?" rct-vl-first":"")+(i==="day"||i==="hour"||i==="minute"?` rct-day-${u.day()} `:" ")+p.join(" "),g=a(u.valueOf()),b=a(h.valueOf());l.push(r.jsx("div",{className:m,style:{pointerEvents:"none",top:"0px",left:`${g}px`,width:`${b-g}px`,height:`${n}px`}},`line-${u.valueOf()}`))}),r.jsx("div",{className:"rct-vertical-lines",children:l})}function Fa(e){return r.jsx(Ui,{children:({getLeftOffsetFromDate:t})=>r.jsx(Kf,{getLeftOffsetFromDate:t,...e})})}Fa.displayName="ColumnsWrapper";function Wa({children:e,onClick:t,clickTolerance:i}){const s=c.useRef(null),n=c.useRef(!1),o=c.useCallback(h=>{s.current=h.clientX},[]),a=c.useCallback(h=>{i!==void 0&&s.current!==null&&Math.abs(s.current-h.clientX)>i&&(n.current=!0)},[i]),l=c.useCallback(h=>{n.current||t(h),n.current=!1,s.current=null},[t]),u=c.Children.only(e);return c.cloneElement(u,{onMouseDown:o,onMouseUp:a,onClick:l})}Wa.displayName="PreventClickOnDrag";function Mr({onContextMenu:e,onDoubleClick:t,isEvenRow:i,style:s,onClick:n,clickTolerance:o,horizontalLineClassNamesForGroup:a,group:l}){let u=[];return a&&(u=a(l)),r.jsx(Wa,{clickTolerance:o,onClick:n,children:r.jsx("div",{onContextMenu:e,onDoubleClick:t,className:(i?"rct-hl-even ":"rct-hl-odd ")+(u?u.join(" "):""),style:s})})}Mr.displayName="GroupRow";function Ba({canvasWidth:e,lineCount:t,groupHeights:i,onRowClick:s,onRowDoubleClick:n,clickTolerance:o,groups:a,horizontalLineClassNamesForGroup:l,onRowContextClick:u}){const h=[];for(let f=0;f<t;f+=1)h.push(r.jsx(Mr,{clickTolerance:o,onContextMenu:d=>u(d,f),onClick:d=>s(d,f),onDoubleClick:d=>n(d,f),isEvenRow:f%2===0,group:a[f],horizontalLineClassNamesForGroup:l,style:{width:`${e}px`,height:`${i[f]}px`}},`horizontal-line-${f}`));return r.jsx("div",{className:"rct-horizontal-lines",children:h})}Ba.displayName="GroupRows";function Va({width:e,height:t,scrollRef:i,onZoom:s,onWheelZoom:n,onScroll:o,children:a}){const l=c.useRef(null),[u,h]=c.useState(!1),f=c.useRef(null),d=c.useRef(null),p=c.useRef(null),m=c.useRef(null),g=c.useRef(!1),b=c.useCallback(()=>{l.current&&o(l.current.scrollLeft)},[o]),v=c.useRef(n),y=c.useRef(o);v.current=n,y.current=o;const w=c.useCallback(R=>{const z=R.currentTarget;if(R.ctrlKey||R.metaKey||R.altKey){R.preventDefault();const $=fn(z),F=R.clientX-$.x,W=R.ctrlKey?10:R.metaKey?3:1;v.current(W,F,R.deltaY)}else R.shiftKey&&(R.preventDefault(),l.current&&y.current(l.current.scrollLeft+(R.deltaY||R.deltaX)))},[]),x=c.useCallback(R=>{g.current=R.detail.itemInteraction},[]),N=c.useCallback(R=>{l.current&&(l.current.removeEventListener("wheel",w),l.current.removeEventListener("itemInteraction",x)),l.current=R,R&&i(R),R&&(R.addEventListener("wheel",w,{passive:!1}),R.addEventListener("itemInteraction",x))},[i,w,x]);c.useEffect(()=>()=>{const R=l.current;R&&(R.removeEventListener("wheel",w),R.removeEventListener("itemInteraction",x))},[w]);const k=c.useCallback(R=>{R.button===0&&(f.current=R.pageX,h(!0))},[]),C=c.useCallback(R=>{u&&!g.current&&f.current!==null&&(l.current&&o(l.current.scrollLeft+f.current-R.pageX),f.current=R.pageX)},[u,o]),T=c.useCallback(()=>{f.current=null,h(!1)},[]),S=c.useCallback(()=>{f.current=null,h(!1)},[]),D=c.useCallback(R=>{if(R.touches.length===2)R.preventDefault(),d.current=Math.abs(R.touches[0].screenX-R.touches[1].screenX),p.current=null,m.current=null;else if(R.touches.length===1){R.preventDefault();const z=R.touches[0].clientX,$=R.touches[0].clientY;d.current=null,p.current={x:z,y:$,screenY:window.pageYOffset},m.current={x:z,y:$,screenY:window.pageYOffset}}},[]),I=c.useCallback(R=>{if(g.current){R.preventDefault();return}if(d.current!==null&&R.touches.length===2){R.preventDefault();const z=Math.abs(R.touches[0].screenX-R.touches[1].screenX),$=fn(R.currentTarget),F=(R.touches[0].screenX+R.touches[1].screenX)/2-$.x;z!==0&&d.current!==0&&(s(d.current/z,F/e),d.current=z)}else if(m.current!==null&&p.current!==null&&R.touches.length===1){R.preventDefault();const z=R.touches[0].clientX,$=R.touches[0].clientY,F=z-m.current.x,W=z-p.current.x,L=$-p.current.y;m.current={x:z,y:$,screenY:window.pageYOffset};const P=Math.abs(W)*3>Math.abs(L),B=Math.abs(L)*3>Math.abs(W);F!==0&&P&&l.current&&o(l.current.scrollLeft-F),B&&window.scrollTo(window.pageXOffset,p.current.screenY-L)}},[s,o,e]),j=c.useCallback(()=>{d.current=null,m.current=null,p.current=null},[]),E={width:`${e}px`,height:`${t+20}px`,cursor:u?"move":"default",position:"relative"};return r.jsx("div",{ref:N,"data-testid":"scroll-element",className:"rct-scroll",style:E,onMouseDown:k,onMouseMove:C,onMouseUp:T,onMouseLeave:S,onTouchStart:D,onTouchMove:I,onTouchEnd:j,onScroll:b,children:a})}Va.displayName="ScrollElement";const Xf={subscribeToMouseOver:()=>(console.warn('"subscribeToMouseOver" default func is being used'),()=>{})},{Consumer:Qf,Provider:Zf}=c.createContext(Xf),Jf=Zf,em=Qf,tm={markers:[],subscribeMarker:()=>(console.warn("default subscribe marker used"),{unsubscribe:ns,getMarker:ns}),updateMarker:()=>(console.warn("default subscribe marker used"),ns)},Ha=c.createContext(tm);let mn=0;const im=()=>(mn+=1,mn+1);function _a(e){const[t,i]=c.useState([]),s=c.useCallback(a=>{const l={...a,id:im()};return i(u=>[...u,l]),{unsubscribe:()=>{i(u=>u.filter(h=>h.id!==l.id))},getMarker:()=>l}},[]),n=c.useCallback(a=>{i(l=>{const u=l.findIndex(h=>h.id===a.id);return u<0?l:[...l.slice(0,u),a,...l.slice(u+1)]})},[]),o={markers:t,subscribeMarker:s,updateMarker:n};return r.jsx(Ha.Provider,{value:o,children:e.children})}_a.displayName="TimelineMarkersProvider";const Gi=Ha.Consumer;var Bt=(e=>(e.Today="Today",e.Custom="Custom",e.Cursor="Cursor",e))(Bt||{});const sm={position:"absolute",top:0,bottom:0,width:"2px",backgroundColor:"black",pointerEvents:"none"},Rr=e=>({...sm,left:e}),zr=e=>function({styles:i}){return r.jsx("div",{style:i,"data-testid":e})},rm=zr("default-today-line"),Or=class Or extends c.Component{constructor(){super(...arguments),this.state={date:Date.now()}}componentDidMount(){this.intervalToken=this.createIntervalUpdater(this.props.interval)}componentDidUpdate(t){t.interval!==this.props.interval&&(clearInterval(this.intervalToken),this.intervalToken=this.createIntervalUpdater(this.props.interval))}createIntervalUpdater(t){return setInterval(()=>{this.setState({date:Date.now()})},t)}componentWillUnmount(){clearInterval(this.intervalToken)}render(){const{date:t}=this.state,i=this.props.getLeftOffsetFromDate(t),s=Rr(i);return this.props.renderer({styles:s,date:t})}};Or.defaultProps={renderer:rm};let js=Or;const nm=zr("default-customer-marker-id"),Ar=class Ar extends c.Component{render(){const{date:t}=this.props,i=this.props.getLeftOffsetFromDate(t),s=Rr(i);return this.props.renderer({styles:s,date:t})}};Ar.defaultProps={renderer:nm};let Ss=Ar;const om=zr("default-cursor-marker"),Fr=class Fr extends c.Component{constructor(t){super(t),this.handleCanvasMouseOver=({leftOffset:i,date:s,isCursorOverCanvas:n})=>{this.setState({leftOffset:i,date:s,isShowingCursor:n})},this.state={leftOffset:0,date:0,isShowingCursor:!1}}componentDidMount(){this.unsubscribe=this.props.subscribeToCanvasMouseOver(this.handleCanvasMouseOver)}componentWillUnmount(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=void 0)}render(){const{isShowingCursor:t,leftOffset:i,date:s}=this.state;if(!t)return null;const n=Rr(i);return this.props.renderer?this.props.renderer({styles:n,date:s}):null}};Fr.defaultProps={renderer:om};let Cs=Fr;const qa=e=>r.jsx(em,{children:({subscribeToMouseOver:t})=>r.jsx(Cs,{subscribeToCanvasMouseOver:t,...e})});qa.displayName="CursorMarkerWrapper";const am=()=>r.jsx(Ui,{children:({getLeftOffsetFromDate:e,getTimelineState:t})=>r.jsx(Gi,{children:({markers:i})=>{const s=t();return i.map(n=>{switch(n.type){case Bt.Today:return new Date().valueOf()>=s.canvasTimeStart&&new Date().valueOf()<=s.canvasTimeEnd?r.jsx(js,{getLeftOffsetFromDate:e,renderer:n.renderer,interval:n.interval},n.id):null;case Bt.Custom:return n.date>=s.canvasTimeStart&&n.date<=s.canvasTimeEnd?r.jsx(Ss,{renderer:n.renderer,date:n.date,getLeftOffsetFromDate:e},n.id):null;case Bt.Cursor:return r.jsx(qa,{renderer:n.renderer,getLeftOffsetFromDate:e},n.id);default:return null}})}})}),lm={position:"absolute",left:0,right:0,top:0,bottom:0};function um({getDateFromLeftOffsetPosition:e,children:t}){const i=c.useRef(null),s=c.useRef(null),n=c.useCallback(u=>{if(s.current!==null&&i.current){const{pageX:h}=u,{left:f=0}=i.current.getBoundingClientRect(),d=h-f,p=e(d);s.current({leftOffset:d,date:p,isCursorOverCanvas:!0})}},[e]),o=c.useCallback(()=>{s.current!==null&&s.current({leftOffset:0,date:0,isCursorOverCanvas:!1})},[]),a=c.useCallback(u=>(s.current=u,()=>{s.current=null}),[]),l=c.useMemo(()=>({subscribeToMouseOver:a}),[a]);return r.jsx(Jf,{value:l,children:r.jsxs("div",{style:lm,onMouseMove:n,onMouseLeave:o,ref:i,children:[r.jsx(am,{}),t]})})}function Ya(e){return r.jsx(Ui,{children:({getDateFromLeftOffsetPosition:t})=>r.jsx(um,{getDateFromLeftOffsetPosition:t,...e})})}Ya.displayName="MarkerCanvas";function cm(e){e._resizeEventListener=()=>e.resize(),window.addEventListener("resize",e._resizeEventListener)}function dm(e){window.removeEventListener("resize",e._resizeEventListener)}const hn={addListener:cm,removeListener:dm},fm={groupIdKey:"id",groupTitleKey:"title",groupRightTitleKey:"rightTitle",groupLabelKey:"title",itemIdKey:"id",itemTitleKey:"title",itemDivTitleKey:"title",itemGroupKey:"group",itemTimeStartKey:"start_time",itemTimeEndKey:"end_time"},mm={second:1,minute:1,hour:1,day:1,month:1,year:1},hm={year:{long:"YYYY",mediumLong:"YYYY",medium:"YYYY",short:"YY"},month:{long:"MMMM YYYY",mediumLong:"MMMM",medium:"MMMM",short:"MM/YY"},week:{long:"w",mediumLong:"w",medium:"w",short:"w"},day:{long:"dddd, LL",mediumLong:"dddd, LL",medium:"dd D",short:"D"},hour:{long:"dddd, LL, HH:00",mediumLong:"L, HH:00",medium:"HH:00",short:"HH"},minute:{long:"HH:mm",mediumLong:"HH:mm",medium:"HH:mm",short:"mm"},second:{long:"mm:ss",mediumLong:"mm:ss",medium:"mm:ss",short:"ss"}},pm={registerScroll:()=>{console.warn("default registerScroll header used")},rightSidebarWidth:0,leftSidebarWidth:150,timeSteps:{}},Ua=c.createContext(pm);function Ga({children:e,rightSidebarWidth:t=0,leftSidebarWidth:i,timeSteps:s,registerScroll:n}){const o={rightSidebarWidth:t,leftSidebarWidth:i,timeSteps:s,registerScroll:n};return r.jsx(Ua.Provider,{value:o,children:e})}Ga.displayName="TimelineHeadersProvider";const gm=Ua,Lr=()=>c.useContext(gm),bm="left",Ka="right";function Xa({children:e,rightSidebarWidth:t=0,leftSidebarWidth:i,variant:s,headerData:n}){const o=c.useCallback((a={})=>{const{style:l={}}=a;return{style:{...l,width:s===Ka?t:i}}},[s,t,i]);return r.jsx(e,{getRootProps:o,data:n})}const xm=({getRootProps:e})=>r.jsx("div",{"data-testid":"sidebarHeader",...e()});function Ei(e){const{children:t,variant:i=bm,headerData:s}=e,{leftSidebarWidth:n,rightSidebarWidth:o}=Lr();return r.jsx(Xa,{leftSidebarWidth:n,rightSidebarWidth:o,variant:i,headerData:s,children:t||xm})}Ei.secretKey="SidebarHeader";Xa.displayName="SidebarHeader";const ym="SidebarHeader";function vm(e){return(e==null?void 0:e.type)===void 0?!1:e.type.secretKey===ym}function Qa({registerScroll:e,leftSidebarWidth:t,rightSidebarWidth:i,style:s,children:n,className:o,calendarHeaderStyle:a,calendarHeaderClassName:l}){const u=()=>({...s,display:"flex",width:"100%"}),h=()=>({...a,overflow:"hidden",width:`calc(100% - ${t+i}px)`}),f=Array.isArray(n)?n.filter(Boolean):n?[n]:[];let d=null,p=null;const m=[];return c.Children.map(f,g=>{var b;vm(g)?((b=g==null?void 0:g.props)==null?void 0:b.variant)===Ka?d=g:p=g:m.push(g)}),p||(p=r.jsx(Ei,{})),!d&&i&&(d=r.jsx(Ei,{variant:"right"})),r.jsxs("div",{"data-testid":"headerRootDiv",style:u(),className:qr("rct-header-root",o),children:[p,r.jsx("div",{ref:e,style:h(),className:qr("rct-calendar-header",l),"data-testid":"headerContainer",children:m}),d]})}Qa.secretKey="TimelineHeaders";function $r({children:e,style:t,className:i,calendarHeaderStyle:s,calendarHeaderClassName:n}){const{leftSidebarWidth:o,rightSidebarWidth:a,registerScroll:l}=Lr();return r.jsx(Qa,{leftSidebarWidth:o,rightSidebarWidth:a,registerScroll:l,style:t,className:i,calendarHeaderStyle:s,calendarHeaderClassName:n,children:e})}const Za="TimelineHeaders";$r.secretKey=Za;function wm({canvasTimeStart:e,canvasTimeEnd:t,unit:i,timeSteps:s,getLeftOffsetFromDate:n}){const o=[];return Nr(e,t,i,s,(a,l)=>{const u=n(a.valueOf()),h=n(l.valueOf());o.push({startTime:a,endTime:l,labelWidth:h-u,left:u})}),o}function jm({children:e,unit:t,timeSteps:i,visibleTimeStart:s,visibleTimeEnd:n,canvasTimeStart:o,canvasTimeEnd:a,canvasWidth:l,showPeriod:u,headerData:h,getLeftOffsetFromDate:f,height:d=30,timelineWidth:p}){const m=c.useMemo(()=>wm({canvasTimeStart:o,canvasTimeEnd:a,unit:t,timeSteps:i,getLeftOffsetFromDate:f}),[o,a,t,i,f]),g=c.useCallback((y={})=>({style:{...y.style??{},position:"relative",width:l,height:d}}),[l,d]),b=c.useCallback(y=>{const{interval:w,style:x}=y??{};if(!w)throw new Error("you should provide interval to the prop getter");const{startTime:N,labelWidth:k,left:C}=w;return{style:{...x,left:C,width:k,position:"absolute"},key:`label-${N.valueOf()}`}},[]),v=c.useMemo(()=>({headerContext:{unit:t,intervals:m},getRootProps:g,getIntervalProps:b,showPeriod:u,data:h}),[t,m,g,b,u,h]);return r.jsx(e,{...v})}function Pr({children:e,unit:t,headerData:i,height:s}){const{getTimelineState:n,showPeriod:o,getLeftOffsetFromDate:a}=qf(),l=n(),{timeSteps:u}=Lr();return r.jsx(jm,{children:e,timeSteps:u,showPeriod:o,unit:t??l.timelineUnit,visibleTimeStart:l.visibleTimeStart,visibleTimeEnd:l.visibleTimeEnd,canvasTimeStart:l.canvasTimeStart,canvasTimeEnd:l.canvasTimeEnd,canvasWidth:l.canvasWidth,timelineWidth:l.timelineWidth,headerData:i,getLeftOffsetFromDate:a,height:s??30})}Pr.displayName="CustomHeaderWrapper";class Sm extends c.PureComponent{constructor(){super(...arguments),this.onIntervalClick=()=>{const{primaryHeader:t,interval:i,unit:s,showPeriod:n}=this.props;if(t){const o=Tr(s),a=i.startTime.clone().startOf(o),l=i.startTime.clone().endOf(o);n(a,l)}else n(i.startTime,i.endTime)},this.getIntervalProps=(t={})=>({...this.props.getIntervalProps({interval:this.props.interval,...t}),onClick:Wt(this.onIntervalClick,t.onClick)})}render(){const{intervalText:t,interval:i,intervalRenderer:s,headerData:n}=this.props,o=s;if(o)return r.jsx(o,{getIntervalProps:this.getIntervalProps,intervalContext:{interval:i,intervalText:t},data:n});const{key:a,...l}=this.getIntervalProps();return c.createElement("div",{"data-testid":"dateHeaderInterval",...l,key:a,className:`rct-dateHeader ${this.props.primaryHeader?"rct-dateHeader-primary":""}`},r.jsx("span",{children:t}))}}function Cm({headerContext:{intervals:e,unit:t},getRootProps:i,getIntervalProps:s,showPeriod:n,data:{style:o,intervalRenderer:a,className:l,getLabelFormat:u,unitProp:h,headerData:f}}){return r.jsx("div",{"data-testid":"dateHeader",className:l,...i({style:o}),children:e.map(d=>{const p=u([d.startTime,d.endTime],t,d.labelWidth);return r.jsx(Sm,{unit:t,interval:d,showPeriod:n,intervalText:p,primaryHeader:h==="primaryHeader",getIntervalProps:s,intervalRenderer:a,headerData:f},`label-${d.startTime.valueOf()}`)})})}const km=pn(e=>({height:30,...e})),Nm=pn((e,t,i,s,n,o)=>({intervalRenderer:e,style:t,className:i??"",getLabelFormat:s,unitProp:n,headerData:o}));function Tm({unit:e,timelineUnit:t,labelFormat:i,style:s,className:n,intervalRenderer:o,headerData:a,height:l}){const u=e==="primaryHeader"?Tr(t):e??t,h=c.useMemo(()=>(d,p,m)=>{if(typeof i=="string")return d[0].format(i);if(typeof i=="function")return i(d,p,m);throw new Error("labelFormat should be function or string")},[i]),f=c.useMemo(()=>Nm(o,km(s),n,h,e,a),[o,s,n,h,e,a]);return r.jsx(Pr,{children:Cm,unit:u,height:l,headerData:f})}function Ii({labelFormat:e,unit:t,style:i,className:s,intervalRenderer:n,headerData:o,height:a}){return r.jsx(Ui,{children:({getTimelineState:l})=>{const u=l();return r.jsx(Tm,{timelineUnit:u.timelineUnit,unit:t,labelFormat:e??Dm,style:i,className:s,intervalRenderer:n,headerData:o,height:a})}})}function Dm([e],t,i,s=hm){let n;return i>=150?n=s[t].long:i>=100?n=s[t].mediumLong:i>=50?n=s[t].medium:n=s[t].short,e.format(n)}Ii.displayName="DateHeader";jt.extend(gl);const zi=class zi extends c.Component{constructor(t){super(t),this.getTimelineContext=()=>{const{width:m,visibleTimeStart:g,visibleTimeEnd:b,canvasTimeStart:v,canvasTimeEnd:y}=this.state,w=b-g,x=Et(m,this.props.buffer),N=xi(w,m,this.props.timeSteps);return{canvasWidth:x,timelineUnit:N,timelineWidth:m,visibleTimeStart:g,visibleTimeEnd:b,canvasTimeStart:v,canvasTimeEnd:y}},this.getTimelineUnit=()=>{const{width:m,visibleTimeStart:g,visibleTimeEnd:b}=this.state,{timeSteps:v}=this.props,y=b-g;return xi(y,m,v)},this.handleContainerWheel=m=>{if(!(m.ctrlKey||m.metaKey||m.altKey))return;m.preventDefault(),m.stopPropagation();const g=this.container.current;if(!g)return;const b=g.getBoundingClientRect(),v=this.props.sidebarWidth??0,y=b.left+v,w=Math.max(0,Math.min(this.state.width,m.clientX-y)),x=m.ctrlKey?10:m.metaKey?3:1;this.handleWheelZoom(x,w,m.deltaY)},this.scrollComponent=null,this.scrollHeaderRef=null,this.resize=(m=this.props)=>{var C;const{width:g}=((C=this.container.current)==null?void 0:C.getBoundingClientRect())??{width:0},b=g-m.sidebarWidth-m.rightSidebarWidth,v=Et(b,m.buffer),{dimensionItems:y,height:w,groupHeights:x,groupTops:N}=Yt(m.items,m.groups,v,this.state.canvasTimeStart,this.state.canvasTimeEnd,m.keys,m.lineHeight,m.itemHeightRatio,m.stackItems,this.state.draggingItem,this.state.resizingItem,this.state.dragTime,this.state.resizingEdge,this.state.resizeTime,this.state.newGroupOrder);this.setState({width:b,dimensionItems:y,height:w,groupHeights:x,groupTops:N});const k=b*((m.buffer-1)/2);this.scrollComponent&&(this.scrollComponent.scrollLeft=k),this.scrollHeaderRef&&(this.scrollHeaderRef.scrollLeft=k)},this.onScroll=m=>{var w,x;const g=this.state.width,b=this.state.canvasTimeStart,v=this.state.visibleTimeEnd-this.state.visibleTimeStart,y=b+v*m/g;(this.state.visibleTimeStart!==y||this.state.visibleTimeEnd!==y+v)&&((x=(w=this.props).onTimeChange)==null||x.call(w,y,y+v,this.updateScrollCanvas,this.getTimelineUnit()))},this.updateScrollCanvas=(m,g,b=!1,v=this.props.items,y=this.props.groups)=>{this.setState(bs(m,g,b,v,y,this.props,this.state))},this.handleWheelZoom=(m,g,b)=>{const v=this.state.width||1,y=Math.max(0,Math.min(1,g/v));this.changeZoom(1+m*b/500,y)},this.changeZoom=(m,g=.5)=>{const{minZoom:b,maxZoom:v}=this.props,y=this.state.visibleTimeEnd-this.state.visibleTimeStart,w=Math.min(Math.max(Math.round(y*m),b),v),x=Math.round(this.state.visibleTimeStart+(y-w)*g),N=x+w,k=this.props.onTimeChange;k&&k(x,N,this.updateScrollCanvas,this.getTimelineUnit()),!this.props.visibleTimeStart&&!this.props.visibleTimeEnd&&this.updateScrollCanvas(x,N)},this.showPeriod=(m,g)=>{var w,x;const b=m.valueOf(),y=g.valueOf()-b;y<this.props.minZoom||(x=(w=this.props).onTimeChange)==null||x.call(w,b,b+y,this.updateScrollCanvas,this.getTimelineUnit())},this.selectItem=(m,g,b)=>{if(this.isItemSelected(m)||this.props.itemTouchSendsClick&&g==="touch"){if(m&&this.props.onItemClick){const v=this.timeFromItemEvent(b);this.props.onItemClick(m,b,v)}}else if(this.setState({selectedItem:m}),m&&this.props.onItemSelect){const v=this.timeFromItemEvent(b);this.props.onItemSelect(m,b,v)}else m===null&&this.props.onItemDeselect&&this.props.onItemDeselect(b)},this.doubleClickItem=(m,g)=>{if(this.props.onItemDoubleClick){const b=this.timeFromItemEvent(g);this.props.onItemDoubleClick(m,g,b)}},this.contextMenuClickItem=(m,g)=>{if(this.props.onItemContextMenu){const b=this.timeFromItemEvent(g);this.props.onItemContextMenu(m,g,b)}},this.getTimeFromRowClickEvent=m=>{const{dragSnap:g,buffer:b}=this.props,{width:v,canvasTimeStart:y,canvasTimeEnd:w}=this.state,{offsetX:x}=m.nativeEvent;let N=kr(y,w,Et(v,b),x);return N=Math.floor(N/g)*g,N},this.timeFromItemEvent=m=>{const{width:g,visibleTimeStart:b,visibleTimeEnd:v}=this.state,y=this.props.dragSnap,w=this.scrollComponent,{left:x}=w.getBoundingClientRect(),k=(m.clientX-x)/g,C=v-b,T=k*C;let S=Math.round(b+T);return S=Math.floor(S/y)*y,S},this.dragItem=(m,g,b)=>{const v=this.props.groups[b],y=this.props.keys;this.setState({draggingItem:m,dragTime:g,newGroupOrder:b,dragGroupTitle:v?be(v,y.groupLabelKey):""}),this.updatingItem({eventType:"move",itemId:m,time:g,newGroupOrder:b})},this.dropItem=(m,g,b)=>{this.setState({draggingItem:null,dragTime:null,dragGroupTitle:null}),this.props.onItemMove&&this.props.onItemMove(m,g,b)},this.resizingItem=(m,g,b)=>{this.setState({resizingItem:m,resizingEdge:b,resizeTime:g}),this.updatingItem({eventType:"resize",itemId:m,time:g,edge:b||void 0})},this.resizedItem=(m,g,b,v)=>{this.setState({resizingItem:null,resizingEdge:null,resizeTime:null}),this.props.onItemResize&&v!==0&&this.props.onItemResize(m,g,b)},this.updatingItem=({eventType:m,itemId:g,time:b,edge:v,newGroupOrder:y})=>{this.props.onItemDrag&&(m==="move"?this.props.onItemDrag({eventType:m,itemId:g,time:b,newGroupOrder:y}):this.props.onItemDrag({eventType:m,itemId:g,time:b,edge:v}))},this.handleRowClick=(m,g)=>{if(this.hasSelectedItem()&&this.selectItem(null,"click",m),this.props.onCanvasClick==null)return;const b=this.getTimeFromRowClickEvent(m),v=be(this.props.groups[g],this.props.keys.groupIdKey);this.props.onCanvasClick(v,b,m)},this.handleRowDoubleClick=(m,g)=>{if(this.props.onCanvasDoubleClick==null)return;const b=this.getTimeFromRowClickEvent(m),v=be(this.props.groups[g],this.props.keys.groupIdKey);this.props.onCanvasDoubleClick(v,b,m)},this.handleScrollContextMenu=(m,g)=>{if(this.props.onCanvasContextMenu==null)return;const b=this.getTimeFromRowClickEvent(m),v=be(this.props.groups[g],this.props.keys.groupIdKey);this.props.onCanvasContextMenu&&(m.preventDefault(),this.props.onCanvasContextMenu(v,b,m))},this.handleHeaderRef=m=>{this.scrollHeaderRef=m,this.props.headerRef&&this.props.headerRef(m)},this.isTimelineHeader=m=>m.type===void 0?!1:m.type.secretKey===Za,this.renderHeaders=()=>{if(this.props.children){let m;if(c.Children.map(this.props.children,g=>{this.isTimelineHeader(g)&&(m=g)}),m)return m}return r.jsxs($r,{children:[r.jsx(Ii,{unit:"primaryHeader"}),r.jsx(Ii,{})]})},this.getScrollElementRef=m=>{this.props.scrollRef&&this.props.scrollRef(m),this.scrollComponent=m},this.container=c.createRef(),this.getSelected=this.getSelected.bind(this),this.hasSelectedItem=this.hasSelectedItem.bind(this),this.isItemSelected=this.isItemSelected.bind(this);const i=m=>typeof m=="number"?m:m.getTime();let s=null,n=null;if(this.props.defaultTimeStart!=null&&this.props.defaultTimeEnd!=null)s=i(this.props.defaultTimeStart),n=i(this.props.defaultTimeEnd);else if(this.props.visibleTimeStart!=null&&this.props.visibleTimeEnd!=null)s=this.props.visibleTimeStart,n=this.props.visibleTimeEnd;else throw new Error('You must provide either "defaultTimeStart" and "defaultTimeEnd" or "visibleTimeStart" and "visibleTimeEnd" to initialize the Timeline');const[o,a]=Ir(s,n,t.buffer),l={width:1e3,visibleTimeStart:s,visibleTimeEnd:n,canvasTimeStart:o,canvasTimeEnd:a,selectedItem:null,dragTime:null,dragGroupTitle:null,resizeTime:null,resizingItem:null,resizingEdge:null,newGroupOrder:0},u=Et(l.width,t.buffer),{dimensionItems:h,height:f,groupHeights:d,groupTops:p}=Yt(t.items,t.groups,u,l.canvasTimeStart,l.canvasTimeEnd,t.keys,t.lineHeight,t.itemHeightRatio,t.stackItems,l.draggingItem,l.resizingItem,l.dragTime,l.resizingEdge,l.resizeTime,l.newGroupOrder);l.dimensionItems=h,l.height=f,l.groupHeights=d,l.groupTops=p,this.state=l}componentDidMount(){this.resize(this.props),this.props.resizeDetector&&this.props.resizeDetector.addListener&&this.props.resizeDetector.addListener(this),hn.addListener(this);const t=this.container.current;t&&t.addEventListener("wheel",this.handleContainerWheel,{passive:!1,capture:!0})}componentWillUnmount(){this.props.resizeDetector&&this.props.resizeDetector.addListener&&this.props.resizeDetector.removeListener(this),hn.removeListener(this);const t=this.container.current;t&&t.removeEventListener("wheel",this.handleContainerWheel,{capture:!0})}static getDerivedStateFromProps(t,i){const{visibleTimeStart:s,visibleTimeEnd:n,items:o,groups:a}=t,l={items:o,groups:a},u=o!==i.items||a!==i.groups;if(s&&n)Object.assign(l,bs(s,n,u,o,a,t,i));else if(u){const h=Et(i.width,t.buffer);Object.assign(l,Yt(o,a,h,i.canvasTimeStart,i.canvasTimeEnd,t.keys,t.lineHeight,t.itemHeightRatio,t.stackItems,i.draggingItem,i.resizingItem,i.dragTime,i.resizingEdge,i.resizeTime,i.newGroupOrder))}return l}componentDidUpdate(t,i){const s=this.state.visibleTimeEnd-this.state.visibleTimeStart,n=i.visibleTimeEnd-i.visibleTimeStart;this.props.onZoom&&s!==n&&this.props.onZoom(this.getTimelineContext(),this.getTimelineUnit()),this.props.onBoundsChange&&this.state.canvasTimeStart!==i.canvasTimeStart&&this.props.onBoundsChange(this.state.canvasTimeStart,this.state.canvasTimeStart+s*3);const o=Math.round(this.state.width*(this.state.visibleTimeStart-this.state.canvasTimeStart)/s);Math.round(i.width*(i.visibleTimeStart-i.canvasTimeStart)/n)!==o&&(this.scrollComponent.scrollLeft=o,this.scrollHeaderRef.scrollLeft=o)}columns(t,i,s,n,o,a){var l;return r.jsx(Fa,{canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,lineCount:((l=this.props.groups)==null?void 0:l.length)||0,minUnit:n,timeSteps:o,height:a,verticalLineClassNamesForTime:this.props.verticalLineClassNamesForTime})}rows(t,i,s){var n;return r.jsx(Ba,{groups:s,canvasWidth:t,lineCount:((n=this.props.groups)==null?void 0:n.length)||0,groupHeights:i,clickTolerance:this.props.clickTolerance,onRowClick:this.handleRowClick,onRowDoubleClick:this.handleRowDoubleClick,horizontalLineClassNamesForGroup:this.props.horizontalLineClassNamesForGroup,onRowContextClick:this.handleScrollContextMenu})}items({canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,dimensionItems:n,groupTops:o}){return r.jsx(Aa,{canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,dimensionItems:n,groupTops:o,items:this.props.items,groups:this.props.groups,keys:this.props.keys,selectedItem:this.state.selectedItem||void 0,dragSnap:this.props.dragSnap,minResizeWidth:this.props.minResizeWidth,canChangeGroup:this.props.canChangeGroup,canMove:this.props.canMove,canResize:this.props.canResize,useResizeHandle:this.props.useResizeHandle,canSelect:this.props.canSelect,moveResizeValidator:this.props.moveResizeValidator,itemSelect:this.selectItem,itemDrag:this.dragItem,itemDrop:this.dropItem,onItemDoubleClick:this.doubleClickItem,onItemContextMenu:this.props.onItemContextMenu?this.contextMenuClickItem:void 0,itemResizing:this.resizingItem,itemResized:this.resizedItem,itemRenderer:this.props.itemRenderer,selected:this.props.selected,scrollRef:this.scrollComponent})}sidebar(t,i){const{sidebarWidth:s}=this.props;return s&&r.jsx(ws,{groups:this.props.groups,groupRenderer:this.props.groupRenderer,keys:this.props.keys,width:s,groupHeights:i,height:t})}rightSidebar(t,i){const{rightSidebarWidth:s}=this.props;return s&&r.jsx(ws,{groups:this.props.groups,keys:this.props.keys,groupRenderer:this.props.groupRenderer,isRightSidebar:!0,width:s,groupHeights:i,height:t})}childrenWithProps(t,i,s,n,o,a,l,u,h,f,d){if(!this.props.children)return null;const p=Array.isArray(this.props.children)?this.props.children.filter(g=>g):[this.props.children],m={canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,visibleTimeStart:u,visibleTimeEnd:h,dimensionItems:n,items:this.props.items,groups:this.props.groups,keys:this.props.keys,groupHeights:o,groupTops:a,selected:this.getSelected(),height:l,minUnit:f,timeSteps:d};return c.Children.map(p,g=>this.isTimelineHeader(g)?null:c.cloneElement(g,m))}getSelected(){return this.state.selectedItem&&!this.props.selected?[this.state.selectedItem]:this.props.selected||[]}hasSelectedItem(){return Array.isArray(this.props.selected)?this.props.selected.length>0:!!this.state.selectedItem}isItemSelected(t){return this.getSelected().some(s=>s===t)}render(){const{items:t,groups:i,sidebarWidth:s,rightSidebarWidth:n,timeSteps:o,traditionalZoom:a,buffer:l}=this.props,{draggingItem:u,resizingItem:h,width:f,visibleTimeStart:d,visibleTimeEnd:p,canvasTimeStart:m,canvasTimeEnd:g}=this.state;let{dimensionItems:b,height:v,groupHeights:y,groupTops:w}=this.state;const x=p-d,N=Et(f,l),k=xi(x,f,o);if(!!u||!!h){const S=Yt(t,i,N,this.state.canvasTimeStart,this.state.canvasTimeEnd,this.props.keys,this.props.lineHeight,this.props.itemHeightRatio,this.props.stackItems,this.state.draggingItem,this.state.resizingItem,this.state.dragTime,this.state.resizingEdge,this.state.resizeTime,this.state.newGroupOrder);b=S.dimensionItems,v=S.height,y=S.groupHeights,w=S.groupTops}const T={height:`${v}px`};return r.jsx(Oa,{visibleTimeStart:d,visibleTimeEnd:p,canvasTimeStart:m,canvasTimeEnd:g,canvasWidth:N,showPeriod:this.showPeriod,timelineUnit:k,timelineWidth:this.state.width,children:r.jsx(_a,{children:r.jsx(Ga,{registerScroll:this.handleHeaderRef,timeSteps:o,leftSidebarWidth:this.props.sidebarWidth,rightSidebarWidth:this.props.rightSidebarWidth,children:r.jsxs("div",{style:this.props.style,ref:this.container,className:`react-calendar-timeline ${this.props.className}`,children:[this.renderHeaders(),r.jsxs("div",{style:T,className:"rct-outer",children:[s>0?this.sidebar(v,y):null,r.jsx(Va,{scrollRef:this.getScrollElementRef,width:f,height:v,onZoom:this.changeZoom,onWheelZoom:this.handleWheelZoom,traditionalZoom:!!a,onScroll:this.onScroll,children:r.jsxs(Ya,{children:[this.columns(m,g,N,k,o,v),this.rows(N,y,i),this.items({canvasTimeStart:m,canvasTimeEnd:g,canvasWidth:N,dimensionItems:b,groupTops:w}),this.childrenWithProps(m,g,N,b,y,w,v,d,p,k,o)]})}),n>0?this.rightSidebar(v,y):null]})]})})})})}};zi.setDayjsLocale=jt.locale,zi.defaultProps={sidebarWidth:150,rightSidebarWidth:0,dragSnap:1e3*60*15,minResizeWidth:20,lineHeight:30,itemHeightRatio:.65,buffer:3,minZoom:3600*1e3,maxZoom:5*365.24*86400*1e3,clickTolerance:3,canChangeGroup:!0,canMove:!0,canResize:"right",useResizeHandle:!1,canSelect:!0,stackItems:!1,traditionalZoom:!1,horizontalLineClassNamesForGroup:null,onItemMove:null,onItemResize:null,onItemClick:null,onItemSelect:null,onItemDeselect:null,onItemDrag:null,onCanvasClick:null,onItemDoubleClick:null,onItemContextMenu:null,onZoom:null,verticalLineClassNamesForTime:null,moveResizeValidator:null,dayBackground:null,itemsSorted:!1,showCursorLine:!1,defaultTimeStart:null,defaultTimeEnd:null,itemTouchSendsClick:!1,style:{},className:"",keys:fm,timeSteps:mm,headerRef:()=>{},scrollRef:()=>{},visibleTimeStart:null,visibleTimeEnd:null,onTimeChange:function(t,i,s){s(t,i)},onBoundsChange:null,children:null,selected:null};let Mi=zi;const Em=e=>e.children||null,Im=1e3*10;function Mm({interval:e=Im,updateMarker:t,subscribeMarker:i,children:s}){const n=c.useRef(null),o=c.useRef(null);return c.useEffect(()=>{const{unsubscribe:a,getMarker:l}=i({type:Bt.Today,renderer:s,interval:e});return n.current=a,o.current=l,()=>{n.current&&(n.current(),n.current=null)}},[i,e,s]),c.useEffect(()=>{if(o.current){const a=o.current();t({...a,interval:e})}},[e,t]),null}function Ja(e){return r.jsx(Gi,{children:({subscribeMarker:t,updateMarker:i})=>r.jsx(Mm,{subscribeMarker:t,updateMarker:i,...e})})}Ja.displayName="TodayMarker";function Rm({date:e,children:t,updateMarker:i,subscribeMarker:s}){const n=c.useRef(null);return c.useEffect(()=>{const{unsubscribe:o,getMarker:a}=s({type:Bt.Custom,renderer:t,date:e});return n.current=a,()=>{o&&o()}},[s,e,t]),c.useEffect(()=>{if(n.current){const o=n.current();i({...o,date:e})}},[e,i]),null}function el(e){return r.jsx(Gi,{children:({subscribeMarker:t,updateMarker:i})=>r.jsx(Rm,{subscribeMarker:t,updateMarker:i,...e})})}el.displayName="CustomMarker";function zm({subscribeMarker:e,children:t}){return c.useEffect(()=>{const{unsubscribe:i}=e({type:Bt.Cursor,renderer:t});return()=>{i&&i()}},[e,t]),null}function tl(e){return r.jsx(Gi,{children:({subscribeMarker:t})=>r.jsx(zm,{subscribeMarker:t,...e})})}tl.displayName="CursorMarker";exports.Accordion=mu;exports.ActionsCell=Xs;exports.Alert=Es;exports.AlertDialog=qu;exports.Avatar=yt;exports.AvatarsCell=Mo;exports.Badge=Kt;exports.Badges=Fn;exports.BarProgress=Jt;exports.Body=Ti;exports.Button=Ce;exports.ButtonCell=Lo;exports.ButtonGroup=Gu;exports.Calendar=Zn;exports.CalendarContent=Qn;exports.CalendarGrid=As;exports.CalendarHeader=Gn;exports.Caption=mr;exports.Card=ft;exports.CardsWithAside=Bn;exports.CellRenderer=Bo;exports.Checkbox=Rt;exports.CheckboxCell=Po;exports.Code=hr;exports.ColorInput=qs;exports.ColorPalette=ho;exports.ColorPicker=Ys;exports.ColorPickerContent=po;exports.ColorSwatch=co;exports.CursorMarker=tl;exports.CustomHeader=Pr;exports.CustomMarker=el;exports.CustomText=pr;exports.DateCell=Js;exports.DateHeader=Ii;exports.DateInput=Kn;exports.DatePicker=Gt;exports.DatePickerPortal=Jn;exports.Day=_n;exports.Drawer=to;exports.Dropdown=lt;exports.DropdownCell=zo;exports.Emoji=xc;exports.EmojiPicker=no;exports.EmptyTableState=tr;exports.FilterCard=To;exports.FilterForm=yd;exports.FilterList=vd;exports.Filters=Sc;exports.GroupRow=Mr;exports.HeaderCell=Vo;exports.HelperText=Ts;exports.Icon=pe;exports.IconCell=Oo;exports.InlineTooltip=$i;exports.InnerButton=me;exports.Input=Ue;exports.LabelProgress=ji;exports.Lightbox=uo;exports.LinearGraphic=ka;exports.LinearGraphicSegment=jr;exports.LinkCell=Io;exports.List=tc;exports.ListAlphabetic=dc;exports.ListBase=ro;exports.ListDefault=ic;exports.ListEmpty=so;exports.ListFilters=fc;exports.ListFiltersCheckbox=mc;exports.ListHeader=_s;exports.ListItem=Bs;exports.ListItemCheckbox=Hi;exports.ListItemDefault=xt;exports.ListItemRadio=Wi;exports.ListItemToggle=Vi;exports.ListItemUser=ai;exports.ListItemWithCheckbox=Vs;exports.ListSearchInput=Hs;exports.ListSeparator=bt;exports.ListUserList=lc;exports.ListUserProfile=cc;exports.ListUsersSelect=nc;exports.ListWithCheckbox=uc;exports.ListWithDataInHover=Sr;exports.ListWithRadio=rc;exports.ListWithSeparator=sc;exports.ListWithToggle=ac;exports.Logo=Nc;exports.MessageItem=vr;exports.MessagePositions=_i;exports.Messaging=bf;exports.Modal=ls;exports.ModalProvider=$n;exports.Month=qn;exports.MonthGrid=Fs;exports.MultipleCalendarsHeader=Xn;exports.NavigationButton=ei;exports.NotificationItem=wr;exports.NotificationPositions=qi;exports.Notifier=gf;exports.PROGRESS_COLOR_MAP=En;exports.Pagination=go;exports.PickerColor=Ys;exports.Popup=Ht;exports.PrimaryCell=Gs;exports.ProgressBar=Ds;exports.ProgressBarCell=$o;exports.RadioButton=vo;exports.RadioButtonGroup=Jc;exports.Rating=ed;exports.ReactCalendarTimeline=Mi;exports.RowItems=Aa;exports.SelectionCheckbox=ti;exports.Separator=qe;exports.Sidebar=Sf;exports.SidebarDivider=di;exports.SidebarHeader=Ei;exports.SidebarMenuGroup=wa;exports.SidebarMenuItem=va;exports.SidebarSectionTitle=jf;exports.SidebarUserProfile=ja;exports.SidebarWorkspaceCard=Sa;exports.Skeleton=td;exports.SkeletonCell=Qs;exports.SkeletonRow=_o;exports.Spinner=Qc;exports.StarsCell=Ao;exports.StatusCell=Ks;exports.StepConnector=ko;exports.StepIcon=So;exports.StepItem=No;exports.StepLabel=Co;exports.Stepper=sd;exports.StoryBox=li;exports.StrapiApiError=pa;exports.Switch=Si;exports.TOGGLE_DESIGN_TOKENS=oc;exports.TabContent=Vn;exports.Table=Rd;exports.TableBody=qo;exports.TableCell=Us;exports.TableContent=Yo;exports.TableHeader=Ho;exports.TableQueryProvider=of;exports.TableRow=er;exports.TableSelectionBar=Uo;exports.TableToolbar=Eo;exports.Tag=Vt;exports.TagsCell=Zs;exports.Text=gr;exports.TextFieldCell=Ro;exports.TextListIndicator=Cr;exports.TextListWithData=Na;exports.Textarea=oo;exports.Timeline=Mi;exports.TimelineHeaders=$r;exports.TimelineMarkers=Em;exports.Title=oi;exports.TitleText=fr;exports.Toaster=pf;exports.TodayMarker=Ja;exports.Toggle=Bi;exports.Toolbar=wf;exports.Tooltip=Mt;exports.Visual=St;exports.WeekDay=Un;exports.Wysiwyg=Cc;exports.Year=Yn;exports.YearGrid=Ws;exports.advancedFilterToTeamFilter=fa;exports.buildStrapiQueryString=lr;exports.calendarUtils=Lf;exports.cn=M;exports.configureMessage=uf;exports.configureStrapiClient=_d;exports.convertAdvancedFiltersToStrapi=ma;exports.convertFilterToStrapi=ds;exports.convertFiltersToStrapiQuery=ar;exports.createNormalizer=Ad;exports.createTableQueryClient=af;exports.fetchTeams=ki;exports.fetchTeamsRaw=xa;exports.fetchTeamsWithAdvancedFilters=Ni;exports.filterRows=ua;exports.findItemIndex=xl;exports.formatDate=Wo;exports.getLockedColumns=kd;exports.getNextSortConfig=Ko;exports.getStrapiConfig=ga;exports.getVisibleColumns=Cd;exports.isAllSelected=sr;exports.isSomeSelected=Zo;exports.isStrapiConfigured=qd;exports.labelVariants=xo;exports.messageService=We;exports.moveItem=bl;exports.normalizeStrapiList=rr;exports.normalizeStrаpiItem=da;exports.normalizeTeamsResponse=or;exports.notification=yf;exports.notificationService=Xe;exports.notify=vf;exports.parseDate=Fo;exports.radioButtonVariants=bo;exports.reorder=Li;exports.reorderColumns=ea;exports.resetColumns=Sd;exports.resizeColumn=ra;exports.searchRows=ca;exports.selectAllRows=wd;exports.selectRange=jd;exports.setColumnVisibility=ia;exports.sortRows=Go;exports.strapiClient=ui;exports.strapiDelete=Ud;exports.strapiGet=ur;exports.strapiPost=Yd;exports.strapiPut=ba;exports.teamsQueryKeys=Be;exports.throttle=yl;exports.throttleWithTrailing=vl;exports.toast=xf;exports.toggleColumnLock=sa;exports.toggleColumnVisibility=ta;exports.toggleRowSelection=Qo;exports.toggleSortDirection=ir;exports.transformTeamAttributes=nr;exports.updateTeam=dr;exports.updateTeamName=ya;exports.useAnimationState=Is;exports.useBadges=An;exports.useBodyScrollLock=Ms;exports.useCalendar=ni;exports.useClickOutside=Mn;exports.useColumnsWithQueryState=sf;exports.useDateInput=Xu;exports.useDatePicker=Hn;exports.useDateRange=Os;exports.useDebouncedCallback=nf;exports.useDebouncedValue=rf;exports.useDragAndDrop=Rs;exports.useEscapeKey=Ai;exports.useFocusTrap=zs;exports.useGetElementOnClick=Tu;exports.useInitialFocus=zn;exports.useInvalidateTeams=Zd;exports.useLightbox=lo;exports.useMessage=br;exports.useMessageService=df;exports.useMessageStyles=xr;exports.useModalContext=ri;exports.useNotification=yr;exports.useNotificationService=hf;exports.usePortal=Ls;exports.useRadioButton=yo;exports.useRadioButtonGroup=wo;exports.useResizeAndScroll=Du;exports.useStepper=jo;exports.useTableColumns=na;exports.useTableData=Od;exports.useTableEdit=la;exports.useTableExpand=oa;exports.useTableFilter=zd;exports.useTableFocus=aa;exports.useTablePagination=Ld;exports.useTableQueryState=tf;exports.useTableSelection=Jo;exports.useTableSort=Xo;exports.useTeams=Kd;exports.useTeamsTable=Qd;exports.useTeamsWithFilters=Xd;exports.useToggle=io;exports.useUpdateTeam=Jd;exports.useUpdateTeamName=ef;exports.useWysiwyg=ao;
37
+ `]}),!B&&r.jsxs("table",{className:L,style:W>0?{minWidth:`${W}px`}:void 0,children:[(t.length>0||i)&&r.jsx(Ho,{columns:e,sortConfig:o,filters:a,showSelection:n==null?void 0:n.enabled,showExpand:l,allSelected:w,someSelected:x,resizable:u,stickyHeader:m,stickyCheckbox:g,stickyActions:b,onSelectAll:N,onSort:C,onFilter:T,onLock:S,onResize:D,onResizeDoubleClick:I,onResizeHover:j}),r.jsx(qo,{rows:t,columns:e,loading:i,empty:s,selectedIds:y,expandable:l,showSelection:n==null?void 0:n.enabled,showExpand:l,stickyCheckbox:g,stickyActions:b,onRowClick:E,onRowExpand:R,onRowSelect:k,onCellFocus:z,isCellFocused:$,onCellChange:F})]}),B&&s&&r.jsx(tr,{...s})]})},Uo=({selectedCount:e,selectedIds:t,actions:i=[],onClearSelection:s,selectionText:n="Seleccionados",className:o})=>{if(e===0)return null;const a=M("ui-inline-flex ui-items-center ui-gap-16","ui-bg-fill-brand","ui-px-16 ui-py-8","ui-rounded-surface-modal","ui-shadow-03",o);return r.jsxs("div",{className:a,children:[r.jsxs("span",{className:"ui-whitespace-nowrap ui-text-body-sm-regular ui-font-body-sm-regular ui-text-on-color",children:["(",e,") ",n]}),i.length>0&&r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx("div",{className:"ui-flex ui-items-center ui-gap-16",children:i.map((l,u)=>r.jsx(Ce,{theme:l.label?"solid":"icon",color:l.color||"secondary",size:"xs",icon:l.label?void 0:l.icon,leftSlot:l.label&&l.icon?l.icon:void 0,disabled:l.disabled,onClick:()=>l.onClick(t),children:l.label},`action-${u}-${l.label||l.icon}`))}),s&&r.jsxs(r.Fragment,{children:[r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx(me,{theme:"solid",color:"secondary",size:"xs",pill:"pill",iconProps:{icon:V.faXmark},onClick:s})]})]})},Go=(e,t,i,s)=>{if(!i)return e;const n=s.find(a=>a.id===t);return n?[...e].sort((a,l)=>{const u=n.accessor?typeof n.accessor=="function"?n.accessor(a):a[n.accessor]:null,h=n.accessor?typeof n.accessor=="function"?n.accessor(l):l[n.accessor]:null;if(u==null)return 1;if(h==null)return-1;let f;return typeof u=="string"&&typeof h=="string"?f=u.localeCompare(h):typeof u=="number"&&typeof h=="number"?f=u-h:u instanceof Date&&h instanceof Date?f=u.getTime()-h.getTime():f=String(u).localeCompare(String(h)),i==="asc"?f:-f}):e},ir=e=>e===null?"asc":e==="asc"?"desc":null,Ko=(e,t)=>{if((e==null?void 0:e.columnId)===t){const i=ir(e.direction);return i?{columnId:t,direction:i}:void 0}return{columnId:t,direction:"asc"}},Xo=e=>{const[t,i]=c.useState(e),s=c.useCallback(a=>{i(l=>{if((l==null?void 0:l.columnId)===a){const u=ir(l.direction);return u?{columnId:a,direction:u}:void 0}return{columnId:a,direction:"asc"}})},[]),n=c.useCallback(()=>{i(void 0)},[]),o=c.useCallback((a,l)=>{i(l?{columnId:a,direction:l}:void 0)},[]);return{sortConfig:t,handleSort:s,clearSort:n,setSort:o}},Qo=(e,t)=>e.includes(t)?e.filter(s=>s!==t):[...e,t],wd=(e,t)=>{const i=e.map(n=>n.id);return i.every(n=>t.includes(n))?[]:i},jd=(e,t,i,s)=>{const n=t.indexOf(i),o=t.indexOf(s);if(n===-1||o===-1)return e;const a=Math.min(n,o),l=Math.max(n,o),u=t.slice(a,l+1),h=new Set([...e,...u]);return Array.from(h)},sr=(e,t)=>e.length===0?!1:e.every(i=>t.includes(i.id)),Zo=(e,t)=>t.length===0?!1:e.some(i=>t.includes(i.id))&&!sr(e,t),Jo=(e,t=!0)=>{const[i,s]=c.useState([]),n=c.useMemo(()=>sr(e,i),[e,i]),o=c.useMemo(()=>Zo(e,i),[e,i]),a=c.useCallback(d=>{if(!t){s([d.id]);return}s(p=>Qo(p,d.id))},[t]),l=c.useCallback(d=>{s(d?e.map(p=>p.id):[])},[e]),u=c.useCallback(()=>{s([])},[]),h=c.useCallback(d=>{s(d)},[]),f=c.useCallback(d=>i.includes(d),[i]);return{selectedIds:i,selectedCount:i.length,allSelected:n,someSelected:o,handleRowSelect:a,handleSelectAll:l,clearSelection:u,selectRows:h,isSelected:f}},ea=(e,t,i)=>{const s=[...e],[n]=s.splice(t,1);return s.splice(i,0,n),s},ta=(e,t)=>e.map(i=>i.id===t?{...i,visible:!i.visible}:i),ia=(e,t,i)=>e.map(s=>s.id===t?{...s,visible:i}:s),sa=(e,t)=>e.map(i=>i.id===t?{...i,locked:!i.locked}:i),ra=(e,t,i)=>e.map(s=>s.id===t?{...s,width:i}:s),Sd=e=>e.map(t=>({...t,visible:!0,locked:!1,width:t.width})),Cd=e=>e.filter(t=>t.visible!==!1),kd=e=>e.filter(t=>t.locked===!0),na=e=>{const[t,i]=c.useState(e);c.useEffect(()=>{i(f=>{const d=new Map(e.map(y=>[y.id,y])),p=new Set(f.map(y=>y.id)),m=new Set(e.map(y=>y.id)),g=p.size===m.size&&[...p].every(y=>m.has(y)),b=(y,w)=>{if(!w){const k=typeof y.width=="number"?y.width:void 0;return{...y,originalWidth:k??y.originalWidth}}const x=w.width??y.width,N=w.originalWidth??(typeof y.width=="number"?y.width:y.originalWidth);return{...y,width:x,originalWidth:N,visible:w.visible!==void 0?w.visible:y.visible,locked:w.locked??y.locked}};let v;return g?v=f.map(y=>{const w=d.get(y.id);return w?b(w,y):y}):v=e.map(y=>b(y,f.find(w=>w.id===y.id))),v.length===f.length&&v.every((y,w)=>{const x=f[w];return y.id===x.id&&y.width===x.width&&y.originalWidth===x.originalWidth&&y.visible===x.visible&&y.locked===x.locked&&y.columnOptions===x.columnOptions&&y.columnOptionsLoading===x.columnOptionsLoading&&y.editable===x.editable&&y.header===x.header})?f:v})},[e]);const s=c.useCallback(f=>{i(d=>ta(d,f))},[]),n=c.useCallback((f,d)=>{i(p=>ia(p,f,d))},[]),o=c.useCallback(f=>{i(d=>sa(d,f))},[]),a=c.useCallback((f,d)=>{i(p=>ra(p,f,d))},[]),l=c.useCallback((f,d)=>{i(p=>ea(p,f,d))},[]),u=c.useCallback(f=>{i(d=>{const p=new Map(d.map(v=>[v.id,v])),m=f.map(v=>p.get(v)).filter(v=>v!==void 0),g=new Set(f),b=d.filter(v=>!g.has(v.id));return[...m,...b]})},[]),h=c.useCallback(()=>{i(e)},[e]);return{columns:t,handleToggleVisibility:s,handleSetVisibility:n,handleToggleLock:o,handleResize:a,handleReorder:l,setColumnsOrder:u,resetColumns:h}},oa=(e=[])=>{const[t,i]=c.useState(new Set(e)),s=c.useCallback(d=>{i(p=>{const m=new Set(p);return m.has(d.id)?m.delete(d.id):m.add(d.id),m})},[]),n=c.useCallback(d=>{i(p=>new Set(p).add(d))},[]),o=c.useCallback(d=>{i(p=>{const m=new Set(p);return m.delete(d),m})},[]),a=c.useCallback(d=>{i(p=>{const m=new Set(p);return m.has(d)?m.delete(d):m.add(d),m})},[]),l=c.useCallback(d=>{const p=d.filter(m=>m.isParent).map(m=>m.id);i(new Set(p))},[]),u=c.useCallback(()=>{i(new Set)},[]),h=c.useCallback(d=>t.has(d),[t]),f=c.useCallback(d=>d.map(p=>({...p,expanded:t.has(p.id)})),[t]);return{expandedIds:Array.from(t),expandedCount:t.size,handleRowExpand:s,expandRow:n,collapseRow:o,toggleRow:a,expandAll:l,collapseAll:u,isExpanded:h,applyExpandedState:f}},aa=()=>{const[e,t]=c.useState(null),i=c.useCallback((o,a)=>{t({rowId:o,columnId:a})},[]),s=c.useCallback(()=>{t(null)},[]),n=c.useCallback((o,a)=>e?e.rowId===o&&e.columnId===a:!1,[e]);return{focusedCell:e,handleCellFocus:i,handleCellBlur:s,isCellFocused:n}},pi=e=>({columnId:e.columnId,operator:e.operator,value:e.value,value2:e.value2}),Nd=({initialFilters:e=[],onFiltersChange:t}={})=>{const[i,s]=c.useState(()=>e.map((h,f)=>({id:`filter-${f}`,columnId:h.columnId,columnLabel:h.columnId,operator:h.operator,value:h.value,value2:h.value2}))),n=c.useCallback(h=>{const f={...h,id:`filter-${Date.now()}-${Math.random()}`};s(d=>{const p=[...d,f];return t==null||t(p.map(pi)),p})},[t]),o=c.useCallback((h,f)=>{s(d=>{const p=d.map(m=>m.id===h?{...m,...f}:m);return t==null||t(p.map(pi)),p})},[t]),a=c.useCallback(h=>{s(f=>{const d=f.filter(p=>p.id!==h);return t==null||t(d.map(pi)),d})},[t]),l=c.useCallback(()=>{s([]),t==null||t([])},[t]),u=c.useCallback(h=>{s(h),t==null||t(h.map(pi))},[t]);return{filters:i,addFilter:n,updateFilter:o,removeFilter:a,clearFilters:l,setAllFilters:u}},la=(e={})=>{const{externalEditingRowIds:t,onEditingRowIdsChange:i,onEditModeChange:s}=e,[n,o]=c.useState(new Set);c.useEffect(()=>{t!==void 0&&o(new Set(t))},[t]);const a=c.useMemo(()=>t!==void 0?new Set(t):n,[t,n]),l=c.useCallback(g=>{i&&i(Array.from(g))},[i]),u=c.useCallback(g=>{const b=new Set(a),v=b.has(g);v?b.delete(g):b.add(g),s&&s(g,!v),t!==void 0?l(b):o(b)},[a,t,l,s]),h=c.useCallback(g=>{const b=new Set(a),v=b.has(g);b.add(g),!v&&s&&s(g,!0),t!==void 0?l(b):o(b)},[a,t,l,s]),f=c.useCallback(g=>{const b=new Set(a),v=b.has(g);b.delete(g),v&&s&&s(g,!1),t!==void 0?l(b):o(b)},[a,t,l,s]),d=c.useCallback(()=>{t!==void 0?l(new Set):o(new Set)},[t,l]),p=c.useCallback(g=>a.has(g),[a]),m=c.useCallback(g=>g.map(b=>({...b,_isEditing:a.has(b.id)})),[a]);return{editingRowIds:a,toggleRowEdit:u,startEdit:h,stopEdit:f,stopAllEdits:d,isRowEditing:p,applyEditState:m}},on=1,Td="table-config-",Dd=({configKey:e,persistConfig:t=!1,initialColumns:i,initialSort:s,initialFilters:n=[],onConfigChange:o})=>{const a=e?`${Td}${e}`:null,l=c.useCallback(()=>({version:on,updatedAt:new Date().toISOString(),columns:i.map((T,S)=>({id:T.id,order:S,visible:T.visible!==!1,locked:T.locked||!1,width:T.width})),sort:s,filters:n}),[i,s,n]),u=c.useCallback(()=>{if(!a||!t)return null;try{const T=localStorage.getItem(a);if(!T)return null;const S=JSON.parse(T);return S.version!==on?(process.env.NODE_ENV!=="production"&&console.warn(`[useTableConfig] Config version mismatch, resetting config for ${e}`),null):S}catch(T){return process.env.NODE_ENV!=="production"&&console.error(`[useTableConfig] Error loading config for ${e}:`,T),null}},[a,t,e]),h=c.useCallback(T=>{if(!(!a||!t))try{localStorage.setItem(a,JSON.stringify(T))}catch(S){process.env.NODE_ENV!=="production"&&console.error(`[useTableConfig] Error saving config for ${e}:`,S)}},[a,t,e]),[f,d]=c.useState(()=>u()||l());c.useEffect(()=>{u()||d(l())},[i.length]);const p=c.useCallback((T,S)=>{d(D=>{const I={...D,...T,updatedAt:new Date().toISOString()};return h(I),o==null||o(I,S),I})},[h,o]),m=c.useCallback(()=>{const T=new Map(i.map(I=>[I.id,I])),S=[],D=new Set(f.columns.map(I=>I.id));return f.columns.sort((I,j)=>I.order-j.order).forEach(I=>{const j=T.get(I.id);j&&S.push({...j,visible:I.visible,locked:I.locked,width:I.width??j.width})}),i.forEach(I=>{D.has(I.id)||S.push(I)}),S},[i,f.columns]),g=c.useCallback(T=>{const S=T.map((D,I)=>{const j=f.columns.find(E=>E.id===D.id);return{id:D.id,order:I,visible:(j==null?void 0:j.visible)??D.visible!==!1,locked:D.locked||(j==null?void 0:j.locked)||!1,width:D.width??(j==null?void 0:j.width)}});p({columns:S},"column-reorder")},[f.columns,p]),b=c.useCallback((T,S)=>{const D=f.columns.map(I=>I.id===T?{...I,visible:S}:I);p({columns:D},"column-visibility")},[f.columns,p]),v=c.useCallback(T=>{const S=new Map(T.map(I=>[I.columnId,I.visible])),D=f.columns.map(I=>S.has(I.id)?{...I,visible:S.get(I.id)}:I);p({columns:D},"column-visibility")},[f.columns,p]),y=c.useCallback((T,S)=>{const D=f.columns.map(I=>I.id===T?{...I,locked:S}:I);if(S){const I=D.filter(R=>R.locked),j=D.filter(R=>!R.locked),E=[...I,...j].map((R,z)=>({...R,order:z}));p({columns:E},"column-lock")}else p({columns:D},"column-lock")},[f.columns,p]),w=c.useCallback((T,S)=>{const D=f.columns.map(I=>I.id===T?{...I,width:S}:I);p({columns:D},"column-resize")},[f.columns,p]),x=c.useCallback(T=>{p({sort:T},"sort")},[p]),N=c.useCallback(T=>{p({filters:T},"filter")},[p]),k=c.useCallback(()=>{const T=l();d(T),a&&t&&localStorage.removeItem(a),o==null||o(T,"reset")},[l,a,t,o]);return{columns:c.useMemo(()=>m(),[m]),sort:f.sort,filters:f.filters||[],updateColumnOrder:g,updateColumnVisibility:b,updateMultipleColumnVisibility:v,updateColumnLock:y,updateColumnWidth:w,updateSort:x,updateFilters:N,resetConfig:k,currentConfig:f}},Fe=e=>!e||typeof e!="string"?!1:/^\d{4}-\d{2}-\d{2}/.test(e),Ut=e=>{const[t,i,s]=e.split("T")[0].split("-").map(Number);return new Date(t,i-1,s)},Dt=(e,t,i)=>{const s=Ut(String(e)),n=Ut(String(t)),o=s.getTime(),a=n.getTime();switch(i){case"equals":return o===a;case"notEquals":return o!==a;case"gt":case"afterDate":return o>a;case"gte":return o>=a;case"lt":case"beforeDate":return o<a;case"lte":return o<=a;default:return!1}},Ed=e=>{const t=new Date,i=new Date(t.getFullYear(),t.getMonth(),t.getDate());switch(e){case"thisMonth":{const s=new Date(t.getFullYear(),t.getMonth(),1),n=new Date(t.getFullYear(),t.getMonth()+1,0);return{start:s,end:n}}case"lastMonth":{const s=new Date(t.getFullYear(),t.getMonth()-1,1),n=new Date(t.getFullYear(),t.getMonth(),0);return{start:s,end:n}}case"thisYear":{const s=new Date(t.getFullYear(),0,1),n=new Date(t.getFullYear(),11,31);return{start:s,end:n}}case"lastYear":{const s=new Date(t.getFullYear()-1,0,1),n=new Date(t.getFullYear()-1,11,31);return{start:s,end:n}}default:return{start:i,end:i}}},Id=(e,t)=>{if(!Fe(e))return!1;const i=Ut(String(e)),{start:s,end:n}=Ed(t),o=i.getTime(),a=s.getTime(),l=n.getTime();return o>=a&&o<=l},an=(e,t,i,s)=>{const n=e==null||e==="";switch(t){case"isEmpty":return n;case"isNotEmpty":return!n;case"equals":return n&&(i==null||i==="")?!0:Fe(e)&&Fe(i)?Dt(e,i,"equals"):String(e).toLowerCase()===String(i).toLowerCase();case"notEquals":return n&&(i==null||i==="")?!1:Fe(e)&&Fe(i)?Dt(e,i,"notEquals"):String(e).toLowerCase()!==String(i).toLowerCase();case"in":if(n||!Array.isArray(i))return!1;if(Array.isArray(e))return e.some(u=>{const h=typeof u=="object"&&u!==null?u.name||u.label||u.value||u.id||JSON.stringify(u):String(u);return i.some(f=>String(f).toLowerCase()===String(h).toLowerCase())});if(typeof e=="object"&&e!==null&&!Array.isArray(e)){const u=e,h=u.name&&String(u.name)||u.label&&String(u.label)||u.value&&String(u.value)||u.id&&String(u.id)||JSON.stringify(e);return i.some(f=>String(f).toLowerCase()===String(h).toLowerCase())}return i.some(u=>String(u).toLowerCase()===String(e).toLowerCase());case"contains":return n?!1:String(e).toLowerCase().includes(String(i).toLowerCase());case"notContains":return n?!0:!String(e).toLowerCase().includes(String(i).toLowerCase());case"startsWith":return n?!1:String(e).toLowerCase().startsWith(String(i).toLowerCase());case"endsWith":return n?!1:String(e).toLowerCase().endsWith(String(i).toLowerCase());case"gt":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"gt"):Number(e)>Number(i);case"gte":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"gte"):Number(e)>=Number(i);case"lt":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"lt"):Number(e)<Number(i);case"lte":return n?!1:Fe(e)&&Fe(i)?Dt(e,i,"lte"):Number(e)<=Number(i);case"between":if(n)return!1;if(Fe(e)&&Fe(i)&&Fe(s)){const u=Ut(String(e)),h=Ut(String(i)),f=Ut(String(s)),d=u.getTime(),p=Math.min(h.getTime(),f.getTime()),m=Math.max(h.getTime(),f.getTime());return d>=p&&d<=m}const o=Number(e),a=Math.min(Number(i),Number(s)),l=Math.max(Number(i),Number(s));return o>=a&&o<=l;case"afterDate":return n||!Fe(e)||!Fe(i)?!1:Dt(e,i,"afterDate");case"beforeDate":return n||!Fe(e)||!Fe(i)?!1:Dt(e,i,"beforeDate");case"thisMonth":case"lastMonth":case"thisYear":case"lastYear":return n?!1:Id(e,t);default:return!0}},ln=(e,t,i)=>{const s=i.find(n=>n.id===t);if(s)return s.accessor?typeof s.accessor=="function"?s.accessor(e):e[s.accessor]:e[t]},Md=(e,t,i)=>t.length===0?e:e.filter(s=>{if(t.length===1){const o=ln(s,t[0].columnId,i);return an(o,t[0].operator,t[0].value,t[0].value2)}let n=!1;for(let o=0;o<t.length;o++){const a=t[o],l=ln(s,a.columnId,i),u=an(l,a.operator,a.value,a.value2);if(o===0)n=u;else{const f=t[o-1].logicOperator||"and";f==="and"?n=n&&u:f==="or"&&(n=n||u)}}return n}),Rd=({columns:e,rows:t,loading:i=!1,empty:s={title:"Aun no hay nada aquí...",description:"Aun no hay contenido disponible por aquí para mostrar."},selection:n,pagination:o,toolbar:a,sort:l,filters:u=[],expandable:h=!1,resizable:f=!1,striped:d=!1,bordered:p=!1,borderable:m=!1,hoverable:g=!0,dense:b=!1,stickyHeader:v=!0,stickyCheckbox:y=!0,stickyActions:w=!0,showEditActions:x,configKey:N,persistConfig:k=!1,onConfigChange:C,className:T,onSort:S,onFilter:D,onColumnResize:I,onColumnReorder:j,onColumnVisibilityChange:E,onRowClick:R,onRowExpand:z,onHandleChange:$,editingRowIds:F,onEditingRowIdsChange:W,onEditModeChange:L,onSuccessComplete:P})=>{const B=c.useRef(null),[q,Q]=c.useState(null),se=c.useRef(new Set),ie=c.useRef(new Set),A=Dd({configKey:N,persistConfig:k,initialColumns:e,initialSort:l,initialFilters:u,onConfigChange:C}),O=k&&N?A.columns:e,H=c.useMemo(()=>O.some(X=>X.editable&&X.editable!=="none"),[O]),Z=c.useMemo(()=>{if(x===!1||!H)return O;const X=O.findIndex(ge=>ge.type==="actions"&&ge.id!=="_editActions");if(X!==-1){const ge=O[X],ve=ge.render,Ne={...ge,render:(Ge,dt,$t)=>{const Pt=ve?ve(Ge,dt,$t):[],Ki=Array.isArray(Pt)?Pt:[];return[{icon:dt._isEditing?V.faCheck:V.faPen,tooltip:dt._isEditing?"Guardar":"Editar",color:dt._isEditing?"secondary":"tertiary",onClick:()=>{dt._toggleEdit&&dt._toggleEdit()}},...Ki]}},tt=[...O];return tt[X]=Ne,tt}const ue={id:"_editActions",header:"Acciones",type:"actions",width:120,sortable:!1,filterable:!1,lockable:!1,resizable:!1,editable:"none",render:(ge,ve)=>[{icon:ve._isEditing?V.faCheck:V.faPen,tooltip:ve._isEditing?"Guardar ":"Editar",onClick:()=>{ve._toggleEdit&&ve._toggleEdit()}}]};return[...O,ue]},[O,H,x]),ae=c.useMemo(()=>Z.map(X=>X.width===void 0&&X.resizable!==!1?{...X,resizable:!0}:X),[Z]),{columns:le,handleSetVisibility:xe,handleToggleLock:he,handleResize:ye,setColumnsOrder:Y}=na(ae),{sortConfig:U,handleSort:K}=Xo(l),{selectedIds:ee,selectedCount:_,allSelected:J,someSelected:te,handleRowSelect:ne,handleSelectAll:re,clearSelection:de}=Jo(t,n==null?void 0:n.multiple),{handleRowExpand:Te,applyExpandedState:je}=oa(),{handleCellFocus:ze,handleCellBlur:Se,isCellFocused:Le}=aa(),{filters:Re,setAllFilters:Ve}=Nd({initialFilters:u,onFiltersChange:D}),{toggleRowEdit:ke,applyEditState:et}=la({externalEditingRowIds:F,onEditingRowIdsChange:W,onEditModeChange:L}),[De,zt]=c.useState("");c.useEffect(()=>{const X=ue=>{B.current&&!B.current.contains(ue.target)&&Se()};return document.addEventListener("mousedown",X),()=>{document.removeEventListener("mousedown",X)}},[Se]);const Ct=c.useRef(Re.length),ht=c.useRef(De);c.useEffect(()=>{var ge;const X=Ct.current!==Re.length,ue=ht.current!==De;o!=null&&o.enabled&&(X||ue)&&o.currentPage!==1&&((ge=o==null?void 0:o.onPageChange)==null||ge.call(o,1)),Ct.current=Re.length,ht.current=De},[Re.length,De,o]);const ut=c.useMemo(()=>{if(!De.trim()||!((a==null?void 0:a.internalSearch)??!1))return t;const ue=De.toLowerCase().trim();return t.filter(ge=>le.some(ve=>{if(ve.visible===!1)return!1;let Ne;return typeof ve.accessor=="function"?Ne=ve.accessor(ge):ve.accessor&&(Ne=ge[ve.accessor]),Ne!==null?String(Ne).toLowerCase().includes(ue):!1}))},[t,De,le,a==null?void 0:a.internalSearch]),rt=c.useMemo(()=>Re.length===0||!((a==null?void 0:a.internalFilters)??!1)?ut:Md(ut,Re,le),[ut,Re,le,a==null?void 0:a.internalFilters]),nt=c.useMemo(()=>!U||!U.direction?rt:[...rt].sort((X,ue)=>{const ge=le.find(Pt=>Pt.id===U.columnId);if(!ge)return 0;let ve,Ne;if(typeof ge.accessor=="function")ve=ge.accessor(X),Ne=ge.accessor(ue);else if(ge.accessor)ve=X[ge.accessor],Ne=ue[ge.accessor];else return 0;const tt=ve==null,Ge=Ne==null;if(tt&&Ge)return 0;if(tt)return U.direction==="asc"?1:-1;if(Ge)return U.direction==="asc"?-1:1;const dt=ve,$t=Ne;return dt<$t?U.direction==="asc"?-1:1:dt>$t?U.direction==="asc"?1:-1:0}),[rt,U,le]),ct=nt.length,vt=c.useMemo(()=>{if(!(o!=null&&o.enabled))return nt;const X=o.currentPage||1,ue=o.pageSize||10,ge=!((a==null?void 0:a.internalSearch)??!1),ve=!((a==null?void 0:a.internalFilters)??!1);if(o.total!==void 0&&o.total!==ct||ge&&ve)return nt;const tt=(X-1)*ue,Ge=tt+ue;return nt.slice(tt,Ge)},[nt,o,ct,a==null?void 0:a.internalSearch,a==null?void 0:a.internalFilters]),Lt=je(vt),pt=c.useMemo(()=>et(Lt).map(ue=>({...ue,_toggleEdit:()=>ke(ue.id)})),[Lt,et,ke]),Xt=c.useMemo(()=>{if(pt.length>0)return s;const X=De.trim().length>0,ue=Re.length>0;return t.length===0&&!X&&!ue?{...s,type:s.type||"empty"}:X&&(ut.length===0||pt.length===0)?{type:"no-results",title:`No hay resultados para "${De}"`,description:void 0,action:s.action}:ue&&rt.length===0?{type:"no-filters",title:void 0,description:void 0,action:s.action}:s},[s,pt.length,De,Re.length,t.length,ut.length,rt.length]),kt=X=>{const ue=Ko(U,X);K(X),S==null||S(ue),k&&N&&ue&&A.updateSort(ue)},oe=X=>{},we=X=>{he(X);const ue=le.find(ge=>ge.id===X);k&&N&&ue&&A.updateColumnLock(X,!ue.locked)},Pe=(X,ue)=>{ye(X,ue),I==null||I(X,ue),k&&N&&A.updateColumnWidth(X,ue)},G=X=>{if(le.find(ge=>ge.id===X)&&B.current){const ge=B.current.querySelector(`th[data-column-id="${X}"]`),ve=B.current.querySelectorAll(`td[data-column-id="${X}"]`);if(ge||ve.length>0){let Ne=0;if(ge){const Ge=ge.querySelector(".ui-truncate");Ge&&(Ne=Math.max(Ne,Ge.scrollWidth+80))}ve.forEach(Ge=>{Ne=Math.max(Ne,Ge.scrollWidth+32)});const tt=Math.min(Math.max(Ne,100),500);ye(X,tt),I==null||I(X,tt)}}},Ee=(X,ue)=>{Q(ue?X:null)},ot=X=>{var ue;zt(X),(ue=a==null?void 0:a.onSearch)==null||ue.call(a,X)},ce=(X,ue)=>{xe(X,ue),E==null||E(X,ue),k&&N&&A.updateColumnVisibility(X,ue)},fe=X=>{X.forEach(({columnId:ue,visible:ge})=>{xe(ue,ge),E==null||E(ue,ge)}),k&&N&&A.updateMultipleColumnVisibility(X)},Ie=X=>{const ue=X.map(ge=>ge.id);Y(ue),j==null||j(X),k&&N&&A.updateColumnOrder(X)},Me=X=>{Te(X),z==null||z(X)},Oe=(X,ue,ge)=>{se.current.add(X);const ve=t.find(Ne=>Ne.id===X);$&&$(X,ue,ge,ve)};c.useEffect(()=>{if(!P)return;const X=new Set(F||[]),ue=ie.current,ge=[];if(ue.forEach(ve=>{X.has(ve)||ge.push(ve)}),ge.length>0){const ve=ge.filter(Ne=>se.current.has(Ne));ve.length>0&&(P(ve),ve.forEach(Ne=>{se.current.delete(Ne)}))}ie.current=new Set(X)},[F,P]);const _t=X=>{var ue;(ue=o==null?void 0:o.onPageChange)==null||ue.call(o,X)},qt=X=>{var ue;(ue=o==null?void 0:o.onPageSizeChange)==null||ue.call(o,X)},Qt=M("ui-imj ui-relative ui-flex ui-h-full ui-w-full ui-max-w-full ui-flex-col ui-overflow-hidden ui-bg-fill ui-rounded-surface-sheet ui-p-16",m&&"ui-border ui-border-default",T),fi=X=>{Ve(X),!((a==null?void 0:a.internalFilters)??!1)&&D&&D(X)};return r.jsxs("div",{ref:B,className:Qt,children:[a&&r.jsx(Eo,{...a,showFilters:a.showFilters??!0,selectedCount:_,selectedIds:ee,columns:le,rows:t,filters:Re,onSearch:ot,onColumnVisibilityChange:ce,onMultipleColumnVisibilityChange:fe,onColumnReorder:Ie,onFiltersApply:fi}),r.jsx("div",{className:"ui-flex-1 ui-min-h-0 ui-min-w-0 ui-overflow-hidden",children:r.jsx(Yo,{columns:le,rows:pt,loading:i,empty:Xt,selection:n,sort:U,filters:Re,expandable:h,resizable:f,resizeHoverColumnId:q,striped:d,bordered:p,hoverable:g,dense:b,stickyHeader:v,stickyCheckbox:y,stickyActions:w,selectedIds:ee,allSelected:J,someSelected:te,onSelectAll:re,onRowSelect:ne,onSort:kt,onFilter:oe,onLock:we,onResize:Pe,onResizeDoubleClick:G,onResizeHover:Ee,onRowClick:R,onRowExpand:Me,onCellFocus:ze,isCellFocused:Le,onCellChange:Oe})}),(n==null?void 0:n.showSelectionBar)&&_>0&&r.jsx("div",{className:M("ui-pointer-events-none ui-absolute ui-left-0 ui-right-0 ui-z-50 ui-flex ui-justify-center",o!=null&&o.enabled?"ui-bottom-20":"ui-bottom-8"),children:r.jsx(Uo,{selectedCount:_,selectedIds:ee,actions:n.actions,selectionText:n.selectionText,onClearSelection:n.showClearSelection?de:void 0,className:"ui-pointer-events-auto"})}),(o==null?void 0:o.enabled)&&pt.length>0&&r.jsx(go,{currentPage:o.currentPage||1,pageCount:Math.ceil((o.total!==void 0?o.total:ct)/(o.pageSize||10)),pageSize:o.pageSize||10,total:o.total!==void 0?o.total:ct,onPageChange:_t,handlePageSize:qt,showVisiblePages:!0,showPagesSelector:!0})]})},zd=(e=[])=>{const[t,i]=c.useState(e),[s,n]=c.useState(""),o=c.useCallback(f=>{i(d=>{const p=d.findIndex(m=>m.columnId===f.columnId);if(p>=0){const m=[...d];return m[p]=f,m}return[...d,f]})},[]),a=c.useCallback(f=>{i(d=>d.filter(p=>p.columnId!==f))},[]),l=c.useCallback(()=>{i([]),n("")},[]),u=c.useCallback((f,d)=>{i(p=>p.map(m=>m.columnId===f?{...m,...d}:m))},[]),h=t.length>0||s.length>0;return{filters:t,searchQuery:s,setSearchQuery:n,addFilter:o,removeFilter:a,clearFilters:l,updateFilter:u,hasActiveFilters:h}},Ld=(e,t=10,i=1)=>{const[s,n]=c.useState(i),[o,a]=c.useState(t),l=c.useMemo(()=>Math.ceil(e/o),[e,o]),u=c.useCallback(v=>{v>=1&&v<=l&&n(v)},[l]),h=c.useCallback(v=>{a(v),n(1)},[]),f=c.useCallback(()=>{u(s+1)},[s,u]),d=c.useCallback(()=>{u(s-1)},[s,u]),p=c.useCallback(()=>{n(1)},[]),m=c.useCallback(()=>{n(l)},[l]),g=(s-1)*o,b=Math.min(g+o,e);return{currentPage:s,pageSize:o,pageCount:l,startIndex:g,endIndex:b,handlePageChange:u,handlePageSizeChange:h,nextPage:f,previousPage:d,firstPage:p,lastPage:m,hasNextPage:s<l,hasPreviousPage:s>1}},Ae=e=>!e||typeof e!="string"?!1:/^\d{4}-\d{2}-\d{2}/.test(e),$e=e=>{const[t,i,s]=e.split("T")[0].split("-").map(Number);return new Date(t,i-1,s)},$d=e=>{const t=new Date,i=new Date(t.getFullYear(),t.getMonth(),t.getDate());switch(e){case"thisMonth":{const s=new Date(t.getFullYear(),t.getMonth(),1),n=new Date(t.getFullYear(),t.getMonth()+1,0);return{start:s,end:n}}case"lastMonth":{const s=new Date(t.getFullYear(),t.getMonth()-1,1),n=new Date(t.getFullYear(),t.getMonth(),0);return{start:s,end:n}}case"thisYear":{const s=new Date(t.getFullYear(),0,1),n=new Date(t.getFullYear(),11,31);return{start:s,end:n}}case"lastYear":{const s=new Date(t.getFullYear()-1,0,1),n=new Date(t.getFullYear()-1,11,31);return{start:s,end:n}}default:return{start:i,end:i}}},ua=(e,t,i)=>t.length===0?e:e.filter(s=>t.every(n=>{const o=i.find(l=>l.id===n.columnId);if(!o)return!0;const a=o.accessor?typeof o.accessor=="function"?o.accessor(s):s[o.accessor]:null;return Pd(a,n)})),Pd=(e,t)=>{const i=t.value,s=e==null||e==="";switch(t.operator){case"isEmpty":return s;case"isNotEmpty":return!s}if(s)return!1;const n=String(e).toLowerCase(),o=String(i).toLowerCase();switch(t.operator){case"equals":return Ae(e)&&Ae(i)?$e(e).getTime()===$e(i).getTime():n===o;case"notEquals":return Ae(e)&&Ae(i)?$e(e).getTime()!==$e(i).getTime():n!==o;case"contains":return n.includes(o);case"notContains":return!n.includes(o);case"startsWith":return n.startsWith(o);case"endsWith":return n.endsWith(o);case"gt":return Ae(e)&&Ae(i)?$e(e).getTime()>$e(i).getTime():Number(e)>Number(i);case"gte":return Ae(e)&&Ae(i)?$e(e).getTime()>=$e(i).getTime():Number(e)>=Number(i);case"lt":return Ae(e)&&Ae(i)?$e(e).getTime()<$e(i).getTime():Number(e)<Number(i);case"lte":return Ae(e)&&Ae(i)?$e(e).getTime()<=$e(i).getTime():Number(e)<=Number(i);case"between":if(!t.value2)return!1;if(Ae(e)&&Ae(i)&&Ae(t.value2)){const h=$e(e).getTime(),f=Math.min($e(i).getTime(),$e(t.value2).getTime()),d=Math.max($e(i).getTime(),$e(t.value2).getTime());return h>=f&&h<=d}const a=Number(e),l=Math.min(Number(i),Number(t.value2)),u=Math.max(Number(i),Number(t.value2));return a>=l&&a<=u;case"in":return Array.isArray(i)?Array.isArray(e)?e.some(h=>i.some(f=>String(f).toLowerCase()===String(h).toLowerCase())):i.some(h=>String(h).toLowerCase()===n):!1;case"afterDate":return!Ae(e)||!Ae(i)?!1:$e(e).getTime()>$e(i).getTime();case"beforeDate":return!Ae(e)||!Ae(i)?!1:$e(e).getTime()<$e(i).getTime();case"thisMonth":case"lastMonth":case"thisYear":case"lastYear":{if(!Ae(e))return!1;const h=$e(e),{start:f,end:d}=$d(t.operator),p=h.getTime();return p>=f.getTime()&&p<=d.getTime()}default:return!0}},ca=(e,t,i)=>{if(!t.trim())return e;const s=t.toLowerCase();return e.filter(n=>i.some(o=>{const a=o.accessor?typeof o.accessor=="function"?o.accessor(n):n[o.accessor]:null;return a==null?!1:String(a).toLowerCase().includes(s)}))},Od=({rows:e,columns:t,sortConfig:i,filters:s=[],searchQuery:n="",currentPage:o=1,pageSize:a})=>{const l=c.useMemo(()=>{let h=[...e];return n&&(h=ca(h,n,t)),s.length>0&&(h=ua(h,s,t)),i&&(h=Go(h,i.columnId,i.direction,t)),h},[e,t,i,s,n]),u=c.useMemo(()=>{if(!a)return l;const h=(o-1)*a,f=h+a;return l.slice(h,f)},[l,o,a]);return{processedRows:l,paginatedRows:u,totalRows:l.length}};function da(e,t){return t(e.id,e.attributes)}function rr(e,t){return e.data.map(i=>da(i,t))}function nr(e,t){return{id:e,nombre:t.nombre,color:t.color,createdAt:new Date(t.createdAt),updatedAt:new Date(t.updatedAt)}}function or(e){return{data:rr(e,nr),pagination:{page:e.meta.pagination.page,pageSize:e.meta.pagination.pageSize,pageCount:e.meta.pagination.pageCount,total:e.meta.pagination.total}}}function Ad(e){return t=>({data:rr(t,e),pagination:{page:t.meta.pagination.page,pageSize:t.meta.pagination.pageSize,pageCount:t.meta.pagination.pageCount,total:t.meta.pagination.total}})}const Fd={equals:"$eq",notEquals:"$ne",contains:"$containsi",notContains:"$notContainsi",startsWith:"$startsWithi",endsWith:"$endsWithi",gt:"$gt",gte:"$gte",lt:"$lt",lte:"$lte",between:"$between",in:"$in",isEmpty:"$null",isNotEmpty:"$notNull",afterDate:"$gt",beforeDate:"$lt",thisMonth:"$gte",lastMonth:"$gte",thisYear:"$gte",lastYear:"$gte"};function Wd(){const e=new Date,t=new Date(e.getFullYear(),e.getMonth(),1),i=new Date(e.getFullYear(),e.getMonth()+1,0);return{start:t.toISOString().split("T")[0],end:i.toISOString().split("T")[0]}}function Bd(){const e=new Date,t=new Date(e.getFullYear(),e.getMonth()-1,1),i=new Date(e.getFullYear(),e.getMonth(),0);return{start:t.toISOString().split("T")[0],end:i.toISOString().split("T")[0]}}function Vd(){const e=new Date;return{start:`${e.getFullYear()}-01-01`,end:`${e.getFullYear()}-12-31`}}function Hd(){const t=new Date().getFullYear()-1;return{start:`${t}-01-01`,end:`${t}-12-31`}}function ds(e){const{field:t,operator:i,value:s,value2:n}=e,o=Fd[i];if(i==="thisMonth"){const a=Wd();return{[t]:{$gte:a.start,$lte:a.end}}}if(i==="lastMonth"){const a=Bd();return{[t]:{$gte:a.start,$lte:a.end}}}if(i==="thisYear"){const a=Vd();return{[t]:{$gte:a.start,$lte:a.end}}}if(i==="lastYear"){const a=Hd();return{[t]:{$gte:a.start,$lte:a.end}}}return i==="between"&&n!==void 0?{[t]:{$gte:s,$lte:n}}:i==="isEmpty"?{[t]:{$null:!0}}:i==="isNotEmpty"?{[t]:{$notNull:!0}}:{[t]:{[o]:s}}}function fa(e){return{field:e.columnId,operator:e.operator,value:e.value,value2:e.value2,logicOperator:e.logicOperator}}function ar(e){if(e.length===0)return{};if(e.length===1)return ds(e[0]);const t=[];let i=[];return e.forEach((s,n)=>{const o=ds(s);i.push(o),s.logicOperator==="or"&&n<e.length-1&&(t.push([...i]),i=[])}),i.length>0&&t.push(i),t.length===1?Object.assign({},...t[0]):{$or:t.map(s=>s.length===1?s[0]:{$and:s})}}function ma(e){const t=e.map(fa);return ar(t)}function lr(e){const t=new URLSearchParams;if(e.page!==void 0&&t.append("pagination[page]",e.page.toString()),e.pageSize!==void 0&&t.append("pagination[pageSize]",e.pageSize.toString()),e.sort){const i=e.sortDirection==="desc"?":desc":":asc";t.append("sort",`${e.sort}${i}`)}return e.filters&&Object.keys(e.filters).length>0&&ha(t,e.filters,"filters"),t.toString()}function ha(e,t,i){Object.entries(t).forEach(([s,n])=>{const o=`${i}[${s}]`;n!=null&&(Array.isArray(n)?n.forEach((a,l)=>{e.append(`${o}[${l}]`,String(a))}):typeof n=="object"?ha(e,n,o):e.append(o,String(n)))})}let Ci=null;class pa extends Error{constructor(t,i,s,n){super(t),this.status=i,this.statusText=s,this.data=n,this.name="StrapiApiError"}}function _d(e){Ci=e}function ga(){if(!Ci)throw new Error("Strapi client not configured. Call configureStrapiClient() first.");return Ci}function qd(){return Ci!==null}async function ui(e,t={}){const i=ga(),s=e.startsWith("http")?e:`${i.baseUrl}${e.startsWith("/")?e:`/${e}`}`,n={"Content-Type":"application/json",Authorization:`Bearer ${i.token}`,...t.headers},o=await fetch(s,{...t,headers:n});if(!o.ok){let a;try{a=await o.json()}catch{a=await o.text()}throw new pa(`API Error: ${o.status} ${o.statusText}`,o.status,o.statusText,a)}return o.json()}async function ur(e,t){const i=t?`${e}?${t}`:e;return ui(i,{method:"GET"})}async function Yd(e,t){return ui(e,{method:"POST",body:JSON.stringify(t)})}async function ba(e,t){return ui(e,{method:"PUT",body:JSON.stringify(t)})}async function Ud(e){return ui(e,{method:"DELETE"})}const cr="/api/equipos";async function xa(e){const t=Gd(e);return ur(cr,t)}async function ki(e){const t=await xa(e);return or(t)}async function Ni(e,t){const i=ma(e),s=lr({filters:i,sort:t==null?void 0:t.sortField,sortDirection:t==null?void 0:t.sortDirection,page:t==null?void 0:t.page,pageSize:t==null?void 0:t.pageSize}),n=await ur(cr,s);return or(n)}function Gd(e){if(!e)return"";const{page:t,pageSize:i,sortField:s,sortDirection:n,filters:o,search:a}=e;let l={};return o&&o.length>0&&(l=ar(o)),a&&a.trim()&&(l={...l,nombre:{$containsi:a.trim()}}),lr({filters:l,sort:s,sortDirection:n,page:t,pageSize:i})}async function dr(e,t){const i=await ba(`${cr}/${e}`,{data:t});return nr(i.data.id,i.data.attributes)}async function ya(e,t){return dr(e,{nombre:t})}const Be={all:["teams"],lists:()=>[...Be.all,"list"],list:e=>[...Be.lists(),e],details:()=>[...Be.all,"detail"],detail:e=>[...Be.details(),e]};function Kd(e,t){return at.useQuery({queryKey:Be.list(e),queryFn:()=>ki(e),staleTime:1e3*60*5,...t})}function Xd(e,t,i){return at.useQuery({queryKey:[...Be.lists(),"filtered",{advancedFilters:e,params:t}],queryFn:()=>Ni(e,t),staleTime:1e3*60*5,...i})}function Qd(e={}){var m,g;const{page:t=1,pageSize:i=10,sortField:s,sortDirection:n="asc",filters:o=[],search:a,enabled:l=!0}=e,u=at.useQueryClient(),h=at.useQuery({queryKey:[...Be.lists(),"table",{page:t,pageSize:i,sortField:s,sortDirection:n,filters:o,search:a}],queryFn:async()=>o.length>0?Ni(o,{page:t,pageSize:i,sortField:s,sortDirection:n}):ki({page:t,pageSize:i,sortField:s,sortDirection:n,search:a}),staleTime:1e3*60*5,placeholderData:at.keepPreviousData,enabled:l}),f=()=>{h.data&&t<h.data.pagination.pageCount&&u.prefetchQuery({queryKey:[...Be.lists(),"table",{page:t+1,pageSize:i,sortField:s,sortDirection:n,filters:o,search:a}],queryFn:()=>o.length>0?Ni(o,{page:t+1,pageSize:i,sortField:s,sortDirection:n}):ki({page:t+1,pageSize:i,sortField:s,sortDirection:n,search:a})})},d=()=>u.invalidateQueries({queryKey:Be.lists()}),p=(m=h.data)==null?void 0:m.pagination;return{data:((g=h.data)==null?void 0:g.data)??[],pagination:p??null,isLoading:h.isLoading,isFetching:h.isFetching,isError:h.isError,error:h.error,isSuccess:h.isSuccess,isPlaceholderData:h.isPlaceholderData,refetch:d,prefetchNextPage:f,query:h}}function Zd(){const e=at.useQueryClient();return{invalidateAll:()=>e.invalidateQueries({queryKey:Be.all}),invalidateLists:()=>e.invalidateQueries({queryKey:Be.lists()})}}function Jd(){const e=at.useQueryClient();return at.useMutation({mutationFn:({id:t,data:i})=>dr(t,i),onMutate:async({id:t,data:i})=>{await e.cancelQueries({queryKey:Be.all});const s=e.getQueriesData({queryKey:Be.all});return e.setQueriesData({queryKey:Be.all},n=>n!=null&&n.data?{...n,data:n.data.map(o=>o.id===t?{...o,...i}:o)}:n),{previousData:s}},onError:(t,i,s)=>{s!=null&&s.previousData&&s.previousData.forEach(([n,o])=>{e.setQueryData(n,o)})},onSettled:async()=>{await e.invalidateQueries({queryKey:Be.all})}})}function ef(){const e=at.useQueryClient();return at.useMutation({mutationFn:({id:t,nombre:i})=>ya(t,i),onMutate:async({id:t,nombre:i})=>{await e.cancelQueries({queryKey:Be.all});const s=e.getQueriesData({queryKey:Be.all});return e.setQueriesData({queryKey:Be.all},n=>n!=null&&n.data?{...n,data:n.data.map(o=>o.id===t?{...o,nombre:i}:o)}:n),{previousData:s}},onError:(t,i,s)=>{s!=null&&s.previousData&&s.previousData.forEach(([n,o])=>{e.setQueryData(n,o)})},onSettled:async()=>{await e.invalidateQueries({queryKey:Be.all})}})}function tf(e={}){const{initialPage:t=1,initialPageSize:i=10,initialSortField:s,initialSortDirection:n="asc",initialFilters:o=[],initialSearch:a=""}=e,[l,u]=c.useState(t),[h,f]=c.useState(i),[d,p]=c.useState(s),[m,g]=c.useState(n),[b,v]=c.useState(o),[y,w]=c.useState(a),x=c.useCallback(E=>{u(E)},[]),N=c.useCallback(E=>{f(E),u(1)},[]),k=c.useCallback((E,R="asc")=>{p(E),g(R),u(1)},[]),C=c.useCallback(E=>{v(E),u(1)},[]),T=c.useCallback(E=>{v(R=>[...R,E]),u(1)},[]),S=c.useCallback(E=>{v(R=>R.filter(z=>z.id!==E)),u(1)},[]),D=c.useCallback(()=>{v([]),u(1)},[]),I=c.useCallback(E=>{w(E),u(1)},[]),j=c.useCallback(()=>{u(t),f(i),p(s),g(n),v(o),w(a)},[t,i,s,n,o,a]);return{page:l,pageSize:h,sortField:d,sortDirection:m,filters:b,search:y,setPage:x,setPageSize:N,setSort:k,setFilters:C,addFilter:T,removeFilter:S,clearFilters:D,setSearch:I,reset:j}}function sf(e,t){return c.useMemo(()=>e.map(i=>{const s=t.sortField===i.id,n=t.filters.some(o=>o.columnId===i.id);return{...i,sortDirection:s?t.sortDirection:null,filterActive:n}}),[e,t.sortField,t.sortDirection,t.filters])}function rf(e,t=300){const[i,s]=c.useState(e);return c.useEffect(()=>{const n=setTimeout(()=>{s(e)},t);return()=>{clearTimeout(n)}},[e,t]),i}function nf(e,t=300){const[i,s]=c.useState(null),n=((...o)=>{i&&clearTimeout(i);const a=setTimeout(()=>{e(...o)},t);s(a)});return c.useEffect(()=>()=>{i&&clearTimeout(i)},[i]),n}function of({children:e,staleTime:t=1e3*60*5,gcTime:i=1e3*60*30,retry:s=3,refetchOnWindowFocus:n=!0}){const[o]=c.useState(()=>new at.QueryClient({defaultOptions:{queries:{staleTime:t,gcTime:i,retry:s,refetchOnWindowFocus:n}}}));return r.jsx(at.QueryClientProvider,{client:o,children:e})}function af(e={}){const{staleTime:t=1e3*60*5,gcTime:i=1e3*60*30,retry:s=3,refetchOnWindowFocus:n=!0}=e;return new at.QueryClient({defaultOptions:{queries:{staleTime:t,gcTime:i,retry:s,refetchOnWindowFocus:n}}})}const ci=["primary","secondary","tertiary","disabled","on-color","on-canvas-inverse","brand","brand-hover","brand-pressed","brand-selected","success","success-hover","success-pressed","success-selected","warning","warning-hover","warning-pressed","warning-selected","danger","danger-hover","danger-pressed","danger-selected","info","info-hover","info-pressed","info-selected","link","link-hover","link-pressed","link-visited","all-colors-red","all-colors-orange","all-colors-yellow","all-colors-lime","all-colors-green","all-colors-cyan","all-colors-azure","all-colors-blue","all-colors-violet","all-colors-magenta","all-colors-rose"],fr=({size:e="h3",weight:t="regular",children:i,className:s,as:n,color:o,textColor:a,...l})=>{const h=n||(e&&["h1","h2","h3","h4","h5","h6"].includes(e)?e:"h3"),d=(()=>{const v=[];return e&&["h1","h2","h3","h4","h5","h6"].includes(e)?(v.push(`ui-text-heading-${e}`),v.push(`ui-font-heading-${e}`),v.push(`ui-leading-tracking-${e}`)):e&&(v.push(`ui-text-${e}`),t!=="regular"&&v.push(`ui-font-${t}`)),v.join(" ")})(),p=o&&ci.includes(o),m=o&&!p?{color:o}:void 0,b=p?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-primary";return r.jsx(h,{className:M("ui-imj",d,b,s),style:m,...l,children:i})};fr.displayName="Title";const Ti=({size:e="xs",weight:t="regular",children:i,className:s,as:n="span",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return e&&["xs","sm","md","lg"].includes(e)?(b.push(`ui-text-body-${e}-${t}`),b.push(`ui-font-body-${e}-${t}`),b.push(`ui-leading-body-${e}-${t}`),b.push(`ui-tracking-body-${e}`)):e&&(b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`)),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-secondary";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};Ti.displayName="Body";const mr=({size:e="xs",weight:t="regular",children:i,className:s,as:n="span",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return e&&["xs","md"].includes(e)?(b.push(`ui-text-caption-${e}`),b.push(`ui-font-caption-${e}`),b.push(`ui-leading-caption-${e}`),b.push(`ui-tracking-caption-${e}`)):e&&(b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`)),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-tertiary";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};mr.displayName="Caption";const hr=({size:e="md",weight:t="regular",children:i,className:s,as:n="code",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return e==="md"?(b.push("ui-text-code-md"),b.push("ui-font-code-md"),b.push("ui-leading-code-md"),b.push("ui-tracking-code-md")):e&&(b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`)),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"ui-text-tertiary";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};hr.displayName="Code";const pr=({size:e,weight:t="regular",children:i,className:s,as:n="span",color:o,textColor:a,...l})=>{const u=n,f=(()=>{const b=[];return b.push(`ui-text-${e}`),t!=="regular"&&b.push(`ui-font-${t}`),b.join(" ")})(),d=o&&ci.includes(o),p=o&&!d?{color:o}:void 0,g=d?`ui-text-${o}`:o?"":a?`ui-text-${a}`:"";return r.jsx(u,{className:M("ui-imj",f,g,s),style:p,...l,children:i})};pr.displayName="CustomText";const gr=({type:e="body",size:t,weight:i="regular",children:s,className:n,as:o,color:a,textColor:l,...u})=>{if(t&&["2xs","xs","sm","md","lg","xl","2xl","3xl","4xl","5xl"].includes(t))return r.jsx(pr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});switch(e){case"title":return r.jsx(fr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});case"body":return r.jsx(Ti,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});case"caption":return r.jsx(mr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});case"code":return r.jsx(hr,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s});default:return r.jsx(Ti,{size:t,weight:i,className:n,as:o,color:a,textColor:l,...u,children:s})}};gr.displayName="Text";const lf={duration:5e3,maxMessages:5,position:"bottom-right",variant:"outlined",primaryButtonText:"Aceptar",secondaryButtonText:"Cancelar",animationDuration:300,size:"sm"};let Ke={...lf};const uf=e=>{Ke={...Ke,...e}};class cf{constructor(){this.listeners=[],this.idCounter=0,this.recentMessages=new Map}show(t,i="success",s={}){const n=Date.now()+ ++this.idCounter;let o,a;typeof t=="string"?(o="",a={...s,title:t}):(o=t.message??"",a={...s,...t});const l=`${o||a.title||""}-${i}`,u=Date.now(),h=this.recentMessages.get(l);if(h&&u-h<100)return n;if(this.recentMessages.set(l,u),this.recentMessages.size>50)for(const[d,p]of this.recentMessages.entries())u-p>1e3&&this.recentMessages.delete(d);const f={id:n,message:o,title:a.title,description:a.description,color:i,onClick:a.onClick,onClose:a.onClose,onPrimaryClick:a.onPrimaryClick,onSecondaryClick:a.onSecondaryClick,showCloseButton:a.showCloseButton??!0,isLeaving:!1,position:a.position??Ke.position,variant:a.variant??Ke.variant,primaryButtonText:a.primaryButtonText??Ke.primaryButtonText,secondaryButtonText:a.secondaryButtonText??Ke.secondaryButtonText,size:a.size??Ke.size,duration:a.duration!==void 0?a.duration:Ke.duration,animation:a.animation};return process.env.NODE_ENV!=="production"&&(f.duration!==void 0&&(isNaN(f.duration)||!isFinite(f.duration)||f.duration<0)&&(console.warn(`[MessageService] Invalid duration "${f.duration}". Using default.`),f.duration=Ke.duration),f.position&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(f.position)&&(console.warn(`[MessageService] Invalid position "${f.position}". Using default.`),f.position=Ke.position),f.color&&!["success","danger","info","warning","neutral","brand"].includes(f.color)&&console.warn(`[MessageService] Invalid color "${f.color}".`)),this.listeners.forEach(d=>d(f)),n}success(t,i){return this.show(t,"success",i)}error(t,i){return this.show(t,"danger",i)}info(t,i){return this.show(t,"info",i)}warning(t,i){return this.show(t,"warning",i)}neutral(t,i){return this.show(t,"neutral",i)}brand(t,i){return this.show(t,"brand",i)}dismiss(t){this.listeners.forEach(i=>i({id:t,message:"",title:"",color:"success",position:Ke.position,showCloseButton:!0,isLeaving:!0,variant:Ke.variant}))}configure(t){Object.assign(Ke,t)}getListeners(){return this.listeners}subscribe(t){return this.listeners.push(t),()=>{const i=this.listeners.indexOf(t);i>-1&&this.listeners.splice(i,1)}}}const We=new cf,df=()=>We,br=()=>{const[e,t]=c.useState([]),i=c.useRef(new Map),s=c.useRef(null);return c.useEffect(()=>{const o=We.getListeners();if(s.current){const l=o.indexOf(s.current);l>-1&&o.splice(l,1)}const a=l=>{if(l.isLeaving){t(f=>f.map(d=>d.id===l.id?{...d,isLeaving:!0}:d));const u=i.current.get(l.id);u&&(clearTimeout(u),i.current.delete(l.id));const h=setTimeout(()=>{t(f=>f.filter(d=>d.id!==l.id))},Ke.animationDuration);i.current.set(l.id,h);return}t(u=>{if(u.some(g=>g.id===l.id))return u;const f={...l,isLeaving:!1},d=[...u,f],p=f.duration!==void 0?f.duration:Ke.duration,m=p>0&&isFinite(p)&&!isNaN(p)?p:0;if(m>0){const g=setTimeout(()=>{We.dismiss(f.id)},m);i.current.set(f.id,g)}return d.slice(-Ke.maxMessages)})};return s.current=a,o.push(a),()=>{const l=o.indexOf(a);l>-1&&o.splice(l,1);const u=i.current;u.forEach(h=>clearTimeout(h)),u.clear(),s.current=null}},[]),{messagesByPosition:c.useMemo(()=>e.reduce((o,a)=>{const l=["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"],u=a.position&&l.includes(a.position)?a.position:"top-right";return o[u]||(o[u]=[]),o[u].push(a),o},{}),[e]),messages:e}},xr=()=>({getPositionClasses:t=>{const i={"top-left":"ui-fixed ui-top-5 ui-left-5","top-center":"ui-fixed ui-top-5 ui-left-1/2 ui--translate-x-1/2","top-right":"ui-fixed ui-top-5 ui-right-5","center-left":"ui-fixed ui-top-1/2 ui-left-5 ui--translate-y-1/2",center:"ui-fixed ui-top-1/2 ui-left-1/2 ui--translate-x-1/2 ui--translate-y-1/2","center-right":"ui-fixed ui-top-1/2 ui-right-5 ui--translate-y-1/2","bottom-left":"ui-fixed ui-bottom-5 ui-left-5","bottom-center":"ui-fixed ui-bottom-5 ui-left-1/2 ui--translate-x-1/2","bottom-right":"ui-fixed ui-bottom-5 ui-right-5"},s=i[t];return process.env.NODE_ENV!=="production"&&!s?(console.warn(`[useMessageStyles] Invalid position "${t}". Using "top-right" as fallback.`),i["top-right"]):s||i["top-right"]}}),ff={position:"top-right",duration:5e3,animationDuration:300,size:"sm",showTimer:!0},gt={...ff};class mf{constructor(){this.listeners=[],this.idCounter=0,this.groups={brand:null,neutral:null},this.timers={brand:null,neutral:null},this.progressIntervals={brand:null,neutral:null},this.removeTimers={brand:null,neutral:null}}show(t,i="brand",s={}){const n=Date.now()+ ++this.idCounter;let o,a,l;typeof t=="string"?(o="",a=t,l={...s}):(o=t.message??"",a=t.title,l={...s,...t});const u={id:n,message:o,title:a,subtitle:l.subtitle,description:l.description,color:i,avatar:l.avatar,icon:l.icon,position:l.position??gt.position,duration:l.duration??gt.duration,showCloseButton:l.showCloseButton??!0,isLeaving:!1,showTimer:gt.showTimer,onClick:l.onClick,onClose:l.onClose,onPrimaryClick:l.onPrimaryClick,onSecondaryClick:l.onSecondaryClick,primaryButtonText:l.primaryButtonText,secondaryButtonText:l.secondaryButtonText,size:l.size??(gt.size==="lg"?"md":gt.size),variant:l.variant??"outlined",animation:l.animation??"fade"};return process.env.NODE_ENV!=="production"&&(u.duration!==void 0&&(isNaN(u.duration)||!isFinite(u.duration)||u.duration<0)&&(console.warn(`[NotificationService] Invalid duration "${u.duration}". Using default.`),u.duration=gt.duration),u.position&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(u.position)&&(console.warn(`[NotificationService] Invalid position "${u.position}". Using default.`),u.position=gt.position),["brand","neutral"].includes(i)||console.warn(`[NotificationService] Invalid color "${i}".`)),this.addToGroup(i,u),n}addToGroup(t,i){const s=this.groups[t];s?(s.queue.push(i),s.count=s.queue.length,this.resetTimer(t)):(this.groups[t]={color:t,notification:i,queue:[i],count:1,timerProgress:100,isLeaving:!1},this.startTimer(t)),this.notifyListeners()}startTimer(t){const i=this.groups[t];if(!i)return;const s=i.notification.duration??gt.duration;if(s<=0)return;this.clearTimer(t);const n=Date.now();i.timerProgress=100,this.progressIntervals[t]=setInterval(()=>{const o=Date.now()-n,a=Math.max(0,100-o/s*100);this.groups[t]&&(this.groups[t].timerProgress=a,this.notifyListeners())},50),this.timers[t]=setTimeout(()=>{this.dismissGroup(t)},s)}resetTimer(t){this.clearTimer(t),this.startTimer(t)}clearTimer(t){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.progressIntervals[t]&&(clearInterval(this.progressIntervals[t]),this.progressIntervals[t]=null),this.removeTimers[t]&&(clearTimeout(this.removeTimers[t]),this.removeTimers[t]=null)}dismissGroup(t){const i=this.groups[t];i&&(i.isLeaving=!0,this.notifyListeners(),this.clearTimer(t),this.removeTimers[t]=setTimeout(()=>{this.groups[t]=null,this.removeTimers[t]=null,this.notifyListeners()},gt.animationDuration))}dismiss(t){for(const i of["brand","neutral"]){const s=this.groups[i];if(s&&s.queue.some(n=>n.id===t)){this.dismissGroup(i);return}}}brand(t,i){return this.show(t,"brand",i)}neutral(t,i){return this.show(t,"neutral",i)}configure(t){Object.assign(gt,t)}getGroups(){return{...this.groups}}subscribe(t){return this.listeners.push(t),()=>{const i=this.listeners.indexOf(t);i>-1&&this.listeners.splice(i,1)}}notifyListeners(){const t=this.getGroups();this.listeners.forEach(i=>i(t))}getConfig(){return{...gt}}}const Xe=new mf,hf=()=>Xe,yr=()=>{const[e,t]=c.useState({brand:null,neutral:null});c.useEffect(()=>{t(Xe.getGroups());const n=Xe.subscribe(o=>{t({...o})});return()=>{n()}},[]);const i=Object.values(e).filter(n=>n!==null&&!n.isLeaving),s=Object.values(e).filter(n=>n!==null&&n.isLeaving);return{groups:e,activeGroups:i,leavingGroups:s,dismissGroup:n=>Xe.dismissGroup(n)}},vr=c.memo(({message:e})=>{const[t,i]=c.useState(!0),s=c.useRef(null);c.useEffect(()=>(e.isLeaving&&(s.current=setTimeout(()=>{i(!1)},300)),()=>{s.current&&(clearTimeout(s.current),s.current=null)}),[e.isLeaving]);const n=a=>{a.stopPropagation();const l=e.id??0;process.env.NODE_ENV!=="production"&&!e.id&&console.warn("[MessageItem] message.id is undefined. Using fallback value 0."),We.dismiss(l),e.onClose&&e.onClose()};if(!t)return null;const o=e.color==="brand"?"info":e.color;return process.env.NODE_ENV!=="production"&&!["success","danger","info","warning","neutral","brand"].includes(e.color)&&console.warn(`[MessageItem] Invalid color "${e.color}". Using fallback.`),r.jsx(Es,{color:o,variant:e.variant||"outlined",message:e.message,title:e.title,description:e.description,showCloseButton:e.showCloseButton,open:!0,onClose:n,onPrimaryClick:e.onPrimaryClick,onSecondaryClick:e.onSecondaryClick,primaryButtonText:e.primaryButtonText,secondaryButtonText:e.secondaryButtonText,isLeaving:e.isLeaving,onClick:e.onClick,animation:e.animation||"fade",size:e.size||"sm",duration:e.duration})});vr.displayName="MessageItem";const _i=c.memo(({messages:e})=>{const{getPositionClasses:t}=xr();return Object.keys(e).length===0?null:r.jsx(r.Fragment,{children:Object.entries(e).map(([i,s])=>{const n=i;return process.env.NODE_ENV!=="production"&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(i)&&console.warn(`[MessagePositions] Invalid position "${i}". Using as-is.`),!s||s.length===0?null:r.jsx("div",{className:`${t(n)} ui-z-50 ui-max-w-[350px] ui-space-y-2`,children:s.map(o=>o.id?r.jsx(vr,{message:o},o.id):(process.env.NODE_ENV!=="production"&&console.warn("[MessagePositions] Message without id. Skipping."),null))},i)})})});_i.displayName="MessagePositions";const pf=()=>{const{messagesByPosition:e}=br();return st.createPortal(r.jsx(_i,{messages:e}),document.body)},wr=c.memo(({group:e})=>{const{notification:t,count:i,isLeaving:s,color:n}=e,[o,a]=c.useState(!0),l=c.useRef(null);c.useEffect(()=>(s&&(l.current=setTimeout(()=>{a(!1)},300)),()=>{l.current&&(clearTimeout(l.current),l.current=null)}),[s]);const u=d=>{var p;d.stopPropagation(),Xe.dismissGroup(n),(p=t.onClose)==null||p.call(t)};if(!o)return null;const f={brand:"brand",neutral:"neutral"}[n];return r.jsx(Es,{color:f,variant:t.variant||"outlined",message:t.message,title:t.title,description:t.description,showCloseButton:t.showCloseButton,open:!0,onClose:u,onPrimaryClick:t.onPrimaryClick,onSecondaryClick:t.onSecondaryClick,primaryButtonText:t.primaryButtonText,secondaryButtonText:t.secondaryButtonText,isLeaving:s,onClick:t.onClick,animation:t.animation||"fade",size:t.size||"sm",duration:t.duration,avatar:t.avatar,children:i>1&&r.jsxs("div",{className:"ui-mb-2 ui-flex ui-items-center ui-justify-center ui-gap-1 ui-py-2",children:[r.jsx(pe,{name:V.faPaperPlane,size:"xs",color:"tertiary"}),r.jsxs("span",{className:"ui-text-xs ui-text-tertiary",children:["Tienes ",i," mensajes nuevos"]})]})})});wr.displayName="NotificationItem";const qi=c.memo(({groups:e})=>{const{getPositionClasses:t}=xr(),i=Xe.getConfig(),s=Object.values(e).filter(o=>o!==null);if(s.length===0)return null;const n=i.position;return process.env.NODE_ENV!=="production"&&!["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right"].includes(n)&&console.warn(`[NotificationPositions] Invalid position "${n}" from config. Using as-is.`),r.jsx("div",{className:`${t(n)} ui-z-50 ui-space-y-2`,children:s.map(o=>o.notification.id?r.jsx(wr,{group:o},`${o.color}-${o.count}`):(process.env.NODE_ENV!=="production"&&console.warn("[NotificationPositions] Group notification without id. Skipping."),null))})});qi.displayName="NotificationPositions";const gf=()=>{const{groups:e}=yr();return st.createPortal(r.jsx(qi,{groups:e}),document.body)},bf=()=>{const{messagesByPosition:e}=br(),{groups:t}=yr();return st.createPortal(r.jsxs(r.Fragment,{children:[r.jsx(_i,{messages:e}),r.jsx(qi,{groups:t})]}),document.body)},xf=We,yf=Xe,vf={success:We.success.bind(We),error:We.error.bind(We),info:We.info.bind(We),warning:We.warning.bind(We),show:We.show.bind(We),dismiss:We.dismiss.bind(We),configure:We.configure.bind(We),brand:Xe.brand.bind(Xe),neutral:Xe.neutral.bind(Xe),dismissNotification:Xe.dismissGroup.bind(Xe),configureNotification:Xe.configure.bind(Xe)},wf=({text:e,count:t,buttons:i=[],onClose:s,className:n,visible:o=!0,activeButtonId:a,onActiveButtonIdChange:l,onBackClick:u})=>{var I;const h=a!==void 0,[f,d]=c.useState(-1),[p,m]=c.useState(!1);if(c.useEffect(()=>{m(!0)},[]),!o)return null;const g=i.filter(j=>j.show!==!1);if(g.length===0)return null;let b=null;h?a!==null&&(b=g.find(j=>j.id===a)||null):b=f>=0?g[f]:null;const v=((I=b==null?void 0:b.addons)==null?void 0:I.filter(j=>j.show!==!1))||[],y=M("ui-flex ui-items-center ui-gap-8 sm:ui-gap-16","ui-bg-fill-brand","ui-px-12 ui-py-8 sm:ui-px-16","ui-rounded-surface-modal","ui-shadow-03","ui-border-1 ui-border-default",n),w=M("ui-fixed ui-bottom-6 ui-left-1/2 ui--translate-x-1/2","ui-z-[1000]","ui-max-w-[calc(100vw-48px)]","ui-flex ui-justify-center"),x=(j,E)=>{var z;if(j.onClick&&j.onClick(),(((z=j.addons)==null?void 0:z.filter($=>$.show!==!1))||[]).length>0){const $=j.id??E.toString();h?l==null||l($):d(E)}},N=()=>{u==null||u(),h?l==null||l(null):d(-1)},k=(j,E)=>{j.onChange&&j.onChange(E)},C=()=>r.jsxs("div",{className:y,children:[r.jsx(Ce,{color:"secondary",size:"xs",pill:"pill",icon:V.faArrowTurnLeft,onClick:N}),(e||t!==void 0)&&r.jsxs("span",{className:"ui-whitespace-nowrap ui-text-body-sm-regular ui-font-body-sm-regular ui-text-on-color",children:[t!==void 0?`(${t}) `:"",e]}),v.length>0&&r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx("div",{className:"ui-flex ui-min-w-max ui-items-center ui-gap-16",children:v.map((j,E)=>{var R,z,$,F,W;if(j.type==="input")return r.jsx("div",{className:"ui-w-[160px]",children:r.jsx(Ue,{size:"xs",leftSlot:j.leftSlot,fullWidth:!0,rightSlot:j.rightSlot,disabled:j.disabled,value:j.value,placeholder:j.placeholder,type:j.type,name:j.name,onValueChange:L=>k(j,L)})},`addon-${E}`);if(j.type==="date")return r.jsx("div",{className:"ui-w-[160px]",children:r.jsx(Gt,{size:"xs",mode:((R=j.datePickerProps)==null?void 0:R.mode)||"single",selectedDate:j.selectedDate,selectedRange:j.selectedRange,minDate:(z=j.datePickerProps)==null?void 0:z.minDate,maxDate:($=j.datePickerProps)==null?void 0:$.maxDate,autoCloseRange:!1,format:((F=j.datePickerProps)==null?void 0:F.format)||"dd/MM/yyyy",placeholder:((W=j.datePickerProps)==null?void 0:W.placeholder)||j.placeholder||"Seleccionar fecha",onDateChange:L=>{var P;((P=j.datePickerProps)==null?void 0:P.mode)==="range"?k(j,{start:null,end:null}):k(j,L)},onRangeChange:L=>{k(j,L)}})},`addon-${E}`);if(j.type==="button"){const L=j.label?void 0:j.icon,P=j.label&&j.icon?j.icon:void 0;return r.jsx(Ce,{color:j.color||"secondary",size:"xs",icon:L,leftSlot:P,disabled:j.disabled,pill:j.pill,tooltip:j.tooltip,tooltipPosition:j.tooltipPosition,tooltipAlignment:j.tooltipAlignment,tooltipDelay:j.tooltipDelay,onClick:()=>{j.onClick&&j.onClick()},children:j.label},`addon-${E}`)}return null})}),s&&r.jsxs(r.Fragment,{children:[r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx(Ce,{color:"secondary",size:"xs",pill:"pill",icon:V.faXmark,onClick:s})]})]}),T=()=>r.jsxs("div",{className:y,children:[r.jsx("div",{className:"ui-flex ui-min-w-max ui-items-center ui-gap-16",children:g.map((j,E)=>{const R=j.label?void 0:j.icon,z=j.label&&j.icon?j.icon:void 0;return r.jsx(Ce,{color:j.color||"secondary",size:"xs",icon:R,leftSlot:z,disabled:j.disabled,pill:j.pill,tooltip:j.tooltip,tooltipPosition:j.tooltipPosition,tooltipAlignment:j.tooltipAlignment,tooltipDelay:j.tooltipDelay,onClick:()=>x(j,E),children:j.label},`button-${E}-${j.label||j.icon}`)})}),s&&r.jsxs(r.Fragment,{children:[r.jsx(qe,{vertical:!0,className:"ui-h-8 ui-border-on-color ui-opacity-30"}),r.jsx(Ce,{color:"secondary",size:"xs",pill:"pill",icon:V.faXmark,onClick:s})]})]}),D=(h?a!==null&&b!==null&&v.length>0:f>=0&&b!==null&&v.length>0)?C():T();return p?st.createPortal(r.jsx("div",{className:M("ui-imj",w),children:D}),document.body):null},va=({id:e,label:t,icon:i,badge:s,active:n=!1,disabled:o=!1,hasSubmenu:a=!1,onClick:l,className:u})=>{const h=f=>{o||l==null||l(e)};return r.jsxs(xt,{icon:i,current:n,disabled:o,onClick:h,className:M("ui-h-32",u),children:[r.jsx("span",{className:"ui-flex-1 ui-truncate",children:t}),s&&r.jsx(Kt,{label:String(s.label),color:s.color||"accent",theme:s.theme||"solid",size:"sm"}),a&&r.jsx(pe,{name:V.faChevronRight,size:"md",color:"tertiary",className:"ui-shrink-0"})]})},di=({className:e,withText:t=!1,text:i})=>t&&i?r.jsxs("div",{className:M("ui-flex ui-w-full ui-items-center ui-gap-8",e),children:[r.jsx("span",{className:"ui-shrink-0 ui-whitespace-nowrap ui-text-body-xs-regular ui-font-body-xs-regular ui-text-tertiary",children:i}),r.jsx("div",{className:"ui-flex-1 ui-border-t-1 ui-border-default"})]}):r.jsx("div",{className:M("ui-w-full ui-py-4",e),children:r.jsx("div",{className:"ui-border-t-1 ui-border-default"})}),jf=({title:e,className:t})=>r.jsx("span",{className:M("ui-text-body-xs-regular ui-font-body-xs-regular","ui-uppercase ui-text-tertiary",t),children:e}),wa=({title:e,items:t,className:i})=>r.jsxs("div",{className:M("ui-flex ui-w-full ui-flex-col ui-gap-16",i),children:[e&&r.jsx(di,{withText:!0,text:e}),r.jsx("div",{className:"ui-flex ui-w-full ui-flex-col ui-gap-4",children:t.map(s=>r.jsx(va,{...s},s.id))})]}),ja=({name:e,role:t,avatarProps:i,onLogout:s,className:n})=>{const o=()=>{const a=(i==null?void 0:i.type)||"people",{type:l,...u}=i||{};return r.jsx(yt,{type:a,size:"md",...u})};return r.jsxs("div",{className:M("ui-flex ui-w-full ui-flex-col ui-gap-8",n),children:[r.jsx(ai,{name:e,subtitle:t,avatar:o(),className:"ui-h-auto ui-px-0 ui-py-0"}),r.jsx(di,{}),r.jsx(Ce,{theme:"solid",color:"tertiary",size:"sm",fullWidth:!0,leftSlot:V.faArrowRightToBracket,onClick:s,children:"Cerrar sesión"})]})},Sa=({icon:e=V.faTableLayout,title:t="Mesa de trabajo",badge:i,projectId:s,clientName:n,status:o,showActions:a=!1,onOpen:l,onClose:u,className:h})=>{const[f,d]=c.useState(!1),p=f||a,m={success:"ui-bg-surface-success-hover ui-text-success",warning:"ui-bg-surface-warning-hover ui-text-warning",danger:"ui-bg-surface-danger ui-text-danger",info:"ui-bg-surface-info-hover ui-text-info"},g={success:it.faArrowUpRight,warning:it.faArrowUpRight,danger:it.faArrowUpRight,info:it.faArrowUpRight};return r.jsxs("div",{className:M("ui-flex ui-flex-col ui-gap-8 ui-p-16","ui-border-1 ui-border-default ui-bg-surface-default","ui-w-full ui-rounded-control-sm ui-transition-all",h),onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),children:[r.jsxs("div",{className:"ui-flex ui-w-full ui-items-center ui-gap-8",children:[r.jsx("div",{className:"ui-flex ui-shrink-0 ui-items-center ui-justify-center ui-rounded-control-pill ui-bg-surface-brand-hover ui-p-8",children:r.jsx(pe,{name:e,size:"md",color:"info"})}),r.jsx("span",{className:"ui-flex-1 ui-truncate ui-text-body-sm-regular ui-font-body-sm-regular ui-text-primary",children:t}),i&&r.jsx(Kt,{label:String(i.label),color:i.color||"accent",theme:i.theme||"solid",size:"sm"})]}),r.jsx(di,{}),r.jsxs("div",{className:"ui-flex ui-w-full ui-flex-col ui-items-center ui-text-center",children:[s&&r.jsx("span",{className:"ui-w-full ui-truncate ui-text-body-xs-regular ui-font-body-xs-medium ui-text-brand",children:s}),n&&r.jsxs("span",{className:"ui-w-full ui-text-body-xs-regular ui-font-body-xs-regular ui-text-tertiary",children:["Cliente: ",n]})]}),o&&r.jsx("div",{className:"ui-w-full",children:r.jsxs("div",{className:M("ui-flex ui-items-center ui-justify-center ui-gap-4","ui-h-16 ui-w-full ui-rounded-control-xs ui-px-8 ui-py-2",m[o.color]),children:[r.jsx(pe,{name:g[o.color],size:"xs",color:"current"}),r.jsx("span",{className:"ui-text-body-xs-regular ui-font-body-xs-regular",children:o.label})]})}),p&&r.jsxs("div",{className:"ui-flex ui-w-full ui-items-center ui-gap-8",children:[r.jsx(Ce,{theme:"solid",color:"tertiary",size:"xxs",fullWidth:!0,leftSlot:V.faFolderOpen,onClick:l,children:"Abrir"}),r.jsx(Ce,{theme:"solid",color:"tertiary",size:"xxs",fullWidth:!0,leftSlot:V.faXmark,onClick:u,children:"Concluir"})]})]})},Sf=({logo:e,onLogoClick:t,workspace:i,menuGroups:s=[],userProfile:n,collapsed:o=!1,onToggleCollapse:a,className:l,width:u=248})=>{const h=o?64:u;return r.jsxs("aside",{className:M("ui-imj","ui-flex ui-flex-col ui-justify-between","ui-h-full ui-bg-surface-secondary","ui-border-r-1 ui-border-default","ui-relative ui-p-16 ui-transition-all ui-duration-300",l),style:{width:h},children:[r.jsxs("div",{className:"ui-flex ui-w-full ui-flex-col ui-items-center ui-gap-8 ui-overflow-y-auto",children:[e&&r.jsx("div",{className:M("ui-flex ui-items-center ui-justify-center ui-py-8","ui-cursor-pointer"),onClick:t,children:typeof e=="string"?r.jsx("img",{src:e,alt:"Logo",className:"ui-h-40 ui-w-40 ui-rounded-control-pill ui-object-cover"}):e}),e&&r.jsx(di,{}),i&&!o&&r.jsx(Sa,{...i}),s.map((f,d)=>r.jsx(wa,{...f},f.title||`group-${d}`))]}),n&&!o&&r.jsx(ja,{...n}),a&&r.jsx("button",{className:M("ui-absolute ui-flex ui-items-center ui-justify-center","ui-size-32 ui-rounded-control-pill ui-bg-fill-brand","ui-cursor-pointer ui-transition-all ui-duration-200","hover:ui-bg-fill-brand-hover",o?"ui-right-[-16px]":"-ui-right-16"),style:{top:68,right:-16},onClick:a,children:r.jsx(pe,{name:V.faChevronLeft,size:"md",color:"white",className:M("ui-transition-transform ui-duration-300",o&&"ui-rotate-180")})})]})},fs={brand:"var(--ui-color-blue-500)",success:"var(--ui-color-green-500)",warning:"var(--ui-color-orange-500)",danger:"var(--ui-color-red-500)",info:"var(--ui-color-cyan-500)",neutral:"var(--ui-color-light-gray-500)",yellow:"var(--ui-color-yellow-500)"},Cf=["brand","success","warning","danger","info"],kf=e=>fs[e]||fs.neutral,Nf=e=>typeof e=="string"&&e in fs?e:"neutral",jr=c.memo(({data:e,index:t,width:i,color:s,isFirst:n,isLast:o,height:a,transitionDuration:l,showTooltip:u,onHover:h,onLeave:f})=>{const[d,p]=c.useState(!1),m=Math.max(0,Math.min(100,i)),g=M(n&&"ui-rounded-l-control-pill",o&&"ui-rounded-r-control-pill",!n&&!o&&"ui-rounded-none"),b=kf(s),v={flex:`0 0 ${m}%`,width:`${m}%`,minWidth:m>0&&m<.5?"1px":void 0,height:`${a}px`,maxHeight:`${a}px`,transition:`flex-basis ${l}ms ease-in-out, width ${l}ms ease-in-out`,backgroundColor:b},y=`${e.name}: ${e.percent}%`,w=()=>{p(!0),h==null||h(e,t)},x=()=>{p(!1),f==null||f(e,t)};return r.jsx("div",{className:M("ui-relative ui-h-full ui-flex-shrink-0",g),style:v,onMouseEnter:w,onMouseLeave:x,role:"progressbar","aria-valuenow":e.percent,"aria-valuemin":0,"aria-valuemax":100,"aria-label":y,children:u&&r.jsx($i,{label:y,isVisible:d,position:"bottom"})})});jr.displayName="LinearGraphicSegment";const ms={brand:"var(--ui-color-blue-500)",success:"var(--ui-color-green-500)",warning:"var(--ui-color-orange-500)",danger:"var(--ui-color-red-500)",info:"var(--ui-color-cyan-500)",neutral:"var(--ui-color-light-gray-500)",yellow:"var(--ui-color-yellow-500)"},Tf=["brand","success","warning","danger","info"],Df=e=>ms[e]||ms.neutral,Ef=e=>typeof e=="string"&&e in ms?e:"neutral",Ca=c.memo(({item:e,index:t,color:i,indicatorSize:s,gap:n,showTooltip:o,showPercent:a,tooltipPosition:l,onHover:u,onLeave:h})=>{const[f,d]=c.useState(!1),p=e.name!==null?String(e.name):"",m=Math.max(0,Math.min(100,Number(e.percent)||0)),g=Df(i),b=()=>{d(!0),u==null||u(e,t)},v=()=>{d(!1),h==null||h(e,t)};return r.jsxs("div",{className:"ui-relative ui-flex ui-cursor-default ui-items-center",onMouseEnter:b,onMouseLeave:v,style:{gap:`${n}px`},children:[r.jsx("span",{className:"ui-block ui-flex-shrink-0 ui-rounded-full",style:{width:`${s}px`,height:`${s}px`,backgroundColor:g}}),r.jsx("span",{className:"ui-text-body-sm-regular ui-text-primary",children:p}),a&&r.jsxs("span",{className:"ui-text-body-md-bold ui-font-body-md-bold ui-text-primary",children:[m,"%"]}),o&&r.jsx($i,{label:`${m}%`,isVisible:f,position:l})]})});Ca.displayName="ListWithDataInHoverItem";const Sr=c.memo(({data:e,colors:t,className:i,disabled:s=!1,indicatorSize:n=8,gap:o=4,showTooltips:a=!0,showPercent:l=!0,tooltipPosition:u="over",onItemHover:h,onItemLeave:f})=>{const d=c.useMemo(()=>!Array.isArray(e)||e.length===0?[]:e.filter(y=>y!==null&&typeof y=="object").map(y=>({name:String(y.name??""),percent:Math.max(0,Math.min(100,Number(y.percent)||0))})),[e]),p=c.useMemo(()=>!Array.isArray(t)||t.length===0?Tf:t.map(y=>Ef(y)),[t]),m=Math.max(4,Math.min(32,Number(n)||8)),g=Math.max(0,Math.min(32,Number(o)||4)),b=M("ui-flex ui-flex-wrap ui-justify-around ui-w-full",s&&"ui-opacity-50 ui-pointer-events-none",i),v={gap:`${g}px`,marginTop:"8px"};return d.length===0?r.jsx("div",{className:b,style:v,role:"list","aria-label":"Lista vacía"}):r.jsx("div",{className:M("ui-imj",b),style:v,role:"list","aria-label":"Lista con datos en hover",children:d.map((y,w)=>{const x=p[w%p.length];return r.jsx(Ca,{item:y,index:w,color:x,indicatorSize:m,gap:g,showTooltip:a,showPercent:l,tooltipPosition:u,onHover:h,onLeave:f},`list-item-${w}-${y.name}`)})})});Sr.displayName="ListWithDataInHover";const ka=c.memo(({data:e,colors:t,className:i,height:s=8,showTooltips:n=!0,showLegend:o=!1,showLegendPercent:a=!1,legendGap:l=8,transitionDuration:u=500,disabled:h=!1,onSegmentHover:f,onSegmentLeave:d})=>{const p=c.useMemo(()=>!Array.isArray(e)||e.length===0?[]:e.filter(w=>w!==null&&typeof w=="object").map(w=>({name:String(w.name??""),percent:Math.max(0,Math.min(100,Number(w.percent)||0))})).filter(w=>w.percent>0),[e]),m=c.useMemo(()=>!Array.isArray(t)||t.length===0?Cf:t.map(w=>Nf(w)),[t]),g=c.useMemo(()=>p.reduce((w,x)=>w+x.percent,0),[p]),b=c.useMemo(()=>g===0?p.map(()=>0):g>100?p.map(w=>w.percent/g*100):p.map(w=>w.percent),[p,g]),v=M("ui-relative ui-w-full",h&&"ui-opacity-50 ui-pointer-events-none",i),y={height:`${s}px`,borderRadius:"8px",backgroundColor:"var(--ui-color-neutral-200-legacy, #D9D9D9)",display:"flex",alignItems:"stretch"};return p.length===0?r.jsx("div",{className:"ui-imj ui-flex ui-w-full ui-flex-col ui-gap-8",children:r.jsx("div",{className:v,style:y,role:"progressbar","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,"aria-label":"Gráfica lineal vacía"})}):r.jsxs("div",{className:"ui-flex ui-w-full ui-flex-col ui-gap-8",children:[r.jsx("div",{className:v,style:y,role:"progressbar","aria-valuenow":g,"aria-valuemin":0,"aria-valuemax":100,"aria-label":"Gráfica lineal de progreso",children:p.map((w,x)=>{const N=m[x%m.length],k=b[x];return r.jsx(jr,{data:w,index:x,width:k,color:N,isFirst:x===0,isLast:x===p.length-1,height:s,transitionDuration:u,showTooltip:n,onHover:f,onLeave:d},`linear-graphic-segment-${x}-${w.name}`)})}),o&&r.jsx(Sr,{data:p,colors:m,gap:l,showTooltips:!0,showPercent:a,tooltipPosition:"over"})]})});ka.displayName="LinearGraphic";const Cr=c.memo(({color:e,size:t,className:i})=>{const s={width:`${t}px`,height:`${t}px`,borderRadius:"50%",backgroundColor:e,flexShrink:0};return r.jsx("div",{className:M("ui-flex-shrink-0",i),style:s,role:"presentation","aria-hidden":"true"})});Cr.displayName="TextListIndicator";const un={brand:"var(--ui-color-blue-500)",success:"var(--ui-color-green-500)",warning:"var(--ui-color-orange-500)",danger:"var(--ui-color-red-500)",info:"var(--ui-color-cyan-500)",neutral:"var(--ui-color-light-gray-500)",yellow:"var(--ui-color-yellow-500)"},If=e=>un[e]||un.neutral,Na=c.memo(({title:e,color:t,data:i,className:s,disabled:n=!1,indicatorSize:o=8,showIndicator:a=!0})=>{const l=e!==null?String(e):"",u=i!==null?String(i):"",h=If(t),f=Math.max(4,Math.min(32,Number(o)||8)),d=M("ui-flex ui-flex-wrap ui-items-center ui-justify-between ui-w-full ui-gap-4",n&&"ui-opacity-50 ui-pointer-events-none",s);return r.jsxs("div",{className:M("ui-imj",d),role:"listitem",children:[r.jsxs("div",{className:"ui-flex ui-items-center ui-gap-4",children:[a&&r.jsx(Cr,{color:h,size:f}),l&&r.jsx(gr,{type:"body",size:"sm",color:"primary",children:l})]}),u&&r.jsx(oi,{className:"ui-text-heading-h6 ui-font-heading-h6 ui-leading-heading-h6 ui-tracking-heading-h6 ui-text-primary",children:u})]})});Na.displayName="TextListWithData";function be(e,t){return typeof e.get=="function"?e.get(t):e[t]}function cn(e){return typeof e.count=="function"?e.count():e.length}function rs(e,t){return cn(e)===cn(t)&&e.every((i,s)=>i===be(t,s.toString()))}function Mf(e,t){const i={};return e.forEach(s=>{i[s[t]]=s}),i}function ns(){}function Wt(...e){return(t,...i)=>{t.preventDefault(),e.forEach(s=>s&&s(t,...i))}}function Rf({item:e,itemContext:t,getItemProps:i,getResizeProps:s}){const{left:n,right:o}=s(),a=i(e.itemProps),{key:l,...u}=a;return r.jsxs("div",{...u,children:[t.useResizeHandle?r.jsx("div",{...n}):"",r.jsx("div",{className:"rct-item-content",style:{maxHeight:`${t.dimensions.height}`},children:t.title}),t.useResizeHandle?r.jsx("div",{...o}):""]},l)}function hs(e,t,i){return(t-e)/i}function Di(e,t,i,s){const n=i/(t-e);return(s-e)*n}function kr(e,t,i,s){return(t-e)/i*s+e}function Nr(e,t,i,s,n){let o=jt(e).startOf(i);if(s[i]&&s[i]>1){const a=o.get(i);o.set(i,a-a%s[i])}for(;o.valueOf()<t;){const a=jt(o).add(s[i]||1,i);n(o,a),o=a}}const ps=17;function xi(e,t,i){const s={second:1e3,minute:60,hour:60,day:24,month:30,year:12};let n="year",o=e;return Object.keys(s).some(a=>{const l=a;o=o/s[l];const u=o/i[l],h=i[l]&&i[l]>1?3*ps:ps,f=t/h;if(u<f)return n=a,!0}),n}const gs={second:"minute",minute:"hour",hour:"day",day:"month",month:"year",year:"year"};function Tr(e){if(!gs[e])throw new Error(`unit ${e} is not acceptable`);return gs[e]}function Ta({itemTimeStart:e,itemTimeEnd:t,dragTime:i,isDragging:s,isResizing:n,resizingEdge:o,resizeTime:a}){const l=t-e;return[s&&i?i:n&&o==="left"&&a?a:e,s&&i?i+l:n&&o==="right"&&a?a:t]}function Da({itemTimeStart:e,itemTimeEnd:t,canvasTimeStart:i,canvasTimeEnd:s,canvasWidth:n}){const o=t-e,a=Math.max(e,i),l=Math.min(t,s),u=Di(i,s,n,a),f=Di(i,s,n,l)-u;return{left:u,width:Math.max(f,3),collisionLeft:e,collisionWidth:o}}function Dr(e,t){const{groupIdKey:i}=t,s={};for(let n=0;n<e.length;n++)s[be(e[n],i)]={index:n,group:e[n]};return s}function Ea(e,t){var n,o;const i={},s=Object.keys(t);for(let a=0;a<s.length;a++){const l=t[s[a]];i[a]={index:l.index,group:l.group,items:[]}}for(let a=0;a<e.length;a++)if(e[a].dimensions!==void 0&&((n=e[a].dimensions)==null?void 0:n.order)!==void 0){const l=i[((o=e[a].dimensions)==null?void 0:o.order.index)??0];l&&l.items.push(e[a])}return i}function Er(e,t,i,s){const{itemTimeStartKey:n,itemTimeEndKey:o}=s;return e.filter(a=>{const l=jt(be(a,n)).valueOf()<=i,u=jt(be(a,o)).valueOf()>=t;return l&&u})}const zf=.001;function Ia(e,t,i=zf){return e.collisionLeft+i<t.collisionLeft+t.collisionWidth&&e.collisionLeft+e.collisionWidth-i>t.collisionLeft&&e.top-0+i<t.top+t.height&&e.top+e.height+0-i>t.top}function Ma(e,t,i,s,n,o){let a=s;const l=(e-t.dimensions.height)/2;if(t.dimensions.stack&&t.dimensions.top===null){t.dimensions.top=n+l,a=Math.max(a,e);do{var u=null;for(let h=o-1,f=0;h>=f;h--){const d=i[h];if(d.dimensions.top!==null&&d.dimensions.stack&&Ia(t.dimensions,d.dimensions)){u=d;break}}u!=null&&(t.dimensions.top=u.dimensions.top+e,a=Math.max(a,t.dimensions.top+t.dimensions.height+l-n))}while(u)}return{groupHeight:a,verticalMargin:l,itemTop:t.dimensions.top}}function Ra(e,t,i,s){var o,a;const n=(e-(((o=t.dimensions)==null?void 0:o.height)??1))/2;return t.dimensions&&t.dimensions.top===null&&(t.dimensions.top=s+n,i=Math.max(i,e)),{groupHeight:i,verticalMargin:0,itemTop:((a=t.dimensions)==null?void 0:a.top)??0}}function dn(e=[]){return e.reduce((t,i)=>t+i,0)}function za(e,t,i,s){const n=[],o=[],a=Ea(e,t);for(const l in a){const u=a[l],{items:h,group:f}=u,d=dn(n),p=f.stackItems!==void 0?f.stackItems:s,{groupHeight:m}=La(h,p,i,d);o.push(d),f.height?n.push(f.height):n.push(Math.max(m,i))}return{height:dn(n),groupHeights:n,groupTops:o}}function La(e,t,i,s){let n=0,o=0;for(let a=0;a<e.length;a++){const l=t?Ma(i,e[a],e,n,s,a):Ra(i,e[a],n,s);n=l.groupHeight,o=l.verticalMargin}return{groupHeight:n,verticalMargin:o}}function Yt(e,t,i,s,n,o,a,l,u,h,f,d,p,m,g){const v=Er(e,s,n,o).map(C=>Pa({item:C,keys:o,draggingItem:h,resizingItem:f,dragTime:d,resizingEdge:p,resizeTime:m,groups:t,newGroupOrder:g}));if(t.length===0)return{dimensionItems:[],height:0,groupHeights:[],groupTops:[]};const y=Dr(t,o),w=v.map(C=>$a({item:C,keys:o,canvasTimeStart:s,canvasTimeEnd:n,canvasWidth:i,groupOrders:y,lineHeight:a,itemHeightRatio:l})).filter(C=>!!C),{height:x,groupHeights:N,groupTops:k}=za(w,y,a,u);return{dimensionItems:w,height:x,groupHeights:N,groupTops:k}}function Et(e,t){return e*t}function $a({item:e,keys:t,canvasTimeStart:i,canvasTimeEnd:s,canvasWidth:n,groupOrders:o,lineHeight:a,itemHeightRatio:l}){const u=be(e,t.itemIdKey),h=Da({itemTimeStart:be(e,t.itemTimeStartKey),itemTimeEnd:be(e,t.itemTimeEndKey),canvasTimeStart:i,canvasTimeEnd:s,canvasWidth:n});if(h)return h.top=null,h.order=o[be(e,t.itemGroupKey)],h.stack=!e.isOverlay,h.height=a*l,{id:u,dimensions:h}}function Pa({item:e,keys:t,draggingItem:i,resizingItem:s,dragTime:n,resizingEdge:o,resizeTime:a,groups:l,newGroupOrder:u}){if(!s&&!i)return e;const h=be(e,t.itemIdKey),f=h===i,d=h===s,[p,m]=Ta({itemTimeStart:be(e,t.itemTimeStartKey),itemTimeEnd:be(e,t.itemTimeEndKey),isDragging:f,isResizing:d,dragTime:n,resizingEdge:o,resizeTime:a});return{...e,[t.itemTimeStartKey]:p,[t.itemTimeEndKey]:m,[t.itemGroupKey]:f?be(l[u],t.groupIdKey):be(e,t.itemGroupKey)}}function Ir(e,t,i){const s=t-e,n=e-s*(i-1)/2,o=n+s*i;return[n,o]}function bs(e,t,i,s,n,o,a){const l=o.buffer,u=a.canvasTimeStart,h=a.canvasTimeEnd,f=a.visibleTimeEnd-a.visibleTimeStart,d=t-e,p={...a,visibleTimeStart:e,visibleTimeEnd:t};if(!(d===f&&e>=u+f*.5&&e<=h-f*1.5&&t>=u+f*1.5&&t<=h-f*.5)||i){const[g,b]=Ir(e,t,l);p.canvasTimeStart=g,p.canvasTimeEnd=b;const v={...a,...p},y=Et(v.width,o.buffer);Object.assign(p,Yt(s,n,y,v.canvasTimeStart,v.canvasTimeEnd,o.keys,o.lineHeight,o.itemHeightRatio,o.stackItems,v.draggingItem,v.resizingItem,v.dragTime,v.resizingEdge,v.resizeTime,v.newGroupOrder))}return p}const Lf=Object.freeze(Object.defineProperty({__proto__:null,NEXT_UNITS:gs,calculateDimensions:Da,calculateInteractionNewTimes:Ta,calculateScrollCanvas:bs,calculateTimeForXPosition:kr,calculateXPositionForTime:Di,collision:Ia,coordinateToTimeRatio:hs,getCanvasBoundariesFromVisibleTime:Ir,getCanvasWidth:Et,getGroupOrders:Dr,getGroupedItems:Ea,getItemDimensions:$a,getItemWithInteractions:Pa,getMinUnit:xi,getNextUnit:Tr,getVisibleItems:Er,groupNoStack:Ra,groupStack:Ma,iterateTimes:Nr,minCellWidth:ps,stackAll:za,stackGroup:La,stackTimelineItems:Yt},Symbol.toStringTag,{value:"Module"}));function fn(e){let t=0,i=0,s=!0;for(;e;)!e.offsetParent&&e.tagName==="BODY"&&e.scrollLeft===0&&e.scrollTop===0&&(e=document.scrollingElement||e),t+=e.offsetLeft-(s?0:e.scrollLeft)+e.clientLeft,i+=e.offsetTop-(s?0:e.scrollTop)+e.clientTop,e=e.offsetParent,s=!1;return{x:t,y:i}}function xs(e){if(e===document.body)return{scrollLeft:0,scrollTop:0};{const t=xs(e.parentNode);return{scrollLeft:e.scrollLeft+t.scrollLeft,scrollTop:e.scrollTop+t.scrollTop}}}function ys(e){if(e===document.body||!e.offsetParent)return{offsetLeft:0,offsetTop:0};{const t=ys(e.offsetParent);return{offsetLeft:e.offsetLeft+t.offsetLeft,offsetTop:e.offsetTop+t.offsetTop}}}const $f={fontSize:12,color:"white",cursor:"pointer",background:"#2196f3",border:"1px solid #1a6fb3",zIndex:10},Pf={background:"#ffc107",border:"1px solid #ff9800",zIndex:10},Of={willChange:"left, top, width",cursor:"move"},Af={borderLeftWidth:3},Ff={cursor:"w-resize"},Wf={borderRightWidth:3},Bf={cursor:"e-resize"},Vf={position:"absolute",width:24,maxWidth:"20%",minWidth:2,height:"100%",top:0,left:0,cursor:"pointer",zIndex:88},Hf={position:"absolute",width:24,maxWidth:"20%",minWidth:2,height:"100%",top:0,right:0,cursor:"pointer",zIndex:88},_f={getTimelineState:()=>(console.warn('"getTimelineState" default func is being used'),{}),getLeftOffsetFromDate:()=>(console.warn('"getLeftOffsetFromDate" default func is being used'),0),getDateFromLeftOffsetPosition:()=>(console.warn('"getDateFromLeftOffsetPosition" default func is being used'),0),showPeriod:()=>{console.warn('"showPeriod" default func is being used')}},Yi=c.createContext(_f);function Oa(e){const{visibleTimeStart:t,visibleTimeEnd:i,canvasTimeStart:s,canvasTimeEnd:n,canvasWidth:o,showPeriod:a,timelineUnit:l,timelineWidth:u}=e,h=c.useMemo(()=>({getTimelineState:()=>({visibleTimeStart:t,visibleTimeEnd:i,canvasTimeStart:s,canvasTimeEnd:n,canvasWidth:o,timelineUnit:l,timelineWidth:u}),getLeftOffsetFromDate:f=>Di(s,n,o,f),getDateFromLeftOffsetPosition:f=>kr(s,n,o,f),showPeriod:a}),[t,i,s,n,o,l,u,a]);return r.jsx(Yi.Provider,{value:h,children:e.children})}Oa.displayName="TimelineStateProvider";const Ui=Yi.Consumer,qf=()=>c.useContext(Yi);jt.extend(pl);const Ri=class Ri extends c.Component{constructor(t){super(t),this.state={interactMounted:!1,dragging:!1,dragStart:null,preDragPosition:null,dragTime:null,dragGroupDelta:null,resizing:!1,resizeEdge:null,resizeStart:null,resizeTime:null},this.itemId="",this.itemTitle="",this.startedClicking=!1,this.startedTouching=!1,this.dragInProgress=!1,this.fireInteractEvent=i=>{if(this.item){const s=new CustomEvent("itemInteraction",{bubbles:!0,detail:{itemInteraction:i}});this.item.dispatchEvent(s)}},this.onMouseDown=i=>{this.state.interactMounted||(i.preventDefault(),this.startedClicking=!0)},this.onMouseUp=i=>{!this.state.interactMounted&&this.startedClicking&&(this.startedClicking=!1,this.actualClick(i,"click"))},this.onTouchStart=i=>{this.state.interactMounted||(i.preventDefault(),this.startedTouching=!0)},this.onTouchEnd=i=>{!this.state.interactMounted&&this.startedTouching&&(this.startedTouching=!1,this.actualClick(i,"touch"))},this.handleDoubleClick=i=>{i.stopPropagation(),this.props.onItemDoubleClick&&this.props.onItemDoubleClick(this.itemId,i)},this.handleContextMenu=i=>{this.props.onContextMenu&&(i.preventDefault(),i.stopPropagation(),this.props.onContextMenu(this.itemId,i))},this.getItemRef=i=>this.item=i,this.getDragLeftRef=i=>this.dragLeft=i,this.getDragRightRef=i=>this.dragRight=i,this.getItemProps=(i={})=>{const s="rct-item"+(this.props.item.className?` ${this.props.item.className}`:"");return{key:this.itemId,ref:this.getItemRef,title:this.itemDivTitle,className:s+` ${i.className?i.className:""}`,onMouseDown:Wt(this.onMouseDown,i.onMouseDown),onMouseUp:Wt(this.onMouseUp,i.onMouseUp),onTouchStart:Wt(this.onTouchStart,i.onTouchStart),onTouchEnd:Wt(this.onTouchEnd,i.onTouchEnd),onDoubleClick:Wt(this.handleDoubleClick,i.onDoubleClick),onContextMenu:Wt(this.handleContextMenu,i.onContextMenu),style:Object.assign({},this.getItemStyle(i))}},this.getResizeProps=(i={})=>{let s="rct-item-handler rct-item-handler-left rct-item-handler-resize-left";i.leftClassName&&(s+=` ${i.leftClassName}`);let n="rct-item-handler rct-item-handler-right rct-item-handler-resize-right";return i.rightClassName&&(n+=` ${i.rightClassName}`),{left:{ref:this.getDragLeftRef,className:s,style:Object.assign({},Vf,i.leftStyle)},right:{ref:this.getDragRightRef,className:n,style:Object.assign({},Hf,i.rightStyle)}}},this.cacheDataFromProps(t)}shouldComponentUpdate(t,i){return!_r(this.props,t)||!_r(this.state,i)}cacheDataFromProps(t){this.itemId=be(t.item,t.keys.itemIdKey),this.itemTitle=be(t.item,t.keys.itemTitleKey),this.itemDivTitle=t.keys.itemDivTitleKey?be(t.item,t.keys.itemDivTitleKey):this.itemTitle,this.itemTimeStart=be(t.item,t.keys.itemTimeStartKey),this.itemTimeEnd=be(t.item,t.keys.itemTimeEndKey)}getTimeRatio(){const{canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s}=this.props;return hs(t,i,s)}dragTimeSnap(t,i){const{dragSnap:s}=this.props;if(s){const n=i?jt().utcOffset()*60*1e3:0;return Math.round(t/s)*s-n%s}else return t}resizeTimeSnap(t){const{dragSnap:i}=this.props;if(i){const s=this.itemTimeEnd%i;return Math.round((t-s)/i)*i+s}else return t}dragTime(t){const i=jt(this.itemTimeStart);return this.state.dragging?this.dragTimeSnap(this.timeFor(t)+this.state.dragStart.offset,!0):i.valueOf()}timeFor(t){const i=hs(this.props.canvasTimeStart,this.props.canvasTimeEnd,this.props.canvasWidth),s=ys(this.props.scrollRef).offsetLeft,n=xs(this.props.scrollRef);return(t.pageX-s+n.scrollLeft)*i+this.props.canvasTimeStart}dragGroupDelta(t){const{groupTops:i,order:s}=this.props;if(this.state.dragging){if(!this.props.canChangeGroup)return 0;let n=0;const o=ys(this.props.scrollRef).offsetTop,a=xs(this.props.scrollRef);for(const l of Object.keys(i)){const u=i[l];if(t.pageY-o+a.scrollTop>u)n=parseInt(l,10)-s.index;else break}return this.props.order.index+n<0?0-this.props.order.index:n}else return 0}resizeTimeDelta(t,i){const s=this.itemTimeEnd-this.itemTimeStart,n=this.dragTimeSnap((t.pageX-this.state.resizeStart)*this.getTimeRatio());return s+(i==="left"?-n:n)<(this.props.dragSnap||1e3)?i==="left"?s-(this.props.dragSnap||1e3):(this.props.dragSnap||1e3)-s:n}mountInteract(){const t=this.props.useResizeHandle?".rct-item-handler-resize-left":!0,i=this.props.useResizeHandle?".rct-item-handler-resize-right":!0;is(this.item).resizable({edges:{left:this.canResizeLeft()&&t,right:this.canResizeRight()&&i,top:!1,bottom:!1},enabled:this.props.selected&&(this.canResizeLeft()||this.canResizeRight())}).draggable({enabled:this.props.selected&&this.canMove()}).styleCursor(!1).on("dragstart",s=>{if(this.props.selected){this.dragInProgress=!0,this.fireInteractEvent(!0);const n=this.timeFor(s);this.setState({dragging:!0,dragStart:{x:s.pageX,y:s.pageY,offset:this.itemTimeStart-n},preDragPosition:{x:s.target.offsetLeft,y:s.target.offsetTop},dragTime:this.itemTimeStart,dragGroupDelta:0})}else return!1}).on("dragmove",s=>{this.state.dragging&&this.setState(n=>{if(!this.dragInProgress)return{...n};let o=this.dragTime(s);const a=this.dragGroupDelta(s);return this.props.moveResizeValidator&&(o=this.props.moveResizeValidator("move",this.props.item,o)),this.props.onDrag&&this.props.onDrag(this.itemId,o,this.props.order.index+a),{dragTime:o,dragGroupDelta:a}})}).on("dragend",s=>{if(this.state.dragging){if(this.props.onDrop){this.dragInProgress=!1,this.fireInteractEvent(!1);let n=this.dragTime(s);this.props.moveResizeValidator&&(n=this.props.moveResizeValidator("move",this.props.item,n)),this.props.onDrop(this.itemId,n,this.props.order.index+this.dragGroupDelta(s))}this.setState({dragging:!1,dragStart:null,preDragPosition:null,dragTime:null,dragGroupDelta:null})}}).on("resizestart",s=>{if(this.props.selected)this.fireInteractEvent(!0),this.setState({resizing:!0,resizeEdge:null,resizeStart:s.pageX,resizeTime:0});else return!1}).on("resizemove",s=>{if(this.state.resizing){let n=this.state.resizeEdge;n||(n=s.deltaRect.left!==0?"left":"right",this.setState({resizeEdge:n}));let o=this.resizeTimeSnap(this.timeFor(s));this.props.moveResizeValidator&&(o=this.props.moveResizeValidator("resize",this.props.item,o,n)),this.props.onResizing&&this.props.onResizing(this.itemId,o,n),this.setState({resizeTime:o})}}).on("resizeend",s=>{if(this.state.resizing){this.fireInteractEvent(!1);const{resizeEdge:n}=this.state;let o=this.resizeTimeSnap(this.timeFor(s));this.props.moveResizeValidator&&(o=this.props.moveResizeValidator("resize",this.props.item,o,n)),this.props.onResized&&this.props.onResized(this.itemId,o,n,this.resizeTimeDelta(s,n)),this.setState({resizing:!1,resizeStart:null,resizeEdge:null,resizeTime:null})}}).on("tap",s=>{this.actualClick(s,s.pointerType==="mouse"?"click":"touch")}),this.setState({interactMounted:!0})}canResizeLeft(t=this.props){var s;return!t.canResizeLeft||t.minResizeWidth===void 0?!1:parseInt((s=t.dimensions.width)==null?void 0:s.toString(),10)>=t.minResizeWidth}canResizeRight(t=this.props){var s;return!t.canResizeRight||t.minResizeWidth===void 0?!1:parseInt((s=t.dimensions.width)==null?void 0:s.toString(),10)>=t.minResizeWidth}canMove(t=this.props){return!!t.canMove}componentDidUpdate(t){this.cacheDataFromProps(this.props);let{interactMounted:i}=this.state;const s=t.selected&&this.canMove(t),n=t.selected&&this.canResizeLeft(t),o=t.selected&&this.canResizeRight(t),a=this.props.selected&&this.canMove(this.props),l=this.props.selected&&this.canResizeLeft(this.props),u=this.props.selected&&this.canResizeRight(this.props);if(this.item){if(this.props.selected&&!i&&(this.mountInteract(),i=!0),i&&(n!==l||o!==u)){const h=this.props.useResizeHandle?this.dragLeft:!0,f=this.props.useResizeHandle?this.dragRight:!0;is(this.item).resizable({enabled:l||u,edges:{top:!1,bottom:!1,left:l&&h,right:u&&f}})}i&&s!==a&&is(this.item).draggable({enabled:a})}else i=!1;i!==this.state.interactMounted&&this.setState({interactMounted:i})}actualClick(t,i){this.props.canSelect&&this.props.onSelect&&this.props.onSelect(this.itemId,i,t)}getItemStyle(t){const i=this.props.dimensions,s={position:"absolute",boxSizing:"border-box",left:`${i.left}px`,top:`${i.top}px`,width:`${i.width}px`,height:`${i.height}px`,lineHeight:`${i.height}px`};return Object.assign({},$f,this.props.selected?Pf:{},this.props.selected&&this.canMove(this.props)?Of:{},this.props.selected&&this.canResizeLeft(this.props)?Af:{},this.props.selected&&this.canResizeLeft(this.props)&&this.state.dragging?Ff:{},this.props.selected&&this.canResizeRight(this.props)?Wf:{},this.props.selected&&this.canResizeRight(this.props)&&this.state.dragging?Bf:{},t.style,s)}render(){var s,n;if(typeof this.props.order>"u"||this.props.order===null)return null;const t=this.context,i={dimensions:this.props.dimensions,useResizeHandle:!!this.props.useResizeHandle,title:this.itemTitle,canMove:this.canMove(this.props),canResizeLeft:this.canResizeLeft(this.props),canResizeRight:this.canResizeRight(this.props),selected:this.props.selected,dragging:this.state.dragging,dragStart:this.state.dragStart,dragTime:this.state.dragTime,dragGroupDelta:this.state.dragGroupDelta,resizing:this.state.resizing,resizeEdge:this.state.resizeEdge,resizeStart:this.state.resizeStart,resizeTime:this.state.resizeTime};return(n=(s=this.props)==null?void 0:s.itemRenderer)==null?void 0:n.call(s,{item:this.props.item,timelineContext:t,itemContext:i,getItemProps:this.getItemProps,getResizeProps:this.getResizeProps})}};Ri.defaultProps={selected:!1,itemRenderer:Rf},Ri.contextType=Yi;let vs=Ri;function Yf(e,t){const i=be(e,"canResize")!==void 0?be(e,"canResize"):t;return i==="left"||i==="both"}function Uf(e,t){const i=be(e,"canResize")!==void 0?be(e,"canResize"):t;return i==="right"||i==="both"||i===!0}class Aa extends c.Component{shouldComponentUpdate(t){return!(rs(t.groups,this.props.groups)&&rs(t.items,this.props.items)&&rs(t.dimensionItems,this.props.dimensionItems)&&t.keys===this.props.keys&&t.canvasTimeStart===this.props.canvasTimeStart&&t.canvasTimeEnd===this.props.canvasTimeEnd&&t.canvasWidth===this.props.canvasWidth&&t.selectedItem===this.props.selectedItem&&t.selected===this.props.selected&&t.dragSnap===this.props.dragSnap&&t.minResizeWidth===this.props.minResizeWidth&&t.canChangeGroup===this.props.canChangeGroup&&t.canMove===this.props.canMove&&t.canResize===this.props.canResize&&t.canSelect===this.props.canSelect)}isSelected(t,i){if(this.props.selected){const s=be(t,i);return this.props.selected.includes(s)}else return this.props.selectedItem===be(t,i)}getVisibleItems(t,i){const{keys:s,items:n}=this.props;return Er(n,t,i,s)}render(){const{canvasTimeStart:t,canvasTimeEnd:i,dimensionItems:s,keys:n,groups:o}=this.props,{itemIdKey:a,itemGroupKey:l}=n,u=Dr(o,n),h=this.getVisibleItems(t,i),f=Mf(s,"id");return r.jsx("div",{className:"rct-items",children:h.filter(d=>f[be(d,a)]).map(d=>r.jsx(vs,{itemProps:d.itemProps,item:d,keys:this.props.keys,order:u[be(d,l)],dimensions:f[be(d,a)].dimensions,selected:this.isSelected(d,a),canChangeGroup:be(d,"canChangeGroup")!==void 0?be(d,"canChangeGroup"):this.props.canChangeGroup,canMove:be(d,"canMove")!==void 0?be(d,"canMove"):this.props.canMove,canResizeLeft:Yf(d,this.props.canResize),canResizeRight:Uf(d,this.props.canResize),canSelect:be(d,"canSelect")!==void 0?be(d,"canSelect"):this.props.canSelect,useResizeHandle:this.props.useResizeHandle,groupTops:this.props.groupTops,canvasTimeStart:this.props.canvasTimeStart,canvasTimeEnd:this.props.canvasTimeEnd,canvasWidth:this.props.canvasWidth,dragSnap:this.props.dragSnap,minResizeWidth:this.props.minResizeWidth,onResizing:this.props.itemResizing,onResized:this.props.itemResized,moveResizeValidator:this.props.moveResizeValidator,onDrag:this.props.itemDrag,onDrop:this.props.itemDrop,onItemDoubleClick:this.props.onItemDoubleClick,onContextMenu:this.props.onItemContextMenu,onSelect:this.props.itemSelect,itemRenderer:this.props.itemRenderer,scrollRef:this.props.scrollRef},be(d,a)))})}}function Gf(e,t,i,s,n){return n?n({group:e,isRightSidebar:t}):be(e,t?s:i)}function ws({groups:e,width:t,height:i,groupHeights:s,keys:n,groupRenderer:o,isRightSidebar:a=!1}){const{groupIdKey:l,groupTitleKey:u,groupRightTitleKey:h}=n,f={width:`${t}px`,height:`${i}px`},d={width:`${t}px`},p=e.map((m,g)=>{const b={height:`${s[g]}px`,lineHeight:`${s[g]}px`};return r.jsx("div",{className:"rct-sidebar-row rct-sidebar-row-"+(g%2===0?"even":"odd"),style:b,children:Gf(m,a,u,h,o)},String(be(m,l)))});return r.jsx("div",{className:"rct-sidebar"+(a?" rct-sidebar-right":""),style:f,children:r.jsx("div",{style:d,children:p})})}ws.displayName="Sidebar";function Kf({canvasTimeStart:e,canvasTimeEnd:t,minUnit:i,timeSteps:s,height:n,verticalLineClassNamesForTime:o,getLeftOffsetFromDate:a}){const l=[];return Nr(e,t,i,s,(u,h)=>{const d=u.get(i==="day"?"date":i)===(i==="day"?1:0);let p=[];o&&(p=o(u.unix()*1e3,h.unix()*1e3-1));const m="rct-vl"+(d?" rct-vl-first":"")+(i==="day"||i==="hour"||i==="minute"?` rct-day-${u.day()} `:" ")+p.join(" "),g=a(u.valueOf()),b=a(h.valueOf());l.push(r.jsx("div",{className:m,style:{pointerEvents:"none",top:"0px",left:`${g}px`,width:`${b-g}px`,height:`${n}px`}},`line-${u.valueOf()}`))}),r.jsx("div",{className:"rct-vertical-lines",children:l})}function Fa(e){return r.jsx(Ui,{children:({getLeftOffsetFromDate:t})=>r.jsx(Kf,{getLeftOffsetFromDate:t,...e})})}Fa.displayName="ColumnsWrapper";function Wa({children:e,onClick:t,clickTolerance:i}){const s=c.useRef(null),n=c.useRef(!1),o=c.useCallback(h=>{s.current=h.clientX},[]),a=c.useCallback(h=>{i!==void 0&&s.current!==null&&Math.abs(s.current-h.clientX)>i&&(n.current=!0)},[i]),l=c.useCallback(h=>{n.current||t(h),n.current=!1,s.current=null},[t]),u=c.Children.only(e);return c.cloneElement(u,{onMouseDown:o,onMouseUp:a,onClick:l})}Wa.displayName="PreventClickOnDrag";function Mr({onContextMenu:e,onDoubleClick:t,isEvenRow:i,style:s,onClick:n,clickTolerance:o,horizontalLineClassNamesForGroup:a,group:l}){let u=[];return a&&(u=a(l)),r.jsx(Wa,{clickTolerance:o,onClick:n,children:r.jsx("div",{onContextMenu:e,onDoubleClick:t,className:(i?"rct-hl-even ":"rct-hl-odd ")+(u?u.join(" "):""),style:s})})}Mr.displayName="GroupRow";function Ba({canvasWidth:e,lineCount:t,groupHeights:i,onRowClick:s,onRowDoubleClick:n,clickTolerance:o,groups:a,horizontalLineClassNamesForGroup:l,onRowContextClick:u}){const h=[];for(let f=0;f<t;f+=1)h.push(r.jsx(Mr,{clickTolerance:o,onContextMenu:d=>u(d,f),onClick:d=>s(d,f),onDoubleClick:d=>n(d,f),isEvenRow:f%2===0,group:a[f],horizontalLineClassNamesForGroup:l,style:{width:`${e}px`,height:`${i[f]}px`}},`horizontal-line-${f}`));return r.jsx("div",{className:"rct-horizontal-lines",children:h})}Ba.displayName="GroupRows";function Va({width:e,height:t,scrollRef:i,onZoom:s,onWheelZoom:n,onScroll:o,children:a}){const l=c.useRef(null),[u,h]=c.useState(!1),f=c.useRef(null),d=c.useRef(null),p=c.useRef(null),m=c.useRef(null),g=c.useRef(!1),b=c.useCallback(()=>{l.current&&o(l.current.scrollLeft)},[o]),v=c.useRef(n),y=c.useRef(o);v.current=n,y.current=o;const w=c.useCallback(R=>{const z=R.currentTarget;if(R.ctrlKey||R.metaKey||R.altKey){R.preventDefault();const $=fn(z),F=R.clientX-$.x,W=R.ctrlKey?10:R.metaKey?3:1;v.current(W,F,R.deltaY)}else R.shiftKey&&(R.preventDefault(),l.current&&y.current(l.current.scrollLeft+(R.deltaY||R.deltaX)))},[]),x=c.useCallback(R=>{g.current=R.detail.itemInteraction},[]),N=c.useCallback(R=>{l.current&&(l.current.removeEventListener("wheel",w),l.current.removeEventListener("itemInteraction",x)),l.current=R,R&&i(R),R&&(R.addEventListener("wheel",w,{passive:!1}),R.addEventListener("itemInteraction",x))},[i,w,x]);c.useEffect(()=>()=>{const R=l.current;R&&(R.removeEventListener("wheel",w),R.removeEventListener("itemInteraction",x))},[w]);const k=c.useCallback(R=>{R.button===0&&(f.current=R.pageX,h(!0))},[]),C=c.useCallback(R=>{u&&!g.current&&f.current!==null&&(l.current&&o(l.current.scrollLeft+f.current-R.pageX),f.current=R.pageX)},[u,o]),T=c.useCallback(()=>{f.current=null,h(!1)},[]),S=c.useCallback(()=>{f.current=null,h(!1)},[]),D=c.useCallback(R=>{if(R.touches.length===2)R.preventDefault(),d.current=Math.abs(R.touches[0].screenX-R.touches[1].screenX),p.current=null,m.current=null;else if(R.touches.length===1){R.preventDefault();const z=R.touches[0].clientX,$=R.touches[0].clientY;d.current=null,p.current={x:z,y:$,screenY:window.pageYOffset},m.current={x:z,y:$,screenY:window.pageYOffset}}},[]),I=c.useCallback(R=>{if(g.current){R.preventDefault();return}if(d.current!==null&&R.touches.length===2){R.preventDefault();const z=Math.abs(R.touches[0].screenX-R.touches[1].screenX),$=fn(R.currentTarget),F=(R.touches[0].screenX+R.touches[1].screenX)/2-$.x;z!==0&&d.current!==0&&(s(d.current/z,F/e),d.current=z)}else if(m.current!==null&&p.current!==null&&R.touches.length===1){R.preventDefault();const z=R.touches[0].clientX,$=R.touches[0].clientY,F=z-m.current.x,W=z-p.current.x,L=$-p.current.y;m.current={x:z,y:$,screenY:window.pageYOffset};const P=Math.abs(W)*3>Math.abs(L),B=Math.abs(L)*3>Math.abs(W);F!==0&&P&&l.current&&o(l.current.scrollLeft-F),B&&window.scrollTo(window.pageXOffset,p.current.screenY-L)}},[s,o,e]),j=c.useCallback(()=>{d.current=null,m.current=null,p.current=null},[]),E={width:`${e}px`,height:`${t+20}px`,cursor:u?"move":"default",position:"relative"};return r.jsx("div",{ref:N,"data-testid":"scroll-element",className:"rct-scroll",style:E,onMouseDown:k,onMouseMove:C,onMouseUp:T,onMouseLeave:S,onTouchStart:D,onTouchMove:I,onTouchEnd:j,onScroll:b,children:a})}Va.displayName="ScrollElement";const Xf={subscribeToMouseOver:()=>(console.warn('"subscribeToMouseOver" default func is being used'),()=>{})},{Consumer:Qf,Provider:Zf}=c.createContext(Xf),Jf=Zf,em=Qf,tm={markers:[],subscribeMarker:()=>(console.warn("default subscribe marker used"),{unsubscribe:ns,getMarker:ns}),updateMarker:()=>(console.warn("default subscribe marker used"),ns)},Ha=c.createContext(tm);let mn=0;const im=()=>(mn+=1,mn+1);function _a(e){const[t,i]=c.useState([]),s=c.useCallback(a=>{const l={...a,id:im()};return i(u=>[...u,l]),{unsubscribe:()=>{i(u=>u.filter(h=>h.id!==l.id))},getMarker:()=>l}},[]),n=c.useCallback(a=>{i(l=>{const u=l.findIndex(h=>h.id===a.id);return u<0?l:[...l.slice(0,u),a,...l.slice(u+1)]})},[]),o={markers:t,subscribeMarker:s,updateMarker:n};return r.jsx(Ha.Provider,{value:o,children:e.children})}_a.displayName="TimelineMarkersProvider";const Gi=Ha.Consumer;var Bt=(e=>(e.Today="Today",e.Custom="Custom",e.Cursor="Cursor",e))(Bt||{});const sm={position:"absolute",top:0,bottom:0,width:"2px",backgroundColor:"black",pointerEvents:"none"},Rr=e=>({...sm,left:e}),zr=e=>function({styles:i}){return r.jsx("div",{style:i,"data-testid":e})},rm=zr("default-today-line"),Or=class Or extends c.Component{constructor(){super(...arguments),this.state={date:Date.now()}}componentDidMount(){this.intervalToken=this.createIntervalUpdater(this.props.interval)}componentDidUpdate(t){t.interval!==this.props.interval&&(clearInterval(this.intervalToken),this.intervalToken=this.createIntervalUpdater(this.props.interval))}createIntervalUpdater(t){return setInterval(()=>{this.setState({date:Date.now()})},t)}componentWillUnmount(){clearInterval(this.intervalToken)}render(){const{date:t}=this.state,i=this.props.getLeftOffsetFromDate(t),s=Rr(i);return this.props.renderer({styles:s,date:t})}};Or.defaultProps={renderer:rm};let js=Or;const nm=zr("default-customer-marker-id"),Ar=class Ar extends c.Component{render(){const{date:t}=this.props,i=this.props.getLeftOffsetFromDate(t),s=Rr(i);return this.props.renderer({styles:s,date:t})}};Ar.defaultProps={renderer:nm};let Ss=Ar;const om=zr("default-cursor-marker"),Fr=class Fr extends c.Component{constructor(t){super(t),this.handleCanvasMouseOver=({leftOffset:i,date:s,isCursorOverCanvas:n})=>{this.setState({leftOffset:i,date:s,isShowingCursor:n})},this.state={leftOffset:0,date:0,isShowingCursor:!1}}componentDidMount(){this.unsubscribe=this.props.subscribeToCanvasMouseOver(this.handleCanvasMouseOver)}componentWillUnmount(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=void 0)}render(){const{isShowingCursor:t,leftOffset:i,date:s}=this.state;if(!t)return null;const n=Rr(i);return this.props.renderer?this.props.renderer({styles:n,date:s}):null}};Fr.defaultProps={renderer:om};let Cs=Fr;const qa=e=>r.jsx(em,{children:({subscribeToMouseOver:t})=>r.jsx(Cs,{subscribeToCanvasMouseOver:t,...e})});qa.displayName="CursorMarkerWrapper";const am=()=>r.jsx(Ui,{children:({getLeftOffsetFromDate:e,getTimelineState:t})=>r.jsx(Gi,{children:({markers:i})=>{const s=t();return i.map(n=>{switch(n.type){case Bt.Today:return new Date().valueOf()>=s.canvasTimeStart&&new Date().valueOf()<=s.canvasTimeEnd?r.jsx(js,{getLeftOffsetFromDate:e,renderer:n.renderer,interval:n.interval},n.id):null;case Bt.Custom:return n.date>=s.canvasTimeStart&&n.date<=s.canvasTimeEnd?r.jsx(Ss,{renderer:n.renderer,date:n.date,getLeftOffsetFromDate:e},n.id):null;case Bt.Cursor:return r.jsx(qa,{renderer:n.renderer,getLeftOffsetFromDate:e},n.id);default:return null}})}})}),lm={position:"absolute",left:0,right:0,top:0,bottom:0};function um({getDateFromLeftOffsetPosition:e,children:t}){const i=c.useRef(null),s=c.useRef(null),n=c.useCallback(u=>{if(s.current!==null&&i.current){const{pageX:h}=u,{left:f=0}=i.current.getBoundingClientRect(),d=h-f,p=e(d);s.current({leftOffset:d,date:p,isCursorOverCanvas:!0})}},[e]),o=c.useCallback(()=>{s.current!==null&&s.current({leftOffset:0,date:0,isCursorOverCanvas:!1})},[]),a=c.useCallback(u=>(s.current=u,()=>{s.current=null}),[]),l=c.useMemo(()=>({subscribeToMouseOver:a}),[a]);return r.jsx(Jf,{value:l,children:r.jsxs("div",{style:lm,onMouseMove:n,onMouseLeave:o,ref:i,children:[r.jsx(am,{}),t]})})}function Ya(e){return r.jsx(Ui,{children:({getDateFromLeftOffsetPosition:t})=>r.jsx(um,{getDateFromLeftOffsetPosition:t,...e})})}Ya.displayName="MarkerCanvas";function cm(e){e._resizeEventListener=()=>e.resize(),window.addEventListener("resize",e._resizeEventListener)}function dm(e){window.removeEventListener("resize",e._resizeEventListener)}const hn={addListener:cm,removeListener:dm},fm={groupIdKey:"id",groupTitleKey:"title",groupRightTitleKey:"rightTitle",groupLabelKey:"title",itemIdKey:"id",itemTitleKey:"title",itemDivTitleKey:"title",itemGroupKey:"group",itemTimeStartKey:"start_time",itemTimeEndKey:"end_time"},mm={second:1,minute:1,hour:1,day:1,month:1,year:1},hm={year:{long:"YYYY",mediumLong:"YYYY",medium:"YYYY",short:"YY"},month:{long:"MMMM YYYY",mediumLong:"MMMM",medium:"MMMM",short:"MM/YY"},week:{long:"w",mediumLong:"w",medium:"w",short:"w"},day:{long:"dddd, LL",mediumLong:"dddd, LL",medium:"dd D",short:"D"},hour:{long:"dddd, LL, HH:00",mediumLong:"L, HH:00",medium:"HH:00",short:"HH"},minute:{long:"HH:mm",mediumLong:"HH:mm",medium:"HH:mm",short:"mm"},second:{long:"mm:ss",mediumLong:"mm:ss",medium:"mm:ss",short:"ss"}},pm={registerScroll:()=>{console.warn("default registerScroll header used")},rightSidebarWidth:0,leftSidebarWidth:150,timeSteps:{}},Ua=c.createContext(pm);function Ga({children:e,rightSidebarWidth:t=0,leftSidebarWidth:i,timeSteps:s,registerScroll:n}){const o={rightSidebarWidth:t,leftSidebarWidth:i,timeSteps:s,registerScroll:n};return r.jsx(Ua.Provider,{value:o,children:e})}Ga.displayName="TimelineHeadersProvider";const gm=Ua,Lr=()=>c.useContext(gm),bm="left",Ka="right";function Xa({children:e,rightSidebarWidth:t=0,leftSidebarWidth:i,variant:s,headerData:n}){const o=c.useCallback((a={})=>{const{style:l={}}=a;return{style:{...l,width:s===Ka?t:i}}},[s,t,i]);return r.jsx(e,{getRootProps:o,data:n})}const xm=({getRootProps:e})=>r.jsx("div",{"data-testid":"sidebarHeader",...e()});function Ei(e){const{children:t,variant:i=bm,headerData:s}=e,{leftSidebarWidth:n,rightSidebarWidth:o}=Lr();return r.jsx(Xa,{leftSidebarWidth:n,rightSidebarWidth:o,variant:i,headerData:s,children:t||xm})}Ei.secretKey="SidebarHeader";Xa.displayName="SidebarHeader";const ym="SidebarHeader";function vm(e){return(e==null?void 0:e.type)===void 0?!1:e.type.secretKey===ym}function Qa({registerScroll:e,leftSidebarWidth:t,rightSidebarWidth:i,style:s,children:n,className:o,calendarHeaderStyle:a,calendarHeaderClassName:l}){const u=()=>({...s,display:"flex",width:"100%"}),h=()=>({...a,overflow:"hidden",width:`calc(100% - ${t+i}px)`}),f=Array.isArray(n)?n.filter(Boolean):n?[n]:[];let d=null,p=null;const m=[];return c.Children.map(f,g=>{var b;vm(g)?((b=g==null?void 0:g.props)==null?void 0:b.variant)===Ka?d=g:p=g:m.push(g)}),p||(p=r.jsx(Ei,{})),!d&&i&&(d=r.jsx(Ei,{variant:"right"})),r.jsxs("div",{"data-testid":"headerRootDiv",style:u(),className:qr("rct-header-root",o),children:[p,r.jsx("div",{ref:e,style:h(),className:qr("rct-calendar-header",l),"data-testid":"headerContainer",children:m}),d]})}Qa.secretKey="TimelineHeaders";function $r({children:e,style:t,className:i,calendarHeaderStyle:s,calendarHeaderClassName:n}){const{leftSidebarWidth:o,rightSidebarWidth:a,registerScroll:l}=Lr();return r.jsx(Qa,{leftSidebarWidth:o,rightSidebarWidth:a,registerScroll:l,style:t,className:i,calendarHeaderStyle:s,calendarHeaderClassName:n,children:e})}const Za="TimelineHeaders";$r.secretKey=Za;function wm({canvasTimeStart:e,canvasTimeEnd:t,unit:i,timeSteps:s,getLeftOffsetFromDate:n}){const o=[];return Nr(e,t,i,s,(a,l)=>{const u=n(a.valueOf()),h=n(l.valueOf());o.push({startTime:a,endTime:l,labelWidth:h-u,left:u})}),o}function jm({children:e,unit:t,timeSteps:i,visibleTimeStart:s,visibleTimeEnd:n,canvasTimeStart:o,canvasTimeEnd:a,canvasWidth:l,showPeriod:u,headerData:h,getLeftOffsetFromDate:f,height:d=30,timelineWidth:p}){const m=c.useMemo(()=>wm({canvasTimeStart:o,canvasTimeEnd:a,unit:t,timeSteps:i,getLeftOffsetFromDate:f}),[o,a,t,i,f]),g=c.useCallback((y={})=>({style:{...y.style??{},position:"relative",width:l,height:d}}),[l,d]),b=c.useCallback(y=>{const{interval:w,style:x}=y??{};if(!w)throw new Error("you should provide interval to the prop getter");const{startTime:N,labelWidth:k,left:C}=w;return{style:{...x,left:C,width:k,position:"absolute"},key:`label-${N.valueOf()}`}},[]),v=c.useMemo(()=>({headerContext:{unit:t,intervals:m},getRootProps:g,getIntervalProps:b,showPeriod:u,data:h}),[t,m,g,b,u,h]);return r.jsx(e,{...v})}function Pr({children:e,unit:t,headerData:i,height:s}){const{getTimelineState:n,showPeriod:o,getLeftOffsetFromDate:a}=qf(),l=n(),{timeSteps:u}=Lr();return r.jsx(jm,{children:e,timeSteps:u,showPeriod:o,unit:t??l.timelineUnit,visibleTimeStart:l.visibleTimeStart,visibleTimeEnd:l.visibleTimeEnd,canvasTimeStart:l.canvasTimeStart,canvasTimeEnd:l.canvasTimeEnd,canvasWidth:l.canvasWidth,timelineWidth:l.timelineWidth,headerData:i,getLeftOffsetFromDate:a,height:s??30})}Pr.displayName="CustomHeaderWrapper";class Sm extends c.PureComponent{constructor(){super(...arguments),this.onIntervalClick=()=>{const{primaryHeader:t,interval:i,unit:s,showPeriod:n}=this.props;if(t){const o=Tr(s),a=i.startTime.clone().startOf(o),l=i.startTime.clone().endOf(o);n(a,l)}else n(i.startTime,i.endTime)},this.getIntervalProps=(t={})=>({...this.props.getIntervalProps({interval:this.props.interval,...t}),onClick:Wt(this.onIntervalClick,t.onClick)})}render(){const{intervalText:t,interval:i,intervalRenderer:s,headerData:n}=this.props,o=s;if(o)return r.jsx(o,{getIntervalProps:this.getIntervalProps,intervalContext:{interval:i,intervalText:t},data:n});const{key:a,...l}=this.getIntervalProps();return c.createElement("div",{"data-testid":"dateHeaderInterval",...l,key:a,className:`rct-dateHeader ${this.props.primaryHeader?"rct-dateHeader-primary":""}`},r.jsx("span",{children:t}))}}function Cm({headerContext:{intervals:e,unit:t},getRootProps:i,getIntervalProps:s,showPeriod:n,data:{style:o,intervalRenderer:a,className:l,getLabelFormat:u,unitProp:h,headerData:f}}){return r.jsx("div",{"data-testid":"dateHeader",className:l,...i({style:o}),children:e.map(d=>{const p=u([d.startTime,d.endTime],t,d.labelWidth);return r.jsx(Sm,{unit:t,interval:d,showPeriod:n,intervalText:p,primaryHeader:h==="primaryHeader",getIntervalProps:s,intervalRenderer:a,headerData:f},`label-${d.startTime.valueOf()}`)})})}const km=pn(e=>({height:30,...e})),Nm=pn((e,t,i,s,n,o)=>({intervalRenderer:e,style:t,className:i??"",getLabelFormat:s,unitProp:n,headerData:o}));function Tm({unit:e,timelineUnit:t,labelFormat:i,style:s,className:n,intervalRenderer:o,headerData:a,height:l}){const u=e==="primaryHeader"?Tr(t):e??t,h=c.useMemo(()=>(d,p,m)=>{if(typeof i=="string")return d[0].format(i);if(typeof i=="function")return i(d,p,m);throw new Error("labelFormat should be function or string")},[i]),f=c.useMemo(()=>Nm(o,km(s),n,h,e,a),[o,s,n,h,e,a]);return r.jsx(Pr,{children:Cm,unit:u,height:l,headerData:f})}function Ii({labelFormat:e,unit:t,style:i,className:s,intervalRenderer:n,headerData:o,height:a}){return r.jsx(Ui,{children:({getTimelineState:l})=>{const u=l();return r.jsx(Tm,{timelineUnit:u.timelineUnit,unit:t,labelFormat:e??Dm,style:i,className:s,intervalRenderer:n,headerData:o,height:a})}})}function Dm([e],t,i,s=hm){let n;return i>=150?n=s[t].long:i>=100?n=s[t].mediumLong:i>=50?n=s[t].medium:n=s[t].short,e.format(n)}Ii.displayName="DateHeader";jt.extend(gl);const zi=class zi extends c.Component{constructor(t){super(t),this.getTimelineContext=()=>{const{width:m,visibleTimeStart:g,visibleTimeEnd:b,canvasTimeStart:v,canvasTimeEnd:y}=this.state,w=b-g,x=Et(m,this.props.buffer),N=xi(w,m,this.props.timeSteps);return{canvasWidth:x,timelineUnit:N,timelineWidth:m,visibleTimeStart:g,visibleTimeEnd:b,canvasTimeStart:v,canvasTimeEnd:y}},this.getTimelineUnit=()=>{const{width:m,visibleTimeStart:g,visibleTimeEnd:b}=this.state,{timeSteps:v}=this.props,y=b-g;return xi(y,m,v)},this.handleContainerWheel=m=>{if(!(m.ctrlKey||m.metaKey||m.altKey))return;m.preventDefault(),m.stopPropagation();const g=this.container.current;if(!g)return;const b=g.getBoundingClientRect(),v=this.props.sidebarWidth??0,y=b.left+v,w=Math.max(0,Math.min(this.state.width,m.clientX-y)),x=m.ctrlKey?10:m.metaKey?3:1;this.handleWheelZoom(x,w,m.deltaY)},this.scrollComponent=null,this.scrollHeaderRef=null,this.resize=(m=this.props)=>{var C;const{width:g}=((C=this.container.current)==null?void 0:C.getBoundingClientRect())??{width:0},b=g-m.sidebarWidth-m.rightSidebarWidth,v=Et(b,m.buffer),{dimensionItems:y,height:w,groupHeights:x,groupTops:N}=Yt(m.items,m.groups,v,this.state.canvasTimeStart,this.state.canvasTimeEnd,m.keys,m.lineHeight,m.itemHeightRatio,m.stackItems,this.state.draggingItem,this.state.resizingItem,this.state.dragTime,this.state.resizingEdge,this.state.resizeTime,this.state.newGroupOrder);this.setState({width:b,dimensionItems:y,height:w,groupHeights:x,groupTops:N});const k=b*((m.buffer-1)/2);this.scrollComponent&&(this.scrollComponent.scrollLeft=k),this.scrollHeaderRef&&(this.scrollHeaderRef.scrollLeft=k)},this.onScroll=m=>{var w,x;const g=this.state.width,b=this.state.canvasTimeStart,v=this.state.visibleTimeEnd-this.state.visibleTimeStart,y=b+v*m/g;(this.state.visibleTimeStart!==y||this.state.visibleTimeEnd!==y+v)&&((x=(w=this.props).onTimeChange)==null||x.call(w,y,y+v,this.updateScrollCanvas,this.getTimelineUnit()))},this.updateScrollCanvas=(m,g,b=!1,v=this.props.items,y=this.props.groups)=>{this.setState(bs(m,g,b,v,y,this.props,this.state))},this.handleWheelZoom=(m,g,b)=>{const v=this.state.width||1,y=Math.max(0,Math.min(1,g/v));this.changeZoom(1+m*b/500,y)},this.changeZoom=(m,g=.5)=>{const{minZoom:b,maxZoom:v}=this.props,y=this.state.visibleTimeEnd-this.state.visibleTimeStart,w=Math.min(Math.max(Math.round(y*m),b),v),x=Math.round(this.state.visibleTimeStart+(y-w)*g),N=x+w,k=this.props.onTimeChange;k&&k(x,N,this.updateScrollCanvas,this.getTimelineUnit()),!this.props.visibleTimeStart&&!this.props.visibleTimeEnd&&this.updateScrollCanvas(x,N)},this.showPeriod=(m,g)=>{var w,x;const b=m.valueOf(),y=g.valueOf()-b;y<this.props.minZoom||(x=(w=this.props).onTimeChange)==null||x.call(w,b,b+y,this.updateScrollCanvas,this.getTimelineUnit())},this.selectItem=(m,g,b)=>{if(this.isItemSelected(m)||this.props.itemTouchSendsClick&&g==="touch"){if(m&&this.props.onItemClick){const v=this.timeFromItemEvent(b);this.props.onItemClick(m,b,v)}}else if(this.setState({selectedItem:m}),m&&this.props.onItemSelect){const v=this.timeFromItemEvent(b);this.props.onItemSelect(m,b,v)}else m===null&&this.props.onItemDeselect&&this.props.onItemDeselect(b)},this.doubleClickItem=(m,g)=>{if(this.props.onItemDoubleClick){const b=this.timeFromItemEvent(g);this.props.onItemDoubleClick(m,g,b)}},this.contextMenuClickItem=(m,g)=>{if(this.props.onItemContextMenu){const b=this.timeFromItemEvent(g);this.props.onItemContextMenu(m,g,b)}},this.getTimeFromRowClickEvent=m=>{const{dragSnap:g,buffer:b}=this.props,{width:v,canvasTimeStart:y,canvasTimeEnd:w}=this.state,{offsetX:x}=m.nativeEvent;let N=kr(y,w,Et(v,b),x);return N=Math.floor(N/g)*g,N},this.timeFromItemEvent=m=>{const{width:g,visibleTimeStart:b,visibleTimeEnd:v}=this.state,y=this.props.dragSnap,w=this.scrollComponent,{left:x}=w.getBoundingClientRect(),k=(m.clientX-x)/g,C=v-b,T=k*C;let S=Math.round(b+T);return S=Math.floor(S/y)*y,S},this.dragItem=(m,g,b)=>{const v=this.props.groups[b],y=this.props.keys;this.setState({draggingItem:m,dragTime:g,newGroupOrder:b,dragGroupTitle:v?be(v,y.groupLabelKey):""}),this.updatingItem({eventType:"move",itemId:m,time:g,newGroupOrder:b})},this.dropItem=(m,g,b)=>{this.setState({draggingItem:null,dragTime:null,dragGroupTitle:null}),this.props.onItemMove&&this.props.onItemMove(m,g,b)},this.resizingItem=(m,g,b)=>{this.setState({resizingItem:m,resizingEdge:b,resizeTime:g}),this.updatingItem({eventType:"resize",itemId:m,time:g,edge:b||void 0})},this.resizedItem=(m,g,b,v)=>{this.setState({resizingItem:null,resizingEdge:null,resizeTime:null}),this.props.onItemResize&&v!==0&&this.props.onItemResize(m,g,b)},this.updatingItem=({eventType:m,itemId:g,time:b,edge:v,newGroupOrder:y})=>{this.props.onItemDrag&&(m==="move"?this.props.onItemDrag({eventType:m,itemId:g,time:b,newGroupOrder:y}):this.props.onItemDrag({eventType:m,itemId:g,time:b,edge:v}))},this.handleRowClick=(m,g)=>{if(this.hasSelectedItem()&&this.selectItem(null,"click",m),this.props.onCanvasClick==null)return;const b=this.getTimeFromRowClickEvent(m),v=be(this.props.groups[g],this.props.keys.groupIdKey);this.props.onCanvasClick(v,b,m)},this.handleRowDoubleClick=(m,g)=>{if(this.props.onCanvasDoubleClick==null)return;const b=this.getTimeFromRowClickEvent(m),v=be(this.props.groups[g],this.props.keys.groupIdKey);this.props.onCanvasDoubleClick(v,b,m)},this.handleScrollContextMenu=(m,g)=>{if(this.props.onCanvasContextMenu==null)return;const b=this.getTimeFromRowClickEvent(m),v=be(this.props.groups[g],this.props.keys.groupIdKey);this.props.onCanvasContextMenu&&(m.preventDefault(),this.props.onCanvasContextMenu(v,b,m))},this.handleHeaderRef=m=>{this.scrollHeaderRef=m,this.props.headerRef&&this.props.headerRef(m)},this.isTimelineHeader=m=>m.type===void 0?!1:m.type.secretKey===Za,this.renderHeaders=()=>{if(this.props.children){let m;if(c.Children.map(this.props.children,g=>{this.isTimelineHeader(g)&&(m=g)}),m)return m}return r.jsxs($r,{children:[r.jsx(Ii,{unit:"primaryHeader"}),r.jsx(Ii,{})]})},this.getScrollElementRef=m=>{this.props.scrollRef&&this.props.scrollRef(m),this.scrollComponent=m},this.getEffectiveCanResize=()=>{const{canResizeLeft:m,canResizeRight:g,canResize:b}=this.props;if(m!=null||g!=null){const v=!!m;return v&&!!g?"both":v?"left":"right"}return b},this.container=c.createRef(),this.getSelected=this.getSelected.bind(this),this.hasSelectedItem=this.hasSelectedItem.bind(this),this.isItemSelected=this.isItemSelected.bind(this);const i=m=>typeof m=="number"?m:m.getTime();let s=null,n=null;if(this.props.defaultTimeStart!=null&&this.props.defaultTimeEnd!=null)s=i(this.props.defaultTimeStart),n=i(this.props.defaultTimeEnd);else if(this.props.visibleTimeStart!=null&&this.props.visibleTimeEnd!=null)s=this.props.visibleTimeStart,n=this.props.visibleTimeEnd;else throw new Error('You must provide either "defaultTimeStart" and "defaultTimeEnd" or "visibleTimeStart" and "visibleTimeEnd" to initialize the Timeline');const[o,a]=Ir(s,n,t.buffer),l={width:1e3,visibleTimeStart:s,visibleTimeEnd:n,canvasTimeStart:o,canvasTimeEnd:a,selectedItem:null,dragTime:null,dragGroupTitle:null,resizeTime:null,resizingItem:null,resizingEdge:null,newGroupOrder:0},u=Et(l.width,t.buffer),{dimensionItems:h,height:f,groupHeights:d,groupTops:p}=Yt(t.items,t.groups,u,l.canvasTimeStart,l.canvasTimeEnd,t.keys,t.lineHeight,t.itemHeightRatio,t.stackItems,l.draggingItem,l.resizingItem,l.dragTime,l.resizingEdge,l.resizeTime,l.newGroupOrder);l.dimensionItems=h,l.height=f,l.groupHeights=d,l.groupTops=p,this.state=l}componentDidMount(){this.resize(this.props),this.props.resizeDetector&&this.props.resizeDetector.addListener&&this.props.resizeDetector.addListener(this),hn.addListener(this);const t=this.container.current;t&&t.addEventListener("wheel",this.handleContainerWheel,{passive:!1,capture:!0})}componentWillUnmount(){this.props.resizeDetector&&this.props.resizeDetector.addListener&&this.props.resizeDetector.removeListener(this),hn.removeListener(this);const t=this.container.current;t&&t.removeEventListener("wheel",this.handleContainerWheel,{capture:!0})}static getDerivedStateFromProps(t,i){const{visibleTimeStart:s,visibleTimeEnd:n,items:o,groups:a}=t,l={items:o,groups:a},u=o!==i.items||a!==i.groups;if(s&&n)Object.assign(l,bs(s,n,u,o,a,t,i));else if(u){const h=Et(i.width,t.buffer);Object.assign(l,Yt(o,a,h,i.canvasTimeStart,i.canvasTimeEnd,t.keys,t.lineHeight,t.itemHeightRatio,t.stackItems,i.draggingItem,i.resizingItem,i.dragTime,i.resizingEdge,i.resizeTime,i.newGroupOrder))}return l}componentDidUpdate(t,i){const s=this.state.visibleTimeEnd-this.state.visibleTimeStart,n=i.visibleTimeEnd-i.visibleTimeStart;this.props.onZoom&&s!==n&&this.props.onZoom(this.getTimelineContext(),this.getTimelineUnit()),this.props.onBoundsChange&&this.state.canvasTimeStart!==i.canvasTimeStart&&this.props.onBoundsChange(this.state.canvasTimeStart,this.state.canvasTimeStart+s*3);const o=Math.round(this.state.width*(this.state.visibleTimeStart-this.state.canvasTimeStart)/s);Math.round(i.width*(i.visibleTimeStart-i.canvasTimeStart)/n)!==o&&(this.scrollComponent.scrollLeft=o,this.scrollHeaderRef.scrollLeft=o)}columns(t,i,s,n,o,a){var l;return r.jsx(Fa,{canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,lineCount:((l=this.props.groups)==null?void 0:l.length)||0,minUnit:n,timeSteps:o,height:a,verticalLineClassNamesForTime:this.props.verticalLineClassNamesForTime})}rows(t,i,s){var n;return r.jsx(Ba,{groups:s,canvasWidth:t,lineCount:((n=this.props.groups)==null?void 0:n.length)||0,groupHeights:i,clickTolerance:this.props.clickTolerance,onRowClick:this.handleRowClick,onRowDoubleClick:this.handleRowDoubleClick,horizontalLineClassNamesForGroup:this.props.horizontalLineClassNamesForGroup,onRowContextClick:this.handleScrollContextMenu})}items({canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,dimensionItems:n,groupTops:o}){return r.jsx(Aa,{canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,dimensionItems:n,groupTops:o,items:this.props.items,groups:this.props.groups,keys:this.props.keys,selectedItem:this.state.selectedItem||void 0,dragSnap:this.props.dragSnap,minResizeWidth:this.props.minResizeWidth,canChangeGroup:this.props.canChangeGroup,canMove:this.props.canMove,canResize:this.getEffectiveCanResize(),useResizeHandle:this.props.useResizeHandle,canSelect:this.props.canSelect,moveResizeValidator:this.props.moveResizeValidator,itemSelect:this.selectItem,itemDrag:this.dragItem,itemDrop:this.dropItem,onItemDoubleClick:this.doubleClickItem,onItemContextMenu:this.props.onItemContextMenu?this.contextMenuClickItem:void 0,itemResizing:this.resizingItem,itemResized:this.resizedItem,itemRenderer:this.props.itemRenderer,selected:this.props.selected,scrollRef:this.scrollComponent})}sidebar(t,i){const{sidebarWidth:s}=this.props;return s&&r.jsx(ws,{groups:this.props.groups,groupRenderer:this.props.groupRenderer,keys:this.props.keys,width:s,groupHeights:i,height:t})}rightSidebar(t,i){const{rightSidebarWidth:s}=this.props;return s&&r.jsx(ws,{groups:this.props.groups,keys:this.props.keys,groupRenderer:this.props.groupRenderer,isRightSidebar:!0,width:s,groupHeights:i,height:t})}childrenWithProps(t,i,s,n,o,a,l,u,h,f,d){if(!this.props.children)return null;const p=Array.isArray(this.props.children)?this.props.children.filter(g=>g):[this.props.children],m={canvasTimeStart:t,canvasTimeEnd:i,canvasWidth:s,visibleTimeStart:u,visibleTimeEnd:h,dimensionItems:n,items:this.props.items,groups:this.props.groups,keys:this.props.keys,groupHeights:o,groupTops:a,selected:this.getSelected(),height:l,minUnit:f,timeSteps:d};return c.Children.map(p,g=>this.isTimelineHeader(g)?null:c.cloneElement(g,m))}getSelected(){return this.state.selectedItem&&!this.props.selected?[this.state.selectedItem]:this.props.selected||[]}hasSelectedItem(){return Array.isArray(this.props.selected)?this.props.selected.length>0:!!this.state.selectedItem}isItemSelected(t){return this.getSelected().some(s=>s===t)}render(){const{items:t,groups:i,sidebarWidth:s,rightSidebarWidth:n,timeSteps:o,traditionalZoom:a,buffer:l}=this.props,{draggingItem:u,resizingItem:h,width:f,visibleTimeStart:d,visibleTimeEnd:p,canvasTimeStart:m,canvasTimeEnd:g}=this.state;let{dimensionItems:b,height:v,groupHeights:y,groupTops:w}=this.state;const x=p-d,N=Et(f,l),k=xi(x,f,o);if(!!u||!!h){const S=Yt(t,i,N,this.state.canvasTimeStart,this.state.canvasTimeEnd,this.props.keys,this.props.lineHeight,this.props.itemHeightRatio,this.props.stackItems,this.state.draggingItem,this.state.resizingItem,this.state.dragTime,this.state.resizingEdge,this.state.resizeTime,this.state.newGroupOrder);b=S.dimensionItems,v=S.height,y=S.groupHeights,w=S.groupTops}const T={height:`${v}px`};return r.jsx(Oa,{visibleTimeStart:d,visibleTimeEnd:p,canvasTimeStart:m,canvasTimeEnd:g,canvasWidth:N,showPeriod:this.showPeriod,timelineUnit:k,timelineWidth:this.state.width,children:r.jsx(_a,{children:r.jsx(Ga,{registerScroll:this.handleHeaderRef,timeSteps:o,leftSidebarWidth:this.props.sidebarWidth,rightSidebarWidth:this.props.rightSidebarWidth,children:r.jsxs("div",{style:{...this.props.style,...this.props.height!=null&&{height:typeof this.props.height=="number"?`${this.props.height}px`:this.props.height}},ref:this.container,className:`react-calendar-timeline ${this.props.className}`,children:[this.renderHeaders(),r.jsxs("div",{style:T,className:"rct-outer",children:[s>0?this.sidebar(v,y):null,r.jsx(Va,{scrollRef:this.getScrollElementRef,width:f,height:v,onZoom:this.changeZoom,onWheelZoom:this.handleWheelZoom,traditionalZoom:!!a,onScroll:this.onScroll,children:r.jsxs(Ya,{children:[this.columns(m,g,N,k,o,v),this.rows(N,y,i),this.items({canvasTimeStart:m,canvasTimeEnd:g,canvasWidth:N,dimensionItems:b,groupTops:w}),this.childrenWithProps(m,g,N,b,y,w,v,d,p,k,o)]})}),n>0?this.rightSidebar(v,y):null]})]})})})})}};zi.setDayjsLocale=jt.locale,zi.defaultProps={sidebarWidth:150,rightSidebarWidth:0,dragSnap:1e3*60*15,minResizeWidth:20,lineHeight:30,itemHeightRatio:.65,buffer:3,minZoom:3600*1e3,maxZoom:5*365.24*86400*1e3,clickTolerance:3,canChangeGroup:!0,canMove:!0,canResize:"right",useResizeHandle:!1,canSelect:!0,stackItems:!1,traditionalZoom:!1,horizontalLineClassNamesForGroup:null,onItemMove:null,onItemResize:null,onItemClick:null,onItemSelect:null,onItemDeselect:null,onItemDrag:null,onCanvasClick:null,onItemDoubleClick:null,onItemContextMenu:null,onZoom:null,verticalLineClassNamesForTime:null,moveResizeValidator:null,dayBackground:null,itemsSorted:!1,showCursorLine:!1,height:void 0,canResizeLeft:void 0,canResizeRight:void 0,defaultTimeStart:null,defaultTimeEnd:null,itemTouchSendsClick:!1,style:{},className:"",keys:fm,timeSteps:mm,headerRef:()=>{},scrollRef:()=>{},visibleTimeStart:null,visibleTimeEnd:null,onTimeChange:function(t,i,s){s(t,i)},onBoundsChange:null,children:null,selected:null};let Mi=zi;const Em=e=>e.children||null,Im=1e3*10;function Mm({interval:e=Im,updateMarker:t,subscribeMarker:i,children:s}){const n=c.useRef(null),o=c.useRef(null);return c.useEffect(()=>{const{unsubscribe:a,getMarker:l}=i({type:Bt.Today,renderer:s,interval:e});return n.current=a,o.current=l,()=>{n.current&&(n.current(),n.current=null)}},[i,e,s]),c.useEffect(()=>{if(o.current){const a=o.current();t({...a,interval:e})}},[e,t]),null}function Ja(e){return r.jsx(Gi,{children:({subscribeMarker:t,updateMarker:i})=>r.jsx(Mm,{subscribeMarker:t,updateMarker:i,...e})})}Ja.displayName="TodayMarker";function Rm({date:e,children:t,updateMarker:i,subscribeMarker:s}){const n=c.useRef(null);return c.useEffect(()=>{const{unsubscribe:o,getMarker:a}=s({type:Bt.Custom,renderer:t,date:e});return n.current=a,()=>{o&&o()}},[s,e,t]),c.useEffect(()=>{if(n.current){const o=n.current();i({...o,date:e})}},[e,i]),null}function el(e){return r.jsx(Gi,{children:({subscribeMarker:t,updateMarker:i})=>r.jsx(Rm,{subscribeMarker:t,updateMarker:i,...e})})}el.displayName="CustomMarker";function zm({subscribeMarker:e,children:t}){return c.useEffect(()=>{const{unsubscribe:i}=e({type:Bt.Cursor,renderer:t});return()=>{i&&i()}},[e,t]),null}function tl(e){return r.jsx(Gi,{children:({subscribeMarker:t})=>r.jsx(zm,{subscribeMarker:t,...e})})}tl.displayName="CursorMarker";exports.Accordion=mu;exports.ActionsCell=Xs;exports.Alert=Es;exports.AlertDialog=qu;exports.Avatar=yt;exports.AvatarsCell=Mo;exports.Badge=Kt;exports.Badges=Fn;exports.BarProgress=Jt;exports.Body=Ti;exports.Button=Ce;exports.ButtonCell=Lo;exports.ButtonGroup=Gu;exports.Calendar=Zn;exports.CalendarContent=Qn;exports.CalendarGrid=As;exports.CalendarHeader=Gn;exports.Caption=mr;exports.Card=ft;exports.CardsWithAside=Bn;exports.CellRenderer=Bo;exports.Checkbox=Rt;exports.CheckboxCell=Po;exports.Code=hr;exports.ColorInput=qs;exports.ColorPalette=ho;exports.ColorPicker=Ys;exports.ColorPickerContent=po;exports.ColorSwatch=co;exports.CursorMarker=tl;exports.CustomHeader=Pr;exports.CustomMarker=el;exports.CustomText=pr;exports.DateCell=Js;exports.DateHeader=Ii;exports.DateInput=Kn;exports.DatePicker=Gt;exports.DatePickerPortal=Jn;exports.Day=_n;exports.Drawer=to;exports.Dropdown=lt;exports.DropdownCell=zo;exports.Emoji=xc;exports.EmojiPicker=no;exports.EmptyTableState=tr;exports.FilterCard=To;exports.FilterForm=yd;exports.FilterList=vd;exports.Filters=Sc;exports.GroupRow=Mr;exports.HeaderCell=Vo;exports.HelperText=Ts;exports.Icon=pe;exports.IconCell=Oo;exports.InlineTooltip=$i;exports.InnerButton=me;exports.Input=Ue;exports.LabelProgress=ji;exports.Lightbox=uo;exports.LinearGraphic=ka;exports.LinearGraphicSegment=jr;exports.LinkCell=Io;exports.List=tc;exports.ListAlphabetic=dc;exports.ListBase=ro;exports.ListDefault=ic;exports.ListEmpty=so;exports.ListFilters=fc;exports.ListFiltersCheckbox=mc;exports.ListHeader=_s;exports.ListItem=Bs;exports.ListItemCheckbox=Hi;exports.ListItemDefault=xt;exports.ListItemRadio=Wi;exports.ListItemToggle=Vi;exports.ListItemUser=ai;exports.ListItemWithCheckbox=Vs;exports.ListSearchInput=Hs;exports.ListSeparator=bt;exports.ListUserList=lc;exports.ListUserProfile=cc;exports.ListUsersSelect=nc;exports.ListWithCheckbox=uc;exports.ListWithDataInHover=Sr;exports.ListWithRadio=rc;exports.ListWithSeparator=sc;exports.ListWithToggle=ac;exports.Logo=Nc;exports.MessageItem=vr;exports.MessagePositions=_i;exports.Messaging=bf;exports.Modal=ls;exports.ModalProvider=$n;exports.Month=qn;exports.MonthGrid=Fs;exports.MultipleCalendarsHeader=Xn;exports.NavigationButton=ei;exports.NotificationItem=wr;exports.NotificationPositions=qi;exports.Notifier=gf;exports.PROGRESS_COLOR_MAP=En;exports.Pagination=go;exports.PickerColor=Ys;exports.Popup=Ht;exports.PrimaryCell=Gs;exports.ProgressBar=Ds;exports.ProgressBarCell=$o;exports.RadioButton=vo;exports.RadioButtonGroup=Jc;exports.Rating=ed;exports.ReactCalendarTimeline=Mi;exports.RowItems=Aa;exports.SelectionCheckbox=ti;exports.Separator=qe;exports.Sidebar=Sf;exports.SidebarDivider=di;exports.SidebarHeader=Ei;exports.SidebarMenuGroup=wa;exports.SidebarMenuItem=va;exports.SidebarSectionTitle=jf;exports.SidebarUserProfile=ja;exports.SidebarWorkspaceCard=Sa;exports.Skeleton=td;exports.SkeletonCell=Qs;exports.SkeletonRow=_o;exports.Spinner=Qc;exports.StarsCell=Ao;exports.StatusCell=Ks;exports.StepConnector=ko;exports.StepIcon=So;exports.StepItem=No;exports.StepLabel=Co;exports.Stepper=sd;exports.StoryBox=li;exports.StrapiApiError=pa;exports.Switch=Si;exports.TOGGLE_DESIGN_TOKENS=oc;exports.TabContent=Vn;exports.Table=Rd;exports.TableBody=qo;exports.TableCell=Us;exports.TableContent=Yo;exports.TableHeader=Ho;exports.TableQueryProvider=of;exports.TableRow=er;exports.TableSelectionBar=Uo;exports.TableToolbar=Eo;exports.Tag=Vt;exports.TagsCell=Zs;exports.Text=gr;exports.TextFieldCell=Ro;exports.TextListIndicator=Cr;exports.TextListWithData=Na;exports.Textarea=oo;exports.Timeline=Mi;exports.TimelineHeaders=$r;exports.TimelineMarkers=Em;exports.Title=oi;exports.TitleText=fr;exports.Toaster=pf;exports.TodayMarker=Ja;exports.Toggle=Bi;exports.Toolbar=wf;exports.Tooltip=Mt;exports.Visual=St;exports.WeekDay=Un;exports.Wysiwyg=Cc;exports.Year=Yn;exports.YearGrid=Ws;exports.advancedFilterToTeamFilter=fa;exports.buildStrapiQueryString=lr;exports.calendarUtils=Lf;exports.cn=M;exports.configureMessage=uf;exports.configureStrapiClient=_d;exports.convertAdvancedFiltersToStrapi=ma;exports.convertFilterToStrapi=ds;exports.convertFiltersToStrapiQuery=ar;exports.createNormalizer=Ad;exports.createTableQueryClient=af;exports.fetchTeams=ki;exports.fetchTeamsRaw=xa;exports.fetchTeamsWithAdvancedFilters=Ni;exports.filterRows=ua;exports.findItemIndex=xl;exports.formatDate=Wo;exports.getLockedColumns=kd;exports.getNextSortConfig=Ko;exports.getStrapiConfig=ga;exports.getVisibleColumns=Cd;exports.isAllSelected=sr;exports.isSomeSelected=Zo;exports.isStrapiConfigured=qd;exports.labelVariants=xo;exports.messageService=We;exports.moveItem=bl;exports.normalizeStrapiList=rr;exports.normalizeStrаpiItem=da;exports.normalizeTeamsResponse=or;exports.notification=yf;exports.notificationService=Xe;exports.notify=vf;exports.parseDate=Fo;exports.radioButtonVariants=bo;exports.reorder=Li;exports.reorderColumns=ea;exports.resetColumns=Sd;exports.resizeColumn=ra;exports.searchRows=ca;exports.selectAllRows=wd;exports.selectRange=jd;exports.setColumnVisibility=ia;exports.sortRows=Go;exports.strapiClient=ui;exports.strapiDelete=Ud;exports.strapiGet=ur;exports.strapiPost=Yd;exports.strapiPut=ba;exports.teamsQueryKeys=Be;exports.throttle=yl;exports.throttleWithTrailing=vl;exports.toast=xf;exports.toggleColumnLock=sa;exports.toggleColumnVisibility=ta;exports.toggleRowSelection=Qo;exports.toggleSortDirection=ir;exports.transformTeamAttributes=nr;exports.updateTeam=dr;exports.updateTeamName=ya;exports.useAnimationState=Is;exports.useBadges=An;exports.useBodyScrollLock=Ms;exports.useCalendar=ni;exports.useClickOutside=Mn;exports.useColumnsWithQueryState=sf;exports.useDateInput=Xu;exports.useDatePicker=Hn;exports.useDateRange=Os;exports.useDebouncedCallback=nf;exports.useDebouncedValue=rf;exports.useDragAndDrop=Rs;exports.useEscapeKey=Ai;exports.useFocusTrap=zs;exports.useGetElementOnClick=Tu;exports.useInitialFocus=zn;exports.useInvalidateTeams=Zd;exports.useLightbox=lo;exports.useMessage=br;exports.useMessageService=df;exports.useMessageStyles=xr;exports.useModalContext=ri;exports.useNotification=yr;exports.useNotificationService=hf;exports.usePortal=Ls;exports.useRadioButton=yo;exports.useRadioButtonGroup=wo;exports.useResizeAndScroll=Du;exports.useStepper=jo;exports.useTableColumns=na;exports.useTableData=Od;exports.useTableEdit=la;exports.useTableExpand=oa;exports.useTableFilter=zd;exports.useTableFocus=aa;exports.useTablePagination=Ld;exports.useTableQueryState=tf;exports.useTableSelection=Jo;exports.useTableSort=Xo;exports.useTeams=Kd;exports.useTeamsTable=Qd;exports.useTeamsWithFilters=Xd;exports.useToggle=io;exports.useUpdateTeam=Jd;exports.useUpdateTeamName=ef;exports.useWysiwyg=ao;
38
38
  //# sourceMappingURL=index.js.map