@reservi/calendar 1.7.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
package/dist/index.cjs
CHANGED
|
@@ -32,5 +32,5 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
32
32
|
|
|
33
33
|
Please see our testing guides for more information:
|
|
34
34
|
https://atlassian.design/components/pragmatic-drag-and-drop/core-package/testing
|
|
35
|
-
`.replace(/ {2}/g,""));return}var u=e.target;if(u instanceof HTMLElement){var l=ua.get(u);if(l){var c=Kr(e),h={element:l.element,dragHandle:(n=l.dragHandle)!==null&&n!==void 0?n:null,input:c};if(l.canDrag&&!l.canDrag(h)){e.preventDefault();return}if(l.dragHandle){var p=uc({x:c.clientX,y:c.clientY});if(!l.dragHandle.contains(p)){e.preventDefault();return}}var y=(r=(a=l.getInitialDataForExternal)===null||a===void 0?void 0:a.call(l,h))!==null&&r!==void 0?r:null;if(y)for(var _=0,k=Object.entries(y);_<k.length;_++){var b=ic(k[_],2),M=b[0],T=b[1];e.dataTransfer.setData(M,T??"")}Gy()&&!e.dataTransfer.types.includes(Wl)&&!e.dataTransfer.types.includes(Vy)&&e.dataTransfer.setData(Wl,Ky),e.dataTransfer.setData(Qy,"");var P={element:l.element,dragHandle:(i=l.dragHandle)!==null&&i!==void 0?i:null,data:(o=(s=l.getInitialData)===null||s===void 0?void 0:s.call(l,h))!==null&&o!==void 0?o:{}},N={type:"element",payload:P,startedFrom:"internal"};t.start({event:e,dragType:N})}}}}}))},dispatchEventToSource:function(t){var e,n,r=t.eventName,a=t.payload;(e=ua.get(a.source.element))===null||e===void 0||(n=e[r])===null||n===void 0||n.call(e,a)},onPostDispatch:Jl.getOnPostDispatch()}),yc=Ds.dropTarget,bs=Ds.monitor;function ev(t){if(process.env.NODE_ENV!=="production"&&t.dragHandle&&!t.element.contains(t.dragHandle)&&console.warn("Drag handle element must be contained in draggable element",{element:t.element,dragHandle:t.dragHandle}),process.env.NODE_ENV!=="production"){var e=ua.get(t.element);e&&console.warn("You have already registered a `draggable` on the same element",{existing:e,proposed:t})}var n=ws(Ds.registerUsage(),Xy(t),fc(t.element,{attribute:"draggable",value:"true"}));return Gn(n)}function Gl(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),n.push.apply(n,r)}return n}function Kl(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?Gl(Object(n),!0).forEach(function(r){Hi(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Gl(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function tv(){return{x:0,y:0}}function nv(t){var e=t.render,n=t.nativeSetDragImage,r=t.getOffset,a=r===void 0?tv:r,i=document.createElement("div");ir()&&i.setAttribute("popover","manual"),Object.assign(i.style,Kl(Kl({position:"fixed"},ir()?cc:{zIndex:dc}),{},{top:0,left:0,pointerEvents:"none"})),document.body.append(i),ir()&&i.showPopover();var o=e({container:i});queueMicrotask(function(){var l=a({container:i});if(xi()){var c=i.getBoundingClientRect();if(c.width===0)return;i.style.left="-".concat(c.width-1e-4,"px")}n==null||n(i,l.x,l.y)});function s(){u(),o==null||o(),document.body.removeChild(i)}var u=bs({onDragStart:s,onDrop:s})}function rv(t){var e=t.element,n=t.input;return function(r){var a=r.container,i=e.getBoundingClientRect(),o=a.getBoundingClientRect(),s=Math.min(n.clientX-i.x,o.width),u=Math.min(n.clientY-i.y,o.height);return{x:s,y:u}}}let vc=0;function hi(){vc=Date.now()}function pc(t=300){return Date.now()-vc<t}const Ms="rsv-timegrid-event",gc="rsv-timegrid-col";function _c(t,e,n){return n?ev({element:t,getInitialData:()=>({[Ms]:!0,id:e.id}),onGenerateDragPreview({location:r,nativeSetDragImage:a}){nv({nativeSetDragImage:a,getOffset:rv({element:t,input:r.current.input}),render({container:i}){const o=t.cloneNode(!0);o.setAttribute("data-rsv-drag-preview","true"),o.style.width=`${t.offsetWidth}px`,o.style.height=`${t.offsetHeight}px`,i.appendChild(o)}})}}):()=>{}}function av(t){return yc({element:t,canDrop:({source:e})=>e.data[Ms]===!0,getData:({element:e})=>({[gc]:!0,dayIndex:Number(e.dataset.rsvDayIndex??0)})})}function iv(t,e,n,r){const a=t.getBoundingClientRect(),i=n.maxMinutes-n.minMinutes;if(a.height===0||i<=0)return n.minMinutes;const o=n.minMinutes+(e-a.top)/a.height*i,s=Math.max(n.minMinutes,Math.min(n.maxMinutes,o));return Math.round(s/r)*r}function Bo(t,e){return z.diff(t,e,"minute")}function ov(t,e,n){const r=z.add(z.startOf(t,"day"),{minutes:e});if(Bo(r,n.start)===0)return null;const a=n.end?Bo(n.start,n.end):0;return{start:r,end:n.end?z.add(r,{minutes:a}):null}}function sv({api:t,getModel:e,snap:n,onPreview:r,onDragging:a}){const i=Oe(n??"00:15")||15,o=s=>{const u=s.current.dropTargets.find(c=>c.data[gc]===!0);if(!u)return null;const l=iv(u.element,s.current.input.clientY,e(),i);return{target:u,inicio:l}};return bs({canMonitor:({source:s})=>s.data[Ms]===!0,onDragStart:({source:s})=>{hi(),a(String(s.data.id))},onDrag:({source:s,location:u})=>{const l=o(u);if(!l)return;const c=t.getEventById(String(s.data.id));if(!c)return;const h=c.end?Math.max(i,Bo(c.start,c.end)):i;r({dayIndex:Number(l.target.data.dayIndex),startMin:l.inicio,endMin:l.inicio+h})},onDrop:({source:s,location:u})=>{var l;hi(),r(null),a(null);const c=o(u);if(!c)return;const h=t.getEventById(String(s.data.id));if(!h)return;const p=(l=e().days[Number(c.target.data.dayIndex)])==null?void 0:l.date;if(!p)return;const y=ov(p,c.inicio,h);if(y&&t.moveEvent(h.id,y.start,y.end)){const _=t.getEventById(h.id);_&&t.trigger("eventDrop",{event:_})}}})}const wc="rsv-timegrid-event",Dc="rsv-daygrid-day";function lv(t,e){const n=z.diff(z.startOf(e.start,"day"),z.startOf(t,"day"),"day");return n===0?null:{start:z.add(e.start,{days:n}),end:e.end?z.add(e.end,{days:n}):null}}function uv(t){return yc({element:t,canDrop:({source:e})=>e.data[wc]===!0,getData:({element:e})=>({[Dc]:!0,fechaISO:e.dataset.date??""})})}function dv({api:t,onPreview:e,onDragging:n}){const r=a=>a.current.dropTargets.find(i=>i.data[Dc]===!0)??null;return bs({canMonitor:({source:a})=>a.data[wc]===!0,onDragStart:({source:a})=>{hi(),n(String(a.data.id))},onDrag:({location:a})=>{const i=r(a);e(i?String(i.data.fechaISO):null)},onDrop:({source:a,location:i})=>{hi(),e(null),n(null);const o=r(i);if(!o)return;const s=t.getEventById(String(a.data.id));if(!s)return;const u=lv(z.from(String(o.data.fechaISO)),s);if(u&&t.moveEvent(s.id,u.start,u.end)){const l=t.getEventById(s.id);l&&t.trigger("eventDrop",{event:l})}}})}function bc({api:t,model:e,options:n}){var r;const a=n.locale??"en",i={type:t.getView().type},o=ci(a,n.dayHeaderFormat,{weekday:"short"}),s=((r=e.weeks[0])==null?void 0:r.days)??[],u=n.weekNumbers===!0,l=n.dayHeaders!==!1,c=n.dayNumberAlign??"end",[h,p]=Mn(null),[y,_]=Mn(null),k=Ce(new Map);return bt(()=>dv({api:t,onPreview:p,onDragging:_}),[t]),bt(()=>{const b=k.current;return()=>{for(const M of b.values())M();b.clear()}},[]),C("div",{"data-rsv":"daygrid","data-weeknumbers":String(u),"data-daynumber-align":c,style:`--rsv-cols:${e.columnCount}`,children:[l&&C("div",{"data-rsv":"daygrid-header",role:"row",children:[u&&C("div",{"data-rsv":"daygrid-weeknum-header",role:"columnheader"}),s.map(b=>{var M,T;const P=z.toDate(b.date),N=o?o(P):"",$={date:P,text:N,dayOfWeek:b.dayOfWeek,dayNumber:z.dayOfMonth(b.date),isToday:b.isToday,view:i};return C("div",{"data-rsv":"daygrid-dow",role:"columnheader","data-dow":String(b.dayOfWeek),class:zt((M=n.classNames)==null?void 0:M.dayHeader),ref:W=>{var Q;return zn(W,(Q=n.hooks)==null?void 0:Q.dayHeaderDidMount,()=>$)},children:Ft((T=n.slots)==null?void 0:T.dayHeaderContent,$,N,n.hostBridge)},b.dayOfWeek)})]}),e.weeks.map((b,M)=>C("div",{"data-rsv":"daygrid-week",role:"row",children:[u&&C("div",{"data-rsv":"daygrid-weeknum",role:"rowheader",children:b.weekNumber}),b.days.map(T=>C(cv,{api:t,cell:T,options:n,view:i,dropActivo:h===z.toISOString(T.date),limpiezaDias:k,idArrastrado:y},z.toISOString(T.date)))]},M))]})}function cv({api:t,cell:e,options:n,view:r,dropActivo:a,limpiezaDias:i,idArrastrado:o}){var s,u,l;const c=z.toDate(e.date),h=z.dayOfMonth(e.date),p=n.navLinks?C("a",{"data-rsv":"day-number","data-nav-link":"true",role:"link",tabIndex:0,title:cn(n.locale).navLinkHint(new Intl.DateTimeFormat(n.locale,{dateStyle:"long"}).format(c)),onClick:$=>{$.stopPropagation(),nc(t,e.date)},children:h}):C("span",{"data-rsv":"day-number",children:h}),y={date:c,dayNumber:h,isToday:e.isToday,isOther:e.isOther,view:r},_=Ft((s=n.slots)==null?void 0:s.dayCellContent,y,p,n.hostBridge),[k,b]=Mn(!1),M=z.toISOString(e.date),T=Ce(!1),P=()=>{if(T.current){T.current=!1;return}n.selectConstraint==="businessHours"&&!e.isBusiness||(t.trigger("dateClick",{date:e.date}),n.selectable&&t.select(M,z.toISOString(z.add(e.date,{days:1}))))},N=$=>{$.stopPropagation(),n.moreLinkPopover!==!1&&b(!0),t.trigger("moreLinkClick",{date:e.date,allEvents:[...e.events,...e.hiddenEvents],hiddenEvents:e.hiddenEvents})};return C("div",{"data-rsv":"day",role:"gridcell","data-date":M,"data-rsv-drop":a?"true":void 0,"data-today":String(e.isToday),"data-other":String(e.isOther),"data-weekend":String(e.isWeekend),"data-business":String(e.isBusiness),"data-selected":String(e.isSelected),class:zt((u=n.classNames)==null?void 0:u.day),ref:$=>{var W;zn($,(W=n.hooks)==null?void 0:W.dayCellDidMount,()=>y),!(!$||i.current.has($))&&i.current.set($,uv($))},onClick:P,onPointerDown:n.selectable?$=>dy($,{api:t,startDate:M,onRangeSelect:()=>{T.current=!0}}):void 0,children:[_,e.events.filter($=>$.display!=="none").map($=>C(Mc,{api:t,event:$,options:n,view:r,arrastrandose:o===$.id},$.id)),e.moreCount>0&&C("div",{"data-rsv":"more-anchor",children:[C("button",{type:"button","data-rsv":"more-link",onClick:N,children:Ft((l=n.slots)==null?void 0:l.moreLinkContent,{date:c,moreCount:e.moreCount,allEvents:[...e.events,...e.hiddenEvents],hiddenEvents:e.hiddenEvents,view:r},cn(n.locale).more(e.moreCount),n.hostBridge)}),k&&C(hv,{api:t,cell:e,options:n,view:r,onClose:()=>b(!1)})]})]})}function hv({api:t,cell:e,options:n,view:r,onClose:a}){const i=Ce(null),o=new Intl.DateTimeFormat(n.locale??"en",{weekday:"long",day:"numeric",month:"long"}),s=[...e.events,...e.hiddenEvents].filter(u=>u.display!=="none");return bt(()=>{const u=c=>{i.current&&!i.current.contains(c.target)&&a()},l=c=>{c.key==="Escape"&&a()};return document.addEventListener("mousedown",u),document.addEventListener("keydown",l),()=>{document.removeEventListener("mousedown",u),document.removeEventListener("keydown",l)}},[a]),C("div",{"data-rsv":"more-popover",role:"dialog",ref:i,onClick:u=>u.stopPropagation(),children:[C("div",{"data-rsv":"more-popover-header",children:[C("span",{"data-rsv":"more-popover-title",children:o.format(z.toDate(e.date))}),C("button",{type:"button","data-rsv":"more-popover-close","aria-label":"✕",onClick:a,children:"✕"})]}),C("div",{"data-rsv":"more-popover-body",children:s.map(u=>C(Mc,{api:t,event:u,options:n,view:r,arrastrandose:!1},u.id))})]})}function Mc({api:t,event:e,options:n,view:r,arrastrandose:a}){var i,o;const s=n.editable===!0&&e.editable!==!1,u=s&&n.eventDraggable===!0,l=Ce(null),c=Ce(null);bt(()=>()=>{var M;return(M=l.current)==null?void 0:M.call(l)},[]);const h=t.selectedEventIds.value.has(e.id),p=Ce(!1),y=Ii(n.locale??"en",n.eventTimeFormat),_=e.allDay?"":y?y(z.toDate(e.start)):z.format(e.start,"HH:mm"),k={event:e,isAllDay:e.allDay,timeText:_,view:r},b=Ft((i=n.slots)==null?void 0:i.eventContent,k,C("span",{"data-rsv":"event-title",children:[_?`${_} `:"",e.title]}),n.hostBridge);return C("div",{"data-rsv":"event",role:"button",tabIndex:0,class:zt((o=n.classNames)==null?void 0:o.event,...e.classNames),"data-all-day":String(e.allDay),"data-display":e.display,"data-event-id":e.id,"data-editable":String(s),"data-rsv-selected":String(h),"data-rsv-dragging":a?"true":void 0,ref:M=>{var T,P;zn(M,(T=n.hooks)==null?void 0:T.eventDidMount,()=>k),M!==c.current&&((P=l.current)==null||P.call(l),c.current=M,l.current=M?_c(M,e,u):null)},style:`--rsv-event-bg:${e.backgroundColor};--rsv-event-fg:${e.textColor};--rsv-event-border:${e.borderColor}`,onClick:M=>{if(M.stopPropagation(),p.current){p.current=!1;return}if(M.ctrlKey||M.metaKey){t.toggleEventSelection(e.id);return}t.trigger("eventClick",{event:e,el:M.currentTarget}),e.url&&window.open(e.url,"_self")},onKeyDown:s?M=>rc(M,{api:t,event:e,kind:"dayGrid",shortcuts:n.keyboardShortcuts}):void 0,children:b})}const xa=40,Vl=16,mv={update(){},getScrolled:()=>0,stop(){}};function kc(t){if(!t)return mv;let e=0,n=0,r=0;const a=()=>{const i=t.getBoundingClientRect();let o=0;if(e<i.top+xa?o=-Vl*(1-Math.max(0,e-i.top)/xa):e>i.bottom-xa&&(o=Vl*(1-Math.max(0,i.bottom-e)/xa)),o!==0){const s=t.scrollTop;t.scrollTop+=o,n+=t.scrollTop-s}r=requestAnimationFrame(a)};return r=requestAnimationFrame(a),{update(i){e=i},getScrolled:()=>n,stop(){cancelAnimationFrame(r)}}}function Sc(t){return t.closest('[data-rsv="tg-body"]')}function Ql(t,e){t.preventDefault(),t.stopPropagation();const{api:n,event:r,model:a,columnEl:i,snap:o="00:15",edge:s,onPreview:u}=e,l=i.getBoundingClientRect(),c=a.maxMinutes-a.minMinutes,h=l.height===0?0:l.height/c,p=t.clientY,y=kc(Sc(i));y.update(t.clientY);const _=Oe(o)||15,k=T=>{const P=z.toDate(T);return P.getHours()*60+P.getMinutes()},b=T=>{if(y.update(T.clientY),!u)return;const P=wl(T.clientY-p+y.getScrolled(),h,o),N=s?Dl(r.start,r.end,s,P,z):Po(r.start,r.end,P,z),$=k(N.start),W=N.end?k(N.end):$+_;u({startMin:Math.min($,W),endMin:Math.max($,W)})},M=T=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",M),y.stop(),u==null||u(null);const P=wl(T.clientY-p+y.getScrolled(),h,o);if(P===0)return;const N=s?Dl(r.start,r.end,s,P,z):Po(r.start,r.end,P,z);if(n.moveEvent(r.id,N.start,N.end)){const $=n.getEventById(r.id);$&&n.trigger(s?"eventResize":"eventDrop",{event:$})}};document.addEventListener("pointermove",b),document.addEventListener("pointerup",M)}function fv(t,e){if(t.target.closest('[data-rsv="event"]'))return;const{api:n,date:r,model:a,columnEl:i,snap:o="00:15"}=e,s=a.maxMinutes-a.minMinutes,u=Oe(o)||15,l=b=>{const M=i.getBoundingClientRect(),T=M.height===0?0:M.height/s,P=a.minMinutes+(T===0?0:(b-M.top)/T),N=Math.max(a.minMinutes,Math.min(a.maxMinutes,P));return Math.round(N/u)*u},c=l(t.clientY);let h=c,p=!1;const y=kc(Sc(i));y.update(t.clientY);const _=b=>{var M;y.update(b.clientY);const T=l(b.clientY);T!==c&&(p=!0),h=T,p&&((M=e.onPreview)==null||M.call(e,{startMin:Math.min(c,h),endMin:Math.max(c,h)}))},k=()=>{var b;if(document.removeEventListener("pointermove",_),document.removeEventListener("pointerup",k),y.stop(),(b=e.onPreview)==null||b.call(e,null),!p)return;const M=Math.min(c,h),T=Math.max(c,h),P=z.startOf(r,"day");n.select(z.toISOString(z.add(P,{minutes:M})),z.toISOString(z.add(P,{minutes:T})))};document.addEventListener("pointermove",_),document.addEventListener("pointerup",k)}function yv({api:t,model:e,options:n}){const r=n.locale??"en",a={type:t.getView().type},i=ci(r,n.dayHeaderFormat,{weekday:"short",day:"numeric"}),o=Ii(r,n.slotLabelFormat),s=n.allDaySlot!==!1,u=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`,l=e.maxMinutes-e.minMinutes,c=Oe(n.snapDuration??n.slotDuration??"00:15")||15,h=Lr(n.businessHours),p=n.selectConstraint==="businessHours"&&h!==null,y=(E,L)=>{if(!p)return!0;const B=z.add(z.startOf(E,"day"),{minutes:L});return jd(B,null,h,z)},_=Ce(null),k=Ce(e);k.current=e;const[b,M]=Mn(null),[T,P]=Mn(null),N=Ce(null),$=Ce(new Map);bt(()=>{const E=$.current;return()=>{for(const L of E.values())L();E.clear()}},[]),bt(()=>sv({api:t,getModel:()=>k.current,snap:n.snapDuration??n.slotDuration,onPreview:E=>P(E?{id:N.current??"",preview:E}:null),onDragging:E=>{N.current=E,E===null&&P(null)}}),[t,n.snapDuration,n.slotDuration]),bt(()=>{const E=_.current;if(!E)return;const L={scrollToTime(B){const S=k.current,A=S.maxMinutes-S.minMinutes,U=E.scrollHeight;if(A<=0||U<=0)return;const te=(Math.max(S.minMinutes,Math.min(S.maxMinutes,Oe(B)))-S.minMinutes)/A*U;E.scrollTop=Math.max(0,Math.min(te,U-E.clientHeight))},getScrollTime(){const B=k.current,S=B.maxMinutes-B.minMinutes,A=E.scrollHeight;return S<=0||A<=0?null:oy(B.minMinutes+E.scrollTop/A*S)}};return t.setViewAdapter(L),()=>t.setViewAdapter(null)},[t]);const W=n.scrollTime;bt(()=>{if(!W)return;let E=0;const L=requestAnimationFrame(()=>{E=requestAnimationFrame(()=>t.scrollToTime(W))});return()=>{cancelAnimationFrame(L),cancelAnimationFrame(E)}},[t]);const Q=(E,L)=>{const B=E.getBoundingClientRect();if(B.height===0||l<=0)return e.minMinutes;const S=(L-B.top)/B.height*l,A=Math.floor(Math.max(0,Math.min(l,S))/c)*c;return e.minMinutes+A},x=e.days[0];return C("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.days.length}`,children:[C("div",{"data-rsv":"tg-header",role:"row",children:[C("div",{"data-rsv":"tg-axis-corner"}),e.days.map(E=>{var L,B;const S=z.toDate(E.date),A=i?i(S):"",U={date:S,text:A,dayOfWeek:z.dayOfWeek(E.date),dayNumber:z.dayOfMonth(E.date),isToday:E.isToday,view:a};return C("div",{"data-rsv":"tg-col-header",role:"columnheader","data-today":String(E.isToday),"data-date":z.toISOString(E.date),"data-nav-link":n.navLinks?"true":void 0,class:zt((L=n.classNames)==null?void 0:L.dayHeader),ref:te=>{var v;return zn(te,(v=n.hooks)==null?void 0:v.dayHeaderDidMount,()=>U)},onClick:n.navLinks?()=>nc(t,E.date):void 0,children:Ft((B=n.slots)==null?void 0:B.dayHeaderContent,U,A,n.hostBridge)},z.toISOString(E.date))})]}),s&&C("div",{"data-rsv":"tg-allday",role:"row",children:[C("div",{"data-rsv":"tg-axis-label",children:cn(n.locale).allDay}),e.days.map(E=>C("div",{"data-rsv":"tg-allday-cell",onClick:()=>t.trigger("dateClick",{date:E.date,allDay:!0}),children:E.allDayEvents.filter(L=>L.display!=="none").map(L=>{var B,S;return C("div",{"data-rsv":"event","data-all-day":"true","data-event-id":L.id,class:zt((B=n.classNames)==null?void 0:B.event,...L.classNames),"data-display":L.display,style:`--rsv-event-bg:${L.backgroundColor};--rsv-event-fg:${L.textColor};--rsv-event-border:${L.borderColor}`,onClick:A=>{A.stopPropagation(),t.trigger("eventClick",{event:L,el:A.currentTarget}),L.url&&window.open(L.url,"_self")},children:Ft((S=n.slots)==null?void 0:S.eventContent,{event:L,isAllDay:!0,timeText:"",view:a},L.title,n.hostBridge)},L.id)})},z.toISOString(E.date)))]}),C("div",{"data-rsv":"tg-body",ref:_,children:[C("div",{"data-rsv":"tg-axis",style:`height:${u}`,children:e.slots.map(E=>{var L,B;const S=e.minMinutes+E.offsetMin;let A="";E.isMajor&&(A=o&&x?o(z.toDate(z.add(z.startOf(x.date,"day"),{minutes:S}))):E.label||iy(S));const U={text:A,minutes:S,isMajor:E.isMajor,view:a};return C("div",{"data-rsv":"tg-slot","data-major":String(E.isMajor),children:C("span",{"data-rsv":"tg-slot-label",class:zt((L=n.classNames)==null?void 0:L.slotLabel),ref:te=>{var v;return zn(te,(v=n.hooks)==null?void 0:v.slotLabelDidMount,()=>U)},children:Ft((B=n.slots)==null?void 0:B.slotLabelContent,U,A,n.hostBridge)})},E.offsetMin)})}),e.days.map((E,L)=>{var B;return C("div",{"data-rsv":"tg-col","data-today":String(E.isToday),"data-business":String(E.isBusiness),"data-date":z.toISOString(E.date),"data-rsv-day-index":String(L),ref:S=>{!S||$.current.has(S)||$.current.set(S,av(S))},style:`height:${u}`,onClick:S=>{if(pc())return;const A=Q(S.currentTarget,S.clientY);y(E.date,A)&&t.trigger("dateClick",{date:z.add(z.startOf(E.date,"day"),{minutes:A}),allDay:!1})},onPointerDown:n.selectable?S=>{const A=Q(S.currentTarget,S.clientY);y(E.date,A)&&fv(S,{api:t,date:E.date,model:e,columnEl:S.currentTarget,snap:n.snapDuration??n.slotDuration,onPreview:n.selectMirror?U=>M(U?{dayIndex:L,startMin:U.startMin,endMin:U.endMin}:null):void 0})}:void 0,children:[E.nonBusinessPct.map(S=>C("div",{"data-rsv":"tg-nonbusiness",style:`top:${S.topPct}%;height:${S.heightPct}%`},S.topPct)),(b==null?void 0:b.dayIndex)===L&&l>0&&C("div",{"data-rsv":"select-mirror",style:`top:${(b.startMin-e.minMinutes)/l*100}%;height:${(b.endMin-b.startMin)/l*100}%`}),E.timedSegs.filter(S=>S.event.display!=="none").map(S=>C(vv,{api:t,seg:S,model:e,options:n,view:a,dragging:(T==null?void 0:T.id)===S.event.id,onDragPreview:A=>P(A?{id:S.event.id,preview:{dayIndex:L,...A}}:null)},S.event.id)),(T==null?void 0:T.preview.dayIndex)===L&&l>0&&C("div",{"data-rsv":"drag-mirror",style:`top:${(T.preview.startMin-e.minMinutes)/l*100}%;height:${(T.preview.endMin-T.preview.startMin)/l*100}%`}),((B=e.nowIndicator)==null?void 0:B.dayIndex)===L&&C("div",{"data-rsv":"now-indicator",style:`top:${e.nowIndicator.topPct}%`})]},z.toISOString(E.date))})]})]})}function vv({api:t,seg:e,model:n,options:r,view:a,dragging:i,onDragPreview:o}){var s,u;const{event:l}=e,c=r.editable===!0&&l.editable!==!1,h=c&&r.eventDraggable===!0,p=Ce(null),y=Ce(null);bt(()=>()=>{var $;return($=p.current)==null?void 0:$.call(p)},[]);const _=t.selectedEventIds.value.has(l.id),k=100/e.colCount,b=Ii(r.locale??"en",r.eventTimeFormat),M=b?b(z.toDate(l.start)):z.format(l.start,"HH:mm"),T={event:l,isAllDay:!1,timeText:M,view:a},P=Ft((s=r.slots)==null?void 0:s.eventContent,T,C("span",{"data-rsv":"event-title",children:[M," ",l.title]}),r.hostBridge),N=$=>$.closest('[data-rsv="tg-col"]')??$;return C("div",{"data-rsv":"event","data-all-day":"false","data-display":l.display,"data-event-id":l.id,"data-rsv-selected":String(_),"data-rsv-dragging":i?"true":void 0,class:zt((u=r.classNames)==null?void 0:u.event,...l.classNames),role:"button",tabIndex:0,ref:$=>{var W,Q;zn($,(W=r.hooks)==null?void 0:W.eventDidMount,()=>T),$!==y.current&&((Q=p.current)==null||Q.call(p),y.current=$,p.current=$?_c($,l,h):null)},style:`position:absolute;top:${e.topPct}%;height:${e.heightPct}%;left:${e.col*k}%;width:${k}%;--rsv-event-bg:${l.backgroundColor};--rsv-event-fg:${l.textColor};--rsv-event-border:${l.borderColor}`,onClick:$=>{if($.stopPropagation(),!pc()){if($.ctrlKey||$.metaKey){t.toggleEventSelection(l.id);return}t.trigger("eventClick",{event:l,el:$.currentTarget}),l.url&&window.open(l.url,"_self")}},onKeyDown:c?$=>rc($,{api:t,event:l,kind:"timeGrid",snap:r.snapDuration??r.slotDuration,shortcuts:r.keyboardShortcuts}):void 0,children:[c&&C("span",{"data-rsv":"resize-handle","data-edge":"start",onPointerDown:$=>Ql($,{api:t,event:l,model:n,columnEl:N($.currentTarget),snap:r.snapDuration,onPreview:o,edge:"start"})}),P,c&&C("span",{"data-rsv":"resize-handle","data-edge":"end",onPointerDown:$=>Ql($,{api:t,event:l,model:n,columnEl:N($.currentTarget),snap:r.snapDuration,onPreview:o,edge:"end"})})]})}function pv({api:t,model:e,options:n}){const r=n.locale??"en",a={type:t.getView().type},i=cn(n.locale),o=ci(r,n.listDayFormat,{weekday:"long",day:"numeric",month:"long"}),s=n.listDaySideFormat?ci(r,n.listDaySideFormat,{month:"short",day:"2-digit"}):null,u=Ii(r,n.eventTimeFormat);return e.isEmpty?C("div",{"data-rsv":"list",children:C("div",{"data-rsv":"list-empty",children:i.noEvents})}):C("div",{"data-rsv":"list",role:"list",children:e.days.map(l=>C("div",{"data-rsv":"list-day","data-today":String(l.isToday),children:[C("div",{"data-rsv":"list-day-header",role:"heading","aria-level":3,children:[C("span",{"data-rsv":"list-day-text",children:o?o(z.toDate(l.date)):""}),s&&C("span",{"data-rsv":"list-day-side-text",children:s(z.toDate(l.date))})]}),l.events.filter(c=>c.display!=="none").map(c=>{var h,p;const y=c.allDay?i.allDay:u?u(z.toDate(c.start)):z.format(c.start,"HH:mm"),_={event:c,isAllDay:c.allDay,timeText:y,view:a};return C("div",{"data-rsv":"list-item",role:"listitem",tabIndex:0,"data-event-id":c.id,class:zt((h=n.classNames)==null?void 0:h.event,...c.classNames),"data-display":c.display,ref:k=>{var b;return zn(k,(b=n.hooks)==null?void 0:b.eventDidMount,()=>_)},style:`--rsv-event-bg:${c.backgroundColor};--rsv-event-fg:${c.textColor};--rsv-event-border:${c.borderColor}`,onClick:k=>{t.trigger("eventClick",{event:c,el:k.currentTarget}),c.url&&window.open(c.url,"_self")},children:[C("span",{"data-rsv":"list-item-time",children:y}),C("span",{"data-rsv":"list-item-dot",style:`--rsv-event-bg:${c.backgroundColor}`}),C("div",{"data-rsv":"list-item-title",children:Ft((p=n.slots)==null?void 0:p.eventContent,_,c.title,n.hostBridge)})]},c.id)})]},z.toISOString(l.date)))})}function gv({api:t,model:e,options:n}){const r=n.locale??"en",a=new Intl.DateTimeFormat(r,{month:"long"});return C("div",{"data-rsv":"multimonth",children:e.months.map(i=>C("section",{"data-rsv":"mm-month",children:[C("header",{"data-rsv":"mm-title",children:a.format(z.toDate(i.date))}),C(bc,{api:t,model:i.dayGrid,options:n})]},z.toISOString(i.date)))})}const Uo=1.6;function _v({api:t,model:e,options:n}){return C("div",{"data-rsv":"timeline",children:[C("div",{"data-rsv":"tl-axis",role:"row",children:e.slots.map(r=>C("div",{"data-rsv":"tl-slot",style:`left:${r.leftPct}%`,children:r.label},r.leftPct))}),C("div",{"data-rsv":"tl-body",style:`height:${e.laneCount*Uo+.5}rem`,children:e.segs.map(r=>C(Tc,{api:t,seg:r,options:n},r.event.id))})]})}function Tc({api:t,seg:e,options:n}){var r;const{event:a}=e;return C("div",{"data-rsv":"event","data-event-id":a.id,role:"button",tabIndex:0,style:`position:absolute;left:${e.leftPct}%;width:${e.widthPct}%;top:${e.lane*Uo}rem;height:${Uo-.2}rem;--rsv-event-bg:${a.backgroundColor};--rsv-event-fg:${a.textColor};--rsv-event-border:${a.borderColor}`,onClick:i=>t.trigger("eventClick",{event:a,el:i.currentTarget}),children:Ft((r=n.slots)==null?void 0:r.eventContent,{event:a,isAllDay:a.allDay,timeText:"",view:{type:t.getView().type}},a.title,n.hostBridge)})}const wv=1.6;function Dv({api:t,model:e,options:n}){return C("div",{"data-rsv":"resource-timeline",children:[C("div",{"data-rsv":"rt-header",role:"row",children:[C("div",{"data-rsv":"resource-area-header",children:n.locale==="es"?"Recursos":"Resources"}),C("div",{"data-rsv":"tl-axis",children:e.slots.map(r=>C("div",{"data-rsv":"tl-slot",style:`left:${r.leftPct}%`,children:r.label},r.leftPct))})]}),e.lanes.map(r=>{const a=r.laneCount*wv+.4;return C("div",{"data-rsv":"resource-row",role:"row",children:[C("div",{"data-rsv":"resource-label",style:`padding-inline-start:${.5+r.row.depth*1}rem`,children:[r.row.hasChildren&&C("button",{type:"button","data-rsv":"resource-toggle","aria-expanded":r.row.expanded,onClick:()=>t.toggleResource(r.row.resource.id),children:r.row.expanded?"▾":"▸"}),C("span",{"data-rsv":"resource-title",children:r.row.resource.title})]}),C("div",{"data-rsv":"resource-lane",style:`height:${a}rem`,children:r.segs.map(i=>C(Tc,{api:t,seg:i,options:n},i.event.id))})]},r.row.resource.id)})]})}function bv({api:t,model:e,options:n}){const r=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`;return C("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.columns.length}`,children:[C("div",{"data-rsv":"tg-header",role:"row",children:[C("div",{"data-rsv":"tg-axis-corner"}),e.columns.map(a=>C("div",{"data-rsv":"tg-col-header",role:"columnheader",children:a.row.resource.title},a.row.resource.id))]}),C("div",{"data-rsv":"tg-allday",role:"row",children:[C("div",{"data-rsv":"tg-axis-label",children:cn(n.locale).allDay}),e.columns.map(a=>C("div",{"data-rsv":"tg-allday-cell",children:a.allDayEvents.map(i=>C("div",{"data-rsv":"event","data-all-day":"true",style:`--rsv-event-bg:${i.backgroundColor}`,onClick:o=>t.trigger("eventClick",{event:i,el:o.currentTarget}),children:i.title},i.id))},a.row.resource.id))]}),C("div",{"data-rsv":"tg-body",children:[C("div",{"data-rsv":"tg-axis",style:`height:${r}`,children:e.slots.map(a=>C("div",{"data-rsv":"tg-slot","data-major":String(a.isMajor),children:C("span",{"data-rsv":"tg-slot-label",children:a.label})},a.offsetMin))}),e.columns.map(a=>C("div",{"data-rsv":"tg-col","data-rsv-resource-id":a.row.resource.id,style:`height:${r}`,children:[a.timedSegs.map(i=>{const o=100/i.colCount;return C("div",{"data-rsv":"event","data-all-day":"false","data-event-id":i.event.id,role:"button",tabIndex:0,style:`position:absolute;top:${i.topPct}%;height:${i.heightPct}%;left:${i.col*o}%;width:${o}%;--rsv-event-bg:${i.event.backgroundColor};--rsv-event-fg:${i.event.textColor}`,onClick:s=>{s.stopPropagation(),t.trigger("eventClick",{event:i.event})},children:[z.format(i.event.start,"HH:mm")," ",i.event.title]},i.event.id)}),e.nowTopPct!=null&&C("div",{"data-rsv":"now-indicator",style:`top:${e.nowTopPct}%`})]},a.row.resource.id))]})]})}function Mv({api:t,model:e}){return C("div",{"data-rsv":"resource-daygrid",style:`--rsv-rdg-cols:${e.columns.length}`,children:[C("div",{"data-rsv":"rdg-header",role:"row",children:e.columns.map(n=>C("div",{"data-rsv":"rdg-col-header",role:"columnheader",children:n.row.resource.title},n.row.resource.id))}),C("div",{"data-rsv":"rdg-body",role:"row",children:e.columns.map(n=>C("div",{"data-rsv":"rdg-col","data-rsv-resource-id":n.row.resource.id,children:n.events.map(r=>C("div",{"data-rsv":"event","data-all-day":String(r.allDay),"data-event-id":r.id,role:"button",tabIndex:0,style:`--rsv-event-bg:${r.backgroundColor};--rsv-event-fg:${r.textColor};--rsv-event-border:${r.borderColor}`,onClick:a=>t.trigger("eventClick",{event:r,el:a.currentTarget}),children:[r.allDay?"":z.format(r.start,"HH:mm")+" ",r.title]},r.id))},n.row.resource.id))})]})}function kv({api:t,model:e,options:n}){return C("div",{"data-rsv":"resource-daygrid-month",style:`--rsv-rdgm-cols:${e.columnCount}`,children:e.weeks.map((r,a)=>C("div",{"data-rsv":"rdgm-week",role:"row",children:r.days.map(i=>C(Sv,{api:t,cell:i,options:n},z.toISOString(i.date)))},`week-${a}`))})}function Sv({api:t,cell:e,options:n}){const r=z.dayOfMonth(e.date);return C("div",{"data-rsv":"day",role:"gridcell","data-date":z.toISOString(e.date),"data-today":String(e.isToday),"data-other":String(e.isOther),children:[C("span",{"data-rsv":"day-number",children:r}),C("div",{"data-rsv":"rdgm-columns",children:e.columns.map(a=>C("div",{"data-rsv":"rdgm-col","data-rsv-resource-id":a.row.resource.id,children:[C("span",{"data-rsv":"rdgm-col-label",children:a.row.resource.title}),a.events.map(i=>{const o=t.selectedEventIds.value.has(i.id);return C("div",{"data-rsv":"event","data-all-day":String(i.allDay),"data-event-id":i.id,"data-rsv-selected":String(o),role:"button",tabIndex:0,style:`--rsv-event-bg:${i.backgroundColor};--rsv-event-fg:${i.textColor};--rsv-event-border:${i.borderColor}`,onClick:s=>{if(s.stopPropagation(),s.ctrlKey||s.metaKey){t.toggleEventSelection(i.id);return}t.trigger("eventClick",{event:i,el:s.currentTarget}),i.url&&window.open(i.url,"_self")},children:[i.allDay?"":`${z.format(i.start,"HH:mm")} `,i.title]},i.id)}),a.moreCount>0&&C("span",{"data-rsv":"rdgm-more",onClick:i=>{i.stopPropagation(),t.trigger("moreLinkClick",{date:e.date,allEvents:[...a.events,...a.hiddenEvents],hiddenEvents:a.hiddenEvents})},children:cn(n.locale).more(a.moreCount)})]},a.row.resource.id))})]})}function Tv({api:t,options:e}){var n;const r=t.viewModel.value,a=e.direction??cn(e.locale).direction,i=t.getEffectiveOption("hourHeight",r.type),o=t.getEffectiveOption("height",r.type),s=[e.themeTokens?Yf(e.themeTokens):"",i?`${Jd.slotHeight}:${i}px`:"",o!=null&&o!=="auto"?`height:${typeof o=="number"?`${o}px`:o}`:""].filter(Boolean).join(";")||void 0,u=Ce(null);bt(()=>(t.setRootEl(u.current),()=>t.setRootEl(null)),[t]);const l=Ce(e.responsiveViews);return l.current=e.responsiveViews,bt(()=>{const c=u.current;if(!c||typeof ResizeObserver>"u")return;let h=0;const p=new ResizeObserver(y=>{const _=y[0],k=(_==null?void 0:_.contentRect.width)??c.clientWidth;cancelAnimationFrame(h),h=requestAnimationFrame(()=>{const b=l.current;if(!(b!=null&&b.length))return;const M=Xf(b,k);M&&M!==t.getView().type&&t.hasView(M)&&t.changeView(M)})});return p.observe(c),()=>{cancelAnimationFrame(h),p.disconnect()}},[t]),C("div",{ref:u,"data-rsv":"root",dir:a,"data-rsv-theme":e.theme,"data-rsv-autoheight":o==="auto"?"true":void 0,style:s,class:zt((n=e.classNames)==null?void 0:n.root),children:[e.headerToolbar!==!1&&C(ay,{api:t,title:r.title,activeView:r.type,options:e}),C("div",{"data-rsv":"view","data-view":r.type,children:r.dayGrid?C(bc,{api:t,model:r.dayGrid,options:e}):r.timeGrid?C(yv,{api:t,model:r.timeGrid,options:e}):r.list?C(pv,{api:t,model:r.list,options:e}):r.multiMonth?C(gv,{api:t,model:r.multiMonth,options:e}):r.resourceTimeGrid?C(bv,{api:t,model:r.resourceTimeGrid,options:e}):r.resourceDayGrid?C(Mv,{api:t,model:r.resourceDayGrid,options:e}):r.resourceDayGridMonth?C(kv,{api:t,model:r.resourceDayGridMonth,options:e}):r.resourceTimeline?C(Dv,{api:t,model:r.resourceTimeline,options:e}):r.timeline?C(_v,{api:t,model:r.timeline,options:e}):C("div",{"data-rsv":"unsupported",children:['La vista "',r.type,'" se implementa en una fase posterior.']})})]})}function Yv(t,e){const n=new Lf(e);return $s(du(Tv,{api:n,options:e}),t),{api:n,destroy(){$s(null,t),n.destroy()}}}const Xl=t=>t?z.toDate(t):null,eu=t=>t?z.toISOString(t):"";function $t(t){return{id:t.id,groupId:t.groupId,title:t.title,start:Xl(t.start),end:Xl(t.end),startStr:eu(t.start),endStr:eu(t.end),allDay:t.allDay,url:t.url,display:t.display,backgroundColor:t.backgroundColor,borderColor:t.borderColor,textColor:t.textColor,classNames:t.classNames,extendedProps:t.extendedProps,def:t}}function Fo(t,e,n){const r={type:t.type};return e?{...r,...n==null?{}:{title:n},currentStart:z.toDate(e.currentStart),currentEnd:z.toDate(e.currentEnd),activeStart:z.toDate(e.activeStart),activeEnd:z.toDate(e.activeEnd)}:n==null?r:{...r,title:n}}const Ev=["eventContent","dayCellContent","dayHeaderContent","slotLabelContent","moreLinkContent"],tu=["locale","direction","timeZone","firstDay","weekends","hiddenDays","fixedWeekCount","showNonCurrentDates","weekNumbers","weekNumberCalculation","navLinks","dayMaxEvents","dayMaxEventRows","slotMinTime","slotMaxTime","slotDuration","slotLabelInterval","allDaySlot","nowIndicator","scrollTime","editable","eventDraggable","selectable","selectMirror","snapDuration","businessHours","eventOverlap","eventConstraint","eventAllow","theme","themeTokens","headerToolbar","hourHeight","height","eventTimeFormat","slotLabelFormat","dayHeaderFormat","listDayFormat","listDaySideFormat","titleFormat","viewOverrides","keyboardShortcuts","resourceAreaWidth","resourceOrder","lazyFetching","classNames","views","addButtonText","responsiveViews"];function $v(t,e){return t.getOption(e)}const Ov=Fe.forwardRef(function(t,e){const n=Fe.useRef(null),r=Fe.useRef(null),a=Fe.useRef(t);a.current=t;const i=Fe.useRef(new Map),[,o]=Fe.useState(0),s=Fe.useRef(!1),u=Fe.useRef(!0),l=Fe.useCallback(()=>{s.current||(s.current=!0,queueMicrotask(()=>{s.current=!1,u.current&&o(k=>k+1)}))},[]),c=Fe.useMemo(()=>({mount(k,b,M){i.current.set(k,{el:b,payload:M}),l()},update(k,b){const M=i.current.get(k);M&&(M.payload=b,l())},unmount(k){i.current.delete(k)&&l()}}),[l]);Fe.useEffect(()=>{var k,b;const M=n.current;if(!M)return;u.current=!0;const T={eventContent:x=>a.current.eventContent?Or({slot:"eventContent",arg:x}):void 0,dayCellContent:x=>a.current.dayCellContent?Or({slot:"dayCellContent",arg:x}):void 0,dayHeaderContent:x=>a.current.dayHeaderContent?Or({slot:"dayHeaderContent",arg:x}):void 0,slotLabelContent:x=>a.current.slotLabelContent?Or({slot:"slotLabelContent",arg:x}):void 0,moreLinkContent:x=>a.current.moreLinkContent?Or({slot:"moreLinkContent",arg:x}):void 0},P={...Hv(a.current),slots:T,hostBridge:c,hooks:{eventDidMount:x=>{const E=a.current.eventDidMount;E&&E({...Yc(x),el:x.el})},dayCellDidMount:x=>{var E,L;return(L=(E=a.current).dayCellDidMount)==null?void 0:L.call(E,x)},dayHeaderDidMount:x=>{var E,L;return(L=(E=a.current).dayHeaderDidMount)==null?void 0:L.call(E,x)},slotLabelDidMount:x=>{var E,L;return(L=(E=a.current).slotLabelDidMount)==null?void 0:L.call(E,x)}}},N=Yv(M,P);r.current=N;const $=N.api,W=()=>{const x=$.getViewModel();return Fo(x.spec,x.range,x.title)},Q=[$.on("eventClick",({event:x,el:E})=>{var L,B;return(B=(L=a.current).eventClick)==null?void 0:B.call(L,{event:$t(x),el:E??null,view:W()})}),$.on("dateClick",({date:x,allDay:E})=>{var L,B;return(B=(L=a.current).dateClick)==null?void 0:B.call(L,{date:z.toDate(x),dateStr:z.toISOString(x),allDay:E??!1,view:W()})}),$.on("select",({start:x,end:E})=>{var L,B;return(B=(L=a.current).select)==null?void 0:B.call(L,{start:z.toDate(x),end:z.toDate(E),startStr:z.toISOString(x),endStr:z.toISOString(E),view:W()})}),$.on("unselect",()=>{var x,E;return(E=(x=a.current).unselect)==null?void 0:E.call(x)}),$.on("datesSet",({range:x,view:E})=>{var L,B;return(B=(L=a.current).datesSet)==null?void 0:B.call(L,{start:z.toDate(x.activeStart),end:z.toDate(x.activeEnd),startStr:z.toISOString(x.activeStart),endStr:z.toISOString(x.activeEnd),view:Fo(E,x)})}),$.on("eventsSet",x=>{var E,L;return(L=(E=a.current).eventsSet)==null?void 0:L.call(E,x.map(B=>$t(B)))}),$.on("eventDrop",({event:x})=>{var E,L;return(L=(E=a.current).eventDrop)==null?void 0:L.call(E,{event:$t(x),view:W()})}),$.on("eventResize",({event:x})=>{var E,L;return(L=(E=a.current).eventResize)==null?void 0:L.call(E,{event:$t(x),view:W()})}),$.on("eventChange",({event:x})=>{var E,L;return(L=(E=a.current).eventChange)==null?void 0:L.call(E,{event:$t(x),view:W()})}),$.on("moreLinkClick",({date:x,allEvents:E,hiddenEvents:L})=>{var B,S;return(S=(B=a.current).moreLinkClick)==null?void 0:S.call(B,{date:z.toDate(x),dateStr:z.toISOString(x),allEvents:E.map(A=>$t(A)),hiddenEvents:L.map(A=>$t(A)),view:W()})}),$.on("navLinkDay",({date:x})=>{var E,L;return(L=(E=a.current).navLinkDay)==null?void 0:L.call(E,{date:z.toDate(x),dateStr:z.toISOString(x)})}),$.on("loading",({isLoading:x})=>{var E,L;return(L=(E=a.current).loading)==null?void 0:L.call(E,x)})];return(b=(k=a.current).onReady)==null||b.call(k,$),()=>{u.current=!1;for(const x of Q)x();N.destroy(),r.current=null,i.current.clear()}},[c]),Fe.useImperativeHandle(e,()=>({getApi:()=>{var k;return((k=r.current)==null?void 0:k.api)??null}}),[]);const h=tu.map(k=>t[k]);Fe.useEffect(()=>{var k;const b=(k=r.current)==null?void 0:k.api;if(!b)return;const M={};let T=!1;tu.forEach((P,N)=>{$v(b,P)!==h[N]&&(M[P]=h[N],T=!0)}),T&&b.setOptions(M)},h);const p=t.events,y=Fe.useRef(p);Fe.useEffect(()=>{var k;const b=(k=r.current)==null?void 0:k.api;if(!(!b||!p)){if(y.current===p){y.current=void 0;return}b.refetchEvents(p)}},[p]);const _=[];for(const[k,{el:b,payload:M}]of i.current){const T=Cv(t,M);T!=null&&_.push(xc.createPortal(T,b,k))}return Ai.jsxs(Ai.Fragment,{children:[Ai.jsx("div",{ref:n,className:t.className,style:t.style}),_]})});function Cv(t,e){var n,r,a,i,o;switch(e.slot){case"eventContent":return(n=t.eventContent)==null?void 0:n.call(t,Yc(e.arg));case"dayCellContent":return(r=t.dayCellContent)==null?void 0:r.call(t,e.arg);case"dayHeaderContent":return(a=t.dayHeaderContent)==null?void 0:a.call(t,e.arg);case"slotLabelContent":return(i=t.slotLabelContent)==null?void 0:i.call(t,e.arg);case"moreLinkContent":{const s=e.arg;return(o=t.moreLinkContent)==null?void 0:o.call(t,{date:s.date,moreCount:s.moreCount,allEvents:s.allEvents.map($t),hiddenEvents:s.hiddenEvents.map($t),view:s.view})}default:return null}}function Yc(t){return{event:$t(t.event),isAllDay:t.isAllDay,timeText:t.timeText,view:t.view}}const Iv=new Set([...Ev,"eventClick","dateClick","select","unselect","datesSet","eventsSet","eventDrop","eventResize","eventChange","moreLinkClick","navLinkDay","loading","eventDidMount","dayCellDidMount","dayHeaderDidMount","slotLabelDidMount","onReady","className","style"]);function Hv(t){const e={};for(const[n,r]of Object.entries(t))Iv.has(n)||(e[n]=r);return e}/*! Nexa v1.7.0 | (c) 2026 Berea-Soft | MIT License | https://github.com/Berea-Soft/Nexa */var Xi=t=>({ok:!0,value:t}),It=t=>({ok:!1,error:t}),Ec=class{constructor(){X(this,"cache",new Map)}get(t){let e=this.cache.get(t);return e?Date.now()-e.timestamp>e.ttlMs?(this.cache.delete(t),null):e.data:null}set(t,e,n=6e4){this.cache.set(t,{data:e,timestamp:Date.now(),ttlMs:n})}clear(){this.cache.clear()}has(t){let e=this.cache.get(t);return e?Date.now()-e.timestamp>e.ttlMs?(this.cache.delete(t),!1):!0:!1}delete(t){this.cache.delete(t)}};function xv(t={}){let e=t.cache||new Ec,n=t.ttlMs||6e4,r=t.cacheableStatuses||[200,304];return async(a,i)=>{let o=(a.request.method||"GET").toUpperCase(),s=o==="GET",u=`${o}:${a.request.url}`;if(s&&e.has(u)){let l=e.get(u);if(l){a.response=l,a.state.cacheHit=!0;return}}await i(),s&&a.response&&r.includes(a.response.status)&&(e.set(u,a.response,n),a.state.cacheMiss=!0)}}xv();var Pv=class{constructor(){X(this,"pending",new Map)}async execute(t,e){if(this.pending.has(t))return this.pending.get(t);let n=e().finally(()=>{this.pending.delete(t)});return this.pending.set(t,n),n}clear(){this.pending.clear()}};function Av(t={}){let e=t.deduplicator||new Pv,n=t.includeBody??!1,r=t.methods||["GET"];return async(a,i)=>{let o=(a.request.method||"GET").toUpperCase();if(!r.includes(o)){await i();return}let s=`${o}:${a.request.url}`;n&&a.request.body&&(s+=`:${JSON.stringify(a.request.body)}`);try{a.response=await e.execute(s,async()=>(await i(),a.response)),a.state.deduped=!0}catch(u){throw a.error=u,u}}}Av();var Rv=class{constructor(){X(this,"store",new Ec)}get(t){return this.store.get(t)}set(t,e,n=6e4){this.store.set(t,e,n)}has(t){return this.store.has(t)}clear(){this.store.clear()}},jv=class{constructor(t=3,e=100){X(this,"maxAttempts");X(this,"baseDelayMs");this.maxAttempts=t,this.baseDelayMs=e}shouldRetry(t,e){let n=e.status!==void 0&&e.status>=500,r=e.code==="NETWORK_ERROR";return t<this.maxAttempts&&(n||r||e.code==="TIMEOUT")}delayMs(t){let e=this.baseDelayMs*2**(t-1),n=Math.random()*e*.1;return Math.min(e+n,3e4)}},Nv=class{constructor(t){X(this,"running",0);X(this,"queue",[]);X(this,"maxConcurrent");this.maxConcurrent=t}async acquire(){if(this.running<this.maxConcurrent){this.running++;return}return new Promise(t=>{this.queue.push(()=>{this.running++,t()})})}release(){this.running--;let t=this.queue.shift();t&&t()}get pending(){return this.queue.length}get active(){return this.running}};function nu(t){return t==null?{serialized:void 0,contentType:null}:typeof t=="string"?{serialized:t,contentType:"text/plain"}:typeof FormData<"u"&&t instanceof FormData?{serialized:t,contentType:null}:typeof URLSearchParams<"u"&&t instanceof URLSearchParams?{serialized:t,contentType:"application/x-www-form-urlencoded"}:typeof Blob<"u"&&t instanceof Blob?{serialized:t,contentType:t.type||"application/octet-stream"}:t instanceof ArrayBuffer||ArrayBuffer.isView(t)||typeof ReadableStream<"u"&&t instanceof ReadableStream?{serialized:t,contentType:"application/octet-stream"}:{serialized:JSON.stringify(t),contentType:"application/json"}}function eo(t,e){return e?t.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,(n,r)=>{let a=e[r];if(a===void 0)throw Error(`Missing path parameter: :${r}`);return encodeURIComponent(String(a))}):t}var Lv=class $c{constructor(e={}){X(this,"requestInterceptors",[]);X(this,"responseInterceptors",[]);X(this,"cache");X(this,"devTracker");X(this,"config");X(this,"requestQueue");X(this,"pendingRequests",new Set);this.config={baseURL:e.baseURL??"",defaultHeaders:e.defaultHeaders??{"Content-Type":"application/json"},defaultTimeout:e.defaultTimeout??3e4,validateStatus:e.validateStatus??(n=>n>=200&&n<300),cacheStrategy:e.cacheStrategy??new Rv,maxConcurrent:e.maxConcurrent??0,defaultResponseType:e.defaultResponseType??"auto",defaultHooks:e.defaultHooks??{},adapter:e.adapter},this.cache=this.config.cacheStrategy,this.requestQueue=this.config.maxConcurrent>0?new Nv(this.config.maxConcurrent):null,this.devTracker=e.devTracker??null}async request(e){var o,s,u,l,c,h,p,y,_,k,b;if(!this.requestInterceptors.length&&!this.responseInterceptors.length&&!((o=e.cache)!=null&&o.enabled)&&!e.hooks&&!Object.keys(this.config.defaultHooks).length&&!e.retry&&!e.validate&&!e.transform&&!this.requestQueue&&!e.onDownloadProgress&&!e.signal)return this.fastPath(e);let n=e.hooks?{...this.config.defaultHooks,...e.hooks}:this.config.defaultHooks,r=this.getMaxAttempts(e.retry),a=this.getRetryStrategy(e.retry),i=this.buildRequest(e);(s=n.onStart)==null||s.call(n,i),this.requestQueue&&await this.requestQueue.acquire();try{for(let T=1;T<=r;T++){let P;try{if((e.method==="GET"||!e.method)&&((u=e.cache)!=null&&u.enabled)){let S=this.getCacheKey(e),A=this.cache.get(S);if(A){let U=A;return this.trackDev({method:e.method??"GET",url:i.url,status:U.status,duration:U.duration,cached:!0,ok:!0,headers:{...i.headers},body:e.body,retryCount:0}),(l=n.onSuccess)==null||l.call(n,U),(c=n.onFinally)==null||c.call(n),Xi(U)}}let N=i;for(let S of this.requestInterceptors)N=await S.onRequest(N);P=new AbortController,this.pendingRequests.add(P),e.signal&&e.signal.addEventListener("abort",()=>P.abort(),{once:!0});let $=performance.now(),W=await this.fetchWithTimeout(N,this.resolveTimeoutMs(e.timeout??this.config.defaultTimeout),P),Q=performance.now()-$,x=W;e.onDownloadProgress&&W.body&&(x=this.trackDownloadProgress(W,e.onDownloadProgress));let E=e.responseType??this.config.defaultResponseType,L=await this.parseResponse(x,N,Q,E);if(!this.config.validateStatus(L.status))throw{message:`Request failed with status ${L.status}`,status:L.status,statusText:L.statusText,code:"HTTP_ERROR"};if(e.validate){let S=e.validate.validate(L.data);if(!S.ok)return S}e.transform&&(L.data=e.transform.transform(L.data));let B=L;for(let S of this.responseInterceptors)B=await S.onResponse(B);if((e.method==="GET"||!e.method)&&((h=e.cache)!=null&&h.enabled)){let S=this.getCacheKey(e);this.cache.set(S,B,e.cache.ttlMs)}return(p=n.onSuccess)==null||p.call(n,B),this.pendingRequests.delete(P),this.trackDev({method:e.method??"GET",url:i.url,status:B.status,duration:B.duration,cached:!1,ok:!0,headers:{...i.headers},body:e.body,retryCount:T-1}),Xi(B)}catch(N){let $;if($=N instanceof DOMException?N.name==="TimeoutError"?{message:"Request timed out",code:"TIMEOUT"}:N.name==="AbortError"?{message:"Request aborted",code:"ABORTED"}:{message:N.message,code:"UNKNOWN_ERROR",originalError:N}:this.isHttpErrorDetails(N)?N:this.normalizeError(N),T<r&&a.shouldRetry(T,$)){(y=n.onRetry)==null||y.call(n,T,$);let Q=a.delayMs(T);await this.delay(Q);continue}let W=$;for(let Q of this.responseInterceptors)Q.onError&&(W=await Q.onError(W));return(_=n.onError)==null||_.call(n,W),P&&this.pendingRequests.delete(P),this.trackDev({method:e.method??"GET",url:i.url,status:W.status,duration:0,cached:!1,ok:!1,code:W.code,headers:{...i.headers},body:e.body,retryCount:T-1}),It(W)}}let M={message:"Max retries exceeded",code:"MAX_RETRIES"};return(k=n.onError)==null||k.call(n,M),this.trackDev({method:e.method??"GET",url:i.url,duration:0,cached:!1,ok:!1,code:"MAX_RETRIES",headers:{...i.headers},body:e.body,retryCount:r}),It(M)}finally{(b=n.onFinally)==null||b.call(n),this.requestQueue&&this.requestQueue.release()}}async fastPath(e){let n=eo(e.url,e.params),r=this.buildUrl(n,e.query),{serialized:a,contentType:i}=nu(e.body),o={...this.config.defaultHeaders,...e.headers};i?o["Content-Type"]=i:a instanceof FormData&&delete o["Content-Type"];let s=new AbortController,u=this.resolveTimeoutMs(e.timeout??this.config.defaultTimeout);this.pendingRequests.add(s);try{let l=performance.now(),c=await this.fetchWithTimeout({url:r,method:e.method??"GET",headers:o,body:e.body,params:e.params},u,s),h=performance.now()-l,p=await this.parseBody(c,e.responseType??this.config.defaultResponseType);if(!this.config.validateStatus(c.status)){let y=It({message:`Request failed with status ${c.status}`,status:c.status,statusText:c.statusText,code:"HTTP_ERROR"});return this.trackDev({method:e.method??"GET",url:r,status:c.status,duration:h,cached:!1,ok:!1,code:"HTTP_ERROR",headers:o,body:e.body,retryCount:0}),this.pendingRequests.delete(s),y}return this.pendingRequests.delete(s),this.trackDev({method:e.method??"GET",url:r,status:c.status,duration:h,cached:!1,ok:!0,headers:o,body:e.body,retryCount:0}),Xi({status:c.status,statusText:c.statusText,headers:c.headers,data:p,request:{url:r,method:e.method??"GET",headers:o,body:e.body,params:e.params},duration:h})}catch(l){this.pendingRequests.delete(s);let c="UNKNOWN_ERROR";if(l instanceof DOMException?l.name==="TimeoutError"?c="TIMEOUT":l.name==="AbortError"&&(c="ABORTED"):l instanceof Error&&(l.name==="TimeoutError"?c="TIMEOUT":l.name==="AbortError"||l.message.includes("abort")?c="ABORTED":l.name==="TypeError"&&(c="NETWORK_ERROR")),this.trackDev({method:e.method??"GET",url:r,duration:performance.now()-(performance.now()-0),cached:!1,ok:!1,code:c,headers:o,body:e.body,retryCount:0}),l instanceof DOMException){if(l.name==="TimeoutError")return It({message:"Request timed out",code:"TIMEOUT"});if(l.name==="AbortError")return It({message:"Request aborted",code:"ABORTED"})}return l instanceof Error?l.name==="TimeoutError"?It({message:"Request timed out",code:"TIMEOUT"}):l.name==="AbortError"||l.message.includes("abort")?It({message:"Request aborted",code:"ABORTED"}):It({message:l.message,code:l.name==="TypeError"?"NETWORK_ERROR":"UNKNOWN_ERROR"}):It({message:String(l),code:"UNKNOWN_ERROR"})}}get(e,n){return this.request({...n,url:e,method:"GET"})}post(e,n,r){return this.request({...r,url:e,method:"POST",body:n})}put(e,n,r){return this.request({...r,url:e,method:"PUT",body:n})}patch(e,n,r){return this.request({...r,url:e,method:"PATCH",body:n})}delete(e,n){return this.request({...n,url:e,method:"DELETE"})}head(e,n){return this.request({...n,url:e,method:"HEAD"})}options(e,n){return this.request({...n,url:e,method:"OPTIONS"})}addRequestInterceptor(e){return this.requestInterceptors.push(e),()=>{let n=this.requestInterceptors.indexOf(e);n!==-1&&this.requestInterceptors.splice(n,1)}}addResponseInterceptor(e){return this.responseInterceptors.push(e),()=>{let n=this.responseInterceptors.indexOf(e);n!==-1&&this.responseInterceptors.splice(n,1)}}clearInterceptors(){this.requestInterceptors=[],this.responseInterceptors=[]}clearCache(){this.cache.clear()}cancelAll(){for(let e of this.pendingRequests)e.abort();this.pendingRequests.clear()}get activeRequests(){return this.pendingRequests.size}get queueStats(){var e,n;return{active:((e=this.requestQueue)==null?void 0:e.active)??this.pendingRequests.size,pending:((n=this.requestQueue)==null?void 0:n.pending)??0}}extend(e={}){let n=new $c({baseURL:e.baseURL??this.config.baseURL,defaultHeaders:{...this.config.defaultHeaders,...e.defaultHeaders},defaultTimeout:e.defaultTimeout??this.config.defaultTimeout,validateStatus:e.validateStatus??this.config.validateStatus,cacheStrategy:e.cacheStrategy??this.cache,maxConcurrent:e.maxConcurrent??this.config.maxConcurrent,defaultResponseType:e.defaultResponseType??this.config.defaultResponseType,defaultHooks:{...this.config.defaultHooks,...e.defaultHooks},adapter:e.adapter});for(let r of this.requestInterceptors)n.addRequestInterceptor(r);for(let r of this.responseInterceptors)n.addResponseInterceptor(r);return n}async*paginate(e,n,r={}){let a={...r};for(;;){let i=await this.get(e,a);if(!i.ok)break;yield n.getItems(i.value.data);let o=n.getNextPage(i.value.data,a);if(!o)break;a=o}}async poll(e,n,r={}){var i;let a=n.maxAttempts??0;for(let o=1;a===0||o<=a;o++){let s=await this.get(e,r);if(!s.ok||((i=n.onPoll)==null||i.call(n,s.value.data,o),n.until(s.value.data)))return s;if(a>0&&o>=a)break;await this.delay(n.intervalMs)}return It({message:`Polling exhausted after ${a} attempts`,code:"POLL_EXHAUSTED"})}buildRequest(e){let n=eo(e.url,e.params);return{url:this.buildUrl(n,e.query),method:e.method??"GET",headers:{...this.config.defaultHeaders,...e.headers},body:e.body,params:e.params}}buildUrl(e,n){let r=this.config.baseURL+e;if(n){let a=Object.keys(n);if(a.length>0){let i=new URLSearchParams;for(let o=0;o<a.length;o++)i.append(a[o],String(n[a[o]]));r+=`?${i.toString()}`}}return r}getCacheKey(e){let n=eo(e.url,e.params),r=e.query?JSON.stringify(e.query):"";return`${e.method??"GET"}:${n}${r?":"+r:""}`}fetchWithTimeout(e,n,r){let{serialized:a,contentType:i}=nu(e.body),o={...e.headers};return i?o["Content-Type"]=i:a instanceof FormData&&delete o["Content-Type"],new Promise((s,u)=>{let l=setTimeout(()=>{r.abort(),u(new DOMException("Request timed out","TimeoutError"))},n);(this.config.adapter??fetch)(e.url,{method:e.method,headers:o,body:a,signal:r.signal}).then(c=>{clearTimeout(l),s(c)},c=>{clearTimeout(l),u(c)})})}trackDownloadProgress(e,n){var s;let r=parseInt(e.headers.get("content-length")||"0",10),a=(s=e.body)==null?void 0:s.getReader();if(!a)return e;let i=0,o=new ReadableStream({async pull(u){let{done:l,value:c}=await a.read();if(l){u.close();return}i+=c.byteLength,n({loaded:i,total:r,percent:r>0?Math.round(i/r*100):0}),u.enqueue(c)}});return new Response(o,{headers:e.headers,status:e.status,statusText:e.statusText})}async parseResponse(e,n,r,a){let i=await this.parseBody(e,a);return{status:e.status,statusText:e.statusText,headers:e.headers,data:i,request:n,duration:r}}async parseBody(e,n){switch(n){case"json":return await e.json();case"text":return await e.text();case"blob":return await e.blob();case"arrayBuffer":return await e.arrayBuffer();case"formData":return await e.formData();case"stream":return e.body;default:{let r=e.headers.get("content-type")??"";if(r.includes("application/json"))return await e.json();if(r.includes("text/"))return await e.text();if(r.includes("multipart/form-data"))return await e.formData();if(r.includes("application/octet-stream")||r.includes("image/")||r.includes("audio/")||r.includes("video/"))return await e.blob();try{return await e.json()}catch{return await e.text()}}}}normalizeError(e){if(e instanceof DOMException){if(e.name==="TimeoutError")return{message:"Request timed out",code:"TIMEOUT"};if(e.name==="AbortError")return{message:"Request aborted",code:"ABORTED"}}return e instanceof Error?e.name==="TimeoutError"?{message:"Request timed out",code:"TIMEOUT"}:e.name==="AbortError"||e.message.includes("abort")?{message:"Request aborted",code:"ABORTED"}:{message:e.message,code:e.name==="TypeError"?"NETWORK_ERROR":"UNKNOWN_ERROR",originalError:e}:{message:String(e),code:"UNKNOWN_ERROR",originalError:e}}isHttpErrorDetails(e){return typeof e=="object"&&!!e&&"message"in e&&"code"in e}getMaxAttempts(e){return e?"maxAttempts"in e?e.maxAttempts??1:100:1}getRetryStrategy(e){return e?"shouldRetry"in e?e:new jv(e.maxAttempts,e.backoffMs):{shouldRetry:()=>!1,delayMs:()=>0}}resolveTimeoutMs(e){return typeof e=="number"?e:e.total??e.response??e.connection??3e4}delay(e){return new Promise(n=>setTimeout(n,e))}trackDev(e){this.devTracker&&this.devTracker.track(e)}};function Bv(t){return new Lv(t)}function Oc(t={}){const{baseURL:e="",defaultTimeout:n=1e4}=t,r=Bv({baseURL:e,defaultTimeout:n});return{get:(a,i)=>r.get(a,i),post:(a,i,o)=>r.post(a,i,o),put:(a,i,o)=>r.put(a,i,o),patch:(a,i,o)=>r.patch(a,i,o),delete:(a,i)=>r.delete(a,i)}}function Uv(t={}){return Oc(t)}const Fv=Object.freeze(Object.defineProperty({__proto__:null,createNexaHttp:Oc,createReserviHttp:Uv},Symbol.toStringTag,{value:"Module"}));exports.ReserviCalendar=Ov;exports.adaptEvent=$t;exports.adaptView=Fo;exports.dayGridPlugin=Cf;exports.definePlugin=Qm;exports.defineTheme=Ef;exports.dl=z;exports.listPlugin=Hf;exports.multiMonthPlugin=xf;exports.resourcePlugin=Pf;exports.timeGridPlugin=If;exports.timelinePlugin=Gd;
|
|
35
|
+
`.replace(/ {2}/g,""));return}var u=e.target;if(u instanceof HTMLElement){var l=ua.get(u);if(l){var c=Kr(e),h={element:l.element,dragHandle:(n=l.dragHandle)!==null&&n!==void 0?n:null,input:c};if(l.canDrag&&!l.canDrag(h)){e.preventDefault();return}if(l.dragHandle){var p=uc({x:c.clientX,y:c.clientY});if(!l.dragHandle.contains(p)){e.preventDefault();return}}var y=(r=(a=l.getInitialDataForExternal)===null||a===void 0?void 0:a.call(l,h))!==null&&r!==void 0?r:null;if(y)for(var _=0,k=Object.entries(y);_<k.length;_++){var b=ic(k[_],2),M=b[0],T=b[1];e.dataTransfer.setData(M,T??"")}Gy()&&!e.dataTransfer.types.includes(Wl)&&!e.dataTransfer.types.includes(Vy)&&e.dataTransfer.setData(Wl,Ky),e.dataTransfer.setData(Qy,"");var P={element:l.element,dragHandle:(i=l.dragHandle)!==null&&i!==void 0?i:null,data:(o=(s=l.getInitialData)===null||s===void 0?void 0:s.call(l,h))!==null&&o!==void 0?o:{}},N={type:"element",payload:P,startedFrom:"internal"};t.start({event:e,dragType:N})}}}}}))},dispatchEventToSource:function(t){var e,n,r=t.eventName,a=t.payload;(e=ua.get(a.source.element))===null||e===void 0||(n=e[r])===null||n===void 0||n.call(e,a)},onPostDispatch:Jl.getOnPostDispatch()}),yc=Ds.dropTarget,bs=Ds.monitor;function ev(t){if(process.env.NODE_ENV!=="production"&&t.dragHandle&&!t.element.contains(t.dragHandle)&&console.warn("Drag handle element must be contained in draggable element",{element:t.element,dragHandle:t.dragHandle}),process.env.NODE_ENV!=="production"){var e=ua.get(t.element);e&&console.warn("You have already registered a `draggable` on the same element",{existing:e,proposed:t})}var n=ws(Ds.registerUsage(),Xy(t),fc(t.element,{attribute:"draggable",value:"true"}));return Gn(n)}function Gl(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),n.push.apply(n,r)}return n}function Kl(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?Gl(Object(n),!0).forEach(function(r){Hi(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Gl(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function tv(){return{x:0,y:0}}function nv(t){var e=t.render,n=t.nativeSetDragImage,r=t.getOffset,a=r===void 0?tv:r,i=document.createElement("div");ir()&&i.setAttribute("popover","manual"),Object.assign(i.style,Kl(Kl({position:"fixed"},ir()?cc:{zIndex:dc}),{},{top:0,left:0,pointerEvents:"none"})),document.body.append(i),ir()&&i.showPopover();var o=e({container:i});queueMicrotask(function(){var l=a({container:i});if(xi()){var c=i.getBoundingClientRect();if(c.width===0)return;i.style.left="-".concat(c.width-1e-4,"px")}n==null||n(i,l.x,l.y)});function s(){u(),o==null||o(),document.body.removeChild(i)}var u=bs({onDragStart:s,onDrop:s})}function rv(t){var e=t.element,n=t.input;return function(r){var a=r.container,i=e.getBoundingClientRect(),o=a.getBoundingClientRect(),s=Math.min(n.clientX-i.x,o.width),u=Math.min(n.clientY-i.y,o.height);return{x:s,y:u}}}let vc=0;function hi(){vc=Date.now()}function pc(t=300){return Date.now()-vc<t}const Ms="rsv-timegrid-event",gc="rsv-timegrid-col";function _c(t,e,n){return n?ev({element:t,getInitialData:()=>({[Ms]:!0,id:e.id}),onGenerateDragPreview({location:r,nativeSetDragImage:a}){nv({nativeSetDragImage:a,getOffset:rv({element:t,input:r.current.input}),render({container:i}){const o=t.cloneNode(!0);o.setAttribute("data-rsv-drag-preview","true"),o.style.width=`${t.offsetWidth}px`,o.style.height=`${t.offsetHeight}px`,i.appendChild(o)}})}}):()=>{}}function av(t){return yc({element:t,canDrop:({source:e})=>e.data[Ms]===!0,getData:({element:e})=>({[gc]:!0,dayIndex:Number(e.dataset.rsvDayIndex??0)})})}function iv(t,e,n,r){const a=t.getBoundingClientRect(),i=n.maxMinutes-n.minMinutes;if(a.height===0||i<=0)return n.minMinutes;const o=n.minMinutes+(e-a.top)/a.height*i,s=Math.max(n.minMinutes,Math.min(n.maxMinutes,o));return Math.round(s/r)*r}function Bo(t,e){return z.diff(t,e,"minute")}function ov(t,e,n){const r=z.add(z.startOf(t,"day"),{minutes:e});if(Bo(r,n.start)===0)return null;const a=n.end?Bo(n.start,n.end):0;return{start:r,end:n.end?z.add(r,{minutes:a}):null}}function sv({api:t,getModel:e,snap:n,onPreview:r,onDragging:a}){const i=Oe(n??"00:15")||15,o=s=>{const u=s.current.dropTargets.find(c=>c.data[gc]===!0);if(!u)return null;const l=iv(u.element,s.current.input.clientY,e(),i);return{target:u,inicio:l}};return bs({canMonitor:({source:s})=>s.data[Ms]===!0,onDragStart:({source:s})=>{hi(),a(String(s.data.id))},onDrag:({source:s,location:u})=>{const l=o(u);if(!l)return;const c=t.getEventById(String(s.data.id));if(!c)return;const h=c.end?Math.max(i,Bo(c.start,c.end)):i;r({dayIndex:Number(l.target.data.dayIndex),startMin:l.inicio,endMin:l.inicio+h})},onDrop:({source:s,location:u})=>{var l;hi(),r(null),a(null);const c=o(u);if(!c)return;const h=t.getEventById(String(s.data.id));if(!h)return;const p=(l=e().days[Number(c.target.data.dayIndex)])==null?void 0:l.date;if(!p)return;const y=ov(p,c.inicio,h);if(y&&t.moveEvent(h.id,y.start,y.end)){const _=t.getEventById(h.id);_&&t.trigger("eventDrop",{event:_})}}})}const wc="rsv-timegrid-event",Dc="rsv-daygrid-day";function lv(t,e){const n=z.diff(z.startOf(e.start,"day"),z.startOf(t,"day"),"day");return n===0?null:{start:z.add(e.start,{days:n}),end:e.end?z.add(e.end,{days:n}):null}}function uv(t){return yc({element:t,canDrop:({source:e})=>e.data[wc]===!0,getData:({element:e})=>({[Dc]:!0,fechaISO:e.dataset.date??""})})}function dv({api:t,onPreview:e,onDragging:n}){const r=a=>a.current.dropTargets.find(i=>i.data[Dc]===!0)??null;return bs({canMonitor:({source:a})=>a.data[wc]===!0,onDragStart:({source:a})=>{hi(),n(String(a.data.id))},onDrag:({location:a})=>{const i=r(a);e(i?String(i.data.fechaISO):null)},onDrop:({source:a,location:i})=>{hi(),e(null),n(null);const o=r(i);if(!o)return;const s=t.getEventById(String(a.data.id));if(!s)return;const u=lv(z.from(String(o.data.fechaISO)),s);if(u&&t.moveEvent(s.id,u.start,u.end)){const l=t.getEventById(s.id);l&&t.trigger("eventDrop",{event:l})}}})}function bc({api:t,model:e,options:n}){var r;const a=n.locale??"en",i={type:t.getView().type},o=ci(a,n.dayHeaderFormat,{weekday:"short"}),s=((r=e.weeks[0])==null?void 0:r.days)??[],u=n.weekNumbers===!0,l=n.dayHeaders!==!1,c=n.dayNumberAlign??"end",[h,p]=Mn(null),[y,_]=Mn(null),k=Ce(new Map);return bt(()=>dv({api:t,onPreview:p,onDragging:_}),[t]),bt(()=>{const b=k.current;return()=>{for(const M of b.values())M();b.clear()}},[]),C("div",{"data-rsv":"daygrid","data-weeknumbers":String(u),"data-daynumber-align":c,style:`--rsv-cols:${e.columnCount}`,children:[l&&C("div",{"data-rsv":"daygrid-header",role:"row",children:[u&&C("div",{"data-rsv":"daygrid-weeknum-header",role:"columnheader"}),s.map(b=>{var M,T;const P=z.toDate(b.date),N=o?o(P):"",$={date:P,text:N,dayOfWeek:b.dayOfWeek,dayNumber:z.dayOfMonth(b.date),isToday:b.isToday,view:i};return C("div",{"data-rsv":"daygrid-dow",role:"columnheader","data-dow":String(b.dayOfWeek),class:zt((M=n.classNames)==null?void 0:M.dayHeader),ref:W=>{var Q;return zn(W,(Q=n.hooks)==null?void 0:Q.dayHeaderDidMount,()=>$)},children:Ft((T=n.slots)==null?void 0:T.dayHeaderContent,$,N,n.hostBridge)},b.dayOfWeek)})]}),e.weeks.map((b,M)=>C("div",{"data-rsv":"daygrid-week",role:"row",children:[u&&C("div",{"data-rsv":"daygrid-weeknum",role:"rowheader",children:b.weekNumber}),b.days.map(T=>C(cv,{api:t,cell:T,options:n,view:i,dropActivo:h===z.toISOString(T.date),limpiezaDias:k,idArrastrado:y},z.toISOString(T.date)))]},M))]})}function cv({api:t,cell:e,options:n,view:r,dropActivo:a,limpiezaDias:i,idArrastrado:o}){var s,u,l;const c=z.toDate(e.date),h=z.dayOfMonth(e.date),p=n.navLinks?C("a",{"data-rsv":"day-number","data-nav-link":"true",role:"link",tabIndex:0,title:cn(n.locale).navLinkHint(new Intl.DateTimeFormat(n.locale,{dateStyle:"long"}).format(c)),onClick:$=>{$.stopPropagation(),nc(t,e.date)},children:h}):C("span",{"data-rsv":"day-number",children:h}),y={date:c,dayNumber:h,isToday:e.isToday,isOther:e.isOther,view:r},_=Ft((s=n.slots)==null?void 0:s.dayCellContent,y,p,n.hostBridge),[k,b]=Mn(!1),M=z.toISOString(e.date),T=Ce(!1),P=()=>{if(T.current){T.current=!1;return}n.selectConstraint==="businessHours"&&!e.isBusiness||(t.trigger("dateClick",{date:e.date}),n.selectable&&t.select(M,z.toISOString(z.add(e.date,{days:1}))))},N=$=>{$.stopPropagation(),n.moreLinkPopover!==!1&&b(!0),t.trigger("moreLinkClick",{date:e.date,allEvents:[...e.events,...e.hiddenEvents],hiddenEvents:e.hiddenEvents})};return C("div",{"data-rsv":"day",role:"gridcell","data-date":M,"data-rsv-drop":a?"true":void 0,"data-today":String(e.isToday),"data-other":String(e.isOther),"data-weekend":String(e.isWeekend),"data-business":String(e.isBusiness),"data-selected":String(e.isSelected),class:zt((u=n.classNames)==null?void 0:u.day),ref:$=>{var W;zn($,(W=n.hooks)==null?void 0:W.dayCellDidMount,()=>y),!(!$||i.current.has($))&&i.current.set($,uv($))},onClick:P,onPointerDown:n.selectable?$=>dy($,{api:t,startDate:M,onRangeSelect:()=>{T.current=!0}}):void 0,children:[_,e.events.filter($=>$.display!=="none").map($=>C(Mc,{api:t,event:$,options:n,view:r,arrastrandose:o===$.id},$.id)),e.moreCount>0&&C("div",{"data-rsv":"more-anchor",children:[C("button",{type:"button","data-rsv":"more-link",onClick:N,children:Ft((l=n.slots)==null?void 0:l.moreLinkContent,{date:c,moreCount:e.moreCount,allEvents:[...e.events,...e.hiddenEvents],hiddenEvents:e.hiddenEvents,view:r},cn(n.locale).more(e.moreCount),n.hostBridge)}),k&&C(hv,{api:t,cell:e,options:n,view:r,onClose:()=>b(!1)})]})]})}function hv({api:t,cell:e,options:n,view:r,onClose:a}){const i=Ce(null),o=new Intl.DateTimeFormat(n.locale??"en",{weekday:"long",day:"numeric",month:"long"}),s=[...e.events,...e.hiddenEvents].filter(u=>u.display!=="none");return bt(()=>{const u=c=>{i.current&&!i.current.contains(c.target)&&a()},l=c=>{c.key==="Escape"&&a()};return document.addEventListener("mousedown",u),document.addEventListener("keydown",l),()=>{document.removeEventListener("mousedown",u),document.removeEventListener("keydown",l)}},[a]),C("div",{"data-rsv":"more-popover",role:"dialog",ref:i,onClick:u=>u.stopPropagation(),children:[C("div",{"data-rsv":"more-popover-header",children:[C("span",{"data-rsv":"more-popover-title",children:o.format(z.toDate(e.date))}),C("button",{type:"button","data-rsv":"more-popover-close","aria-label":"✕",onClick:a,children:"✕"})]}),C("div",{"data-rsv":"more-popover-body",children:s.map(u=>C(Mc,{api:t,event:u,options:n,view:r,arrastrandose:!1},u.id))})]})}function Mc({api:t,event:e,options:n,view:r,arrastrandose:a}){var i,o;const s=n.editable===!0&&e.editable!==!1,u=s&&n.eventDraggable===!0,l=Ce(null),c=Ce(null);bt(()=>()=>{var M;return(M=l.current)==null?void 0:M.call(l)},[]);const h=t.selectedEventIds.value.has(e.id),p=Ce(!1),y=Ii(n.locale??"en",n.eventTimeFormat),_=e.allDay?"":y?y(z.toDate(e.start)):z.format(e.start,"HH:mm"),k={event:e,isAllDay:e.allDay,timeText:_,view:r},b=Ft((i=n.slots)==null?void 0:i.eventContent,k,C("span",{"data-rsv":"event-title",children:[_?`${_} `:"",e.title]}),n.hostBridge);return C("div",{"data-rsv":"event",role:"button",tabIndex:0,class:zt((o=n.classNames)==null?void 0:o.event,...e.classNames),"data-all-day":String(e.allDay),"data-display":e.display,"data-event-id":e.id,"data-editable":String(s),"data-rsv-selected":String(h),"data-rsv-dragging":a?"true":void 0,ref:M=>{var T,P;zn(M,(T=n.hooks)==null?void 0:T.eventDidMount,()=>k),M!==c.current&&((P=l.current)==null||P.call(l),c.current=M,l.current=M?_c(M,e,u):null)},style:`--rsv-event-bg:${e.backgroundColor};--rsv-event-fg:${e.textColor};--rsv-event-border:${e.borderColor}`,onClick:M=>{if(M.stopPropagation(),p.current){p.current=!1;return}if(M.ctrlKey||M.metaKey){t.toggleEventSelection(e.id);return}t.trigger("eventClick",{event:e,el:M.currentTarget}),e.url&&window.open(e.url,"_self")},onKeyDown:s?M=>rc(M,{api:t,event:e,kind:"dayGrid",shortcuts:n.keyboardShortcuts}):void 0,children:b})}const xa=40,Vl=16,mv={update(){},getScrolled:()=>0,stop(){}};function kc(t){if(!t)return mv;let e=0,n=0,r=0;const a=()=>{const i=t.getBoundingClientRect();let o=0;if(e<i.top+xa?o=-Vl*(1-Math.max(0,e-i.top)/xa):e>i.bottom-xa&&(o=Vl*(1-Math.max(0,i.bottom-e)/xa)),o!==0){const s=t.scrollTop;t.scrollTop+=o,n+=t.scrollTop-s}r=requestAnimationFrame(a)};return r=requestAnimationFrame(a),{update(i){e=i},getScrolled:()=>n,stop(){cancelAnimationFrame(r)}}}function Sc(t){return t.closest('[data-rsv="tg-body"]')}function Ql(t,e){t.preventDefault(),t.stopPropagation();const{api:n,event:r,model:a,columnEl:i,snap:o="00:15",edge:s,onPreview:u}=e,l=i.getBoundingClientRect(),c=a.maxMinutes-a.minMinutes,h=l.height===0?0:l.height/c,p=t.clientY,y=kc(Sc(i));y.update(t.clientY);const _=Oe(o)||15,k=T=>{const P=z.toDate(T);return P.getHours()*60+P.getMinutes()},b=T=>{if(y.update(T.clientY),!u)return;const P=wl(T.clientY-p+y.getScrolled(),h,o),N=s?Dl(r.start,r.end,s,P,z):Po(r.start,r.end,P,z),$=k(N.start),W=N.end?k(N.end):$+_;u({startMin:Math.min($,W),endMin:Math.max($,W)})},M=T=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",M),y.stop(),u==null||u(null);const P=wl(T.clientY-p+y.getScrolled(),h,o);if(P===0)return;const N=s?Dl(r.start,r.end,s,P,z):Po(r.start,r.end,P,z);if(n.moveEvent(r.id,N.start,N.end)){const $=n.getEventById(r.id);$&&n.trigger(s?"eventResize":"eventDrop",{event:$})}};document.addEventListener("pointermove",b),document.addEventListener("pointerup",M)}function fv(t,e){if(t.target.closest('[data-rsv="event"]'))return;const{api:n,date:r,model:a,columnEl:i,snap:o="00:15"}=e,s=a.maxMinutes-a.minMinutes,u=Oe(o)||15,l=b=>{const M=i.getBoundingClientRect(),T=M.height===0?0:M.height/s,P=a.minMinutes+(T===0?0:(b-M.top)/T),N=Math.max(a.minMinutes,Math.min(a.maxMinutes,P));return Math.round(N/u)*u},c=l(t.clientY);let h=c,p=!1;const y=kc(Sc(i));y.update(t.clientY);const _=b=>{var M;y.update(b.clientY);const T=l(b.clientY);T!==c&&(p=!0),h=T,p&&((M=e.onPreview)==null||M.call(e,{startMin:Math.min(c,h),endMin:Math.max(c,h)}))},k=()=>{var b;if(document.removeEventListener("pointermove",_),document.removeEventListener("pointerup",k),y.stop(),(b=e.onPreview)==null||b.call(e,null),!p)return;const M=Math.min(c,h),T=Math.max(c,h),P=z.startOf(r,"day");n.select(z.toISOString(z.add(P,{minutes:M})),z.toISOString(z.add(P,{minutes:T})))};document.addEventListener("pointermove",_),document.addEventListener("pointerup",k)}function yv({api:t,model:e,options:n}){const r=n.locale??"en",a={type:t.getView().type},i=ci(r,n.dayHeaderFormat,{weekday:"short",day:"numeric"}),o=Ii(r,n.slotLabelFormat),s=n.allDaySlot!==!1,u=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`,l=e.maxMinutes-e.minMinutes,c=Oe(n.snapDuration??n.slotDuration??"00:15")||15,h=Lr(n.businessHours),p=n.selectConstraint==="businessHours"&&h!==null,y=(E,L)=>{if(!p)return!0;const B=z.add(z.startOf(E,"day"),{minutes:L});return jd(B,null,h,z)},_=Ce(null),k=Ce(e);k.current=e;const[b,M]=Mn(null),[T,P]=Mn(null),N=Ce(null),$=Ce(new Map);bt(()=>{const E=$.current;return()=>{for(const L of E.values())L();E.clear()}},[]),bt(()=>sv({api:t,getModel:()=>k.current,snap:n.snapDuration??n.slotDuration,onPreview:E=>P(E?{id:N.current??"",preview:E}:null),onDragging:E=>{N.current=E,E===null&&P(null)}}),[t,n.snapDuration,n.slotDuration]),bt(()=>{const E=_.current;if(!E)return;const L={scrollToTime(B){const S=k.current,A=S.maxMinutes-S.minMinutes,U=E.scrollHeight;if(A<=0||U<=0)return;const te=(Math.max(S.minMinutes,Math.min(S.maxMinutes,Oe(B)))-S.minMinutes)/A*U;E.scrollTop=Math.max(0,Math.min(te,U-E.clientHeight))},getScrollTime(){const B=k.current,S=B.maxMinutes-B.minMinutes,A=E.scrollHeight;return S<=0||A<=0?null:oy(B.minMinutes+E.scrollTop/A*S)}};return t.setViewAdapter(L),()=>t.setViewAdapter(null)},[t]);const W=n.scrollTime;bt(()=>{if(!W)return;let E=0;const L=requestAnimationFrame(()=>{E=requestAnimationFrame(()=>t.scrollToTime(W))});return()=>{cancelAnimationFrame(L),cancelAnimationFrame(E)}},[t]);const Q=(E,L)=>{const B=E.getBoundingClientRect();if(B.height===0||l<=0)return e.minMinutes;const S=(L-B.top)/B.height*l,A=Math.floor(Math.max(0,Math.min(l,S))/c)*c;return e.minMinutes+A},x=e.days[0];return C("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.days.length}`,children:[C("div",{"data-rsv":"tg-header",role:"row",children:[C("div",{"data-rsv":"tg-axis-corner"}),e.days.map(E=>{var L,B;const S=z.toDate(E.date),A=i?i(S):"",U={date:S,text:A,dayOfWeek:z.dayOfWeek(E.date),dayNumber:z.dayOfMonth(E.date),isToday:E.isToday,view:a};return C("div",{"data-rsv":"tg-col-header",role:"columnheader","data-today":String(E.isToday),"data-date":z.toISOString(E.date),"data-nav-link":n.navLinks?"true":void 0,class:zt((L=n.classNames)==null?void 0:L.dayHeader),ref:te=>{var v;return zn(te,(v=n.hooks)==null?void 0:v.dayHeaderDidMount,()=>U)},onClick:n.navLinks?()=>nc(t,E.date):void 0,children:Ft((B=n.slots)==null?void 0:B.dayHeaderContent,U,A,n.hostBridge)},z.toISOString(E.date))})]}),s&&C("div",{"data-rsv":"tg-allday",role:"row",children:[C("div",{"data-rsv":"tg-axis-label",children:cn(n.locale).allDay}),e.days.map(E=>C("div",{"data-rsv":"tg-allday-cell",onClick:()=>t.trigger("dateClick",{date:E.date,allDay:!0}),children:E.allDayEvents.filter(L=>L.display!=="none").map(L=>{var B,S;return C("div",{"data-rsv":"event","data-all-day":"true","data-event-id":L.id,class:zt((B=n.classNames)==null?void 0:B.event,...L.classNames),"data-display":L.display,style:`--rsv-event-bg:${L.backgroundColor};--rsv-event-fg:${L.textColor};--rsv-event-border:${L.borderColor}`,onClick:A=>{A.stopPropagation(),t.trigger("eventClick",{event:L,el:A.currentTarget}),L.url&&window.open(L.url,"_self")},children:Ft((S=n.slots)==null?void 0:S.eventContent,{event:L,isAllDay:!0,timeText:"",view:a},L.title,n.hostBridge)},L.id)})},z.toISOString(E.date)))]}),C("div",{"data-rsv":"tg-body",ref:_,children:[C("div",{"data-rsv":"tg-axis",style:`height:${u}`,children:e.slots.map(E=>{var L,B;const S=e.minMinutes+E.offsetMin;let A="";E.isMajor&&(A=o&&x?o(z.toDate(z.add(z.startOf(x.date,"day"),{minutes:S}))):E.label||iy(S));const U={text:A,minutes:S,isMajor:E.isMajor,view:a};return C("div",{"data-rsv":"tg-slot","data-major":String(E.isMajor),children:C("span",{"data-rsv":"tg-slot-label",class:zt((L=n.classNames)==null?void 0:L.slotLabel),ref:te=>{var v;return zn(te,(v=n.hooks)==null?void 0:v.slotLabelDidMount,()=>U)},children:Ft((B=n.slots)==null?void 0:B.slotLabelContent,U,A,n.hostBridge)})},E.offsetMin)})}),e.days.map((E,L)=>{var B;return C("div",{"data-rsv":"tg-col","data-today":String(E.isToday),"data-business":String(E.isBusiness),"data-date":z.toISOString(E.date),"data-rsv-day-index":String(L),ref:S=>{!S||$.current.has(S)||$.current.set(S,av(S))},style:`height:${u}`,onClick:S=>{if(pc())return;const A=Q(S.currentTarget,S.clientY);y(E.date,A)&&t.trigger("dateClick",{date:z.add(z.startOf(E.date,"day"),{minutes:A}),allDay:!1})},onPointerDown:n.selectable?S=>{const A=Q(S.currentTarget,S.clientY);y(E.date,A)&&fv(S,{api:t,date:E.date,model:e,columnEl:S.currentTarget,snap:n.snapDuration??n.slotDuration,onPreview:n.selectMirror?U=>M(U?{dayIndex:L,startMin:U.startMin,endMin:U.endMin}:null):void 0})}:void 0,children:[E.nonBusinessPct.map(S=>C("div",{"data-rsv":"tg-nonbusiness",style:`top:${S.topPct}%;height:${S.heightPct}%`},S.topPct)),(b==null?void 0:b.dayIndex)===L&&l>0&&C("div",{"data-rsv":"select-mirror",style:`top:${(b.startMin-e.minMinutes)/l*100}%;height:${(b.endMin-b.startMin)/l*100}%`}),E.timedSegs.filter(S=>S.event.display!=="none").map(S=>C(vv,{api:t,seg:S,model:e,options:n,view:a,dragging:(T==null?void 0:T.id)===S.event.id,onDragPreview:A=>P(A?{id:S.event.id,preview:{dayIndex:L,...A}}:null)},S.event.id)),(T==null?void 0:T.preview.dayIndex)===L&&l>0&&C("div",{"data-rsv":"drag-mirror",style:`top:${(T.preview.startMin-e.minMinutes)/l*100}%;height:${(T.preview.endMin-T.preview.startMin)/l*100}%`}),((B=e.nowIndicator)==null?void 0:B.dayIndex)===L&&C("div",{"data-rsv":"now-indicator",style:`top:${e.nowIndicator.topPct}%`})]},z.toISOString(E.date))})]})]})}function vv({api:t,seg:e,model:n,options:r,view:a,dragging:i,onDragPreview:o}){var s,u;const{event:l}=e,c=r.editable===!0&&l.editable!==!1,h=c&&r.eventDraggable===!0,p=Ce(null),y=Ce(null);bt(()=>()=>{var $;return($=p.current)==null?void 0:$.call(p)},[]);const _=t.selectedEventIds.value.has(l.id),k=100/e.colCount,b=Ii(r.locale??"en",r.eventTimeFormat),M=b?b(z.toDate(l.start)):z.format(l.start,"HH:mm"),T={event:l,isAllDay:!1,timeText:M,view:a},P=Ft((s=r.slots)==null?void 0:s.eventContent,T,C("span",{"data-rsv":"event-title",children:[M," ",l.title]}),r.hostBridge),N=$=>$.closest('[data-rsv="tg-col"]')??$;return C("div",{"data-rsv":"event","data-all-day":"false","data-display":l.display,"data-event-id":l.id,"data-rsv-selected":String(_),"data-rsv-dragging":i?"true":void 0,class:zt((u=r.classNames)==null?void 0:u.event,...l.classNames),role:"button",tabIndex:0,ref:$=>{var W,Q;zn($,(W=r.hooks)==null?void 0:W.eventDidMount,()=>T),$!==y.current&&((Q=p.current)==null||Q.call(p),y.current=$,p.current=$?_c($,l,h):null)},style:`position:absolute;top:${e.topPct}%;height:${e.heightPct}%;left:${e.col*k}%;width:${k}%;--rsv-event-bg:${l.backgroundColor};--rsv-event-fg:${l.textColor};--rsv-event-border:${l.borderColor}`,onClick:$=>{if($.stopPropagation(),!pc()){if($.ctrlKey||$.metaKey){t.toggleEventSelection(l.id);return}t.trigger("eventClick",{event:l,el:$.currentTarget}),l.url&&window.open(l.url,"_self")}},onKeyDown:c?$=>rc($,{api:t,event:l,kind:"timeGrid",snap:r.snapDuration??r.slotDuration,shortcuts:r.keyboardShortcuts}):void 0,children:[c&&C("span",{"data-rsv":"resize-handle","data-edge":"start",onPointerDown:$=>Ql($,{api:t,event:l,model:n,columnEl:N($.currentTarget),snap:r.snapDuration,onPreview:o,edge:"start"})}),P,c&&C("span",{"data-rsv":"resize-handle","data-edge":"end",onPointerDown:$=>Ql($,{api:t,event:l,model:n,columnEl:N($.currentTarget),snap:r.snapDuration,onPreview:o,edge:"end"})})]})}function pv({api:t,model:e,options:n}){const r=n.locale??"en",a={type:t.getView().type},i=cn(n.locale),o=ci(r,n.listDayFormat,{weekday:"long",day:"numeric",month:"long"}),s=n.listDaySideFormat?ci(r,n.listDaySideFormat,{month:"short",day:"2-digit"}):null,u=Ii(r,n.eventTimeFormat);return e.isEmpty?C("div",{"data-rsv":"list",children:C("div",{"data-rsv":"list-empty",children:i.noEvents})}):C("div",{"data-rsv":"list",role:"list",children:e.days.map(l=>C("div",{"data-rsv":"list-day","data-today":String(l.isToday),children:[C("div",{"data-rsv":"list-day-header",role:"heading","aria-level":3,children:[C("span",{"data-rsv":"list-day-text",children:o?o(z.toDate(l.date)):""}),s&&C("span",{"data-rsv":"list-day-side-text",children:s(z.toDate(l.date))})]}),l.events.filter(c=>c.display!=="none").map(c=>{var h,p;const y=c.allDay?i.allDay:u?u(z.toDate(c.start)):z.format(c.start,"HH:mm"),_={event:c,isAllDay:c.allDay,timeText:y,view:a};return C("div",{"data-rsv":"list-item",role:"listitem",tabIndex:0,"data-event-id":c.id,class:zt((h=n.classNames)==null?void 0:h.event,...c.classNames),"data-display":c.display,ref:k=>{var b;return zn(k,(b=n.hooks)==null?void 0:b.eventDidMount,()=>_)},style:`--rsv-event-bg:${c.backgroundColor};--rsv-event-fg:${c.textColor};--rsv-event-border:${c.borderColor}`,onClick:k=>{t.trigger("eventClick",{event:c,el:k.currentTarget}),c.url&&window.open(c.url,"_self")},children:[C("span",{"data-rsv":"list-item-time",children:y}),C("span",{"data-rsv":"list-item-dot",style:`--rsv-event-bg:${c.backgroundColor}`}),C("div",{"data-rsv":"list-item-title",children:Ft((p=n.slots)==null?void 0:p.eventContent,_,c.title,n.hostBridge)})]},c.id)})]},z.toISOString(l.date)))})}function gv({api:t,model:e,options:n}){const r=n.locale??"en",a=new Intl.DateTimeFormat(r,{month:"long"});return C("div",{"data-rsv":"multimonth",children:e.months.map(i=>C("section",{"data-rsv":"mm-month",children:[C("header",{"data-rsv":"mm-title",children:a.format(z.toDate(i.date))}),C(bc,{api:t,model:i.dayGrid,options:n})]},z.toISOString(i.date)))})}const Uo=1.6;function _v({api:t,model:e,options:n}){return C("div",{"data-rsv":"timeline",children:[C("div",{"data-rsv":"tl-axis",role:"row",children:e.slots.map(r=>C("div",{"data-rsv":"tl-slot",style:`left:${r.leftPct}%`,children:r.label},r.leftPct))}),C("div",{"data-rsv":"tl-body",style:`height:${e.laneCount*Uo+.5}rem`,children:e.segs.map(r=>C(Tc,{api:t,seg:r,options:n},r.event.id))})]})}function Tc({api:t,seg:e,options:n}){var r;const{event:a}=e;return C("div",{"data-rsv":"event","data-event-id":a.id,role:"button",tabIndex:0,style:`position:absolute;left:${e.leftPct}%;width:${e.widthPct}%;top:${e.lane*Uo}rem;height:${Uo-.2}rem;--rsv-event-bg:${a.backgroundColor};--rsv-event-fg:${a.textColor};--rsv-event-border:${a.borderColor}`,onClick:i=>t.trigger("eventClick",{event:a,el:i.currentTarget}),children:Ft((r=n.slots)==null?void 0:r.eventContent,{event:a,isAllDay:a.allDay,timeText:"",view:{type:t.getView().type}},a.title,n.hostBridge)})}const wv=1.6;function Dv({api:t,model:e,options:n}){return C("div",{"data-rsv":"resource-timeline",children:[C("div",{"data-rsv":"rt-header",role:"row",children:[C("div",{"data-rsv":"resource-area-header",children:n.locale==="es"?"Recursos":"Resources"}),C("div",{"data-rsv":"tl-axis",children:e.slots.map(r=>C("div",{"data-rsv":"tl-slot",style:`left:${r.leftPct}%`,children:r.label},r.leftPct))})]}),e.lanes.map(r=>{const a=r.laneCount*wv+.4;return C("div",{"data-rsv":"resource-row",role:"row",children:[C("div",{"data-rsv":"resource-label",style:`padding-inline-start:${.5+r.row.depth*1}rem`,children:[r.row.hasChildren&&C("button",{type:"button","data-rsv":"resource-toggle","aria-expanded":r.row.expanded,onClick:()=>t.toggleResource(r.row.resource.id),children:r.row.expanded?"▾":"▸"}),C("span",{"data-rsv":"resource-title",children:r.row.resource.title})]}),C("div",{"data-rsv":"resource-lane",style:`height:${a}rem`,children:r.segs.map(i=>C(Tc,{api:t,seg:i,options:n},i.event.id))})]},r.row.resource.id)})]})}function bv({api:t,model:e,options:n}){const r=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`;return C("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.columns.length}`,children:[C("div",{"data-rsv":"tg-header",role:"row",children:[C("div",{"data-rsv":"tg-axis-corner"}),e.columns.map(a=>C("div",{"data-rsv":"tg-col-header",role:"columnheader",children:a.row.resource.title},a.row.resource.id))]}),C("div",{"data-rsv":"tg-allday",role:"row",children:[C("div",{"data-rsv":"tg-axis-label",children:cn(n.locale).allDay}),e.columns.map(a=>C("div",{"data-rsv":"tg-allday-cell",children:a.allDayEvents.map(i=>C("div",{"data-rsv":"event","data-all-day":"true",style:`--rsv-event-bg:${i.backgroundColor}`,onClick:o=>t.trigger("eventClick",{event:i,el:o.currentTarget}),children:i.title},i.id))},a.row.resource.id))]}),C("div",{"data-rsv":"tg-body",children:[C("div",{"data-rsv":"tg-axis",style:`height:${r}`,children:e.slots.map(a=>C("div",{"data-rsv":"tg-slot","data-major":String(a.isMajor),children:C("span",{"data-rsv":"tg-slot-label",children:a.label})},a.offsetMin))}),e.columns.map(a=>C("div",{"data-rsv":"tg-col","data-rsv-resource-id":a.row.resource.id,style:`height:${r}`,children:[a.timedSegs.map(i=>{const o=100/i.colCount;return C("div",{"data-rsv":"event","data-all-day":"false","data-event-id":i.event.id,role:"button",tabIndex:0,style:`position:absolute;top:${i.topPct}%;height:${i.heightPct}%;left:${i.col*o}%;width:${o}%;--rsv-event-bg:${i.event.backgroundColor};--rsv-event-fg:${i.event.textColor}`,onClick:s=>{s.stopPropagation(),t.trigger("eventClick",{event:i.event})},children:[z.format(i.event.start,"HH:mm")," ",i.event.title]},i.event.id)}),e.nowTopPct!=null&&C("div",{"data-rsv":"now-indicator",style:`top:${e.nowTopPct}%`})]},a.row.resource.id))]})]})}function Mv({api:t,model:e}){return C("div",{"data-rsv":"resource-daygrid",style:`--rsv-rdg-cols:${e.columns.length}`,children:[C("div",{"data-rsv":"rdg-header",role:"row",children:e.columns.map(n=>C("div",{"data-rsv":"rdg-col-header",role:"columnheader",children:n.row.resource.title},n.row.resource.id))}),C("div",{"data-rsv":"rdg-body",role:"row",children:e.columns.map(n=>C("div",{"data-rsv":"rdg-col","data-rsv-resource-id":n.row.resource.id,children:n.events.map(r=>C("div",{"data-rsv":"event","data-all-day":String(r.allDay),"data-event-id":r.id,role:"button",tabIndex:0,style:`--rsv-event-bg:${r.backgroundColor};--rsv-event-fg:${r.textColor};--rsv-event-border:${r.borderColor}`,onClick:a=>t.trigger("eventClick",{event:r,el:a.currentTarget}),children:[r.allDay?"":z.format(r.start,"HH:mm")+" ",r.title]},r.id))},n.row.resource.id))})]})}function kv({api:t,model:e,options:n}){return C("div",{"data-rsv":"resource-daygrid-month",style:`--rsv-rdgm-cols:${e.columnCount}`,children:e.weeks.map((r,a)=>C("div",{"data-rsv":"rdgm-week",role:"row",children:r.days.map(i=>C(Sv,{api:t,cell:i,options:n},z.toISOString(i.date)))},`week-${a}`))})}function Sv({api:t,cell:e,options:n}){const r=z.dayOfMonth(e.date);return C("div",{"data-rsv":"day",role:"gridcell","data-date":z.toISOString(e.date),"data-today":String(e.isToday),"data-other":String(e.isOther),children:[C("span",{"data-rsv":"day-number",children:r}),C("div",{"data-rsv":"rdgm-columns",children:e.columns.map(a=>C("div",{"data-rsv":"rdgm-col","data-rsv-resource-id":a.row.resource.id,children:[C("span",{"data-rsv":"rdgm-col-label",children:a.row.resource.title}),a.events.map(i=>{const o=t.selectedEventIds.value.has(i.id);return C("div",{"data-rsv":"event","data-all-day":String(i.allDay),"data-event-id":i.id,"data-rsv-selected":String(o),role:"button",tabIndex:0,style:`--rsv-event-bg:${i.backgroundColor};--rsv-event-fg:${i.textColor};--rsv-event-border:${i.borderColor}`,onClick:s=>{if(s.stopPropagation(),s.ctrlKey||s.metaKey){t.toggleEventSelection(i.id);return}t.trigger("eventClick",{event:i,el:s.currentTarget}),i.url&&window.open(i.url,"_self")},children:[i.allDay?"":`${z.format(i.start,"HH:mm")} `,i.title]},i.id)}),a.moreCount>0&&C("span",{"data-rsv":"rdgm-more",onClick:i=>{i.stopPropagation(),t.trigger("moreLinkClick",{date:e.date,allEvents:[...a.events,...a.hiddenEvents],hiddenEvents:a.hiddenEvents})},children:cn(n.locale).more(a.moreCount)})]},a.row.resource.id))})]})}function Tv({api:t,options:e}){var n;const r=t.viewModel.value,a=e.direction??cn(e.locale).direction,i=t.getEffectiveOption("hourHeight",r.type),o=t.getEffectiveOption("height",r.type),s=[e.themeTokens?Yf(e.themeTokens):"",i?`${Jd.slotHeight}:${i}px`:"",o!=null&&o!=="auto"?`height:${typeof o=="number"?`${o}px`:o}`:""].filter(Boolean).join(";")||void 0,u=Ce(null);bt(()=>(t.setRootEl(u.current),()=>t.setRootEl(null)),[t]);const l=Ce(e.responsiveViews);return l.current=e.responsiveViews,bt(()=>{const c=u.current;if(!c||typeof ResizeObserver>"u")return;let h=0;const p=new ResizeObserver(y=>{const _=y[0],k=(_==null?void 0:_.contentRect.width)??c.clientWidth;cancelAnimationFrame(h),h=requestAnimationFrame(()=>{const b=l.current;if(!(b!=null&&b.length))return;const M=Xf(b,k);M&&M!==t.getView().type&&t.hasView(M)&&t.changeView(M)})});return p.observe(c),()=>{cancelAnimationFrame(h),p.disconnect()}},[t]),C("div",{ref:u,"data-rsv":"root",dir:a,"data-rsv-theme":e.theme,"data-rsv-autoheight":o==="auto"?"true":void 0,style:s,class:zt((n=e.classNames)==null?void 0:n.root),children:[e.headerToolbar!==!1&&C(ay,{api:t,title:r.title,activeView:r.type,options:e}),C("div",{"data-rsv":"view","data-view":r.type,children:r.dayGrid?C(bc,{api:t,model:r.dayGrid,options:e}):r.timeGrid?C(yv,{api:t,model:r.timeGrid,options:e}):r.list?C(pv,{api:t,model:r.list,options:e}):r.multiMonth?C(gv,{api:t,model:r.multiMonth,options:e}):r.resourceTimeGrid?C(bv,{api:t,model:r.resourceTimeGrid,options:e}):r.resourceDayGrid?C(Mv,{api:t,model:r.resourceDayGrid,options:e}):r.resourceDayGridMonth?C(kv,{api:t,model:r.resourceDayGridMonth,options:e}):r.resourceTimeline?C(Dv,{api:t,model:r.resourceTimeline,options:e}):r.timeline?C(_v,{api:t,model:r.timeline,options:e}):C("div",{"data-rsv":"unsupported",children:['La vista "',r.type,'" se implementa en una fase posterior.']})})]})}function Yv(t,e){const n=new Lf(e);return $s(du(Tv,{api:n,options:e}),t),{api:n,destroy(){$s(null,t),n.destroy()}}}const Xl=t=>t?z.toDate(t):null,eu=t=>t?z.toISOString(t):"";function $t(t){return{id:t.id,groupId:t.groupId,title:t.title,start:Xl(t.start),end:Xl(t.end),startStr:eu(t.start),endStr:eu(t.end),allDay:t.allDay,url:t.url,display:t.display,backgroundColor:t.backgroundColor,borderColor:t.borderColor,textColor:t.textColor,classNames:t.classNames,extendedProps:t.extendedProps,def:t}}function Fo(t,e,n){const r={type:t.type};return e?{...r,...n==null?{}:{title:n},currentStart:z.toDate(e.currentStart),currentEnd:z.toDate(e.currentEnd),activeStart:z.toDate(e.activeStart),activeEnd:z.toDate(e.activeEnd)}:n==null?r:{...r,title:n}}const Ev=["eventContent","dayCellContent","dayHeaderContent","slotLabelContent","moreLinkContent"],tu=["locale","direction","timeZone","firstDay","weekends","hiddenDays","fixedWeekCount","showNonCurrentDates","weekNumbers","weekNumberCalculation","navLinks","dayHeaders","dayNumberAlign","moreLinkPopover","dayMaxEvents","dayMaxEventRows","slotMinTime","slotMaxTime","slotDuration","slotLabelInterval","allDaySlot","nowIndicator","scrollTime","editable","eventDraggable","selectable","selectMirror","snapDuration","businessHours","eventOverlap","eventConstraint","eventAllow","theme","themeTokens","headerToolbar","hourHeight","height","eventTimeFormat","slotLabelFormat","dayHeaderFormat","listDayFormat","listDaySideFormat","titleFormat","viewOverrides","keyboardShortcuts","resourceAreaWidth","resourceOrder","lazyFetching","classNames","views","addButtonText","responsiveViews"];function $v(t,e){return t.getOption(e)}const Ov=Fe.forwardRef(function(t,e){const n=Fe.useRef(null),r=Fe.useRef(null),a=Fe.useRef(t);a.current=t;const i=Fe.useRef(new Map),[,o]=Fe.useState(0),s=Fe.useRef(!1),u=Fe.useRef(!0),l=Fe.useCallback(()=>{s.current||(s.current=!0,queueMicrotask(()=>{s.current=!1,u.current&&o(k=>k+1)}))},[]),c=Fe.useMemo(()=>({mount(k,b,M){i.current.set(k,{el:b,payload:M}),l()},update(k,b){const M=i.current.get(k);M&&(M.payload=b,l())},unmount(k){i.current.delete(k)&&l()}}),[l]);Fe.useEffect(()=>{var k,b;const M=n.current;if(!M)return;u.current=!0;const T={eventContent:x=>a.current.eventContent?Or({slot:"eventContent",arg:x}):void 0,dayCellContent:x=>a.current.dayCellContent?Or({slot:"dayCellContent",arg:x}):void 0,dayHeaderContent:x=>a.current.dayHeaderContent?Or({slot:"dayHeaderContent",arg:x}):void 0,slotLabelContent:x=>a.current.slotLabelContent?Or({slot:"slotLabelContent",arg:x}):void 0,moreLinkContent:x=>a.current.moreLinkContent?Or({slot:"moreLinkContent",arg:x}):void 0},P={...Hv(a.current),slots:T,hostBridge:c,hooks:{eventDidMount:x=>{const E=a.current.eventDidMount;E&&E({...Yc(x),el:x.el})},dayCellDidMount:x=>{var E,L;return(L=(E=a.current).dayCellDidMount)==null?void 0:L.call(E,x)},dayHeaderDidMount:x=>{var E,L;return(L=(E=a.current).dayHeaderDidMount)==null?void 0:L.call(E,x)},slotLabelDidMount:x=>{var E,L;return(L=(E=a.current).slotLabelDidMount)==null?void 0:L.call(E,x)}}},N=Yv(M,P);r.current=N;const $=N.api,W=()=>{const x=$.getViewModel();return Fo(x.spec,x.range,x.title)},Q=[$.on("eventClick",({event:x,el:E})=>{var L,B;return(B=(L=a.current).eventClick)==null?void 0:B.call(L,{event:$t(x),el:E??null,view:W()})}),$.on("dateClick",({date:x,allDay:E})=>{var L,B;return(B=(L=a.current).dateClick)==null?void 0:B.call(L,{date:z.toDate(x),dateStr:z.toISOString(x),allDay:E??!1,view:W()})}),$.on("select",({start:x,end:E})=>{var L,B;return(B=(L=a.current).select)==null?void 0:B.call(L,{start:z.toDate(x),end:z.toDate(E),startStr:z.toISOString(x),endStr:z.toISOString(E),view:W()})}),$.on("unselect",()=>{var x,E;return(E=(x=a.current).unselect)==null?void 0:E.call(x)}),$.on("datesSet",({range:x,view:E})=>{var L,B;return(B=(L=a.current).datesSet)==null?void 0:B.call(L,{start:z.toDate(x.activeStart),end:z.toDate(x.activeEnd),startStr:z.toISOString(x.activeStart),endStr:z.toISOString(x.activeEnd),view:Fo(E,x)})}),$.on("eventsSet",x=>{var E,L;return(L=(E=a.current).eventsSet)==null?void 0:L.call(E,x.map(B=>$t(B)))}),$.on("eventDrop",({event:x})=>{var E,L;return(L=(E=a.current).eventDrop)==null?void 0:L.call(E,{event:$t(x),view:W()})}),$.on("eventResize",({event:x})=>{var E,L;return(L=(E=a.current).eventResize)==null?void 0:L.call(E,{event:$t(x),view:W()})}),$.on("eventChange",({event:x})=>{var E,L;return(L=(E=a.current).eventChange)==null?void 0:L.call(E,{event:$t(x),view:W()})}),$.on("moreLinkClick",({date:x,allEvents:E,hiddenEvents:L})=>{var B,S;return(S=(B=a.current).moreLinkClick)==null?void 0:S.call(B,{date:z.toDate(x),dateStr:z.toISOString(x),allEvents:E.map(A=>$t(A)),hiddenEvents:L.map(A=>$t(A)),view:W()})}),$.on("navLinkDay",({date:x})=>{var E,L;return(L=(E=a.current).navLinkDay)==null?void 0:L.call(E,{date:z.toDate(x),dateStr:z.toISOString(x)})}),$.on("loading",({isLoading:x})=>{var E,L;return(L=(E=a.current).loading)==null?void 0:L.call(E,x)})];return(b=(k=a.current).onReady)==null||b.call(k,$),()=>{u.current=!1;for(const x of Q)x();N.destroy(),r.current=null,i.current.clear()}},[c]),Fe.useImperativeHandle(e,()=>({getApi:()=>{var k;return((k=r.current)==null?void 0:k.api)??null}}),[]);const h=tu.map(k=>t[k]);Fe.useEffect(()=>{var k;const b=(k=r.current)==null?void 0:k.api;if(!b)return;const M={};let T=!1;tu.forEach((P,N)=>{$v(b,P)!==h[N]&&(M[P]=h[N],T=!0)}),T&&b.setOptions(M)},h);const p=t.events,y=Fe.useRef(p);Fe.useEffect(()=>{var k;const b=(k=r.current)==null?void 0:k.api;if(!(!b||!p)){if(y.current===p){y.current=void 0;return}b.refetchEvents(p)}},[p]);const _=[];for(const[k,{el:b,payload:M}]of i.current){const T=Cv(t,M);T!=null&&_.push(xc.createPortal(T,b,k))}return Ai.jsxs(Ai.Fragment,{children:[Ai.jsx("div",{ref:n,className:t.className,style:t.style}),_]})});function Cv(t,e){var n,r,a,i,o;switch(e.slot){case"eventContent":return(n=t.eventContent)==null?void 0:n.call(t,Yc(e.arg));case"dayCellContent":return(r=t.dayCellContent)==null?void 0:r.call(t,e.arg);case"dayHeaderContent":return(a=t.dayHeaderContent)==null?void 0:a.call(t,e.arg);case"slotLabelContent":return(i=t.slotLabelContent)==null?void 0:i.call(t,e.arg);case"moreLinkContent":{const s=e.arg;return(o=t.moreLinkContent)==null?void 0:o.call(t,{date:s.date,moreCount:s.moreCount,allEvents:s.allEvents.map($t),hiddenEvents:s.hiddenEvents.map($t),view:s.view})}default:return null}}function Yc(t){return{event:$t(t.event),isAllDay:t.isAllDay,timeText:t.timeText,view:t.view}}const Iv=new Set([...Ev,"eventClick","dateClick","select","unselect","datesSet","eventsSet","eventDrop","eventResize","eventChange","moreLinkClick","navLinkDay","loading","eventDidMount","dayCellDidMount","dayHeaderDidMount","slotLabelDidMount","onReady","className","style"]);function Hv(t){const e={};for(const[n,r]of Object.entries(t))Iv.has(n)||(e[n]=r);return e}/*! Nexa v1.7.0 | (c) 2026 Berea-Soft | MIT License | https://github.com/Berea-Soft/Nexa */var Xi=t=>({ok:!0,value:t}),It=t=>({ok:!1,error:t}),Ec=class{constructor(){X(this,"cache",new Map)}get(t){let e=this.cache.get(t);return e?Date.now()-e.timestamp>e.ttlMs?(this.cache.delete(t),null):e.data:null}set(t,e,n=6e4){this.cache.set(t,{data:e,timestamp:Date.now(),ttlMs:n})}clear(){this.cache.clear()}has(t){let e=this.cache.get(t);return e?Date.now()-e.timestamp>e.ttlMs?(this.cache.delete(t),!1):!0:!1}delete(t){this.cache.delete(t)}};function xv(t={}){let e=t.cache||new Ec,n=t.ttlMs||6e4,r=t.cacheableStatuses||[200,304];return async(a,i)=>{let o=(a.request.method||"GET").toUpperCase(),s=o==="GET",u=`${o}:${a.request.url}`;if(s&&e.has(u)){let l=e.get(u);if(l){a.response=l,a.state.cacheHit=!0;return}}await i(),s&&a.response&&r.includes(a.response.status)&&(e.set(u,a.response,n),a.state.cacheMiss=!0)}}xv();var Pv=class{constructor(){X(this,"pending",new Map)}async execute(t,e){if(this.pending.has(t))return this.pending.get(t);let n=e().finally(()=>{this.pending.delete(t)});return this.pending.set(t,n),n}clear(){this.pending.clear()}};function Av(t={}){let e=t.deduplicator||new Pv,n=t.includeBody??!1,r=t.methods||["GET"];return async(a,i)=>{let o=(a.request.method||"GET").toUpperCase();if(!r.includes(o)){await i();return}let s=`${o}:${a.request.url}`;n&&a.request.body&&(s+=`:${JSON.stringify(a.request.body)}`);try{a.response=await e.execute(s,async()=>(await i(),a.response)),a.state.deduped=!0}catch(u){throw a.error=u,u}}}Av();var Rv=class{constructor(){X(this,"store",new Ec)}get(t){return this.store.get(t)}set(t,e,n=6e4){this.store.set(t,e,n)}has(t){return this.store.has(t)}clear(){this.store.clear()}},jv=class{constructor(t=3,e=100){X(this,"maxAttempts");X(this,"baseDelayMs");this.maxAttempts=t,this.baseDelayMs=e}shouldRetry(t,e){let n=e.status!==void 0&&e.status>=500,r=e.code==="NETWORK_ERROR";return t<this.maxAttempts&&(n||r||e.code==="TIMEOUT")}delayMs(t){let e=this.baseDelayMs*2**(t-1),n=Math.random()*e*.1;return Math.min(e+n,3e4)}},Nv=class{constructor(t){X(this,"running",0);X(this,"queue",[]);X(this,"maxConcurrent");this.maxConcurrent=t}async acquire(){if(this.running<this.maxConcurrent){this.running++;return}return new Promise(t=>{this.queue.push(()=>{this.running++,t()})})}release(){this.running--;let t=this.queue.shift();t&&t()}get pending(){return this.queue.length}get active(){return this.running}};function nu(t){return t==null?{serialized:void 0,contentType:null}:typeof t=="string"?{serialized:t,contentType:"text/plain"}:typeof FormData<"u"&&t instanceof FormData?{serialized:t,contentType:null}:typeof URLSearchParams<"u"&&t instanceof URLSearchParams?{serialized:t,contentType:"application/x-www-form-urlencoded"}:typeof Blob<"u"&&t instanceof Blob?{serialized:t,contentType:t.type||"application/octet-stream"}:t instanceof ArrayBuffer||ArrayBuffer.isView(t)||typeof ReadableStream<"u"&&t instanceof ReadableStream?{serialized:t,contentType:"application/octet-stream"}:{serialized:JSON.stringify(t),contentType:"application/json"}}function eo(t,e){return e?t.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,(n,r)=>{let a=e[r];if(a===void 0)throw Error(`Missing path parameter: :${r}`);return encodeURIComponent(String(a))}):t}var Lv=class $c{constructor(e={}){X(this,"requestInterceptors",[]);X(this,"responseInterceptors",[]);X(this,"cache");X(this,"devTracker");X(this,"config");X(this,"requestQueue");X(this,"pendingRequests",new Set);this.config={baseURL:e.baseURL??"",defaultHeaders:e.defaultHeaders??{"Content-Type":"application/json"},defaultTimeout:e.defaultTimeout??3e4,validateStatus:e.validateStatus??(n=>n>=200&&n<300),cacheStrategy:e.cacheStrategy??new Rv,maxConcurrent:e.maxConcurrent??0,defaultResponseType:e.defaultResponseType??"auto",defaultHooks:e.defaultHooks??{},adapter:e.adapter},this.cache=this.config.cacheStrategy,this.requestQueue=this.config.maxConcurrent>0?new Nv(this.config.maxConcurrent):null,this.devTracker=e.devTracker??null}async request(e){var o,s,u,l,c,h,p,y,_,k,b;if(!this.requestInterceptors.length&&!this.responseInterceptors.length&&!((o=e.cache)!=null&&o.enabled)&&!e.hooks&&!Object.keys(this.config.defaultHooks).length&&!e.retry&&!e.validate&&!e.transform&&!this.requestQueue&&!e.onDownloadProgress&&!e.signal)return this.fastPath(e);let n=e.hooks?{...this.config.defaultHooks,...e.hooks}:this.config.defaultHooks,r=this.getMaxAttempts(e.retry),a=this.getRetryStrategy(e.retry),i=this.buildRequest(e);(s=n.onStart)==null||s.call(n,i),this.requestQueue&&await this.requestQueue.acquire();try{for(let T=1;T<=r;T++){let P;try{if((e.method==="GET"||!e.method)&&((u=e.cache)!=null&&u.enabled)){let S=this.getCacheKey(e),A=this.cache.get(S);if(A){let U=A;return this.trackDev({method:e.method??"GET",url:i.url,status:U.status,duration:U.duration,cached:!0,ok:!0,headers:{...i.headers},body:e.body,retryCount:0}),(l=n.onSuccess)==null||l.call(n,U),(c=n.onFinally)==null||c.call(n),Xi(U)}}let N=i;for(let S of this.requestInterceptors)N=await S.onRequest(N);P=new AbortController,this.pendingRequests.add(P),e.signal&&e.signal.addEventListener("abort",()=>P.abort(),{once:!0});let $=performance.now(),W=await this.fetchWithTimeout(N,this.resolveTimeoutMs(e.timeout??this.config.defaultTimeout),P),Q=performance.now()-$,x=W;e.onDownloadProgress&&W.body&&(x=this.trackDownloadProgress(W,e.onDownloadProgress));let E=e.responseType??this.config.defaultResponseType,L=await this.parseResponse(x,N,Q,E);if(!this.config.validateStatus(L.status))throw{message:`Request failed with status ${L.status}`,status:L.status,statusText:L.statusText,code:"HTTP_ERROR"};if(e.validate){let S=e.validate.validate(L.data);if(!S.ok)return S}e.transform&&(L.data=e.transform.transform(L.data));let B=L;for(let S of this.responseInterceptors)B=await S.onResponse(B);if((e.method==="GET"||!e.method)&&((h=e.cache)!=null&&h.enabled)){let S=this.getCacheKey(e);this.cache.set(S,B,e.cache.ttlMs)}return(p=n.onSuccess)==null||p.call(n,B),this.pendingRequests.delete(P),this.trackDev({method:e.method??"GET",url:i.url,status:B.status,duration:B.duration,cached:!1,ok:!0,headers:{...i.headers},body:e.body,retryCount:T-1}),Xi(B)}catch(N){let $;if($=N instanceof DOMException?N.name==="TimeoutError"?{message:"Request timed out",code:"TIMEOUT"}:N.name==="AbortError"?{message:"Request aborted",code:"ABORTED"}:{message:N.message,code:"UNKNOWN_ERROR",originalError:N}:this.isHttpErrorDetails(N)?N:this.normalizeError(N),T<r&&a.shouldRetry(T,$)){(y=n.onRetry)==null||y.call(n,T,$);let Q=a.delayMs(T);await this.delay(Q);continue}let W=$;for(let Q of this.responseInterceptors)Q.onError&&(W=await Q.onError(W));return(_=n.onError)==null||_.call(n,W),P&&this.pendingRequests.delete(P),this.trackDev({method:e.method??"GET",url:i.url,status:W.status,duration:0,cached:!1,ok:!1,code:W.code,headers:{...i.headers},body:e.body,retryCount:T-1}),It(W)}}let M={message:"Max retries exceeded",code:"MAX_RETRIES"};return(k=n.onError)==null||k.call(n,M),this.trackDev({method:e.method??"GET",url:i.url,duration:0,cached:!1,ok:!1,code:"MAX_RETRIES",headers:{...i.headers},body:e.body,retryCount:r}),It(M)}finally{(b=n.onFinally)==null||b.call(n),this.requestQueue&&this.requestQueue.release()}}async fastPath(e){let n=eo(e.url,e.params),r=this.buildUrl(n,e.query),{serialized:a,contentType:i}=nu(e.body),o={...this.config.defaultHeaders,...e.headers};i?o["Content-Type"]=i:a instanceof FormData&&delete o["Content-Type"];let s=new AbortController,u=this.resolveTimeoutMs(e.timeout??this.config.defaultTimeout);this.pendingRequests.add(s);try{let l=performance.now(),c=await this.fetchWithTimeout({url:r,method:e.method??"GET",headers:o,body:e.body,params:e.params},u,s),h=performance.now()-l,p=await this.parseBody(c,e.responseType??this.config.defaultResponseType);if(!this.config.validateStatus(c.status)){let y=It({message:`Request failed with status ${c.status}`,status:c.status,statusText:c.statusText,code:"HTTP_ERROR"});return this.trackDev({method:e.method??"GET",url:r,status:c.status,duration:h,cached:!1,ok:!1,code:"HTTP_ERROR",headers:o,body:e.body,retryCount:0}),this.pendingRequests.delete(s),y}return this.pendingRequests.delete(s),this.trackDev({method:e.method??"GET",url:r,status:c.status,duration:h,cached:!1,ok:!0,headers:o,body:e.body,retryCount:0}),Xi({status:c.status,statusText:c.statusText,headers:c.headers,data:p,request:{url:r,method:e.method??"GET",headers:o,body:e.body,params:e.params},duration:h})}catch(l){this.pendingRequests.delete(s);let c="UNKNOWN_ERROR";if(l instanceof DOMException?l.name==="TimeoutError"?c="TIMEOUT":l.name==="AbortError"&&(c="ABORTED"):l instanceof Error&&(l.name==="TimeoutError"?c="TIMEOUT":l.name==="AbortError"||l.message.includes("abort")?c="ABORTED":l.name==="TypeError"&&(c="NETWORK_ERROR")),this.trackDev({method:e.method??"GET",url:r,duration:performance.now()-(performance.now()-0),cached:!1,ok:!1,code:c,headers:o,body:e.body,retryCount:0}),l instanceof DOMException){if(l.name==="TimeoutError")return It({message:"Request timed out",code:"TIMEOUT"});if(l.name==="AbortError")return It({message:"Request aborted",code:"ABORTED"})}return l instanceof Error?l.name==="TimeoutError"?It({message:"Request timed out",code:"TIMEOUT"}):l.name==="AbortError"||l.message.includes("abort")?It({message:"Request aborted",code:"ABORTED"}):It({message:l.message,code:l.name==="TypeError"?"NETWORK_ERROR":"UNKNOWN_ERROR"}):It({message:String(l),code:"UNKNOWN_ERROR"})}}get(e,n){return this.request({...n,url:e,method:"GET"})}post(e,n,r){return this.request({...r,url:e,method:"POST",body:n})}put(e,n,r){return this.request({...r,url:e,method:"PUT",body:n})}patch(e,n,r){return this.request({...r,url:e,method:"PATCH",body:n})}delete(e,n){return this.request({...n,url:e,method:"DELETE"})}head(e,n){return this.request({...n,url:e,method:"HEAD"})}options(e,n){return this.request({...n,url:e,method:"OPTIONS"})}addRequestInterceptor(e){return this.requestInterceptors.push(e),()=>{let n=this.requestInterceptors.indexOf(e);n!==-1&&this.requestInterceptors.splice(n,1)}}addResponseInterceptor(e){return this.responseInterceptors.push(e),()=>{let n=this.responseInterceptors.indexOf(e);n!==-1&&this.responseInterceptors.splice(n,1)}}clearInterceptors(){this.requestInterceptors=[],this.responseInterceptors=[]}clearCache(){this.cache.clear()}cancelAll(){for(let e of this.pendingRequests)e.abort();this.pendingRequests.clear()}get activeRequests(){return this.pendingRequests.size}get queueStats(){var e,n;return{active:((e=this.requestQueue)==null?void 0:e.active)??this.pendingRequests.size,pending:((n=this.requestQueue)==null?void 0:n.pending)??0}}extend(e={}){let n=new $c({baseURL:e.baseURL??this.config.baseURL,defaultHeaders:{...this.config.defaultHeaders,...e.defaultHeaders},defaultTimeout:e.defaultTimeout??this.config.defaultTimeout,validateStatus:e.validateStatus??this.config.validateStatus,cacheStrategy:e.cacheStrategy??this.cache,maxConcurrent:e.maxConcurrent??this.config.maxConcurrent,defaultResponseType:e.defaultResponseType??this.config.defaultResponseType,defaultHooks:{...this.config.defaultHooks,...e.defaultHooks},adapter:e.adapter});for(let r of this.requestInterceptors)n.addRequestInterceptor(r);for(let r of this.responseInterceptors)n.addResponseInterceptor(r);return n}async*paginate(e,n,r={}){let a={...r};for(;;){let i=await this.get(e,a);if(!i.ok)break;yield n.getItems(i.value.data);let o=n.getNextPage(i.value.data,a);if(!o)break;a=o}}async poll(e,n,r={}){var i;let a=n.maxAttempts??0;for(let o=1;a===0||o<=a;o++){let s=await this.get(e,r);if(!s.ok||((i=n.onPoll)==null||i.call(n,s.value.data,o),n.until(s.value.data)))return s;if(a>0&&o>=a)break;await this.delay(n.intervalMs)}return It({message:`Polling exhausted after ${a} attempts`,code:"POLL_EXHAUSTED"})}buildRequest(e){let n=eo(e.url,e.params);return{url:this.buildUrl(n,e.query),method:e.method??"GET",headers:{...this.config.defaultHeaders,...e.headers},body:e.body,params:e.params}}buildUrl(e,n){let r=this.config.baseURL+e;if(n){let a=Object.keys(n);if(a.length>0){let i=new URLSearchParams;for(let o=0;o<a.length;o++)i.append(a[o],String(n[a[o]]));r+=`?${i.toString()}`}}return r}getCacheKey(e){let n=eo(e.url,e.params),r=e.query?JSON.stringify(e.query):"";return`${e.method??"GET"}:${n}${r?":"+r:""}`}fetchWithTimeout(e,n,r){let{serialized:a,contentType:i}=nu(e.body),o={...e.headers};return i?o["Content-Type"]=i:a instanceof FormData&&delete o["Content-Type"],new Promise((s,u)=>{let l=setTimeout(()=>{r.abort(),u(new DOMException("Request timed out","TimeoutError"))},n);(this.config.adapter??fetch)(e.url,{method:e.method,headers:o,body:a,signal:r.signal}).then(c=>{clearTimeout(l),s(c)},c=>{clearTimeout(l),u(c)})})}trackDownloadProgress(e,n){var s;let r=parseInt(e.headers.get("content-length")||"0",10),a=(s=e.body)==null?void 0:s.getReader();if(!a)return e;let i=0,o=new ReadableStream({async pull(u){let{done:l,value:c}=await a.read();if(l){u.close();return}i+=c.byteLength,n({loaded:i,total:r,percent:r>0?Math.round(i/r*100):0}),u.enqueue(c)}});return new Response(o,{headers:e.headers,status:e.status,statusText:e.statusText})}async parseResponse(e,n,r,a){let i=await this.parseBody(e,a);return{status:e.status,statusText:e.statusText,headers:e.headers,data:i,request:n,duration:r}}async parseBody(e,n){switch(n){case"json":return await e.json();case"text":return await e.text();case"blob":return await e.blob();case"arrayBuffer":return await e.arrayBuffer();case"formData":return await e.formData();case"stream":return e.body;default:{let r=e.headers.get("content-type")??"";if(r.includes("application/json"))return await e.json();if(r.includes("text/"))return await e.text();if(r.includes("multipart/form-data"))return await e.formData();if(r.includes("application/octet-stream")||r.includes("image/")||r.includes("audio/")||r.includes("video/"))return await e.blob();try{return await e.json()}catch{return await e.text()}}}}normalizeError(e){if(e instanceof DOMException){if(e.name==="TimeoutError")return{message:"Request timed out",code:"TIMEOUT"};if(e.name==="AbortError")return{message:"Request aborted",code:"ABORTED"}}return e instanceof Error?e.name==="TimeoutError"?{message:"Request timed out",code:"TIMEOUT"}:e.name==="AbortError"||e.message.includes("abort")?{message:"Request aborted",code:"ABORTED"}:{message:e.message,code:e.name==="TypeError"?"NETWORK_ERROR":"UNKNOWN_ERROR",originalError:e}:{message:String(e),code:"UNKNOWN_ERROR",originalError:e}}isHttpErrorDetails(e){return typeof e=="object"&&!!e&&"message"in e&&"code"in e}getMaxAttempts(e){return e?"maxAttempts"in e?e.maxAttempts??1:100:1}getRetryStrategy(e){return e?"shouldRetry"in e?e:new jv(e.maxAttempts,e.backoffMs):{shouldRetry:()=>!1,delayMs:()=>0}}resolveTimeoutMs(e){return typeof e=="number"?e:e.total??e.response??e.connection??3e4}delay(e){return new Promise(n=>setTimeout(n,e))}trackDev(e){this.devTracker&&this.devTracker.track(e)}};function Bv(t){return new Lv(t)}function Oc(t={}){const{baseURL:e="",defaultTimeout:n=1e4}=t,r=Bv({baseURL:e,defaultTimeout:n});return{get:(a,i)=>r.get(a,i),post:(a,i,o)=>r.post(a,i,o),put:(a,i,o)=>r.put(a,i,o),patch:(a,i,o)=>r.patch(a,i,o),delete:(a,i)=>r.delete(a,i)}}function Uv(t={}){return Oc(t)}const Fv=Object.freeze(Object.defineProperty({__proto__:null,createNexaHttp:Oc,createReserviHttp:Uv},Symbol.toStringTag,{value:"Module"}));exports.ReserviCalendar=Ov;exports.adaptEvent=$t;exports.adaptView=Fo;exports.dayGridPlugin=Cf;exports.definePlugin=Qm;exports.defineTheme=Ef;exports.dl=z;exports.listPlugin=Hf;exports.multiMonthPlugin=xf;exports.resourcePlugin=Pf;exports.timeGridPlugin=If;exports.timelinePlugin=Gd;
|
|
36
36
|
//# sourceMappingURL=index.cjs.map
|