@reservi/preact 1.3.3 → 1.4.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.d.ts +137 -4
- package/dist/index.js +984 -565
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("preact"),o=require("@reservi/core"),t=require("preact/jsx-runtime");require("@preact/signals");const D=require("preact/hooks");function S(a,e,n){return a?a(e):n}function C(...a){return a.filter(Boolean).join(" ")}const E={prev:"‹",next:"›"},ue=new Set(["","title","today","prev","next"]),ve=/month|year/i,$=a=>String(a).padStart(2,"0");function me(){return t.jsxs("svg",{"data-rsv":"title-icon",width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor","stroke-width":"1.3","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",children:[t.jsx("rect",{x:"1",y:"2.5",width:"12",height:"10.5",rx:"1.5"}),t.jsx("line",{x1:"1",y1:"5.5",x2:"13",y2:"5.5"}),t.jsx("line",{x1:"4.5",y1:"1",x2:"4.5",y2:"3.5"}),t.jsx("line",{x1:"9.5",y1:"1",x2:"9.5",y2:"3.5"})]})}function he(a){var n;if((n=a.views)!=null&&n.length)return a.views;const e=a.headerToolbar;return e?[e.start,e.center,e.end].filter(r=>!!r).flatMap(r=>r.split(/\s+/)).flatMap(r=>r.split(",")).filter(r=>!ue.has(r)):[]}function W({api:a,title:e,activeView:n,options:r}){var P,H,T,B,_;const s=o.getLocaleText(r.locale),i=(H=(P=r.slots)==null?void 0:P.toolbarStart)==null?void 0:H.call(P),u=(B=(T=r.slots)==null?void 0:T.toolbarEnd)==null?void 0:B.call(T),d=he(r),l=ve.test(n),c=r.firstDay??s.firstDay,m=D.useRef(null),[h,y]=D.useState(!1),x=o.dl.toDate(a.getDate()),g=o.dl.toDate(r.now?o.dl.from(r.now):o.dl.now()),[b,p]=D.useState(x.getFullYear()),[j,k]=D.useState(x.getMonth()),M=new Intl.DateTimeFormat(r.locale,{month:"short"}),de=new Intl.DateTimeFormat(r.locale,{month:"long"}),oe=new Intl.DateTimeFormat(r.locale,{weekday:"short"}),ie=Array.from({length:12},(v,f)=>M.format(new Date(2020,f,1))),V=()=>{const v=o.dl.toDate(a.getDate());p(v.getFullYear()),k(v.getMonth()),y(!0)},Y=v=>{const f=b*12+j+v;p(Math.floor(f/12)),k((f%12+12)%12)},A=v=>{a.gotoDate(v),y(!1)};D.useEffect(()=>{const v=w=>{(w.ctrlKey||w.metaKey)&&(w.key==="m"||w.key==="M")?(w.preventDefault(),V()):w.key==="Escape"&&y(!1)},f=w=>{m.current&&!m.current.contains(w.target)&&y(!1)};return document.addEventListener("keydown",v),document.addEventListener("mousedown",f),()=>{document.removeEventListener("keydown",v),document.removeEventListener("mousedown",f)}},[]);const N=(()=>{if(l)return{cells:[],dows:[]};const v=o.dl.from(`${b}-${$(j+1)}-01`),f=(o.dl.dayOfWeek(v)-c+7)%7,w=o.dl.subtract(v,{days:f}),K=Array.from({length:42},(U,ce)=>o.dl.toDate(o.dl.add(w,{days:ce}))),le=K.slice(0,7).map(U=>oe.format(U));return{cells:K,dows:le}})();return t.jsxs("div",{"data-rsv":"toolbar-wrap",class:C((_=r.classNames)==null?void 0:_.toolbar),ref:m,children:[t.jsxs("div",{"data-rsv":"toolbar",children:[t.jsx("div",{"data-rsv":"toolbar-section","data-rsv-area":"start",children:i}),t.jsxs("div",{"data-rsv":"toolbar-section","data-rsv-area":"nav",children:[t.jsx("button",{type:"button","data-rsv":"button",title:s.today,"aria-label":s.today,onClick:()=>a.today(),children:s.today}),t.jsx("button",{type:"button","data-rsv":"button","data-rsv-nav":"prev",title:s.prev,"aria-label":s.prev,onClick:()=>a.prev(),children:E.prev}),t.jsxs("div",{"data-rsv":"datepicker-anchor",children:[t.jsxs("button",{type:"button","data-rsv":"title","aria-haspopup":"dialog","aria-expanded":h,title:`${e} · Ctrl+M`,onClick:()=>h?y(!1):V(),children:[t.jsx(me,{}),e]}),h&&t.jsxs("div",{"data-rsv":"datepicker","data-rsv-mode":l?"month":"day",role:"dialog","aria-label":e,children:[t.jsxs("div",{"data-rsv":"dp-head",children:[t.jsx("button",{type:"button","data-rsv":"dp-nav","aria-label":s.prev,onClick:()=>l?p(v=>v-1):Y(-1),children:E.prev}),t.jsx("span",{"data-rsv":"dp-label",children:l?b:`${de.format(new Date(b,j,1))} ${b}`}),t.jsx("button",{type:"button","data-rsv":"dp-nav","aria-label":s.next,onClick:()=>l?p(v=>v+1):Y(1),children:E.next})]}),l?t.jsx("div",{"data-rsv":"dp-grid",children:ie.map((v,f)=>t.jsx("button",{type:"button","data-rsv":"dp-month","data-active":String(b===x.getFullYear()&&f===x.getMonth()),"data-today":String(b===g.getFullYear()&&f===g.getMonth()),onClick:()=>A(`${b}-${$(f+1)}-01`),children:v},v))}):t.jsxs("div",{"data-rsv":"dp-days",children:[N.dows.map((v,f)=>t.jsx("div",{"data-rsv":"dp-dow",children:v},`dow-${f}`)),N.cells.map(v=>{const f=`${v.getFullYear()}-${$(v.getMonth()+1)}-${$(v.getDate())}`;return t.jsx("button",{type:"button","data-rsv":"dp-day","data-other":String(v.getMonth()!==j),"data-active":String(v.getFullYear()===x.getFullYear()&&v.getMonth()===x.getMonth()&&v.getDate()===x.getDate()),"data-today":String(v.getFullYear()===g.getFullYear()&&v.getMonth()===g.getMonth()&&v.getDate()===g.getDate()),onClick:()=>A(f),children:v.getDate()},f)})]})]})]}),t.jsx("button",{type:"button","data-rsv":"button","data-rsv-nav":"next",title:s.next,"aria-label":s.next,onClick:()=>a.next(),children:E.next})]}),t.jsxs("div",{"data-rsv":"toolbar-section","data-rsv-area":"end",children:[u,r.onAddClick&&t.jsxs("button",{type:"button","data-rsv":"button","data-rsv-variant":"primary",onClick:r.onAddClick,children:[t.jsx("span",{"data-rsv":"add-icon","aria-hidden":"true",children:"+"}),r.addButtonText]})]})]}),d.length>0&&t.jsx("div",{"data-rsv":"toolbar-views",role:"tablist",children:d.map(v=>t.jsx("button",{type:"button","data-rsv":"view-tab",role:"tab","aria-selected":v===n,"data-active":String(v===n),onClick:()=>a.changeView(v),children:s.views[v]??v},v))})]})}function q(a,e){a.trigger("navLinkDay",{date:e});const n=a.hasView("timeGridDay")?"timeGridDay":a.hasView("dayGridDay")?"dayGridDay":null;n&&(a.gotoDate(o.dl.toISOString(e)),a.changeView(n))}const L=1440;function G(a,e){const{api:n,event:r,kind:s}=e,i=o.timeStringToMinutes(e.snap??"00:30");let u=0;switch(a.key){case"ArrowLeft":u=-L;break;case"ArrowRight":u=L;break;case"ArrowUp":u=s==="timeGrid"?-i:-L*7;break;case"ArrowDown":u=s==="timeGrid"?i:L*7;break;case"Enter":case" ":a.preventDefault(),n.trigger("eventClick",{event:r});return;default:return}a.preventDefault();const d=o.computeDrop(r.start,r.end,u,o.dl);if(n.moveEvent(r.id,d.start,d.end)){const l=n.getEventById(r.id);l&&n.trigger("eventDrop",{event:l})}}const ge=1440,ye=4;function X(a,e){var r;const n=document.elementFromPoint(a,e);return((r=n==null?void 0:n.closest('[data-rsv="day"]'))==null?void 0:r.dataset.date)??null}function xe(a,e){a.stopPropagation();const{api:n,event:r,sourceDate:s}=e,i=a.clientX,u=a.clientY;let d=!1;const l=m=>{!d&&Math.hypot(m.clientX-i,m.clientY-u)>ye&&(d=!0,document.body.style.cursor="grabbing")},c=m=>{var g;if(document.removeEventListener("pointermove",l),document.removeEventListener("pointerup",c),document.body.style.cursor="",!d)return;(g=e.onMoved)==null||g.call(e);const h=X(m.clientX,m.clientY);if(!h)return;const y=o.dl.diff(o.dl.from(s),o.dl.from(h),"day");if(y===0)return;const x=o.computeDrop(r.start,r.end,y*ge,o.dl);if(n.moveEvent(r.id,x.start,x.end)){const b=n.getEventById(r.id);b&&n.trigger("eventDrop",{event:b})}};document.addEventListener("pointermove",l),document.addEventListener("pointerup",c)}function fe(a,e){if(a.target.closest('[data-rsv="event"], [data-rsv="more-anchor"], [data-nav-link="true"]'))return;const{api:r}=e;let s=e.startDate,i=!1;const u=l=>{const c=X(l.clientX,l.clientY);c&&c!==e.startDate&&(i=!0),c&&(s=c)},d=()=>{var y;if(document.removeEventListener("pointermove",u),document.removeEventListener("pointerup",d),!i)return;(y=e.onRangeSelect)==null||y.call(e);const l=o.dl.from(e.startDate),c=o.dl.from(s),[m,h]=o.dl.isBefore(l,c)?[l,c]:[c,l];r.select(o.dl.toISOString(m),o.dl.toISOString(o.dl.add(h,{days:1})))};document.addEventListener("pointermove",u),document.addEventListener("pointerup",d)}function F({api:a,model:e,options:n}){var d;const r=n.locale??"en",s=new Intl.DateTimeFormat(r,{weekday:"short"}),i=((d=e.weeks[0])==null?void 0:d.days)??[],u=n.weekNumbers===!0;return t.jsxs("div",{"data-rsv":"daygrid","data-weeknumbers":String(u),style:`--rsv-cols:${e.columnCount}`,children:[t.jsxs("div",{"data-rsv":"daygrid-header",role:"row",children:[u&&t.jsx("div",{"data-rsv":"daygrid-weeknum-header",role:"columnheader"}),i.map(l=>{var h;const c=o.dl.toDate(l.date),m=s.format(c);return t.jsx("div",{"data-rsv":"daygrid-dow",role:"columnheader",children:S((h=n.slots)==null?void 0:h.dayHeaderContent,{date:c,text:m},m)},l.dayOfWeek)})]}),e.weeks.map((l,c)=>t.jsxs("div",{"data-rsv":"daygrid-week",role:"row",children:[u&&t.jsx("div",{"data-rsv":"daygrid-weeknum",role:"rowheader",children:l.weekNumber}),l.days.map(m=>t.jsx(be,{api:a,cell:m,options:n},o.dl.toISOString(m.date)))]},c))]})}function be({api:a,cell:e,options:n}){var x;const r=o.dl.toDate(e.date),s=o.dl.dayOfMonth(e.date),i=n.navLinks?t.jsx("a",{"data-rsv":"day-number","data-nav-link":"true",role:"link",tabIndex:0,onClick:g=>{g.stopPropagation(),q(a,e.date)},children:s}):t.jsx("span",{"data-rsv":"day-number",children:s}),u=S((x=n.slots)==null?void 0:x.dayCellContent,{date:r,dayNumber:s,isToday:e.isToday,isOther:e.isOther},i),[d,l]=D.useState(!1),c=o.dl.toISOString(e.date),m=D.useRef(!1),h=()=>{if(m.current){m.current=!1;return}a.trigger("dateClick",{date:e.date}),n.selectable&&a.select(c,o.dl.toISOString(o.dl.add(e.date,{days:1})))},y=g=>{g.stopPropagation(),l(!0),a.trigger("moreLinkClick",{date:e.date,allEvents:[...e.events,...e.hiddenEvents],hiddenEvents:e.hiddenEvents})};return t.jsxs("div",{"data-rsv":"day",role:"gridcell","data-date":c,"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),onClick:h,onPointerDown:n.selectable?g=>fe(g,{api:a,startDate:c,onRangeSelect:()=>{m.current=!0}}):void 0,children:[u,e.events.filter(g=>g.display!=="none").map(g=>t.jsx(z,{api:a,event:g,options:n,sourceDate:c},g.id)),e.moreCount>0&&t.jsxs("div",{"data-rsv":"more-anchor",children:[t.jsx("button",{type:"button","data-rsv":"more-link",onClick:y,children:o.getLocaleText(n.locale).more(e.moreCount)}),d&&t.jsx(pe,{api:a,cell:e,options:n,onClose:()=>l(!1)})]})]})}function pe({api:a,cell:e,options:n,onClose:r}){const s=D.useRef(null),i=new Intl.DateTimeFormat(n.locale??"en",{weekday:"long",day:"numeric",month:"long"}),u=[...e.events,...e.hiddenEvents].filter(d=>d.display!=="none");return D.useEffect(()=>{const d=c=>{s.current&&!s.current.contains(c.target)&&r()},l=c=>{c.key==="Escape"&&r()};return document.addEventListener("mousedown",d),document.addEventListener("keydown",l),()=>{document.removeEventListener("mousedown",d),document.removeEventListener("keydown",l)}},[r]),t.jsxs("div",{"data-rsv":"more-popover",role:"dialog",ref:s,onClick:d=>d.stopPropagation(),children:[t.jsxs("div",{"data-rsv":"more-popover-header",children:[t.jsx("span",{"data-rsv":"more-popover-title",children:i.format(o.dl.toDate(e.date))}),t.jsx("button",{type:"button","data-rsv":"more-popover-close","aria-label":"✕",onClick:r,children:"✕"})]}),t.jsx("div",{"data-rsv":"more-popover-body",children:u.map(d=>t.jsx(z,{api:a,event:d,options:n,sourceDate:o.dl.toISOString(e.date)},d.id))})]})}function z({api:a,event:e,options:n,sourceDate:r}){var l;const s=n.editable===!0&&e.editable!==!1,i=D.useRef(!1),u=e.allDay?"":o.dl.format(e.start,"HH:mm"),d=S((l=n.slots)==null?void 0:l.eventContent,{event:e,isAllDay:e.allDay,timeText:u},t.jsxs("span",{"data-rsv":"event-title",children:[u?`${u} `:"",e.title]}));return t.jsx("div",{"data-rsv":"event",role:"button",tabIndex:0,class:C(...e.classNames),"data-all-day":String(e.allDay),"data-display":e.display,"data-event-id":e.id,"data-editable":String(s),style:`--rsv-event-bg:${e.backgroundColor};--rsv-event-fg:${e.textColor}`,onClick:c=>{if(c.stopPropagation(),i.current){i.current=!1;return}a.trigger("eventClick",{event:e}),e.url&&window.open(e.url,"_self")},onPointerDown:s?c=>xe(c,{api:a,event:e,sourceDate:r,onMoved:()=>{i.current=!0}}):void 0,onKeyDown:s?c=>G(c,{api:a,event:e,kind:"dayGrid"}):void 0,children:d})}function I(a,e){a.preventDefault(),a.stopPropagation();const{api:n,event:r,model:s,columnEl:i,snap:u="00:15",edge:d}=e,l=i.getBoundingClientRect(),c=s.maxMinutes-s.minMinutes,m=l.height===0?0:l.height/c,h=a.clientY,y=x=>{document.removeEventListener("pointerup",y);const g=o.pxToSnappedMinutes(x.clientY-h,m,u);if(g===0)return;const b=d?o.computeResize(r.start,r.end,d,g,o.dl):o.computeDrop(r.start,r.end,g,o.dl);if(n.moveEvent(r.id,b.start,b.end)){const p=n.getEventById(r.id);p&&n.trigger(d?"eventResize":"eventDrop",{event:p})}};document.addEventListener("pointerup",y)}function je(a,e){if(a.target.closest('[data-rsv="event"]'))return;const{api:n,date:r,model:s,columnEl:i,snap:u="00:15"}=e,d=i.getBoundingClientRect(),l=s.maxMinutes-s.minMinutes,c=d.height===0?0:d.height/l,m=o.timeStringToMinutes(u)||15,h=j=>{const k=s.minMinutes+(c===0?0:(j-d.top)/c),M=Math.max(s.minMinutes,Math.min(s.maxMinutes,k));return Math.round(M/m)*m},y=h(a.clientY);let x=y,g=!1;const b=j=>{const k=h(j.clientY);k!==y&&(g=!0),x=k},p=()=>{if(document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",p),!g)return;const j=Math.min(y,x),k=Math.max(y,x),M=o.dl.startOf(r,"day");n.select(o.dl.toISOString(o.dl.add(M,{minutes:j})),o.dl.toISOString(o.dl.add(M,{minutes:k})))};document.addEventListener("pointermove",b),document.addEventListener("pointerup",p)}function J({api:a,model:e,options:n}){const r=n.locale??"en",s=new Intl.DateTimeFormat(r,{weekday:"short",day:"numeric"}),i=n.allDaySlot!==!1,u=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`;return t.jsxs("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.days.length}`,children:[t.jsxs("div",{"data-rsv":"tg-header",role:"row",children:[t.jsx("div",{"data-rsv":"tg-axis-corner"}),e.days.map(d=>t.jsx("div",{"data-rsv":"tg-col-header",role:"columnheader","data-today":String(d.isToday),"data-nav-link":n.navLinks?"true":void 0,onClick:n.navLinks?()=>q(a,d.date):void 0,children:s.format(o.dl.toDate(d.date))},o.dl.toISOString(d.date)))]}),i&&t.jsxs("div",{"data-rsv":"tg-allday",role:"row",children:[t.jsx("div",{"data-rsv":"tg-axis-label",children:o.getLocaleText(n.locale).allDay}),e.days.map(d=>t.jsx("div",{"data-rsv":"tg-allday-cell",children:d.allDayEvents.filter(l=>l.display!=="none").map(l=>t.jsx("div",{"data-rsv":"event","data-all-day":"true",class:C(...l.classNames),"data-display":l.display,style:`--rsv-event-bg:${l.backgroundColor}`,onClick:()=>{a.trigger("eventClick",{event:l}),l.url&&window.open(l.url,"_self")},children:l.title},l.id))},o.dl.toISOString(d.date)))]}),t.jsxs("div",{"data-rsv":"tg-body",children:[t.jsx("div",{"data-rsv":"tg-axis",style:`height:${u}`,children:e.slots.map(d=>{var l;return t.jsx("div",{"data-rsv":"tg-slot","data-major":String(d.isMajor),children:t.jsx("span",{"data-rsv":"tg-slot-label",children:S((l=n.slots)==null?void 0:l.slotLabelContent,{text:d.label,minutes:d.offsetMin,isMajor:d.isMajor},d.label)})},d.offsetMin)})}),e.days.map((d,l)=>{var c;return t.jsxs("div",{"data-rsv":"tg-col","data-today":String(d.isToday),style:`height:${u}`,onClick:()=>a.trigger("dateClick",{date:d.date}),onPointerDown:n.selectable?m=>je(m,{api:a,date:d.date,model:e,columnEl:m.currentTarget,snap:n.snapDuration??n.slotDuration}):void 0,children:[n.businessHours&&!d.businessPct&&t.jsx("div",{"data-rsv":"tg-nonbusiness",style:"top:0;height:100%"}),d.businessPct&&t.jsxs(t.Fragment,{children:[t.jsx("div",{"data-rsv":"tg-nonbusiness",style:`top:0;height:${d.businessPct.topPct}%`}),t.jsx("div",{"data-rsv":"tg-nonbusiness",style:`top:${d.businessPct.bottomPct}%;height:${100-d.businessPct.bottomPct}%`})]}),d.timedSegs.filter(m=>m.event.display!=="none").map(m=>t.jsx(we,{api:a,seg:m,model:e,options:n},m.event.id)),((c=e.nowIndicator)==null?void 0:c.dayIndex)===l&&t.jsx("div",{"data-rsv":"now-indicator",style:`top:${e.nowIndicator.topPct}%`})]},o.dl.toISOString(d.date))})]})]})}function we({api:a,seg:e,model:n,options:r}){var m;const{event:s}=e,i=r.editable===!0&&s.editable!==!1,u=100/e.colCount,d=o.dl.format(s.start,"HH:mm"),l=S((m=r.slots)==null?void 0:m.eventContent,{event:s,isAllDay:!1,timeText:d},t.jsxs("span",{"data-rsv":"event-title",children:[d," ",s.title]})),c=h=>h.closest('[data-rsv="tg-col"]')??h;return t.jsxs("div",{"data-rsv":"event","data-all-day":"false","data-display":s.display,"data-event-id":s.id,class:C(...s.classNames),role:"button",tabIndex:0,style:`position:absolute;top:${e.topPct}%;height:${e.heightPct}%;left:${e.col*u}%;width:${u}%;--rsv-event-bg:${s.backgroundColor};--rsv-event-fg:${s.textColor}`,onClick:h=>{h.stopPropagation(),a.trigger("eventClick",{event:s}),s.url&&window.open(s.url,"_self")},onKeyDown:i?h=>G(h,{api:a,event:s,kind:"timeGrid",snap:r.snapDuration??r.slotDuration}):void 0,onPointerDown:i?h=>I(h,{api:a,event:s,model:n,columnEl:c(h.currentTarget),snap:r.snapDuration}):void 0,children:[i&&t.jsx("span",{"data-rsv":"resize-handle","data-edge":"start",onPointerDown:h=>I(h,{api:a,event:s,model:n,columnEl:c(h.currentTarget),snap:r.snapDuration,edge:"start"})}),l,i&&t.jsx("span",{"data-rsv":"resize-handle","data-edge":"end",onPointerDown:h=>I(h,{api:a,event:s,model:n,columnEl:c(h.currentTarget),snap:r.snapDuration,edge:"end"})})]})}function Q({api:a,model:e,options:n}){const r=n.locale??"en",s=o.getLocaleText(n.locale),i=new Intl.DateTimeFormat(r,{weekday:"long",day:"numeric",month:"long"});return e.isEmpty?t.jsx("div",{"data-rsv":"list",children:t.jsx("div",{"data-rsv":"list-empty",children:s.noEvents})}):t.jsx("div",{"data-rsv":"list",role:"list",children:e.days.map(u=>t.jsxs("div",{"data-rsv":"list-day","data-today":String(u.isToday),children:[t.jsx("div",{"data-rsv":"list-day-header",role:"heading","aria-level":3,children:i.format(o.dl.toDate(u.date))}),u.events.filter(d=>d.display!=="none").map(d=>{var c;const l=d.allDay?s.allDay:o.dl.format(d.start,"HH:mm");return t.jsxs("div",{"data-rsv":"list-item",role:"listitem",tabIndex:0,class:C(...d.classNames),"data-display":d.display,onClick:()=>{a.trigger("eventClick",{event:d}),d.url&&window.open(d.url,"_self")},children:[t.jsx("span",{"data-rsv":"list-item-time",children:l}),t.jsx("span",{"data-rsv":"list-item-dot",style:`--rsv-event-bg:${d.backgroundColor}`}),t.jsx("span",{"data-rsv":"list-item-title",children:S((c=n.slots)==null?void 0:c.eventContent,{event:d,isAllDay:d.allDay,timeText:l},d.title)})]},d.id)})]},o.dl.toISOString(u.date)))})}function Z({api:a,model:e,options:n}){const r=n.locale??"en",s=new Intl.DateTimeFormat(r,{month:"long"});return t.jsx("div",{"data-rsv":"multimonth",children:e.months.map(i=>t.jsxs("section",{"data-rsv":"mm-month",children:[t.jsx("header",{"data-rsv":"mm-title",children:s.format(o.dl.toDate(i.date))}),t.jsx(F,{api:a,model:i.dayGrid,options:n})]},o.dl.toISOString(i.date)))})}const R=1.6;function ee({api:a,model:e,options:n}){return t.jsxs("div",{"data-rsv":"timeline",children:[t.jsx("div",{"data-rsv":"tl-axis",role:"row",children:e.slots.map(r=>t.jsx("div",{"data-rsv":"tl-slot",style:`left:${r.leftPct}%`,children:r.label},r.leftPct))}),t.jsx("div",{"data-rsv":"tl-body",style:`height:${e.laneCount*R+.5}rem`,children:e.segs.map(r=>t.jsx(te,{api:a,seg:r,options:n},r.event.id))})]})}function te({api:a,seg:e,options:n}){var s;const{event:r}=e;return t.jsx("div",{"data-rsv":"event","data-event-id":r.id,role:"button",tabIndex:0,style:`position:absolute;left:${e.leftPct}%;width:${e.widthPct}%;top:${e.lane*R}rem;height:${R-.2}rem;--rsv-event-bg:${r.backgroundColor};--rsv-event-fg:${r.textColor}`,onClick:()=>a.trigger("eventClick",{event:r}),children:S((s=n.slots)==null?void 0:s.eventContent,{event:r,isAllDay:r.allDay,timeText:""},r.title)})}const De=1.6;function re({api:a,model:e,options:n}){return t.jsxs("div",{"data-rsv":"resource-timeline",children:[t.jsxs("div",{"data-rsv":"rt-header",role:"row",children:[t.jsx("div",{"data-rsv":"resource-area-header",children:n.locale==="es"?"Recursos":"Resources"}),t.jsx("div",{"data-rsv":"tl-axis",children:e.slots.map(r=>t.jsx("div",{"data-rsv":"tl-slot",style:`left:${r.leftPct}%`,children:r.label},r.leftPct))})]}),e.lanes.map(r=>{const s=r.laneCount*De+.4;return t.jsxs("div",{"data-rsv":"resource-row",role:"row",children:[t.jsxs("div",{"data-rsv":"resource-label",style:`padding-inline-start:${.5+r.row.depth*1}rem`,children:[r.row.hasChildren&&t.jsx("button",{type:"button","data-rsv":"resource-toggle","aria-expanded":r.row.expanded,onClick:()=>a.toggleResource(r.row.resource.id),children:r.row.expanded?"▾":"▸"}),t.jsx("span",{"data-rsv":"resource-title",children:r.row.resource.title})]}),t.jsx("div",{"data-rsv":"resource-lane",style:`height:${s}rem`,children:r.segs.map(i=>t.jsx(te,{api:a,seg:i,options:n},i.event.id))})]},r.row.resource.id)})]})}function ne({api:a,model:e,options:n}){const r=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`;return t.jsxs("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.columns.length}`,children:[t.jsxs("div",{"data-rsv":"tg-header",role:"row",children:[t.jsx("div",{"data-rsv":"tg-axis-corner"}),e.columns.map(s=>t.jsx("div",{"data-rsv":"tg-col-header",role:"columnheader",children:s.row.resource.title},s.row.resource.id))]}),t.jsxs("div",{"data-rsv":"tg-allday",role:"row",children:[t.jsx("div",{"data-rsv":"tg-axis-label",children:o.getLocaleText(n.locale).allDay}),e.columns.map(s=>t.jsx("div",{"data-rsv":"tg-allday-cell",children:s.allDayEvents.map(i=>t.jsx("div",{"data-rsv":"event","data-all-day":"true",style:`--rsv-event-bg:${i.backgroundColor}`,onClick:()=>a.trigger("eventClick",{event:i}),children:i.title},i.id))},s.row.resource.id))]}),t.jsxs("div",{"data-rsv":"tg-body",children:[t.jsx("div",{"data-rsv":"tg-axis",style:`height:${r}`,children:e.slots.map(s=>t.jsx("div",{"data-rsv":"tg-slot","data-major":String(s.isMajor),children:t.jsx("span",{"data-rsv":"tg-slot-label",children:s.label})},s.offsetMin))}),e.columns.map(s=>t.jsxs("div",{"data-rsv":"tg-col","data-rsv-resource-id":s.row.resource.id,style:`height:${r}`,children:[s.timedSegs.map(i=>{const u=100/i.colCount;return t.jsxs("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*u}%;width:${u}%;--rsv-event-bg:${i.event.backgroundColor};--rsv-event-fg:${i.event.textColor}`,onClick:d=>{d.stopPropagation(),a.trigger("eventClick",{event:i.event})},children:[o.dl.format(i.event.start,"HH:mm")," ",i.event.title]},i.event.id)}),e.nowTopPct!=null&&t.jsx("div",{"data-rsv":"now-indicator",style:`top:${e.nowTopPct}%`})]},s.row.resource.id))]})]})}function ae({api:a,model:e}){return t.jsxs("div",{"data-rsv":"resource-daygrid",style:`--rsv-rdg-cols:${e.columns.length}`,children:[t.jsx("div",{"data-rsv":"rdg-header",role:"row",children:e.columns.map(n=>t.jsx("div",{"data-rsv":"rdg-col-header",role:"columnheader",children:n.row.resource.title},n.row.resource.id))}),t.jsx("div",{"data-rsv":"rdg-body",role:"row",children:e.columns.map(n=>t.jsx("div",{"data-rsv":"rdg-col","data-rsv-resource-id":n.row.resource.id,children:n.events.map(r=>t.jsxs("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}`,onClick:()=>a.trigger("eventClick",{event:r}),children:[r.allDay?"":o.dl.format(r.start,"HH:mm")+" ",r.title]},r.id))},n.row.resource.id))})]})}function se({api:a,options:e}){var i;const n=a.viewModel.value,r=e.direction??o.getLocaleText(e.locale).direction,s=e.themeTokens?o.themeToStyle(e.themeTokens):void 0;return t.jsxs("div",{"data-rsv":"root",dir:r,"data-rsv-theme":e.theme,style:s,class:C((i=e.classNames)==null?void 0:i.root),children:[e.headerToolbar!==!1&&t.jsx(W,{api:a,title:n.title,activeView:n.type,options:e}),t.jsx("div",{"data-rsv":"view","data-view":n.type,children:n.dayGrid?t.jsx(F,{api:a,model:n.dayGrid,options:e}):n.timeGrid?t.jsx(J,{api:a,model:n.timeGrid,options:e}):n.list?t.jsx(Q,{api:a,model:n.list,options:e}):n.multiMonth?t.jsx(Z,{api:a,model:n.multiMonth,options:e}):n.resourceTimeGrid?t.jsx(ne,{api:a,model:n.resourceTimeGrid,options:e}):n.resourceDayGrid?t.jsx(ae,{api:a,model:n.resourceDayGrid,options:e}):n.resourceTimeline?t.jsx(re,{api:a,model:n.resourceTimeline,options:e}):n.timeline?t.jsx(ee,{api:a,model:n.timeline,options:e}):t.jsxs("div",{"data-rsv":"unsupported",children:['La vista "',n.type,'" se implementa en una fase posterior.']})})]})}function ke(a,e){const n=new o.CalendarApi(e);return O.render(O.h(se,{api:n,options:e}),a),{api:n,destroy(){O.render(null,a),n.destroy()}}}function Se(a,e="calendar.ics"){if(typeof document>"u")return;const n=o.eventsToICS(a),r=new Blob([n],{type:"text/calendar;charset=utf-8"}),s=URL.createObjectURL(r),i=document.createElement("a");i.href=s,i.download=e,document.body.appendChild(i),i.click(),i.remove(),URL.revokeObjectURL(s)}Object.defineProperty(exports,"dayGridPlugin",{enumerable:!0,get:()=>o.dayGridPlugin});Object.defineProperty(exports,"definePlugin",{enumerable:!0,get:()=>o.definePlugin});Object.defineProperty(exports,"defineTheme",{enumerable:!0,get:()=>o.defineTheme});Object.defineProperty(exports,"eventsToICS",{enumerable:!0,get:()=>o.eventsToICS});Object.defineProperty(exports,"listPlugin",{enumerable:!0,get:()=>o.listPlugin});Object.defineProperty(exports,"multiMonthPlugin",{enumerable:!0,get:()=>o.multiMonthPlugin});Object.defineProperty(exports,"parseICS",{enumerable:!0,get:()=>o.parseICS});Object.defineProperty(exports,"resourcePlugin",{enumerable:!0,get:()=>o.resourcePlugin});Object.defineProperty(exports,"themeToStyle",{enumerable:!0,get:()=>o.themeToStyle});Object.defineProperty(exports,"timeGridPlugin",{enumerable:!0,get:()=>o.timeGridPlugin});Object.defineProperty(exports,"timelinePlugin",{enumerable:!0,get:()=>o.timelinePlugin});exports.Calendar=se;exports.DayGridView=F;exports.ListView=Q;exports.MultiMonthView=Z;exports.ResourceDayGridView=ae;exports.ResourceTimeGridView=ne;exports.ResourceTimelineView=re;exports.TimeGridView=J;exports.TimelineView=ee;exports.Toolbar=W;exports.cx=C;exports.downloadICS=Se;exports.handleEventKeydown=G;exports.mount=ke;exports.renderSlot=S;exports.startEventDrag=I;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const K=require("preact"),d=require("@reservi/core"),a=require("preact/jsx-runtime");require("@preact/signals");const k=require("preact/hooks");function De(r){return{__rsvHost:!0,node:r}}function ne(r){return typeof r=="object"&&r!==null&&r.__rsvHost===!0}function E(r,e,t,n){if(!r)return t;const o=r(e);return o===void 0?t:ne(o)?n?a.jsx(ke,{bridge:n,node:o.node}):t:o}let Se=0;function ke({bridge:r,node:e}){const t=k.useRef("");t.current||(t.current=`rsv-host-${++Se}`);const n=k.useRef(null),o=k.useRef(e);o.current=e;const s=k.useRef(!1);return k.useLayoutEffect(()=>{const h=n.current;if(!h)return;const u=t.current;return s.current=!0,r.mount(u,h,o.current),()=>{s.current=!1,r.unmount(u)}},[]),k.useLayoutEffect(()=>{s.current&&r.update(t.current,e)}),a.jsx("div",{"data-rsv":"host",ref:n})}function $(...r){return r.filter(Boolean).join(" ")}const te=new WeakSet;function L(r,e,t){if(!r||!e)return;const n=r;te.has(n)||(te.add(n),e(Object.assign(t(),{el:n})))}function Me(r,e){if(!r.length)return null;const t=[...r].sort((o,s)=>o.breakpoint-s.breakpoint);let n=t[0].view;for(const o of t)e>=o.breakpoint&&(n=o.view);return n}const V={prev:"‹",next:"›"},Ce=new Set(["","title","today","prev","next"]),Te=/month|year/i,G=r=>String(r).padStart(2,"0");function Ee(){return a.jsxs("svg",{"data-rsv":"title-icon",width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor","stroke-width":"1.3","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",children:[a.jsx("rect",{x:"1",y:"2.5",width:"12",height:"10.5",rx:"1.5"}),a.jsx("line",{x1:"1",y1:"5.5",x2:"13",y2:"5.5"}),a.jsx("line",{x1:"4.5",y1:"1",x2:"4.5",y2:"3.5"}),a.jsx("line",{x1:"9.5",y1:"1",x2:"9.5",y2:"3.5"})]})}function $e(r){var t;if((t=r.views)!=null&&t.length)return r.views;const e=r.headerToolbar;return e?[e.start,e.center,e.end].filter(n=>!!n).flatMap(n=>n.split(/\s+/)).flatMap(n=>n.split(",")).filter(n=>!Ce.has(n)):[]}function ae({api:r,title:e,activeView:t,options:n}){var H,z,A,J,Q;const o=d.getLocaleText(n.locale),s=(z=(H=n.slots)==null?void 0:H.toolbarStart)==null?void 0:z.call(H),h=(J=(A=n.slots)==null?void 0:A.toolbarEnd)==null?void 0:J.call(A),u=$e(n),v=Te.test(t),c=n.firstDay??o.firstDay,l=k.useRef(null),[y,f]=k.useState(!1),b=d.dl.toDate(r.getDate()),x=d.dl.toDate(n.now?d.dl.from(n.now):d.dl.now()),[j,m]=k.useState(b.getFullYear()),[D,i]=k.useState(b.getMonth()),w=new Intl.DateTimeFormat(n.locale,{month:"short"}),S=new Intl.DateTimeFormat(n.locale,{month:"long"}),p=new Intl.DateTimeFormat(n.locale,{weekday:"short"}),M=Array.from({length:12},(g,C)=>w.format(new Date(2020,C,1))),T=()=>{const g=d.dl.toDate(r.getDate());m(g.getFullYear()),i(g.getMonth()),f(!0)},R=g=>{const C=j*12+D+g;m(Math.floor(C/12)),i((C%12+12)%12)},P=g=>{r.gotoDate(g),f(!1)};k.useEffect(()=>{const g=O=>{(O.ctrlKey||O.metaKey)&&(O.key==="m"||O.key==="M")?(O.preventDefault(),T()):O.key==="Escape"&&f(!1)},C=O=>{l.current&&!l.current.contains(O.target)&&f(!1)};return document.addEventListener("keydown",g),document.addEventListener("mousedown",C),()=>{document.removeEventListener("keydown",g),document.removeEventListener("mousedown",C)}},[]);const X=(()=>{if(v)return{cells:[],dows:[]};const g=d.dl.from(`${j}-${G(D+1)}-01`),C=(d.dl.dayOfWeek(g)-c+7)%7,O=d.dl.subtract(g,{days:C}),Z=Array.from({length:42},(ee,pe)=>d.dl.toDate(d.dl.add(O,{days:pe}))),je=Z.slice(0,7).map(ee=>p.format(ee));return{cells:Z,dows:je}})();return a.jsxs("div",{"data-rsv":"toolbar-wrap",class:$((Q=n.classNames)==null?void 0:Q.toolbar),ref:l,children:[a.jsxs("div",{"data-rsv":"toolbar",children:[a.jsx("div",{"data-rsv":"toolbar-section","data-rsv-area":"start",children:s}),a.jsxs("div",{"data-rsv":"toolbar-section","data-rsv-area":"nav",children:[a.jsx("button",{type:"button","data-rsv":"button",title:o.todayHint,"aria-label":o.todayHint,onClick:()=>r.today(),children:o.today}),a.jsx("button",{type:"button","data-rsv":"button","data-rsv-nav":"prev",title:o.prevHint,"aria-label":o.prevHint,onClick:()=>r.prev(),children:V.prev}),a.jsxs("div",{"data-rsv":"datepicker-anchor",children:[a.jsxs("button",{type:"button","data-rsv":"title","aria-haspopup":"dialog","aria-expanded":y,title:`${e} · Ctrl+M`,onClick:()=>y?f(!1):T(),children:[a.jsx(Ee,{}),e]}),y&&a.jsxs("div",{"data-rsv":"datepicker","data-rsv-mode":v?"month":"day",role:"dialog","aria-label":e,children:[a.jsxs("div",{"data-rsv":"dp-head",children:[a.jsx("button",{type:"button","data-rsv":"dp-nav","aria-label":o.prev,onClick:()=>v?m(g=>g-1):R(-1),children:V.prev}),a.jsx("span",{"data-rsv":"dp-label",children:v?j:`${S.format(new Date(j,D,1))} ${j}`}),a.jsx("button",{type:"button","data-rsv":"dp-nav","aria-label":o.next,onClick:()=>v?m(g=>g+1):R(1),children:V.next})]}),v?a.jsx("div",{"data-rsv":"dp-grid",children:M.map((g,C)=>a.jsx("button",{type:"button","data-rsv":"dp-month","data-active":String(j===b.getFullYear()&&C===b.getMonth()),"data-today":String(j===x.getFullYear()&&C===x.getMonth()),onClick:()=>P(`${j}-${G(C+1)}-01`),children:g},g))}):a.jsxs("div",{"data-rsv":"dp-days",children:[X.dows.map((g,C)=>a.jsx("div",{"data-rsv":"dp-dow",children:g},`dow-${C}`)),X.cells.map(g=>{const C=`${g.getFullYear()}-${G(g.getMonth()+1)}-${G(g.getDate())}`;return a.jsx("button",{type:"button","data-rsv":"dp-day","data-other":String(g.getMonth()!==D),"data-active":String(g.getFullYear()===b.getFullYear()&&g.getMonth()===b.getMonth()&&g.getDate()===b.getDate()),"data-today":String(g.getFullYear()===x.getFullYear()&&g.getMonth()===x.getMonth()&&g.getDate()===x.getDate()),onClick:()=>P(C),children:g.getDate()},C)})]})]})]}),a.jsx("button",{type:"button","data-rsv":"button","data-rsv-nav":"next",title:o.nextHint,"aria-label":o.nextHint,onClick:()=>r.next(),children:V.next})]}),a.jsxs("div",{"data-rsv":"toolbar-section","data-rsv-area":"end",children:[h,n.onAddClick&&a.jsxs("button",{type:"button","data-rsv":"button","data-rsv-variant":"primary",onClick:n.onAddClick,children:[a.jsx("span",{"data-rsv":"add-icon","aria-hidden":"true",children:"+"}),n.addButtonText]})]})]}),u.length>0&&a.jsx("div",{"data-rsv":"toolbar-views",role:"tablist",children:u.map(g=>a.jsx("button",{type:"button","data-rsv":"view-tab",role:"tab","aria-selected":g===t,"data-active":String(g===t),title:o.viewHint(o.views[g]??g),onClick:()=>r.changeView(g),children:o.views[g]??g},g))})]})}function _(r){return r<10?`0${r}`:String(r)}function se(r){const e=(Math.round(r)%1440+1440)%1440;return`${_(Math.floor(e/60))}:${_(e%60)}`}function oe(r){const e=Math.max(0,Math.round(r));return`${_(Math.floor(e/60))}:${_(e%60)}:00`}function I(r,e){if(!e)return null;const t=new Intl.DateTimeFormat(r,e);return n=>t.format(n)}function F(r,e,t){if(e===!1)return null;const n=new Intl.DateTimeFormat(r,e??t);return o=>n.format(o)}function de(r,e){r.trigger("navLinkDay",{date:e});const t=r.hasView("timeGridDay")?"timeGridDay":r.hasView("dayGridDay")?"dayGridDay":null;t&&(r.gotoDate(d.dl.toISOString(e)),r.changeView(t))}const N=1440,Pe={moveLeft:["ArrowLeft"],moveRight:["ArrowRight"],moveUp:["ArrowUp"],moveDown:["ArrowDown"],activate:["Enter"," "]};function Oe(r,e){const t=Object.entries(Pe);for(const[n,o]of t)if(((e==null?void 0:e[n])??o).includes(r))return n;return null}function W(r,e){const{api:t,event:n,kind:o}=e,s=d.timeStringToMinutes(e.snap??"00:30"),h=Oe(r.key,e.shortcuts);if(!h)return;if(h==="activate"){r.preventDefault(),t.trigger("eventClick",{event:n});return}let u=0;switch(h){case"moveLeft":u=-N;break;case"moveRight":u=N;break;case"moveUp":u=o==="timeGrid"?-s:-N*7;break;case"moveDown":u=o==="timeGrid"?s:N*7;break}r.preventDefault();const v=d.computeDrop(n.start,n.end,u,d.dl);if(t.moveEvent(n.id,v.start,v.end)){const c=t.getEventById(n.id);c&&t.trigger("eventDrop",{event:c})}}const Le=1440,Re=4;function ie(r,e){var n;const t=document.elementFromPoint(r,e);return((n=t==null?void 0:t.closest('[data-rsv="day"]'))==null?void 0:n.dataset.date)??null}function Fe(r,e){r.stopPropagation();const{api:t,event:n,sourceDate:o}=e,s=r.clientX,h=r.clientY;let u=!1;const v=l=>{!u&&Math.hypot(l.clientX-s,l.clientY-h)>Re&&(u=!0,document.body.style.cursor="grabbing")},c=l=>{var x;if(document.removeEventListener("pointermove",v),document.removeEventListener("pointerup",c),document.body.style.cursor="",!u)return;(x=e.onMoved)==null||x.call(e);const y=ie(l.clientX,l.clientY);if(!y)return;const f=d.dl.diff(d.dl.from(o),d.dl.from(y),"day");if(f===0)return;const b=d.computeDrop(n.start,n.end,f*Le,d.dl);if(t.moveEvent(n.id,b.start,b.end)){const j=t.getEventById(n.id);j&&t.trigger("eventDrop",{event:j})}};document.addEventListener("pointermove",v),document.addEventListener("pointerup",c)}function Ie(r,e){if(r.target.closest('[data-rsv="event"], [data-rsv="more-anchor"], [data-nav-link="true"]'))return;const{api:n}=e;let o=e.startDate,s=!1;const h=v=>{const c=ie(v.clientX,v.clientY);c&&c!==e.startDate&&(s=!0),c&&(o=c)},u=()=>{var f;if(document.removeEventListener("pointermove",h),document.removeEventListener("pointerup",u),!s)return;(f=e.onRangeSelect)==null||f.call(e);const v=d.dl.from(e.startDate),c=d.dl.from(o),[l,y]=d.dl.isBefore(v,c)?[v,c]:[c,v];n.select(d.dl.toISOString(l),d.dl.toISOString(d.dl.add(y,{days:1})))};document.addEventListener("pointermove",h),document.addEventListener("pointerup",u)}function q({api:r,model:e,options:t}){var v;const n=t.locale??"en",o={type:r.getView().type},s=F(n,t.dayHeaderFormat,{weekday:"short"}),h=((v=e.weeks[0])==null?void 0:v.days)??[],u=t.weekNumbers===!0;return a.jsxs("div",{"data-rsv":"daygrid","data-weeknumbers":String(u),style:`--rsv-cols:${e.columnCount}`,children:[a.jsxs("div",{"data-rsv":"daygrid-header",role:"row",children:[u&&a.jsx("div",{"data-rsv":"daygrid-weeknum-header",role:"columnheader"}),h.map(c=>{var b,x;const l=d.dl.toDate(c.date),y=s?s(l):"",f={date:l,text:y,dayOfWeek:c.dayOfWeek,dayNumber:d.dl.dayOfMonth(c.date),isToday:c.isToday,view:o};return a.jsx("div",{"data-rsv":"daygrid-dow",role:"columnheader","data-dow":String(c.dayOfWeek),class:$((b=t.classNames)==null?void 0:b.dayHeader),ref:j=>{var m;return L(j,(m=t.hooks)==null?void 0:m.dayHeaderDidMount,()=>f)},children:E((x=t.slots)==null?void 0:x.dayHeaderContent,f,y,t.hostBridge)},c.dayOfWeek)})]}),e.weeks.map((c,l)=>a.jsxs("div",{"data-rsv":"daygrid-week",role:"row",children:[u&&a.jsx("div",{"data-rsv":"daygrid-weeknum",role:"rowheader",children:c.weekNumber}),c.days.map(y=>a.jsx(He,{api:r,cell:y,options:t,view:o},d.dl.toISOString(y.date)))]},l))]})}function He({api:r,cell:e,options:t,view:n}){var j,m,D;const o=d.dl.toDate(e.date),s=d.dl.dayOfMonth(e.date),h=t.navLinks?a.jsx("a",{"data-rsv":"day-number","data-nav-link":"true",role:"link",tabIndex:0,title:d.getLocaleText(t.locale).navLinkHint(new Intl.DateTimeFormat(t.locale,{dateStyle:"long"}).format(o)),onClick:i=>{i.stopPropagation(),de(r,e.date)},children:s}):a.jsx("span",{"data-rsv":"day-number",children:s}),u={date:o,dayNumber:s,isToday:e.isToday,isOther:e.isOther,view:n},v=E((j=t.slots)==null?void 0:j.dayCellContent,u,h,t.hostBridge),[c,l]=k.useState(!1),y=d.dl.toISOString(e.date),f=k.useRef(!1),b=()=>{if(f.current){f.current=!1;return}r.trigger("dateClick",{date:e.date}),t.selectable&&r.select(y,d.dl.toISOString(d.dl.add(e.date,{days:1})))},x=i=>{i.stopPropagation(),l(!0),r.trigger("moreLinkClick",{date:e.date,allEvents:[...e.events,...e.hiddenEvents],hiddenEvents:e.hiddenEvents})};return a.jsxs("div",{"data-rsv":"day",role:"gridcell","data-date":y,"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:$((m=t.classNames)==null?void 0:m.day),ref:i=>{var w;return L(i,(w=t.hooks)==null?void 0:w.dayCellDidMount,()=>u)},onClick:b,onPointerDown:t.selectable?i=>Ie(i,{api:r,startDate:y,onRangeSelect:()=>{f.current=!0}}):void 0,children:[v,e.events.filter(i=>i.display!=="none").map(i=>a.jsx(le,{api:r,event:i,options:t,view:n,sourceDate:y},i.id)),e.moreCount>0&&a.jsxs("div",{"data-rsv":"more-anchor",children:[a.jsx("button",{type:"button","data-rsv":"more-link",onClick:x,children:E((D=t.slots)==null?void 0:D.moreLinkContent,{date:o,moreCount:e.moreCount,allEvents:[...e.events,...e.hiddenEvents],hiddenEvents:e.hiddenEvents,view:n},d.getLocaleText(t.locale).more(e.moreCount),t.hostBridge)}),c&&a.jsx(Ae,{api:r,cell:e,options:t,view:n,onClose:()=>l(!1)})]})]})}function Ae({api:r,cell:e,options:t,view:n,onClose:o}){const s=k.useRef(null),h=new Intl.DateTimeFormat(t.locale??"en",{weekday:"long",day:"numeric",month:"long"}),u=[...e.events,...e.hiddenEvents].filter(v=>v.display!=="none");return k.useEffect(()=>{const v=l=>{s.current&&!s.current.contains(l.target)&&o()},c=l=>{l.key==="Escape"&&o()};return document.addEventListener("mousedown",v),document.addEventListener("keydown",c),()=>{document.removeEventListener("mousedown",v),document.removeEventListener("keydown",c)}},[o]),a.jsxs("div",{"data-rsv":"more-popover",role:"dialog",ref:s,onClick:v=>v.stopPropagation(),children:[a.jsxs("div",{"data-rsv":"more-popover-header",children:[a.jsx("span",{"data-rsv":"more-popover-title",children:h.format(d.dl.toDate(e.date))}),a.jsx("button",{type:"button","data-rsv":"more-popover-close","aria-label":"✕",onClick:o,children:"✕"})]}),a.jsx("div",{"data-rsv":"more-popover-body",children:u.map(v=>a.jsx(le,{api:r,event:v,options:t,view:n,sourceDate:d.dl.toISOString(e.date)},v.id))})]})}function le({api:r,event:e,options:t,view:n,sourceDate:o}){var f,b;const s=t.editable===!0&&e.editable!==!1,h=r.selectedEventIds.value.has(e.id),u=k.useRef(!1),v=I(t.locale??"en",t.eventTimeFormat),c=e.allDay?"":v?v(d.dl.toDate(e.start)):d.dl.format(e.start,"HH:mm"),l={event:e,isAllDay:e.allDay,timeText:c,view:n},y=E((f=t.slots)==null?void 0:f.eventContent,l,a.jsxs("span",{"data-rsv":"event-title",children:[c?`${c} `:"",e.title]}),t.hostBridge);return a.jsx("div",{"data-rsv":"event",role:"button",tabIndex:0,class:$((b=t.classNames)==null?void 0:b.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),ref:x=>{var j;return L(x,(j=t.hooks)==null?void 0:j.eventDidMount,()=>l)},style:`--rsv-event-bg:${e.backgroundColor};--rsv-event-fg:${e.textColor};--rsv-event-border:${e.borderColor}`,onClick:x=>{if(x.stopPropagation(),u.current){u.current=!1;return}if(x.ctrlKey||x.metaKey){r.toggleEventSelection(e.id);return}r.trigger("eventClick",{event:e,el:x.currentTarget}),e.url&&window.open(e.url,"_self")},onPointerDown:s?x=>Fe(x,{api:r,event:e,sourceDate:o,onMoved:()=>{u.current=!0}}):void 0,onKeyDown:s?x=>W(x,{api:r,event:e,kind:"dayGrid",shortcuts:t.keyboardShortcuts}):void 0,children:y})}const Y=40,re=16,Ve={update(){},getScrolled:()=>0,stop(){}};function ce(r){if(!r)return Ve;let e=0,t=0,n=0;const o=()=>{const s=r.getBoundingClientRect();let h=0;if(e<s.top+Y?h=-re*(1-Math.max(0,e-s.top)/Y):e>s.bottom-Y&&(h=re*(1-Math.max(0,s.bottom-e)/Y)),h!==0){const u=r.scrollTop;r.scrollTop+=h,t+=r.scrollTop-u}n=requestAnimationFrame(o)};return n=requestAnimationFrame(o),{update(s){e=s},getScrolled:()=>t,stop(){cancelAnimationFrame(n)}}}function ue(r){return r.closest('[data-rsv="tg-body"]')}function B(r,e){r.preventDefault(),r.stopPropagation();const{api:t,event:n,model:o,columnEl:s,snap:h="00:15",edge:u}=e,v=s.getBoundingClientRect(),c=o.maxMinutes-o.minMinutes,l=v.height===0?0:v.height/c,y=r.clientY,f=ce(ue(s));f.update(r.clientY);const b=j=>{f.update(j.clientY)},x=j=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",x),f.stop();const m=d.pxToSnappedMinutes(j.clientY-y+f.getScrolled(),l,h);if(m===0)return;const D=u?d.computeResize(n.start,n.end,u,m,d.dl):d.computeDrop(n.start,n.end,m,d.dl);if(t.moveEvent(n.id,D.start,D.end)){const i=t.getEventById(n.id);i&&t.trigger(u?"eventResize":"eventDrop",{event:i})}};document.addEventListener("pointermove",b),document.addEventListener("pointerup",x)}function Ge(r,e){if(r.target.closest('[data-rsv="event"]'))return;const{api:t,date:n,model:o,columnEl:s,snap:h="00:15"}=e,u=o.maxMinutes-o.minMinutes,v=d.timeStringToMinutes(h)||15,c=m=>{const D=s.getBoundingClientRect(),i=D.height===0?0:D.height/u,w=o.minMinutes+(i===0?0:(m-D.top)/i),S=Math.max(o.minMinutes,Math.min(o.maxMinutes,w));return Math.round(S/v)*v},l=c(r.clientY);let y=l,f=!1;const b=ce(ue(s));b.update(r.clientY);const x=m=>{var i;b.update(m.clientY);const D=c(m.clientY);D!==l&&(f=!0),y=D,f&&((i=e.onPreview)==null||i.call(e,{startMin:Math.min(l,y),endMin:Math.max(l,y)}))},j=()=>{var w;if(document.removeEventListener("pointermove",x),document.removeEventListener("pointerup",j),b.stop(),(w=e.onPreview)==null||w.call(e,null),!f)return;const m=Math.min(l,y),D=Math.max(l,y),i=d.dl.startOf(n,"day");t.select(d.dl.toISOString(d.dl.add(i,{minutes:m})),d.dl.toISOString(d.dl.add(i,{minutes:D})))};document.addEventListener("pointermove",x),document.addEventListener("pointerup",j)}function ve({api:r,model:e,options:t}){const n=t.locale??"en",o={type:r.getView().type},s=F(n,t.dayHeaderFormat,{weekday:"short",day:"numeric"}),h=I(n,t.slotLabelFormat),u=t.allDaySlot!==!1,v=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`,c=e.maxMinutes-e.minMinutes,l=d.timeStringToMinutes(t.snapDuration??t.slotDuration??"00:15")||15,y=k.useRef(null),f=k.useRef(e);f.current=e;const[b,x]=k.useState(null);k.useEffect(()=>{const i=y.current;if(!i)return;const w={scrollToTime(S){const p=f.current,M=p.maxMinutes-p.minMinutes,T=i.scrollHeight;if(M<=0||T<=0)return;const P=(Math.max(p.minMinutes,Math.min(p.maxMinutes,d.timeStringToMinutes(S)))-p.minMinutes)/M*T;i.scrollTop=Math.max(0,Math.min(P,T-i.clientHeight))},getScrollTime(){const S=f.current,p=S.maxMinutes-S.minMinutes,M=i.scrollHeight;return p<=0||M<=0?null:oe(S.minMinutes+i.scrollTop/M*p)}};return r.setViewAdapter(w),()=>r.setViewAdapter(null)},[r]);const j=t.scrollTime;k.useEffect(()=>{if(!j)return;let i=0;const w=requestAnimationFrame(()=>{i=requestAnimationFrame(()=>r.scrollToTime(j))});return()=>{cancelAnimationFrame(w),cancelAnimationFrame(i)}},[r]);const m=(i,w)=>{const S=i.getBoundingClientRect();if(S.height===0||c<=0)return e.minMinutes;const p=(w-S.top)/S.height*c,M=Math.floor(Math.max(0,Math.min(c,p))/l)*l;return e.minMinutes+M},D=e.days[0];return a.jsxs("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.days.length}`,children:[a.jsxs("div",{"data-rsv":"tg-header",role:"row",children:[a.jsx("div",{"data-rsv":"tg-axis-corner"}),e.days.map(i=>{var M,T;const w=d.dl.toDate(i.date),S=s?s(w):"",p={date:w,text:S,dayOfWeek:d.dl.dayOfWeek(i.date),dayNumber:d.dl.dayOfMonth(i.date),isToday:i.isToday,view:o};return a.jsx("div",{"data-rsv":"tg-col-header",role:"columnheader","data-today":String(i.isToday),"data-date":d.dl.toISOString(i.date),"data-nav-link":t.navLinks?"true":void 0,class:$((M=t.classNames)==null?void 0:M.dayHeader),ref:R=>{var P;return L(R,(P=t.hooks)==null?void 0:P.dayHeaderDidMount,()=>p)},onClick:t.navLinks?()=>de(r,i.date):void 0,children:E((T=t.slots)==null?void 0:T.dayHeaderContent,p,S,t.hostBridge)},d.dl.toISOString(i.date))})]}),u&&a.jsxs("div",{"data-rsv":"tg-allday",role:"row",children:[a.jsx("div",{"data-rsv":"tg-axis-label",children:d.getLocaleText(t.locale).allDay}),e.days.map(i=>a.jsx("div",{"data-rsv":"tg-allday-cell",onClick:()=>r.trigger("dateClick",{date:i.date,allDay:!0}),children:i.allDayEvents.filter(w=>w.display!=="none").map(w=>{var S,p;return a.jsx("div",{"data-rsv":"event","data-all-day":"true","data-event-id":w.id,class:$((S=t.classNames)==null?void 0:S.event,...w.classNames),"data-display":w.display,style:`--rsv-event-bg:${w.backgroundColor};--rsv-event-fg:${w.textColor};--rsv-event-border:${w.borderColor}`,onClick:M=>{M.stopPropagation(),r.trigger("eventClick",{event:w,el:M.currentTarget}),w.url&&window.open(w.url,"_self")},children:E((p=t.slots)==null?void 0:p.eventContent,{event:w,isAllDay:!0,timeText:"",view:o},w.title,t.hostBridge)},w.id)})},d.dl.toISOString(i.date)))]}),a.jsxs("div",{"data-rsv":"tg-body",ref:y,children:[a.jsx("div",{"data-rsv":"tg-axis",style:`height:${v}`,children:e.slots.map(i=>{var M,T;const w=e.minMinutes+i.offsetMin;let S="";i.isMajor&&(S=h&&D?h(d.dl.toDate(d.dl.add(d.dl.startOf(D.date,"day"),{minutes:w}))):i.label||se(w));const p={text:S,minutes:w,isMajor:i.isMajor,view:o};return a.jsx("div",{"data-rsv":"tg-slot","data-major":String(i.isMajor),children:a.jsx("span",{"data-rsv":"tg-slot-label",class:$((M=t.classNames)==null?void 0:M.slotLabel),ref:R=>{var P;return L(R,(P=t.hooks)==null?void 0:P.slotLabelDidMount,()=>p)},children:E((T=t.slots)==null?void 0:T.slotLabelContent,p,S,t.hostBridge)})},i.offsetMin)})}),e.days.map((i,w)=>{var S;return a.jsxs("div",{"data-rsv":"tg-col","data-today":String(i.isToday),"data-date":d.dl.toISOString(i.date),style:`height:${v}`,onClick:p=>{const M=m(p.currentTarget,p.clientY);r.trigger("dateClick",{date:d.dl.add(d.dl.startOf(i.date,"day"),{minutes:M}),allDay:!1})},onPointerDown:t.selectable?p=>Ge(p,{api:r,date:i.date,model:e,columnEl:p.currentTarget,snap:t.snapDuration??t.slotDuration,onPreview:t.selectMirror?M=>x(M?{dayIndex:w,startMin:M.startMin,endMin:M.endMin}:null):void 0}):void 0,children:[t.businessHours&&!i.businessPct&&a.jsx("div",{"data-rsv":"tg-nonbusiness",style:"top:0;height:100%"}),i.businessPct&&a.jsxs(a.Fragment,{children:[a.jsx("div",{"data-rsv":"tg-nonbusiness",style:`top:0;height:${i.businessPct.topPct}%`}),a.jsx("div",{"data-rsv":"tg-nonbusiness",style:`top:${i.businessPct.bottomPct}%;height:${100-i.businessPct.bottomPct}%`})]}),(b==null?void 0:b.dayIndex)===w&&c>0&&a.jsx("div",{"data-rsv":"select-mirror",style:`top:${(b.startMin-e.minMinutes)/c*100}%;height:${(b.endMin-b.startMin)/c*100}%`}),i.timedSegs.filter(p=>p.event.display!=="none").map(p=>a.jsx(Ne,{api:r,seg:p,model:e,options:t,view:o},p.event.id)),((S=e.nowIndicator)==null?void 0:S.dayIndex)===w&&a.jsx("div",{"data-rsv":"now-indicator",style:`top:${e.nowIndicator.topPct}%`})]},d.dl.toISOString(i.date))})]})]})}function Ne({api:r,seg:e,model:t,options:n,view:o}){var x,j;const{event:s}=e,h=n.editable===!0&&s.editable!==!1,u=r.selectedEventIds.value.has(s.id),v=100/e.colCount,c=I(n.locale??"en",n.eventTimeFormat),l=c?c(d.dl.toDate(s.start)):d.dl.format(s.start,"HH:mm"),y={event:s,isAllDay:!1,timeText:l,view:o},f=E((x=n.slots)==null?void 0:x.eventContent,y,a.jsxs("span",{"data-rsv":"event-title",children:[l," ",s.title]}),n.hostBridge),b=m=>m.closest('[data-rsv="tg-col"]')??m;return a.jsxs("div",{"data-rsv":"event","data-all-day":"false","data-display":s.display,"data-event-id":s.id,"data-rsv-selected":String(u),class:$((j=n.classNames)==null?void 0:j.event,...s.classNames),role:"button",tabIndex:0,ref:m=>{var D;return L(m,(D=n.hooks)==null?void 0:D.eventDidMount,()=>y)},style:`position:absolute;top:${e.topPct}%;height:${e.heightPct}%;left:${e.col*v}%;width:${v}%;--rsv-event-bg:${s.backgroundColor};--rsv-event-fg:${s.textColor};--rsv-event-border:${s.borderColor}`,onClick:m=>{if(m.stopPropagation(),m.ctrlKey||m.metaKey){r.toggleEventSelection(s.id);return}r.trigger("eventClick",{event:s,el:m.currentTarget}),s.url&&window.open(s.url,"_self")},onKeyDown:h?m=>W(m,{api:r,event:s,kind:"timeGrid",snap:n.snapDuration??n.slotDuration,shortcuts:n.keyboardShortcuts}):void 0,onPointerDown:h?m=>B(m,{api:r,event:s,model:t,columnEl:b(m.currentTarget),snap:n.snapDuration}):void 0,children:[h&&a.jsx("span",{"data-rsv":"resize-handle","data-edge":"start",onPointerDown:m=>B(m,{api:r,event:s,model:t,columnEl:b(m.currentTarget),snap:n.snapDuration,edge:"start"})}),f,h&&a.jsx("span",{"data-rsv":"resize-handle","data-edge":"end",onPointerDown:m=>B(m,{api:r,event:s,model:t,columnEl:b(m.currentTarget),snap:n.snapDuration,edge:"end"})})]})}function me({api:r,model:e,options:t}){const n=t.locale??"en",o={type:r.getView().type},s=d.getLocaleText(t.locale),h=F(n,t.listDayFormat,{weekday:"long",day:"numeric",month:"long"}),u=t.listDaySideFormat?F(n,t.listDaySideFormat,{month:"short",day:"2-digit"}):null,v=I(n,t.eventTimeFormat);return e.isEmpty?a.jsx("div",{"data-rsv":"list",children:a.jsx("div",{"data-rsv":"list-empty",children:s.noEvents})}):a.jsx("div",{"data-rsv":"list",role:"list",children:e.days.map(c=>a.jsxs("div",{"data-rsv":"list-day","data-today":String(c.isToday),children:[a.jsxs("div",{"data-rsv":"list-day-header",role:"heading","aria-level":3,children:[a.jsx("span",{"data-rsv":"list-day-text",children:h?h(d.dl.toDate(c.date)):""}),u&&a.jsx("span",{"data-rsv":"list-day-side-text",children:u(d.dl.toDate(c.date))})]}),c.events.filter(l=>l.display!=="none").map(l=>{var b,x;const y=l.allDay?s.allDay:v?v(d.dl.toDate(l.start)):d.dl.format(l.start,"HH:mm"),f={event:l,isAllDay:l.allDay,timeText:y,view:o};return a.jsxs("div",{"data-rsv":"list-item",role:"listitem",tabIndex:0,"data-event-id":l.id,class:$((b=t.classNames)==null?void 0:b.event,...l.classNames),"data-display":l.display,ref:j=>{var m;return L(j,(m=t.hooks)==null?void 0:m.eventDidMount,()=>f)},style:`--rsv-event-bg:${l.backgroundColor};--rsv-event-fg:${l.textColor};--rsv-event-border:${l.borderColor}`,onClick:j=>{r.trigger("eventClick",{event:l,el:j.currentTarget}),l.url&&window.open(l.url,"_self")},children:[a.jsx("span",{"data-rsv":"list-item-time",children:y}),a.jsx("span",{"data-rsv":"list-item-dot",style:`--rsv-event-bg:${l.backgroundColor}`}),a.jsx("div",{"data-rsv":"list-item-title",children:E((x=t.slots)==null?void 0:x.eventContent,f,l.title,t.hostBridge)})]},l.id)})]},d.dl.toISOString(c.date)))})}function he({api:r,model:e,options:t}){const n=t.locale??"en",o=new Intl.DateTimeFormat(n,{month:"long"});return a.jsx("div",{"data-rsv":"multimonth",children:e.months.map(s=>a.jsxs("section",{"data-rsv":"mm-month",children:[a.jsx("header",{"data-rsv":"mm-title",children:o.format(d.dl.toDate(s.date))}),a.jsx(q,{api:r,model:s.dayGrid,options:t})]},d.dl.toISOString(s.date)))})}const U=1.6;function ge({api:r,model:e,options:t}){return a.jsxs("div",{"data-rsv":"timeline",children:[a.jsx("div",{"data-rsv":"tl-axis",role:"row",children:e.slots.map(n=>a.jsx("div",{"data-rsv":"tl-slot",style:`left:${n.leftPct}%`,children:n.label},n.leftPct))}),a.jsx("div",{"data-rsv":"tl-body",style:`height:${e.laneCount*U+.5}rem`,children:e.segs.map(n=>a.jsx(ye,{api:r,seg:n,options:t},n.event.id))})]})}function ye({api:r,seg:e,options:t}){var o;const{event:n}=e;return a.jsx("div",{"data-rsv":"event","data-event-id":n.id,role:"button",tabIndex:0,style:`position:absolute;left:${e.leftPct}%;width:${e.widthPct}%;top:${e.lane*U}rem;height:${U-.2}rem;--rsv-event-bg:${n.backgroundColor};--rsv-event-fg:${n.textColor};--rsv-event-border:${n.borderColor}`,onClick:s=>r.trigger("eventClick",{event:n,el:s.currentTarget}),children:E((o=t.slots)==null?void 0:o.eventContent,{event:n,isAllDay:n.allDay,timeText:"",view:{type:r.getView().type}},n.title,t.hostBridge)})}const Ye=1.6;function fe({api:r,model:e,options:t}){return a.jsxs("div",{"data-rsv":"resource-timeline",children:[a.jsxs("div",{"data-rsv":"rt-header",role:"row",children:[a.jsx("div",{"data-rsv":"resource-area-header",children:t.locale==="es"?"Recursos":"Resources"}),a.jsx("div",{"data-rsv":"tl-axis",children:e.slots.map(n=>a.jsx("div",{"data-rsv":"tl-slot",style:`left:${n.leftPct}%`,children:n.label},n.leftPct))})]}),e.lanes.map(n=>{const o=n.laneCount*Ye+.4;return a.jsxs("div",{"data-rsv":"resource-row",role:"row",children:[a.jsxs("div",{"data-rsv":"resource-label",style:`padding-inline-start:${.5+n.row.depth*1}rem`,children:[n.row.hasChildren&&a.jsx("button",{type:"button","data-rsv":"resource-toggle","aria-expanded":n.row.expanded,onClick:()=>r.toggleResource(n.row.resource.id),children:n.row.expanded?"▾":"▸"}),a.jsx("span",{"data-rsv":"resource-title",children:n.row.resource.title})]}),a.jsx("div",{"data-rsv":"resource-lane",style:`height:${o}rem`,children:n.segs.map(s=>a.jsx(ye,{api:r,seg:s,options:t},s.event.id))})]},n.row.resource.id)})]})}function xe({api:r,model:e,options:t}){const n=`calc(var(--spacing-rsv-slot, 2.5rem) * ${e.slots.length})`;return a.jsxs("div",{"data-rsv":"timegrid",style:`--rsv-tg-days:${e.columns.length}`,children:[a.jsxs("div",{"data-rsv":"tg-header",role:"row",children:[a.jsx("div",{"data-rsv":"tg-axis-corner"}),e.columns.map(o=>a.jsx("div",{"data-rsv":"tg-col-header",role:"columnheader",children:o.row.resource.title},o.row.resource.id))]}),a.jsxs("div",{"data-rsv":"tg-allday",role:"row",children:[a.jsx("div",{"data-rsv":"tg-axis-label",children:d.getLocaleText(t.locale).allDay}),e.columns.map(o=>a.jsx("div",{"data-rsv":"tg-allday-cell",children:o.allDayEvents.map(s=>a.jsx("div",{"data-rsv":"event","data-all-day":"true",style:`--rsv-event-bg:${s.backgroundColor}`,onClick:h=>r.trigger("eventClick",{event:s,el:h.currentTarget}),children:s.title},s.id))},o.row.resource.id))]}),a.jsxs("div",{"data-rsv":"tg-body",children:[a.jsx("div",{"data-rsv":"tg-axis",style:`height:${n}`,children:e.slots.map(o=>a.jsx("div",{"data-rsv":"tg-slot","data-major":String(o.isMajor),children:a.jsx("span",{"data-rsv":"tg-slot-label",children:o.label})},o.offsetMin))}),e.columns.map(o=>a.jsxs("div",{"data-rsv":"tg-col","data-rsv-resource-id":o.row.resource.id,style:`height:${n}`,children:[o.timedSegs.map(s=>{const h=100/s.colCount;return a.jsxs("div",{"data-rsv":"event","data-all-day":"false","data-event-id":s.event.id,role:"button",tabIndex:0,style:`position:absolute;top:${s.topPct}%;height:${s.heightPct}%;left:${s.col*h}%;width:${h}%;--rsv-event-bg:${s.event.backgroundColor};--rsv-event-fg:${s.event.textColor}`,onClick:u=>{u.stopPropagation(),r.trigger("eventClick",{event:s.event})},children:[d.dl.format(s.event.start,"HH:mm")," ",s.event.title]},s.event.id)}),e.nowTopPct!=null&&a.jsx("div",{"data-rsv":"now-indicator",style:`top:${e.nowTopPct}%`})]},o.row.resource.id))]})]})}function be({api:r,model:e}){return a.jsxs("div",{"data-rsv":"resource-daygrid",style:`--rsv-rdg-cols:${e.columns.length}`,children:[a.jsx("div",{"data-rsv":"rdg-header",role:"row",children:e.columns.map(t=>a.jsx("div",{"data-rsv":"rdg-col-header",role:"columnheader",children:t.row.resource.title},t.row.resource.id))}),a.jsx("div",{"data-rsv":"rdg-body",role:"row",children:e.columns.map(t=>a.jsx("div",{"data-rsv":"rdg-col","data-rsv-resource-id":t.row.resource.id,children:t.events.map(n=>a.jsxs("div",{"data-rsv":"event","data-all-day":String(n.allDay),"data-event-id":n.id,role:"button",tabIndex:0,style:`--rsv-event-bg:${n.backgroundColor};--rsv-event-fg:${n.textColor};--rsv-event-border:${n.borderColor}`,onClick:o=>r.trigger("eventClick",{event:n,el:o.currentTarget}),children:[n.allDay?"":d.dl.format(n.start,"HH:mm")+" ",n.title]},n.id))},t.row.resource.id))})]})}function Be({api:r,model:e,options:t}){return a.jsx("div",{"data-rsv":"resource-daygrid-month",style:`--rsv-rdgm-cols:${e.columnCount}`,children:e.weeks.map((n,o)=>a.jsx("div",{"data-rsv":"rdgm-week",role:"row",children:n.days.map(s=>a.jsx(_e,{api:r,cell:s,options:t},d.dl.toISOString(s.date)))},`week-${o}`))})}function _e({api:r,cell:e,options:t}){const n=d.dl.dayOfMonth(e.date);return a.jsxs("div",{"data-rsv":"day",role:"gridcell","data-date":d.dl.toISOString(e.date),"data-today":String(e.isToday),"data-other":String(e.isOther),children:[a.jsx("span",{"data-rsv":"day-number",children:n}),a.jsx("div",{"data-rsv":"rdgm-columns",children:e.columns.map(o=>a.jsxs("div",{"data-rsv":"rdgm-col","data-rsv-resource-id":o.row.resource.id,children:[a.jsx("span",{"data-rsv":"rdgm-col-label",children:o.row.resource.title}),o.events.map(s=>{const h=r.selectedEventIds.value.has(s.id);return a.jsxs("div",{"data-rsv":"event","data-all-day":String(s.allDay),"data-event-id":s.id,"data-rsv-selected":String(h),role:"button",tabIndex:0,style:`--rsv-event-bg:${s.backgroundColor};--rsv-event-fg:${s.textColor};--rsv-event-border:${s.borderColor}`,onClick:u=>{if(u.stopPropagation(),u.ctrlKey||u.metaKey){r.toggleEventSelection(s.id);return}r.trigger("eventClick",{event:s,el:u.currentTarget}),s.url&&window.open(s.url,"_self")},children:[s.allDay?"":`${d.dl.format(s.start,"HH:mm")} `,s.title]},s.id)}),o.moreCount>0&&a.jsx("span",{"data-rsv":"rdgm-more",onClick:s=>{s.stopPropagation(),r.trigger("moreLinkClick",{date:e.date,allEvents:[...o.events,...o.hiddenEvents],hiddenEvents:o.hiddenEvents})},children:d.getLocaleText(t.locale).more(o.moreCount)})]},o.row.resource.id))})]})}function we({api:r,options:e}){var c;const t=r.viewModel.value,n=e.direction??d.getLocaleText(e.locale).direction,o=r.getEffectiveOption("hourHeight",t.type),s=r.getEffectiveOption("height",t.type),h=[e.themeTokens?d.themeToStyle(e.themeTokens):"",o?`${d.THEME_TOKEN_VARS.slotHeight}:${o}px`:"",s!=null&&s!=="auto"?`height:${typeof s=="number"?`${s}px`:s}`:""].filter(Boolean).join(";")||void 0,u=k.useRef(null);k.useEffect(()=>(r.setRootEl(u.current),()=>r.setRootEl(null)),[r]);const v=k.useRef(e.responsiveViews);return v.current=e.responsiveViews,k.useEffect(()=>{const l=u.current;if(!l||typeof ResizeObserver>"u")return;let y=0;const f=new ResizeObserver(b=>{const x=b[0],j=(x==null?void 0:x.contentRect.width)??l.clientWidth;cancelAnimationFrame(y),y=requestAnimationFrame(()=>{const m=v.current;if(!(m!=null&&m.length))return;const D=Me(m,j);D&&D!==r.getView().type&&r.hasView(D)&&r.changeView(D)})});return f.observe(l),()=>{cancelAnimationFrame(y),f.disconnect()}},[r]),a.jsxs("div",{ref:u,"data-rsv":"root",dir:n,"data-rsv-theme":e.theme,"data-rsv-autoheight":s==="auto"?"true":void 0,style:h,class:$((c=e.classNames)==null?void 0:c.root),children:[e.headerToolbar!==!1&&a.jsx(ae,{api:r,title:t.title,activeView:t.type,options:e}),a.jsx("div",{"data-rsv":"view","data-view":t.type,children:t.dayGrid?a.jsx(q,{api:r,model:t.dayGrid,options:e}):t.timeGrid?a.jsx(ve,{api:r,model:t.timeGrid,options:e}):t.list?a.jsx(me,{api:r,model:t.list,options:e}):t.multiMonth?a.jsx(he,{api:r,model:t.multiMonth,options:e}):t.resourceTimeGrid?a.jsx(xe,{api:r,model:t.resourceTimeGrid,options:e}):t.resourceDayGrid?a.jsx(be,{api:r,model:t.resourceDayGrid,options:e}):t.resourceDayGridMonth?a.jsx(Be,{api:r,model:t.resourceDayGridMonth,options:e}):t.resourceTimeline?a.jsx(fe,{api:r,model:t.resourceTimeline,options:e}):t.timeline?a.jsx(ge,{api:r,model:t.timeline,options:e}):a.jsxs("div",{"data-rsv":"unsupported",children:['La vista "',t.type,'" se implementa en una fase posterior.']})})]})}function Ke(r,e){const t=new d.CalendarApi(e);return K.render(K.h(we,{api:t,options:e}),r),{api:t,destroy(){K.render(null,r),t.destroy()}}}function Ue(r,e="calendar.ics"){if(typeof document>"u")return;const t=d.eventsToICS(r),n=new Blob([t],{type:"text/calendar;charset=utf-8"}),o=URL.createObjectURL(n),s=document.createElement("a");s.href=o,s.download=e,document.body.appendChild(s),s.click(),s.remove(),URL.revokeObjectURL(o)}Object.defineProperty(exports,"dayGridPlugin",{enumerable:!0,get:()=>d.dayGridPlugin});Object.defineProperty(exports,"definePlugin",{enumerable:!0,get:()=>d.definePlugin});Object.defineProperty(exports,"defineTheme",{enumerable:!0,get:()=>d.defineTheme});Object.defineProperty(exports,"eventsToICS",{enumerable:!0,get:()=>d.eventsToICS});Object.defineProperty(exports,"listPlugin",{enumerable:!0,get:()=>d.listPlugin});Object.defineProperty(exports,"multiMonthPlugin",{enumerable:!0,get:()=>d.multiMonthPlugin});Object.defineProperty(exports,"parseICS",{enumerable:!0,get:()=>d.parseICS});Object.defineProperty(exports,"resourcePlugin",{enumerable:!0,get:()=>d.resourcePlugin});Object.defineProperty(exports,"themeToStyle",{enumerable:!0,get:()=>d.themeToStyle});Object.defineProperty(exports,"timeGridPlugin",{enumerable:!0,get:()=>d.timeGridPlugin});Object.defineProperty(exports,"timelinePlugin",{enumerable:!0,get:()=>d.timelinePlugin});exports.Calendar=we;exports.DayGridView=q;exports.ListView=me;exports.MultiMonthView=he;exports.ResourceDayGridView=be;exports.ResourceTimeGridView=xe;exports.ResourceTimelineView=fe;exports.TimeGridView=ve;exports.TimelineView=ge;exports.Toolbar=ae;exports.callDidMount=L;exports.cx=$;exports.dateFormatter=F;exports.downloadICS=Ue;exports.handleEventKeydown=W;exports.hostSlot=De;exports.isHostSlot=ne;exports.minutesToLabel=se;exports.minutesToTimeString=oe;exports.mount=Ke;exports.renderSlot=E;exports.startEventDrag=B;exports.timeFormatter=I;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|