vue-cal 5.0.1-rc.2 → 5.0.1-rc.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/README.md +2 -1
  2. package/dist/i18n/ar.js +42 -0
  3. package/dist/i18n/bg.js +38 -0
  4. package/dist/i18n/bn.js +38 -0
  5. package/dist/i18n/bs.js +38 -0
  6. package/dist/i18n/ca.js +40 -0
  7. package/dist/i18n/cs.js +38 -0
  8. package/dist/i18n/da.js +38 -0
  9. package/dist/i18n/de.js +38 -0
  10. package/dist/i18n/el.js +44 -0
  11. package/dist/i18n/en-gb.js +38 -0
  12. package/dist/i18n/es.js +38 -0
  13. package/dist/i18n/et.js +38 -0
  14. package/dist/i18n/fa.js +42 -0
  15. package/dist/i18n/fi.js +38 -0
  16. package/dist/i18n/fr.js +38 -0
  17. package/dist/i18n/he.js +42 -0
  18. package/dist/i18n/hr.js +38 -0
  19. package/dist/i18n/hu.js +38 -0
  20. package/dist/i18n/id.js +38 -0
  21. package/dist/i18n/is.js +38 -0
  22. package/dist/i18n/it.js +38 -0
  23. package/dist/i18n/ja.js +40 -0
  24. package/dist/i18n/ka.js +38 -0
  25. package/dist/i18n/ko.js +40 -0
  26. package/dist/i18n/lt.js +38 -0
  27. package/dist/i18n/mn.js +38 -0
  28. package/dist/i18n/nl.js +38 -0
  29. package/dist/i18n/no.js +38 -0
  30. package/dist/i18n/pl.js +38 -0
  31. package/dist/i18n/pt-br.js +38 -0
  32. package/dist/i18n/pt-pt.js +38 -0
  33. package/dist/i18n/ro.js +38 -0
  34. package/dist/i18n/ru.js +40 -0
  35. package/dist/i18n/sk.js +38 -0
  36. package/dist/i18n/sl.js +38 -0
  37. package/dist/i18n/sq.js +40 -0
  38. package/dist/i18n/sr.js +38 -0
  39. package/dist/i18n/sv.js +38 -0
  40. package/dist/i18n/tr.js +38 -0
  41. package/dist/i18n/uk.js +40 -0
  42. package/dist/i18n/vi.js +40 -0
  43. package/dist/i18n/zh-cn.js +40 -0
  44. package/dist/i18n/zh-hk.js +40 -0
  45. package/dist/vue-cal.css +1 -1
  46. package/dist/vue-cal.es.js +1730 -1411
  47. package/dist/vue-cal.umd.js +2 -3
  48. package/package.json +29 -26
  49. package/dist/i18n/ar.json +0 -18
  50. package/dist/i18n/bg.json +0 -16
  51. package/dist/i18n/bn.json +0 -16
  52. package/dist/i18n/bs.json +0 -16
  53. package/dist/i18n/ca.json +0 -17
  54. package/dist/i18n/cs.json +0 -16
  55. package/dist/i18n/da.json +0 -16
  56. package/dist/i18n/de.json +0 -16
  57. package/dist/i18n/el.json +0 -19
  58. package/dist/i18n/en-gb.json +0 -16
  59. package/dist/i18n/en-us.json +0 -16
  60. package/dist/i18n/es.json +0 -16
  61. package/dist/i18n/et.json +0 -16
  62. package/dist/i18n/fa.json +0 -18
  63. package/dist/i18n/fi.json +0 -16
  64. package/dist/i18n/fr.json +0 -16
  65. package/dist/i18n/he.json +0 -18
  66. package/dist/i18n/hr.json +0 -16
  67. package/dist/i18n/hu.json +0 -16
  68. package/dist/i18n/id.json +0 -16
  69. package/dist/i18n/is.json +0 -16
  70. package/dist/i18n/it.json +0 -16
  71. package/dist/i18n/ja.json +0 -17
  72. package/dist/i18n/ka.json +0 -16
  73. package/dist/i18n/ko.json +0 -17
  74. package/dist/i18n/lt.json +0 -16
  75. package/dist/i18n/mn.json +0 -16
  76. package/dist/i18n/nl.json +0 -16
  77. package/dist/i18n/no.json +0 -16
  78. package/dist/i18n/pl.json +0 -16
  79. package/dist/i18n/pt-br.json +0 -16
  80. package/dist/i18n/pt-pt.json +0 -16
  81. package/dist/i18n/ro.json +0 -16
  82. package/dist/i18n/ru.json +0 -17
  83. package/dist/i18n/sk.json +0 -16
  84. package/dist/i18n/sl.json +0 -16
  85. package/dist/i18n/sq.json +0 -17
  86. package/dist/i18n/sr.json +0 -16
  87. package/dist/i18n/sv.json +0 -16
  88. package/dist/i18n/tr.json +0 -16
  89. package/dist/i18n/uk.json +0 -17
  90. package/dist/i18n/vi.json +0 -17
  91. package/dist/i18n/zh-cn.json +0 -17
  92. package/dist/i18n/zh-hk.json +0 -17
@@ -1,6 +1,5 @@
1
1
  (function(W,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(W=typeof globalThis<"u"?globalThis:W||self,e(W.vuecal={},W.Vue))})(this,function(W,e){"use strict";/**
2
- * vue-cal v5.0.1-rc.2
2
+ * vue-cal v5.0.1-rc.21
3
3
  * (c) 2024-2025 Antoni Andre <antoniandre.web@gmail.com>
4
4
  * @license MIT
5
- */const te={texts:{weekDays:Array(7).fill(""),weekDaysShort:[],months:Array(12).fill(""),years:"",year:"",month:"",week:"",day:"",today:"",noEvent:"",allDay:"",deleteEvent:"",createEvent:"",dateFormat:"dddd MMMM D, YYYY",am:"am",pm:"pm",truncations:!0},availableViews:{day:{cols:1,rows:1},days:{cols:10,rows:1},week:{cols:7,rows:1},month:{cols:7,rows:6},year:{cols:4,rows:3},years:{cols:5,rows:5}}},_e=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],de=["sun","mon","tue","wed","thu","fri","sat"],be=de.reduce((u,s,i)=>(u[s]=i||7,u),{}),Te=(u,s,i)=>{const{dateUtils:D}=u,k=!1,b=e.computed(()=>{if(N.value[s.view])return s.view;{const r=s.datePicker?"month":"week",l=s.view||r;return N.value[l]?l:(console.warn(`Vue Cal: the provided or default view \`${l}\` is either invalid or not in the list of available views. The first available view will be chosen: \`${Object.keys(N.value)[0]}\`.`),Object.keys(N.value)[0])}}),z=e.computed(()=>s.sm&&!s.xs),y=e.computed(()=>s.xs||s.datePicker),C=e.computed(()=>s.clickToNavigate||s.datePicker&&s.clickToNavigate!==!1),c=e.computed(()=>{const r={cell:{},event:{}},l=_=>_.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();return Object.entries(i).forEach(([_,a])=>{const[B,Y,H]=_.match(/^on(Cell|Event)(.+)$/)||[];B&&(r[Y.toLowerCase()][l(H).replace(/^-+|-+$/g,"")]=a)}),r}),h=e.computed(()=>{var l;const r={};return s.hideWeekends&&(r[6]=!0)&&(r[7]=!0),(l=s.hideWeekdays)!=null&&l.length&&s.hideWeekdays.forEach(_=>r[be[_]]=!0),r}),T=e.computed(()=>s.hideWeekends||h.value[6]&&h.value[7]),N=e.computed(()=>{const r=s.datePicker;let l=0,_={};const a=s.views;return r&&!a?{month:{...te.availableViews.month},year:{...te.availableViews.year},years:{...te.availableViews.years}}:(a?(Array.isArray(a)?_=a.reduce((B,Y)=>(typeof Y=="string"&&te.availableViews[Y]?B[Y]=te.availableViews[Y]:l++,B),{}):typeof a=="object"&&(_=Object.entries(a).reduce((B,[Y,H])=>{const{cols:q,rows:U}=te.availableViews[Y];return B[Y]={cols:H.cols||q,rows:H.rows||U},B},{})),l&&console.warn("Vue Cal: the provided `views` prop contains invalid views that will be ignored."),Object.keys(_).length||(console.warn("Vue Cal: No valid view in the provided `views` prop. Falling back to default views."),_={...te.availableViews})):_={...te.availableViews},_)}),R=e.computed(()=>s.datePicker?"month":N.value.week?"week":Object.keys(N.value)[0]),d=e.computed(()=>{if(typeof s.selectedDate=="string")return D.stringToDate(s.selectedDate);if(s.selectedDate instanceof Date)return s.selectedDate;s.selectedDate?console.warn("Vue Cal: The provided selected date is invalid:",s.selectedDate):console.log("Vue Cal: Info - The provided selected date is undefined.")}),m=e.computed(()=>{if(!s.disableDays)return[];const r=[];return Array.isArray(s.disableDays)?s.disableDays.forEach(l=>{let _=l;if(typeof l=="string"?_=D.stringToDate(l):l instanceof Date&&(l=D.formatDate(l,"YYYY-MM-DD")),_ instanceof Date&&!isNaN(_.getTime())){r.push(l);return}else console.warn("Vue Cal: The provided `disableDays` prop contains an invalid date:",l)}):console.warn("Vue Cal: The provided `disableDays` prop is invalid:",s.disableDays),r}),t=e.computed(()=>{let r=null;return s.minDate&&typeof s.minDate=="string"?r=D.stringToDate(s.minDate):s.minDate&&s.minDate instanceof Date&&(r=s.minDate),(r==null?void 0:r.getTime())||null}),f=e.computed(()=>{let r=null;return s.maxDate&&typeof s.maxDate=="string"?r=D.stringToDate(s.maxDate):s.maxDate&&s.maxDate instanceof Date&&(r=s.maxDate),(r==null?void 0:r.getTime())||null}),v=e.computed(()=>{var _;const{view:r}=u;return s.schedules.length&&(r.isDay||r.isDays||r.isWeek)&&((_=s.schedules)==null?void 0:_.map((a,B)=>({...a,id:a.id??B+1})))||void 0}),E=e.computed(()=>{const r={drag:!0,resize:!0,delete:!0,create:!0};return s.editableEvents===!0?r:s.editableEvents===!1?Object.keys(r).map(l=>r[l]=!1):{...r,...s.editableEvents}}),P=async r=>{var _;let l=Object.assign({"../i18n/ar.json":()=>import("./i18n/ar.json").then(a=>a.default),"../i18n/bg.json":()=>import("./i18n/bg.json").then(a=>a.default),"../i18n/bn.json":()=>import("./i18n/bn.json").then(a=>a.default),"../i18n/bs.json":()=>import("./i18n/bs.json").then(a=>a.default),"../i18n/ca.json":()=>import("./i18n/ca.json").then(a=>a.default),"../i18n/cs.json":()=>import("./i18n/cs.json").then(a=>a.default),"../i18n/da.json":()=>import("./i18n/da.json").then(a=>a.default),"../i18n/de.json":()=>import("./i18n/de.json").then(a=>a.default),"../i18n/el.json":()=>import("./i18n/el.json").then(a=>a.default),"../i18n/en-gb.json":()=>import("./i18n/en-gb.json").then(a=>a.default),"../i18n/en-us.json":()=>import("./i18n/en-us.json").then(a=>a.default),"../i18n/es.json":()=>import("./i18n/es.json").then(a=>a.default),"../i18n/et.json":()=>import("./i18n/et.json").then(a=>a.default),"../i18n/fa.json":()=>import("./i18n/fa.json").then(a=>a.default),"../i18n/fi.json":()=>import("./i18n/fi.json").then(a=>a.default),"../i18n/fr.json":()=>import("./i18n/fr.json").then(a=>a.default),"../i18n/he.json":()=>import("./i18n/he.json").then(a=>a.default),"../i18n/hr.json":()=>import("./i18n/hr.json").then(a=>a.default),"../i18n/hu.json":()=>import("./i18n/hu.json").then(a=>a.default),"../i18n/id.json":()=>import("./i18n/id.json").then(a=>a.default),"../i18n/is.json":()=>import("./i18n/is.json").then(a=>a.default),"../i18n/it.json":()=>import("./i18n/it.json").then(a=>a.default),"../i18n/ja.json":()=>import("./i18n/ja.json").then(a=>a.default),"../i18n/ka.json":()=>import("./i18n/ka.json").then(a=>a.default),"../i18n/ko.json":()=>import("./i18n/ko.json").then(a=>a.default),"../i18n/lt.json":()=>import("./i18n/lt.json").then(a=>a.default),"../i18n/mn.json":()=>import("./i18n/mn.json").then(a=>a.default),"../i18n/nl.json":()=>import("./i18n/nl.json").then(a=>a.default),"../i18n/no.json":()=>import("./i18n/no.json").then(a=>a.default),"../i18n/pl.json":()=>import("./i18n/pl.json").then(a=>a.default),"../i18n/pt-br.json":()=>import("./i18n/pt-br.json").then(a=>a.default),"../i18n/pt-pt.json":()=>import("./i18n/pt-pt.json").then(a=>a.default),"../i18n/ro.json":()=>import("./i18n/ro.json").then(a=>a.default),"../i18n/ru.json":()=>import("./i18n/ru.json").then(a=>a.default),"../i18n/sk.json":()=>import("./i18n/sk.json").then(a=>a.default),"../i18n/sl.json":()=>import("./i18n/sl.json").then(a=>a.default),"../i18n/sq.json":()=>import("./i18n/sq.json").then(a=>a.default),"../i18n/sr.json":()=>import("./i18n/sr.json").then(a=>a.default),"../i18n/sv.json":()=>import("./i18n/sv.json").then(a=>a.default),"../i18n/tr.json":()=>import("./i18n/tr.json").then(a=>a.default),"../i18n/uk.json":()=>import("./i18n/uk.json").then(a=>a.default),"../i18n/vi.json":()=>import("./i18n/vi.json").then(a=>a.default),"../i18n/zh-cn.json":()=>import("./i18n/zh-cn.json").then(a=>a.default),"../i18n/zh-hk.json":()=>import("./i18n/zh-hk.json").then(a=>a.default)});{if(!l[`../i18n/${r}.json`]){console.warn(`Vue Cal: the locale \`${r}\` does not exist. Falling back to \`en-us\`.`),r="en-us";return}l=await((_=l[`../i18n/${r}.json`])==null?void 0:_.call(l))}u.texts=Object.assign(u.texts,Object.assign({...te.texts},l)),D.updateTexts(u.texts)};let F=e.reactive(s.events||[]);return e.watch(()=>s.events,r=>F.splice(0,F.length,...r)),(s.locale||!u.texts.today)&&P(s.locale||"en-us"),{...e.toRefs(s),events:F,eventListeners:c,defaultView:R,availableViews:N,disableDays:m,ready:k,sm:z,xs:y,clickToNavigate:C,hideWeekdays:h,hideWeekends:T,minTimestamp:t,maxTimestamp:f,schedules:v,selectedDate:d,editableEvents:E,view:b,get hasHiddenDays(){return Object.keys(h.value).length},get size(){return y.value?"xs":z.value?"sm":"lg"},loadTexts:P}},re=(u,s)=>{const i=s.timeTo-s.timeFrom;return(u-s.timeFrom)*100/i},oe=(u,s)=>{const i=s.timeTo-s.timeFrom;return~~(u*i/100+s.timeFrom)},fe=(u,s)=>{const i=s.clientHeight;return u*100/i},ue=e.reactive({id:null,date:null});let pe=!1,ge=!0;const ne=e.reactive({el:null,cell:null,timeout:null}),le=e.reactive({eventId:null,fromVueCal:null,toVueCal:null});function Me(u){const{config:s,view:i,eventsManager:D,emit:k,uid:b,dateUtils:z}=u,y=t=>{var l;const{timeStep:f,timeCellHeight:v,timeFrom:E}=s,P=(((l=t.touches)==null?void 0:l[0])||t).clientY,{top:F}=t.currentTarget.getBoundingClientRect(),r=P-F-~~t.dataTransfer.getData("cursor-grab-at");return oe(fe(r,t.currentTarget),s)},C=(t,f,v)=>{const E=f.duration||c(f.start,f.end)||s.timeStep;let P=Math.max(y(t),0);if(s.snapToInterval){const _=P+s.snapToInterval/2;P=_-_%s.snapToInterval}const F=new Date(new Date(v).setMinutes(P)),r=Math.min(P+E,24*60),l=new Date(new Date(v).setMinutes(r));return{start:F,end:l}},c=(t,f)=>Math.round((f-t)/6e4);return{eventDragStart:(t,f)=>{if(t.target.nodeType===3||u.touch.isResizingEvent)return t.preventDefault();t.dataTransfer.dropEffect="move";const v={...f,_:{id:f._.id,duration:c(f.start,f.end)}};t.dataTransfer.setData("event",JSON.stringify(v)),t.dataTransfer.setData("cursor-grab-at",t.offsetY),le.eventId=f._.id,le.fromVueCal=b;const E=t.target.closest(".vuecal__event");E.classList.add("vuecal__event--dragging-ghost"),setTimeout(()=>{E.classList.add("vuecal__event--dragging-original"),E.classList.remove("vuecal__event--dragging-ghost")},0),pe=!1,Object.assign(ue,{id:i.id,date:i.firstCellDate}),ge=!0,u.touch.isDraggingEvent=!0},eventDragEnd:(t,f)=>{le.eventId=null,t.target.closest(".vuecal__event").classList.remove("vuecal__event--dragging-original");const{fromVueCal:v,toVueCal:E}=le;E&&v!==E&&D.deleteEvent(f._.id,3),le.fromVueCal=null,le.toVueCal=null,pe&&ge&&ue.id&&i.switchView(ue.id,ue.date,!0),u.touch.isDraggingEvent=!1},cellDragEnter:(t,f)=>{const{start:v}=f,E=t.currentTarget;if(!t.currentTarget.contains(t.relatedTarget)){if(E===ne.el||!E.className.includes("vuecal__cell-content"))return!1;ne.el&&(ne.cell.highlighted=!1),Object.assign(ne,{el:E,cell:f,timeout:clearTimeout(ne.timeout)}),f.highlighted=!0,["years","year","month"].includes(i.id)&&(ne.timeout=setTimeout(()=>u.switchToNarrowerView(v),2e3))}},cellDragOver:(t,f)=>{const{start:v,schedule:E}=f;t.preventDefault(),f.highlighted=!0,(E||E===0)&&(f.highlightedSchedule=E)},cellDragLeave:(t,f)=>{t.preventDefault(),!t.currentTarget.contains(t.relatedTarget)&&(f.highlightedSchedule=!1,ne.cell===f&&(clearTimeout(ne.timeout),Object.assign(ne,{el:null,cell:null,timeout:null}),f.highlighted=!1))},cellDragDrop:async(t,f)=>{var B,Y,H;t.preventDefault(),clearTimeout(ne.timeout),Object.assign(ne,{el:null,cell:null,timeout:null});const v=JSON.parse(t.dataTransfer.getData("event")||"{}");v.start&&(v.start=new Date(v.start)),v.end&&(v.end=new Date(v.end));let E;const{start:P,end:F}=C(t,v,f.start),{schedule:r}=((B=t.target.closest("[data-schedule]"))==null?void 0:B.dataset)||{};let l=()=>{};le.fromVueCal===b?(E=D.getEvent(v._.id),E&&(E._.dragging=!1,l=()=>{E.start=P,E.end=F,r!==void 0&&(E.schedule=~~r)})):(E={...v,start:P,end:F,...r!==void 0&&{schedule:~~r},_:{id:((Y=v._)==null?void 0:Y.id)||v.id,duration:c(P,F)},getOverlappingEvents:()=>D.getEventsInRange(D.getEventsByDate(z.formatDate(P),!0),{start:P,end:F},{schedule:~~r})},l=()=>{E=D.createEvent(E)});let _=!0;const{drop:a}=(H=s.eventListeners)==null?void 0:H.event;a&&(_=await a({e:t,event:{...E,start:P,end:F,schedule:~~r},overlaps:E.getOverlappingEvents({start:P,end:F,schedule:~~r}),cell:f,external:le.fromVueCal!==b})),_!==!1&&l(),f.highlighted=!1,f.highlightedSchedule=null,ge=!1,le.toVueCal=b,k("event-dropped",{event:E,originalEvent:v,external:le.fromVueCal!==b}),k("event-change",{event:E,originalEvent:v})}}}const ve=u=>{let s,i,D,k={},b={};const z=e.ref(u),y=()=>{Date.prototype.addDays=function(n){return T(this,n||0)},Date.prototype.subtractDays=function(n){return N(this,n||0)},Date.prototype.addHours=function(n){return R(this,n||0)},Date.prototype.subtractHours=function(n){return d(this,n||0)},Date.prototype.addMinutes=function(n){return m(this,n||0)},Date.prototype.subtractMinutes=function(n){return t(this,n||0)},Date.prototype.getWeek=function(){return v(this)},Date.prototype.isToday=function(){return E(this)},Date.prototype.isLeapYear=function(){return r(this)},Date.prototype.format=function(n="YYYY-MM-DD"){return q(this,n)},Date.prototype.formatTime=function(n="HH:mm"){return Q(this,n)}},C=()=>{delete Date.prototype.addDays,delete Date.prototype.subtractDays,delete Date.prototype.addHours,delete Date.prototype.subtractHours,delete Date.prototype.addMinutes,delete Date.prototype.subtractMinutes,delete Date.prototype.getWeek,delete Date.prototype.isToday,delete Date.prototype.isLeapYear,delete Date.prototype.format,delete Date.prototype.formatTime},c=n=>z.value=n,h=()=>(i!==new Date().getDate()&&(s=new Date,i=s.getDate(),D=`${s.getFullYear()}-${s.getMonth()}-${s.getDate()}`),D),T=(n,w)=>{const g=new Date(n.valueOf());return g.setDate(g.getDate()+w),g},N=(n,w)=>{const g=new Date(n.valueOf());return g.setDate(g.getDate()-w),g},R=(n,w)=>{const g=new Date(n.valueOf());return g.setHours(g.getHours()+w),g},d=(n,w)=>{const g=new Date(n.valueOf());return g.setHours(g.getHours()-w),g},m=(n,w)=>{const g=new Date(n.valueOf());return g.setMinutes(g.getMinutes()+w),g},t=(n,w)=>{const g=new Date(n.valueOf());return g.setMinutes(g.getMinutes()-w),g},f=(n,w)=>{const g=I=>{const X=I%w;return X!==0&&(I+=X>=w/2?w-X:-X),I};if(typeof n=="number")return g(n);if(n instanceof Date){let I=g(n.getMinutes());I>=60&&(n.setHours(n.getHours()+1),I=0),n.setMinutes(I,0,0)}},v=(n,w=!1)=>{const g=new Date(Date.UTC(n.getFullYear(),n.getMonth(),n.getDate())),I=g.getUTCDay()||7;g.setUTCDate(g.getUTCDate()+4-I);const X=new Date(Date.UTC(g.getUTCFullYear(),0,1));return Math.ceil(((g-X)/864e5+1)/7)+(w?1:0)},E=n=>`${n.getFullYear()}-${n.getMonth()}-${n.getDate()}`===h(),P=(n,w)=>{if(!n||!w)return console.warn(`Vue Cal: missing date${n?"2":"1"} parameter for comparison with \`isSameDate(date1, date2)\`.`);if(H(n)){if(!H(w))return console.warn(`Vue Cal: invalid date2 provided for comparison with \`isSameDate(date1, date2)\`: \`${w}\`.`)}else return console.warn(`Vue Cal: invalid date1 provided for comparison with \`isSameDate(date1, date2)\`: \`${n}\`.`);return n.getFullYear()===w.getFullYear()&&n.getMonth()===w.getMonth()&&n.getDate()===w.getDate()},F=(n,w,g)=>H(n)?n.getTime()>=w&&n.getTime()<=g:console.warn(`Vue Cal: invalid date provided to \`isInRange(date, rangeStart, rangeEnd)\`: \`${n}\`.`),r=n=>{const w=n.getFullYear();return!(w%400)||w%100&&!(w%4)},l=(n=null,w)=>{const g=n&&new Date(n.valueOf())||new Date,I=w?7:6;return g.setDate(g.getDate()-(g.getDay()+I)%7),g},_=n=>n instanceof Date?n:(n.length===10&&(n+=" 00:00"),new Date(n.replace(/-/g,"/"))),a=n=>n.getHours()*60+n.getMinutes(),B=(n,w)=>{typeof n=="string"&&(n=n.replace(/-/g,"/")),typeof w=="string"&&(w=w.replace(/-/g,"/")),n=new Date(n).setHours(0,0,0,0),w=new Date(w).setHours(0,0,1,0);const g=(new Date(w).getTimezoneOffset()-new Date(n).getTimezoneOffset())*60*1e3;return Math.ceil((w-n-g)/(24*3600*1e3))},Y=(n,w,g)=>Math.abs(n.getTime()-w.getTime())<=g*60*1e3,H=n=>n&&n instanceof Date&&!isNaN(n),q=(n,w="YYYY-MM-DD",g=null)=>{if(g||(g=z.value),w||(w="YYYY-MM-DD"),w==="YYYY-MM-DD")return U(n);k={},b={};const I={YYYY:()=>A(n,g).YYYY,YY:()=>A(n,g).YY(),M:()=>A(n,g).M,MM:()=>A(n,g).MM(),MMM:()=>A(n,g).MMM(),MMMM:()=>A(n,g).MMMM(),MMMMG:()=>A(n,g).MMMMG(),D:()=>A(n,g).D,DD:()=>A(n,g).DD(),S:()=>A(n,g).S(),d:()=>A(n,g).d,dd:()=>A(n,g).dd(),ddd:()=>A(n,g).ddd(),dddd:()=>A(n,g).dddd(),HH:()=>ee(n,g).HH,H:()=>ee(n,g).H,hh:()=>ee(n,g).hh,h:()=>ee(n,g).h,am:()=>ee(n,g).am,AM:()=>ee(n,g).AM,mm:()=>ee(n,g).mm,m:()=>ee(n,g).m,s:()=>ee(n,g).s};return w.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,(X,ae)=>{const o=I[ae.replace(/\{|\}/g,"")];return o!==void 0?o():ae})},U=n=>{const w=n.getMonth()+1,g=n.getDate();return`${n.getFullYear()}-${w<10?"0":""}${w}-${g<10?"0":""}${g}`},Q=(n,w="HH:mm",g=null,I=!1)=>{let X=!1;if(I){const[M,S,$]=[n.getHours(),n.getMinutes(),n.getSeconds()];M+S+$===141&&(X=!0)}if(n instanceof Date&&w==="HH:mm")return X?"24:00":x(n);b={},g||(g=z.value);const ae=ee(n,g),o=w.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,(M,S)=>{const $=ae[S.replace(/\{|\}/g,"")];return $!==void 0?$:S});return X?o.replace("23:59","24:00"):o},x=n=>{const w=n.getHours(),g=n.getMinutes();return`${(w<10?"0":"")+w}:${(g<10?"0":"")+g}`},se=n=>{const w=Math.floor(n/60).toString().padStart(2,0),g=(n%60).toString().padStart(2,0);return`${w}:${g}`},Z=n=>{if(n>3&&n<21)return"th";switch(n%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},A=(n,w)=>{if(k.D)return k;const g=n.getFullYear(),I=n.getMonth()+1,X=n.getDate(),o=(n.getDay()-1+7)%7;return k={YYYY:g,YY:()=>g.toString().substring(2),M:I,MM:()=>I.toString().padStart(2,0),MMM:()=>w.months[I-1].substring(0,3),MMMM:()=>w.months[I-1],MMMMG:()=>(w.monthsGenitive||w.months)[I-1],D:X,DD:()=>X.toString().padStart(2,0),S:()=>Z(X),d:o+1,dd:()=>w.weekDaysShort.length?w.weekDaysShort[o]:w.weekDays[o][0],ddd:()=>w.weekDaysShort.length?w.weekDaysShort[o]:w.weekDays[o].substr(0,3),dddd:()=>w.weekDays[o]},k},ee=(n,w)=>{if(b.am)return b;let g,I,X;n instanceof Date?(g=n.getHours(),I=n.getMinutes(),X=n.getSeconds()):(g=Math.floor(n/60),I=Math.floor(n%60));const ae=g%12?g%12:12,o=(w||{am:"am",pm:"pm"})[g===24||g<12?"am":"pm"];return b={H:g,h:ae,HH:g.toString().padStart(2,0),hh:ae.toString().padStart(2,0),am:o,AM:o.toUpperCase(),m:I,mm:I.toString().padStart(2,0),s:X},b};return{addDatePrototypes:y,removeDatePrototypes:C,updateTexts:c,addDays:T,subtractDays:N,addHours:R,subtractHours:d,addMinutes:m,subtractMinutes:t,snapToInterval:f,getWeek:v,isToday:E,isSameDate:P,isInRange:F,isLeapYear:r,getPreviousFirstDayOfWeek:l,stringToDate:_,dateToMinutes:a,countDays:B,datesInSameTimeStep:Y,isValid:H,formatDate:q,formatDateLite:U,formatTime:Q,formatTimeLite:x,formatMinutes:se}},$e=u=>{const{dateUtils:s,config:i}=u;let D=0;const k=e.computed(()=>{const d={byDate:{},recurring:[],multiday:[],byId:{}};return i.events.sort((t,f)=>t.start-f.start<0?-1:1).forEach(t=>{b(t),t._||(t._={}),t._.id=t._.id||++D,t.delete||(t.delete=f=>h(t._.id,f)),t._.deleting=!1,t._.deleted=!1,t.isOverlapping=(f=null)=>t.getOverlappingEvents(f).length,t.getOverlappingEvents=(f=null)=>{var v;return N(y(s.formatDate((f==null?void 0:f.start)||t.start),!0),{start:(f==null?void 0:f.start)||t.start,end:(f==null?void 0:f.end)||t.end},{excludeIds:[t._.id],schedule:(v=i.schedules)!=null&&v.length?~~((f==null?void 0:f.schedule)||t.schedule):null})},t._.register=f=>{t._.$el=f,t._.fireCreated&&(u.emit("event-created",t),delete t._.fireCreated)},t._.unregister=()=>{t._.$el=null,t._.register=null,t.isOverlapping=null,t.getOverlappingEvents=null,t.delete=null},d.byId[t._.id]=t,t.recurring?d.recurring.push(t._.id):t._.multiday?(d.multiday.push(t._.id),d.byDate[t._.startFormatted]||(d.byDate[t._.startFormatted]=[]),d.byDate[t._.startFormatted].push(t._.id)):(d.byDate[t._.startFormatted]||(d.byDate[t._.startFormatted]=[]),d.byDate[t._.startFormatted].push(t._.id))}),d}),b=d=>{if(typeof d.start=="string"&&(d.start=s.stringToDate(d.start)),typeof d.end=="string"&&(d.end=s.stringToDate(d.end)),d.start.setSeconds(0,0),d.end.setSeconds(0,0),isNaN(d.start)||isNaN(d.end)){isNaN(d.start)?console.error(`Vue Cal: invalid start date for event "${d.title}".`,d.start):console.error(`Vue Cal: invalid end date for event "${d.title}".`,d.end);return}else d.end.getTime()<d.start.getTime()&&console.error(`Vue Cal: invalid event dates for event "${d.title}". The event ends before it starts.`,d.start,d.end);d._||(d._={}),d._.multiday=!s.isSameDate(d.start,new Date(d.end.getTime()-1)),d._.startFormatted=s.formatDate(d.start),d._.startMinutes=~~s.dateToMinutes(d.start),d._.endMinutes=~~s.dateToMinutes(d.end);const m=d.start.getHours(),t=d.start.getMinutes().toString().padStart(2,0),f=d.end.getHours(),v=d.end.getMinutes().toString().padStart(2,0);d._.startTimeFormatted24=`${m.toString().padStart(2,0)}:${t}`,d._.startTimeFormatted12=`${m%12||12}${t?`:${t}`:""} ${m<12?"AM":"PM"}`,d._.endTimeFormatted24=`${f.toString().padStart(2,0)}:${v}`,d._.endTimeFormatted12=`${f%12||12}${v?`:${v}`:""} ${f<12?"AM":"PM"}`,d._.duration=Math.abs(~~((d.end-d.start)/6e4))},z=d=>k.value.byId[d],y=(d,m=!1,t=!1)=>{let f=k.value.byDate[d]||[];return f=m||t?f.map(z):f,t||(f=f.filter(v=>!v.background),m||(f=f.map(v=>v._.id))),f},C=d=>{const m={};return d.forEach(({startFormatted:t})=>{m[t]=[];const f=y(t,!1,!0);f.length&&m[t].push(...f)}),m},c=d=>{if(!d.start||!d.end){console.error("Vue Cal: Cannot create an event without valid start and end dates.");return}return i.snapToInterval&&(s.snapToInterval(d.start,i.snapToInterval),s.snapToInterval(d.end,i.snapToInterval)),d={...d},d._||(d._={}),d._.id=++D,d._.fireCreated=!0,i.events.push(d),d},h=(d,m=0)=>{var v;if(!i.editableEvents.delete)return console.info("Vue Cal: Event deletion is disabled. Enable it with the `editable-events` props.");if(!d)return console.warn("Vue Cal: Cannot delete event without its ID.");const t=i.events.findIndex(E=>E._.id===d);if(t===-1)return console.warn(`Vue Cal: Cannot delete unknown event \`${d}\`.`);const f=i.events[t];if(f.deletable===!1)return console.warn(`Vue Cal: Can't delete event \`${d}\` since it was explicitely set to \`delete: false\`.`);switch(m){case 0:f._.deleting?i.events.splice(t,1):f._.deleting=!0;break;case 1:f._.deleting=!0;break;case 2:f._.deleted=!0,i.events[t]._.deleted=!0,(v=f._.$el)==null||v.dispatchEvent(new CustomEvent("event-deleted",{detail:f._.id}));break;case 3:i.events.splice(t,1),u.emit("update:events",i.events),u.emit("event-delete",f);break}return!0},T=d=>{const m=y(d,!0);if(!m.length)return{cellOverlaps:{},longestStreak:0};let t={},f=[],v=0;m.sort((E,P)=>E.start-P.start||E.end-E.start-(P.end-P.start));for(const E of m){const P=E._.id;t[P]||(t[P]={overlaps:new Set,maxConcurrent:1,position:0}),f=f.filter(a=>a.end>E.start);let F=f.filter(a=>{var Y;return(!((Y=i.schedules)!=null&&Y.length)||E.schedule===a.schedule)&&a.start<E.end}),r=new Set(F.map(a=>{var B;return((B=t[a._.id])==null?void 0:B.position)??0})),l=0;for(;r.has(l);)l++;t[P].position=l,f.push(E);let _=Math.max(1,...F.map(a=>{var B;return((B=t[a._.id])==null?void 0:B.maxConcurrent)??1}));t[P].maxConcurrent=Math.max(F.length+1,_);for(const a of F)t[a._.id].overlaps.add(P),t[P].overlaps.add(a._.id),t[a._.id].maxConcurrent=t[P].maxConcurrent;v=Math.max(v,t[P].maxConcurrent)}for(const E in t)t[E].overlaps=[...t[E].overlaps];return{cellOverlaps:t,longestStreak:v}},N=(d=[],{start:m,end:t},{excludeIds:f=[],schedule:v=null})=>{var F;const E=new Set(f),P=[];for(const r of d)!E.has((F=r._)==null?void 0:F.id)&&(v===null||v===r.schedule)&&R(r,m,t)&&P.push(r);return P},R=(d,m,t)=>{const f=d.allDay||!i.time,v=f?new Date(d.start).setHours(0,0,0,0):d.start.getTime(),E=f?new Date(d.end).setHours(23,59,59,999):d.end.getTime(),P=f?new Date(m).setHours(0,0,0,0):m.getTime(),F=f?new Date(t).setHours(23,59,59,999):t.getTime();return E>P&&v<F};return{events:k,getEvent:z,getEventsByDate:y,getViewEvents:C,getCellOverlappingEvents:T,getEventsInRange:N,createEvent:c,deleteEvent:h,isEventInRange:R}},Ee=({config:u,dateUtils:s,emit:i,texts:D,eventsManager:k},b)=>{const{availableViews:z}=u,y=e.ref(u.view&&z[u.view]?u.view:u.defaultView),C=e.ref(u.selectedDate||null);let c=e.ref(new Date);const h=e.ref(new Date(u.viewDate||c.value));h.value.setHours(0,0,0,0);const T=e.ref(new Date(h));let N=null;const R=e.computed(()=>y.value==="month"?T.value:l.value),d=e.computed(()=>y.value==="month"?new Date(T.value.getFullYear(),T.value.getMonth()+1,0,23,59,59,999):a.value),m=e.computed(()=>y.value==="week"?s.getPreviousFirstDayOfWeek(l.value,u.startWeekOnSunday):y.value==="month"?l.value:R.value),t=e.computed(()=>{if(y.value==="week"){const p=s.addDays(m.value,7);return p.setMilliseconds(-1),p}else if(y.value==="month")return a.value;return d.value}),f=e.computed(()=>{const p=c.value.getTime();if(y.value==="week")return m.value.getTime()<=p&&p<=t.value.getTime();const V=l.value.getTime(),O=a.value.getTime();return V<=p&&p<=O});function v(){c.value=new Date,N=setTimeout(v,60*1e3)}function E(){N=setTimeout(v,(60-new Date().getSeconds())*1e3),v()}const P=e.computed(()=>{if(!u.availableViews[y.value])return 1;let p=u.availableViews[y.value].cols;return u.hasHiddenDays&&["week","month"].includes(y.value)&&(p-=u.hasHiddenDays),p}),F=e.computed(()=>{var p;return((p=u.availableViews[y.value])==null?void 0:p.rows)||1}),r=e.computed(()=>P.value*F.value),l=e.computed(()=>{if(y.value==="month"){let p=T.value.getDay()||7;return u.startWeekOnSunday&&!u.hideWeekdays[7]&&(p+=1),u.viewDayOffset&&(p-=u.viewDayOffset),s.subtractDays(T.value,p-1)}else if(y.value==="week"){const p="1234567".split("").filter(O=>!Object.keys(u.hideWeekdays).includes(O));let V=Math.min(...p);return u.startWeekOnSunday&&!u.hideWeekdays[7]&&(V=1),u.viewDayOffset&&(V+=u.viewDayOffset),s.addDays(T.value,V-1)}else return T.value}),_=e.computed(()=>{const p=[],V=["days","week","month"].includes(y.value);let O=0;for(let G=0;G<r.value+O;G++)switch(y.value){case"day":case"days":case"week":case"month":{const K=s.addDays(l.value,G),me=K.getDay()||7;if(V&&u.hasHiddenDays&&u.hideWeekdays[me]){O++;continue}const ce=new Date(K);ce.setHours(23,59,59,999),p.push({start:K,startFormatted:s.formatDate(K),end:ce});break}case"year":p.push({start:new Date(l.value.getFullYear(),G,1,0,0,0,0),end:new Date(l.value.getFullYear(),G+1,0,23,59,59,999)});break;case"years":p.push({start:new Date(l.value.getFullYear()+G,0,1,0,0,0,0),end:new Date(l.value.getFullYear()+G+1,0,0,23,59,59,999)});break}return p}),a=e.computed(()=>_.value[_.value.length-1].end),B=e.ref("right"),Y=e.computed(()=>{const p=Object.keys(u.availableViews);return p[p.indexOf(y.value)+1]}),H=e.computed(()=>{const p=Object.keys(u.availableViews);return p[p.indexOf(y.value)-1]}),q=e.computed(()=>{const{dateFormat:p,truncations:V}=D;switch(y.value){case"day":return s.formatDate(l.value,p);case"days":{let O=p.replace(/(\s|^)[^a-zA-Z]*?d{2,4}[^a-zA-Z]*?(\s|$)/,"");V!==!1&&(O=O.replace("MMMM","MMM"));const G=s.formatDate(l.value,O),K=s.formatDate(a.value,O);return`${G} - ${K}`}case"week":{let O=s.getWeek(l.value,u.startWeekOnSunday&&!u.hideWeekdays[7]);O=` <small>${D.week} ${O}</small>`;const G=l.value.getMonth(),K=l.value.getFullYear(),me=a.value.getMonth(),ce=a.value.getFullYear(),he=G!==me,It=he&&K!==ce,ke=V!==!1&&(u.xs||he),ye=D.months[G][ke?"substring":"toString"](0,3);if(he){const we=D.months[me][ke?"substring":"toString"](0,3);return It?`${ye} ${K} - ${we} ${ce} ${O}`:`${ye} - ${we} ${K} ${O}`}else return`${ye} ${K} ${O}`}case"month":{const O=`${u.xs&&V!==!1?"MMM":"MMMM"} YYYY`;return s.formatDate(R.value,O)}case"year":return l.value.getFullYear();case"years":return`${l.value.getFullYear()} - ${d.value.getFullYear()}`}});function U(){switch(T.value=new Date(h.value||c.value),T.value.setHours(0,0,0,0),y.value){case"day":break;case"days":break;case"week":T.value=s.getPreviousFirstDayOfWeek(T.value,u.startWeekOnSunday&&!u.hideWeekdays[7]);break;case"month":T.value=new Date(T.value.getFullYear(),T.value.getMonth(),1,0,0,0,0);break;case"year":T.value=new Date(T.value.getFullYear(),0,1,0,0,0,0);break;case"years":T.value=new Date(T.value.getFullYear()-T.value.getFullYear()%r.value,0,1,0,0,0,0);break}i("view-change",{id:y.value,title:q.value,start:R.value,end:d.value,extendedStart:m.value,extendedEnd:t.value,cellDates:_.value,containsToday:f.value,events:j.value}),c.value=new Date}function Q(p){const V=y.value,O=u.availableViews[V];p[V]&&JSON.stringify(p[V])===JSON.stringify(O)||U()}function x(p,V=!0){const O=Object.keys(u.availableViews);y.value!==p&&(O.includes(p)?(B.value=O.indexOf(p)<O.indexOf(y.value)?"left":"right",y.value=p,i("update:view",p),U()):console.warn(`Vue Cal: the \`${p}\` view is not available.`))}function se(){Y.value?x(Y.value):console.warn("Vue Cal: no broader view is available.")}function Z(){H.value?x(H.value):console.warn("Vue Cal: no narrower view is available.")}function A(){n(!1)}function ee(){n(!0)}function n(p=!0){let V=new Date(h.value);switch(y.value){case"day":case"days":p?V=s.addDays(a.value,1):V=s.subtractDays(l.value,r.value);break;case"week":{p?(V=s.addDays(t.value,1),V.setHours(0,0,0,0)):V=s.subtractDays(m.value,r.value);break}case"month":{const O=p?1:-1;V=new Date(V.getFullYear(),V.getMonth()+O,1,0,0,0,0);break}case"year":{const O=p?1:-1;V=new Date(V.getFullYear()+O,1,1,0,0,0,0);break}case"years":{const O=p?r.value:-r.value;V=new Date(V.getFullYear()+O,1,1,0,0,0,0);break}}g(V)}function w(){const p=new Date;p.setHours(0,0,0,0),g(p)}function g(p,V=!0,O=!1){if(!s.isValid(p))return console.warn("Vue Cal: can't navigate to the given date: invalid date provided to `updateViewDate(date)`.");let[G,K]=[l.value,a.value];y.value==="month"&&([G,K]=[R.value,d.value]),(!s.isInRange(p,G,K)||O)&&(p.setHours(0,0,0,0),B.value=p.getTime()<G.getTime()?"left":"right",h.value=p,V&&i("update:viewDate",p),U())}function I(p,V=!0){if(s.isValid(p)){const{isValid:O,isSameDate:G}=s;(!C.value||!O(C.value)||!G(p,C.value))&&(p.setHours(0,0,0,0),C.value=p,V&&i("update:selectedDate",p))}else return console.warn("Vue Cal: can't update the selected date: invalid date provided to `updateSelectedDate(date)`.")}function X(p){!p&&!T.value.getDay()?g(s.addDays(T.value,1),!0,!0):(B.value="left",U())}function ae(p){p&&u.startWeekOnSunday&&!T.value.getDay()?g(s.addDays(T.value,1),!0,!0):!p&&u.startWeekOnSunday&&T.value.getDay()===1&&g(s.subtractDays(T.value,1),!0,!0)}function o(){console.log("toggling weekdays",u.hideWeekdays)}function M(p){const V=b.value.querySelector(".vuecal__scrollable"),O=p?p*u.timeCellHeight/u.timeStep:0;V==null||V.scrollTo({top:O,behavior:"smooth"})}function S(){const p=new Date;M(p.getHours()*60+p.getMinutes())}function $(){M(0)}const j=e.computed(()=>k.getViewEvents(_.value)),L=k.createEvent,J=k.deleteEvent;return e.watch(()=>u.view,p=>x(p,!1)),e.watch(()=>u.availableViews,Q),e.watch(()=>u.datePicker,()=>x("month",!1)),e.watch(()=>u.viewDate,p=>g(p,!1)),e.watch(()=>u.selectedDate,p=>I(p,!1)),e.watch(()=>u.startWeekOnSunday,p=>X(p)),e.watch(()=>u.hideWeekends,p=>ae(p)),e.watch(()=>u.hideWeekdays,o),e.watch(()=>r.value,()=>{r.value>90&&console.warn("Vue Cal: high cell count detected. Performance may degrade when interactions are enabled.")}),e.watch(()=>u.watchRealTime,p=>{p&&u.time?E():N=clearTimeout(N)}),U(),u.time&&u.watchRealTime&&E(),e.onBeforeUnmount(()=>N=clearTimeout(N)),{now:c,id:y,broaderView:Y,narrowerView:H,title:q,viewDate:h,start:R,end:d,extendedStart:m,extendedEnd:t,firstCellDate:l,lastCellDate:a,containsToday:f,selectedDate:C,cellDates:_,cols:P,rows:F,events:j,transitionDirection:B,switch:x,broader:se,narrower:Z,previous:A,next:ee,navigate:n,goToToday:w,updateViewDate:g,updateSelectedDate:I,scrollToCurrentTime:S,scrollToTime:M,scrollTop:$,createEvent:L,deleteEvent:J,get isDay(){return y.value==="day"},get isDays(){return y.value==="days"},get isWeek(){return y.value==="week"},get isMonth(){return y.value==="month"},get isYear(){return y.value==="year"},get isYears(){return y.value==="years"}}},ie=e.reactive({texts:{...te.texts},dateUtils:ve(te.texts)}),Se=({props:u,emit:s,attrs:i,vuecalEl:D,uid:k})=>{const b=e.reactive({uid:k,emit:s,texts:{...ie.texts},dateUtils:{...ie.dateUtils},now:new Date,config:{},eventsManager:{},view:{},dnd:{},touch:{isDraggingCell:!1,isDraggingEvent:!1,isResizingEvent:!1}});return b.dateUtils=ve(Object.assign(te.texts,b.texts)),b.config=Te(b,u,i),b.eventsManager=$e(b),b.view=Ee(b,D),b.dnd=Me(b),b},Ce=24*60,Be={allDayEvents:{type:[Boolean,String],default:!1},clickToNavigate:{type:Boolean,default:void 0},dark:{type:Boolean,default:!1},datePicker:{type:Boolean,default:!1},disableDays:{type:Array,default:()=>[]},editableEvents:{type:[Boolean,Object],default:!1},eventCreateMinDrag:{type:Number,default:15},events:{type:Array,default:()=>[]},eventCount:{type:Boolean,default:!1},eventsOnMonthView:{type:Boolean,default:!1},hideWeekdays:{type:Array,default:()=>[]},hideWeekends:{type:Boolean,default:!1},locale:{type:String,default:""},maxDate:{type:[String,Date],default:""},minDate:{type:[String,Date],default:""},selectedDate:{type:[String,Date],default:""},sm:{type:Boolean,default:!1},specialHours:{type:Object,default:()=>({})},schedules:{type:Array,default:()=>[]},snapToInterval:{type:Number,default:0},startWeekOnSunday:{type:Boolean,default:!1},theme:{type:[String,Boolean],default:"default"},time:{type:Boolean,default:!0},timeAtCursor:{type:Boolean,default:!1},timeCellHeight:{type:Number,default:40},timeFormat:{type:String,default:""},timeFrom:{type:Number,default:0},timeStep:{type:Number,default:60},timeTo:{type:Number,default:Ce},titleBar:{type:Boolean,default:!0},todayButton:{type:Boolean,default:!0},twelveHour:{type:Boolean,default:!1},view:{type:String,default:""},viewDate:{type:[String,Date],default:""},viewDayOffset:{type:Number,default:0},views:{type:[Array,Object]},viewsBar:{type:Boolean,default:!0},watchRealTime:{type:Boolean,default:!1},weekNumbers:{type:Boolean,default:!1},xs:{type:Boolean,default:!1}},Ve={class:"vuecal__header"},Ye={key:0,class:"vuecal__views-bar"},Pe=["onClick","innerHTML"],ze={key:1,class:"vuecal__title-bar"},Oe={class:"vuecal__transition-wrap"},Ne=["disabled","innerHTML"],je={__name:"header",setup(u){const s=e.inject("vuecal"),{view:i,config:D}=s,k=()=>{D.clickToNavigate&&i.broader()},b=e.computed(()=>D.clickToNavigate?{click:k}:{});return(z,y)=>(e.openBlock(),e.createElementBlock("div",Ve,[e.renderSlot(z.$slots,"header",{view:e.unref(i),availableViews:e.unref(D).availableViews,vuecal:e.unref(s)}),z.$slots.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.unref(D).viewsBar?(e.openBlock(),e.createElementBlock("div",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(D).availableViews,(C,c)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["vuecal__view-button",{"vuecal__view-button--active":e.unref(i).id===c}]),onClick:h=>e.unref(i).switch(c),innerHTML:e.unref(s).texts[c],type:"button"},null,10,Pe))),256))])):e.createCommentVNode("",!0),e.unref(D).titleBar?(e.openBlock(),e.createElementBlock("nav",ze,[e.createElementVNode("button",{class:e.normalizeClass(["vuecal__nav vuecal__nav--prev",{"vuecal__nav--default":!z.$slots["previous-button"]}]),onClick:y[0]||(y[0]=(...C)=>e.unref(i).previous&&e.unref(i).previous(...C)),type:"button"},[e.renderSlot(z.$slots,"previous-button")],2),e.createElementVNode("div",Oe,[e.createVNode(e.Transition,{name:`vuecal-slide-fade--${e.unref(i).transitionDirection}`},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{key:e.unref(i).id+e.unref(i).start.getTime()},[z.$slots.title?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(D).clickToNavigate&&e.unref(i).broaderView?"button":"div"),e.mergeProps({key:0,class:"vuecal__title"},e.toHandlers(b.value)),{default:e.withCtx(()=>[e.renderSlot(z.$slots,"title",e.normalizeProps(e.guardReactiveProps(e.unref(i))))]),_:3},16)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(D).clickToNavigate&&e.unref(i).broaderView?"button":"div"),e.mergeProps({key:1,class:"vuecal__title"},e.toHandlers(b.value),{innerHTML:e.unref(i).title}),null,16,["innerHTML"]))]))]),_:3},8,["name"])]),e.unref(D).todayButton?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[z.$slots["today-button"]?e.renderSlot(z.$slots,"today-button",{key:0,navigate:()=>!e.unref(i).containsToday&&e.unref(i).goToToday(),active:e.unref(i).containsToday}):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(["vuecal__nav vuecal__nav--today vuecal__nav--default",{"vuecal__nav--active":e.unref(i).containsToday}]),onClick:y[1]||(y[1]=C=>!e.unref(i).containsToday&&e.unref(i).goToToday()),disabled:!!e.unref(i).containsToday,type:"button",innerHTML:e.unref(s).texts.today},null,10,Ne))],64)):e.createCommentVNode("",!0),e.createElementVNode("button",{class:e.normalizeClass(["vuecal__nav vuecal__nav--next",{"vuecal__nav--default":!z.$slots["next-button"]}]),onClick:y[2]||(y[2]=(...C)=>e.unref(i).next&&e.unref(i).next(...C)),type:"button"},[e.renderSlot(z.$slots,"next-button")],2)])):e.createCommentVNode("",!0)],64))]))}},Fe={key:0,class:"vuecal__headings"},Le={key:0,class:"vuecal__weekdays-headings"},He=["onClick"],We={class:"vuecal__weekday-day"},Re={key:0,class:"vuecal__weekday-date"},Ie={key:1,class:"vuecal__schedules-headings w-flex grow"},Ae=["innerHTML"],Xe={__name:"headings-bar",setup(u){const s=e.inject("vuecal"),{view:i,config:D,dateUtils:k}=s,b=e.computed(()=>D.xs?"day-xs":D.sm||i.isDays||i.isMonth?"day-sm":"day"),z=e.computed(()=>(i.isDay||i.isDays||i.isWeek||i.isMonth)&&!(i.isDay&&!D.schedules)),y=e.computed(()=>i.cellDates.slice(0,i.cols).map(({start:c})=>({id:de[c.getDay()],date:c,dateNumber:c.getDate(),day:k.formatDate(c,"dddd"),"day-sm":k.formatDate(c,"ddd"),"day-xs":k.formatDate(c,"dd"),isToday:k.isToday(c)}))),C={click:c=>{(i.isDays||i.isWeek)&&i.updateSelectedDate(c)}};return(c,h)=>z.value?(e.openBlock(),e.createElementBlock("div",Fe,[e.unref(i).isDay?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Le,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(T,N)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__weekday",{"vuecal__weekday--today":T.isToday}]),key:N,onClick:R=>C.click(T.date)},[e.renderSlot(c.$slots,"weekday-heading",{label:T[b.value],id:T.id,date:T.date},()=>[e.createElementVNode("span",We,e.toDisplayString(T[b.value]),1),e.unref(i).isMonth?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("strong",Re,e.toDisplayString(T.dateNumber),1))])],10,He))),128))])),e.unref(D).schedules?(e.openBlock(),e.createElementBlock("div",Ie,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(T,N)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:N},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(D).schedules,(R,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d},[c.$slots["schedule-heading"]?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["vuecal__schedule vuecal__schedule--heading",R.class])},[e.renderSlot(c.$slots,"schedule-heading",{schedule:R,view:e.unref(i)})],2)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["vuecal__schedule vuecal__schedule--heading",R.class]),innerHTML:R.label},null,10,Ae))],64))),128))],64))),128))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)}},Ge={class:"vuecal__time-column"},qe={__name:"time-column",setup(u){const s=e.inject("vuecal"),{config:i,texts:D}=s,k=e.computed(()=>{const b=[];for(let y=i.timeFrom;y<i.timeTo;y+=i.timeStep){const C=~~(y/60),c=y%60,h=D[y<720?"am":"pm"];b.push({minutesSum:y,hours:C,minutes:c,formatted12:`${C%12?C%12:12}${c?":"+c.toString().padStart(2,0):""}${h}`,formatted24:`${C.toString().padStart(2,0)}:${c.toString().padStart(2,0)}`})}return b});return(b,z)=>(e.openBlock(),e.createElementBlock("div",Ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(y,C)=>(e.openBlock(),e.createElementBlock("div",{class:"vuecal__time-cell",key:C},[e.renderSlot(b.$slots,"time-cell",{index:C,minutes:y.minutes,hours:y.hours,minutesSum:y.minutesSum,format12:y.formatted12,format24:y.formatted24},()=>[e.createElementVNode("label",null,e.toDisplayString(e.unref(i).twelveHour?y.formatted12:y.formatted24),1)])]))),128))]))}},Ze=["draggable"],Ue={class:"vuecal__event-details"},Je={class:"vuecal__event-title"},Ke={key:0,class:"vuecal__event-time"},Qe=["innerHTML"],De={__name:"event",props:{event:{type:Object,required:!0}},emits:["event-drag-start","event-drag-end","event-resize-start","event-resize-end"],setup(u,{emit:s}){const{config:i,view:D,dnd:k,touch:b,dateUtils:z}=e.inject("vuecal"),y=u,C=e.ref(null),c=e.reactive(y.event),h=e.reactive({dragging:!1,resizing:!1,fromResizer:!1,holding:!1,holdTimer:null,startX:0,startY:0,startPercentageX:0,startPercentageY:0,moveX:0,moveY:0,movePercentageX:0,movePercentageY:0,resizeStartDate:null,resizingOriginalEvent:null,resizingLastAcceptedEvent:null,cellEl:null,schedule:null}),T=e.computed(()=>i.editableEvents.drag&&c.draggable!==!1&&!c.background),N=e.computed(()=>i.time&&i.editableEvents.resize&&c.resizable!==!1&&!c.background);e.computed(()=>i.editableEvents.delete&&c.deletable!==!1&&!c.background);const R=e.computed(()=>{var r,l,_;return{[`vuecal__event--${c._.id}`]:!0,[c.class]:!!c.class,"vuecal__event--recurring":!!c.recurring,"vuecal__event--background":!!c.background,"vuecal__event--multiday":!!((r=c._)!=null&&r.multiday),"vuecal__event--cut-top":((l=c._)==null?void 0:l.startMinutes)<i.timeFrom,"vuecal__event--cut-bottom":((_=c._)==null?void 0:_.endMinutes)>i.timeTo||c.end.getDate()!==c.start.getDate(),"vuecal__event--dragging":!c._.draggingGhost&&c._.dragging,"vuecal__event--dragging-ghost":c._.draggingGhost,"vuecal__event--resizing":h.resizing}}),d=e.computed(()=>{const r=(D.isDay||D.isDays||D.isWeek)&&i.time;if(!r&&!c.backgroundColor&&!c.color)return!1;const l={backgroundColor:c.backgroundColor||null,color:c.color||null};if(r){const _=Math.max(i.timeFrom,c._.startMinutes),a=Math.min(i.timeTo,c._.endMinutes),B=re(_,i),Y=re(a,i)-B;l.top=`${B}%`,l.height=`${Y}%`}return l}),m=e.computed(()=>{const r={...i.eventListeners.event};Object.entries(r).forEach(([a,B])=>{["resize-end"].includes(a)||(r[a]=Y=>{Y.type!=="drop"&&B(Y.type?{e:Y,event:c}:Y)})});const l={...r};r.touchstart=a=>{var B;a.stopPropagation(),(B=l.touchstart)==null||B.call(l,{e:a,event:c})},r.mousedown=a=>{var B;a.stopPropagation(),t(a),(B=l.mousedown)==null||B.call(l,{e:a,event:c})};let _=null;return r.click=a=>{var B;(B=l.click)==null||B.call(l,{e:a,event:c}),_?_=clearTimeout(_):_=setTimeout(()=>{var Y;_=null,(Y=l["delayed-click"])==null||Y.call(l,{e:a,event:c})},400)},r.dblclick=a=>{l.dblclick?l.dblclick({e:a,event:c}):c.delete(1)},r}),t=r=>{var a,B,Y;const l=((a=r.touches)==null?void 0:a[0])||r;h.fromResizer=l.target.matches(".vuecal__event-resizer, .vuecal__event-resizer *");const _=C.value.getBoundingClientRect();h.startX=(((B=r.touches)==null?void 0:B[0])||r).clientX-_.left,h.startY=(((Y=r.touches)==null?void 0:Y[0])||r).clientY-_.top,h.startPercentageX=h.startX*100/_.width,h.startPercentageY=h.startY*100/_.height,h.cellEl=C.value.closest(".vuecal__cell"),h.resizeStartDate=c.start,F(r.type==="touchstart"?"touchmove":"mousemove",f),F(r.type==="touchstart"?"touchend":"mouseup",v,{once:!0}),h.holdTimer=setTimeout(()=>{var H,q;h.holding=!0,(q=(H=m.value).hold)==null||q.call(H,{e:r,event:c})},1e3)},f=async r=>{var _,a,B,Y;const l=((_=r.touches)==null?void 0:_[0])||r;if(h.fromResizer&&!h.resizing&&(h.resizing=!0,h.resizingOriginalEvent={...c,_:{...c._}},b.isResizingEvent=!0,(B=(a=m.value).resizeStart)==null||B.call(a,{e:r,event:c})),h.holdTimer=clearTimeout(h.holdTimer),h.holding=!1,h.cellEl){const{top:H,left:q,width:U,height:Q}=h.cellEl.getBoundingClientRect();h.moveX=l.clientX-q,h.moveY=l.clientY-H,h.movePercentageX=h.moveX*100/U,h.movePercentageY=h.moveY*100/Q}if(h.fromResizer){const{newStart:H,newEnd:q}=E(c);let U=!0;const{resize:Q}=(Y=i.eventListeners)==null?void 0:Y.event;Q&&(U=await Q({e:r,event:{...c,start:H,end:q},overlaps:c.getOverlappingEvents({start:H,end:q})})),U!==!1?(c.start=H,c.end=q,h.resizingLastAcceptedEvent&&(h.resizingLastAcceptedEvent=null)):Q&&(h.resizingLastAcceptedEvent={...c,_:{...c._}})}},v=async r=>{var l,_;if(h.holdTimer=clearTimeout(h.holdTimer),h.holding=!1,h.resizing){const{newStart:a,newEnd:B}=E(c);let Y=!0;const H=m.value["resize-end"];H&&(Y=await H({e:r,event:c,original:h.resizingOriginalEvent,overlaps:c.getOverlappingEvents({start:a,end:B})})),c.start=Y===!1?(h.resizingLastAcceptedEvent||h.resizingOriginalEvent).start:((l=h.resizingLastAcceptedEvent)==null?void 0:l.start)||a,c.end=Y===!1?(h.resizingLastAcceptedEvent||h.resizingOriginalEvent).end:((_=h.resizingLastAcceptedEvent)==null?void 0:_.end)||B,c._.duration<1&&(c.start=h.resizingOriginalEvent.start,c.end=h.resizingOriginalEvent.end),b.isResizingEvent=!1}document.removeEventListener(r.type==="touchend"?"touchmove":"mousemove",f),h.resizing=!1,h.fromResizer=!1,h.dragging=!1,h.startX=0,h.startY=0,h.moveX=0,h.moveY=0,h.startPercentageX=0,h.startPercentageY=0,h.movePercentageX=0,h.movePercentageY=0,h.cellEl=null,h.resizeStartDate=null,h.resizingOriginalEvent=null,h.resizingLastAcceptedEvent=null,h.schedule=null},E=r=>{const l=new Date(r.start.getFullYear(),r.start.getMonth(),r.start.getDate());new Date(l).setDate(l.getDate()+1);let a=oe(h.movePercentageY,i);if(a=Math.max(0,Math.min(a,24*60)),i.snapToInterval){const H=a+i.snapToInterval/2;a=H-H%i.snapToInterval}let B=r.start,Y=new Date(l.getTime()+a*6e4);return Y<h.resizeStartDate&&(B=Y,Y=h.resizeStartDate),{newStart:B,newEnd:Y}};e.onMounted(()=>c._.register(C.value));const P=[],F=(r,l,_)=>{document.addEventListener(r,l,_),P.push({event:r,handler:l,options:_})};return e.onBeforeUnmount(()=>{c._.unregister(),P.forEach(({event:r,handler:l,options:_})=>{document.removeEventListener(r,l,_)})}),(r,l)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"vuecal__event"},e.toHandlers(m.value,!0),{ref_key:"eventEl",ref:C,class:R.value,style:d.value,draggable:T.value,onDragstart:l[2]||(l[2]=_=>T.value&&e.unref(k).eventDragStart(_,c)),onDragend:l[3]||(l[3]=_=>T.value&&e.unref(k).eventDragEnd(_,c))}),[e.createElementVNode("div",Ue,[e.renderSlot(r.$slots,"event",{event:c},()=>[e.createElementVNode("div",Je,e.toDisplayString(c.title),1),e.unref(i).time?(e.openBlock(),e.createElementBlock("div",Ke,e.toDisplayString(c._[`startTimeFormatted${e.unref(i).twelveHour?12:24}`])+`
6
- - `+e.toDisplayString(c._[`endTimeFormatted${e.unref(i).twelveHour?12:24}`]),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"vuecal__event-content",innerHTML:c.content},null,8,Qe)])]),N.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"vuecal__event-resizer",onDragstart:l[0]||(l[0]=e.withModifiers(()=>{},["prevent","stop"]))},null,32)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"vuecal-delete-btn"},{default:e.withCtx(()=>[c._.deleting?(e.openBlock(),e.createElementBlock("div",{key:0,class:"vuecal__event-delete",onClick:l[1]||(l[1]=e.withModifiers(_=>c.delete(3),["stop"]))},"Delete")):e.createCommentVNode("",!0)]),_:1})],16,Ze))}},xe=["innerHTML"],et=["data-schedule"],tt={key:1,class:"vuecal__cell-date"},at={key:2,class:"vuecal__cell-content"},nt={key:3,class:"vuecal__cell-events"},st={key:1,class:"vuecal__cell-date"},lt={key:2,class:"vuecal__cell-content"},rt={key:3,class:"vuecal__cell-events"},ot={key:5,class:"vuecal__cell-events-count"},it=["title"],ct={__name:"cell",props:{start:{type:Date,required:!0},end:{type:Date,required:!0},index:{type:Number,required:!0}},setup(u){const s=u,i=e.inject("vuecal"),{view:D,config:k,dateUtils:b,eventsManager:z,dnd:y,touch:C}=i,c=e.computed(()=>b.isToday(s.start)),h=e.ref(null),T=e.ref([]),N=e.ref(!1),R=o=>{T.value.push(o.detail),N.value=!0},d=()=>setTimeout(()=>N.value=!1,300),m=e.reactive({dragging:!1,holding:!1,holdTimer:null,thresholdPassed:!1,startX:0,startY:0,moveX:0,moveY:0,startPercentageX:0,startPercentageY:0,movePercentageX:0,movePercentageY:0,schedule:null}),t=e.ref(!1),f=e.ref({cellOverlaps:{},longestStreak:0}),v=e.computed(()=>{let o=Math.min(m.startPercentageY,m.movePercentageY),M=Math.max(m.startPercentageY,m.movePercentageY),S=oe(o,k),$=oe(M,k);return k.snapToInterval&&(S=b.snapToInterval(S,k.snapToInterval),$=b.snapToInterval($,k.snapToInterval),o=re(S,k),M=re($,k)),{style:{top:o+"%",height:Math.abs(M-o)+"%"},startMinutes:S,endMinutes:$,start:b.formatMinutes(S),end:b.formatMinutes($),...m.schedule?{schedule:m.schedule}:{}}}),E=e.computed(()=>{const o=k.editableEvents.create&&(m.dragging||t.value),M=k.eventCreateMinDrag&&m.thresholdPassed||!k.eventCreateMinDrag;return o&&M}),P=e.computed(()=>{var J;const o=new Date,M=D.start.getFullYear(),S=D.start.getMonth(),$=s.start.getFullYear(),j=s.start.getMonth();return{[`vuecal__cell--${de[s.start.getDay()]}`]:D.isDay||D.isDays||D.isWeek||D.isMonth,[`vuecal__cell--${_e[j]}`]:D.isYear,[`vuecal__cell--${$}`]:D.isYears,"vuecal__cell--today":c.value,"vuecal__cell--current-month":D.isYear&&$===o.getFullYear()&&j===o.getMonth(),"vuecal__cell--current-year":D.isYears&&$===o.getFullYear(),"vuecal__cell--out-of-range":D.isMonth&&($!==M||j!==S),"vuecal__cell--before-min":Q.value&&q.value,"vuecal__cell--after-max":Q.value&&U.value,"vuecal__cell--disabled":Q.value,"vuecal__cell--selected":D.selectedDate&&D.selectedDate.getTime()>=s.start.getTime()&&D.selectedDate.getTime()<=s.end.getTime(),"vuecal__cell--has-schedules":(J=k.schedules)==null?void 0:J.length,"vuecal__cell--dragging":m.dragging,"vuecal__cell--has-events":l.value.length}}),F=e.computed(()=>b.formatDate(s.start)),r=e.computed(()=>{switch(D.id){case"day":return"";case"days":return k.availableViews.days.rows>1&&b.formatDate(s.start,"D"),"";case"week":return"";case"month":return b.formatDate(s.start,"D");case"year":return b.formatDate(s.start,k.xs?"MMM":"MMMM");case"years":return b.formatDate(s.start,"YYYY")}}),l=e.computed(()=>k.datePicker?[]:z.getEventsByDate(F.value,!0,!0).filter(o=>!T.value.includes(o._.id))),_=e.computed(()=>l.value.filter(o=>!o.background)),a=e.computed(()=>{var o;return(o=k.schedules)==null?void 0:o.reduce((M,S)=>(M[S.id]=l.value.filter($=>$.schedule===S.id),M),{})}),B=e.computed(()=>{const o={};for(const M of l.value){const S=M._.id,{maxConcurrent:$=1,position:j=0}=f.value.cellOverlaps[S]||{};o[S]={width:`${100/$}%`,left:`${100/$*j}%`}}return o}),Y=e.computed(()=>D.isMonth&&k.eventCount&&!k.eventsOnMonthView&&_.value.length),H=e.computed(()=>{var S;if(!k.specialHours||D.isMonth||D.isYear||D.isYears)return;const o=de[s.start.getDay()];let M=(S=k.specialHours)==null?void 0:S[o];if(M)return Array.isArray(M)||(M=[M]),M.map($=>{let{from:j,to:L,class:J,label:p}=$;if(isNaN(j)||isNaN(L)||k.timeFrom>=L||k.timeTo<=j)return;j=Math.max(k.timeFrom,j),L=Math.min(k.timeTo,L);const V=re(j,k),O=re(L,k)-V;return{style:{top:`${V}%`,height:`${O}%`},label:p,class:J}}).filter($=>!!$)}),q=e.computed(()=>k.minTimestamp!==null&&k.minTimestamp>s.end.getTime()),U=e.computed(()=>k.maxTimestamp&&k.maxTimestamp<s.start.getTime()),Q=e.computed(()=>{const{disableDays:o}=k,M=D.isYear||D.isYears;return o.length&&o.includes(b.formatDate(s.start))&&!M?!0:q.value||U.value}),x=e.reactive({show:e.computed(()=>{if(!(!D.isDay&&!D.isDays&&!D.isWeek)&&!(!c.value||!k.time)&&!(k.timeFrom>b.dateToMinutes(D.now))&&!(b.dateToMinutes(D.now)>k.timeTo))return!0}),nowInMinutes:e.computed(()=>b.dateToMinutes(D.now)),todaysTimePosition:e.computed(()=>re(x.nowInMinutes,k)),style:e.computed(()=>`top: ${x.todaysTimePosition}%`),currentTime:e.computed(()=>b.formatTime(D.now))}),se=e.computed(()=>{if(Q.value)return{};const o={...k.eventListeners.cell};Object.entries(o).forEach(([$,j])=>{o[$]=L=>{var J,p,V;(V=(p=L.target||((J=L.e)==null?void 0:J.target)).closest)!=null&&V.call(p,".vuecal__event")||j(L.type?{e:L,cell:Z.value,cursor:A.value}:L)}});const M={...o};let S=null;return o.click=$=>{var j;ee(),(j=M.click)==null||j.call(M,{e:$,cell:Z.value,cursor:A.value}),S?S=clearTimeout(S):S=setTimeout(()=>{var L;S=null,(L=M["delayed-click"])==null||L.call(M,{e:$,cell:Z.value,cursor:A.value})},400)},(k.time&&D.isDay||D.isDays||D.isWeek)&&(o.touchstart=$=>{var j;n($.e||$),(j=M.touchstart)==null||j.call(M,{e:$,cell:Z.value,cursor:A.value})},o.mousedown=$=>{var j;n($.e||$),(j=M.mousedown)==null||j.call(M,{e:$,cell:Z.value,cursor:A.value})}),M.dblclick&&(o.dblclick=$=>{var G,K;const j=(((G=$.touches)==null?void 0:G[0])||$).clientY,{top:L}=h.value.getBoundingClientRect(),J=fe(j-L,h.value),p=oe(J,k),V=new Date(s.start);V.setMinutes(p);const O={y:J,date:V};(K=M.dblclick)==null||K.call(M,{e:$,cell:Z.value,cursor:O})}),k.editableEvents.drag&&(o.dragenter=$=>y.cellDragEnter($,Z.value),o.dragover=$=>y.cellDragOver($,Z.value),o.dragleave=$=>y.cellDragLeave($,Z.value),o.drop=$=>y.cellDragDrop($,Z.value)),o}),Z=e.computed(()=>({start:s.start,end:s.end,events:l,...m.schedule?{schedule:m.schedule}:{}})),A=e.computed(()=>{const o=oe(m.movePercentageY||m.startPercentageY,k),M=new Date(s.start);return M.setMinutes(o),{x:m.movePercentageX||m.startPercentageX,y:m.movePercentageY||m.startPercentageY,date:M}}),ee=()=>{D.updateSelectedDate(s.start),k.clickToNavigate&&((D.isMonth||D.isDays||D.isWeek)&&k.availableViews.day?D.switch("day"):D.isYear&&k.availableViews.month?D.switch("month"):D.isYears&&k.availableViews.year&&D.switch("year")),D.updateViewDate(s.start)},n=o=>{var S,$;m.schedule=~~o.target.dataset.schedule;const M=h.value.getBoundingClientRect();m.startX=(((S=o.touches)==null?void 0:S[0])||o).clientX-M.left,m.startY=((($=o.touches)==null?void 0:$[0])||o).clientY-M.top,m.startPercentageX=m.startX*100/M.width,m.startPercentageY=m.startY*100/M.height,m.thresholdPassed=!1,document.addEventListener(o.type==="touchstart"?"touchmove":"mousemove",w),document.addEventListener(o.type==="touchstart"?"touchend":"mouseup",g,{once:!0}),m.holdTimer=setTimeout(()=>{var j,L;m.holding=!0,(L=(j=se.value).hold)==null||L.call(j,{e:o,cell:Z.value,cursor:A.value})},1e3)},w=o=>{var S,$,j,L,J,p;m.dragging||(C.isDraggingCell=!0,($=(S=se.value).dragStart)==null||$.call(S,{e:o,cell:Z.value,cursor:A.value})),m.dragging=!0,m.holdTimer=clearTimeout(m.holdTimer),m.holding=!1;const M=h.value.getBoundingClientRect();m.moveX=(((j=o.touches)==null?void 0:j[0])||o).clientX-M.left,m.moveY=(((L=o.touches)==null?void 0:L[0])||o).clientY-M.top,m.movePercentageX=m.moveX*100/M.width,m.movePercentageY=m.moveY*100/M.height,k.eventCreateMinDrag&&Math.abs(m.startY-m.moveY)>k.eventCreateMinDrag&&(m.thresholdPassed=!0),(p=(J=se.value).drag)==null||p.call(J,{e:o,cell:Z.value,cursor:A.value})},g=async o=>{var M,S;document.removeEventListener(o.type==="touchend"?"touchmove":"mousemove",w,{passive:!1}),m.dragging&&((S=(M=se.value).dragEnd)==null||S.call(M,{e:o,cell:Z.value,cursor:A.value}),C.isDraggingCell=!1,k.editableEvents.create&&(t.value=!0,await I(o),t.value=!1)),m.holdTimer=clearTimeout(m.holdTimer),m.holding=!1,m.dragging=!1,m.startX=0,m.startY=0,m.moveX=0,m.moveY=0,m.startPercentageX=0,m.startPercentageY=0,m.movePercentageX=0,m.movePercentageY=0,m.thresholdPassed=!1,m.schedule=null},I=async o=>{if(!E.value)return;let{start:M,end:S,startMinutes:$,endMinutes:j}=v.value;M=new Date(s.start),M.setMinutes($),S=new Date(s.start),S.setMinutes(j);let L={...v.value,start:M,end:S};const{create:J}=k.eventListeners.event;if(typeof J=="function"){const p=L;L=await new Promise(V=>J({e:o,event:L,cell:Z.value,resolve:V,cursor:A.value})),L&&typeof L=="object"&&D.createEvent(L),L&&typeof L=="boolean"&&D.createEvent(p)}else D.createEvent(L)},X=()=>{Object.keys(se.value).forEach(o=>{var M;(M=h.value)==null||M.removeEventListener(o,se.value[o])})},ae=()=>{f.value=z.getCellOverlappingEvents(F.value)};return e.watch(()=>_.value.map(o=>`${o._.id}${o.start.getTime()}${o.end.getTime()}`).join(),async()=>{await e.nextTick(),ae()},{immediate:!0,flush:"post"}),e.onBeforeUnmount(async()=>{T.value.forEach(o=>z.deleteEvent(o,3)),X(),await e.nextTick()}),(o,M)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["vuecal__cell",P.value],ref_key:"cellEl",ref:h},e.toHandlers(se.value,!0)),[o.$slots.cell?e.renderSlot(o.$slots,"cell",{key:0,start:u.start,end:u.end,index:u.index,events:l.value}):e.createCommentVNode("",!0),H.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(H.value,(S,$)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__special-hours",S.class]),style:e.normalizeStyle(S.style),innerHTML:S.label||""},null,14,xe))),256)):e.createCommentVNode("",!0),!o.$slots.cell&&e.unref(k).schedules?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(e.unref(k).schedules,S=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__schedule vuecal__schedule--cell",S.class]),key:S.id,style:e.normalizeStyle(S.style||null),"data-schedule":S.id},[o.$slots["cell-events"]?e.renderSlot(o.$slots,"cell-events",{key:0,start:u.start,end:u.end,events:l.value}):e.createCommentVNode("",!0),r.value||o.$slots["cell-date"]?(e.openBlock(),e.createElementBlock("div",tt,[e.renderSlot(o.$slots,"cell-date",{start:u.start,end:u.end,events:l.value},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])])):e.createCommentVNode("",!0),o.$slots["cell-content"]?(e.openBlock(),e.createElementBlock("div",at,[e.renderSlot(o.$slots,"cell-content",{start:u.start,end:u.end,events:l.value})])):e.createCommentVNode("",!0),o.$slots["cell-events"]&&l.value.length?(e.openBlock(),e.createElementBlock("div",nt,[e.renderSlot(o.$slots,"cell-events",{start:u.start,end:u.end,events:l.value})])):l.value.length||N.value?(e.openBlock(),e.createBlock(e.TransitionGroup,{key:4,class:"vuecal__cell-events",name:"vuecal-event-delete",onBeforeLeave:M[0]||(M[0]=$=>N.value=!0),onAfterLeave:d,tag:"div"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value[S.id],$=>(e.openBlock(),e.createBlock(De,{key:$._.id,event:$,onEventDeleted:R,style:e.normalizeStyle(B.value[$._.id])},e.createSlots({_:2},[o.$slots.event?{name:"event",fn:e.withCtx(j=>[e.renderSlot(o.$slots,"event",e.mergeProps({ref_for:!0},j))]),key:"0"}:void 0]),1032,["event","style"]))),128))]),_:2},1024)):e.createCommentVNode("",!0),E.value&&m.schedule===S.id?(e.openBlock(),e.createElementBlock("div",{key:5,class:"vuecal__event-placeholder",style:e.normalizeStyle(v.value.style)},e.toDisplayString(v.value.start)+" - "+e.toDisplayString(v.value.end),5)):e.createCommentVNode("",!0)],14,et))),128)):e.createCommentVNode("",!0),!o.$slots.cell&&!e.unref(k).schedules?(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[o.$slots["cell-events"]?e.renderSlot(o.$slots,"cell-events",{key:0}):e.createCommentVNode("",!0),r.value||o.$slots["cell-date"]?(e.openBlock(),e.createElementBlock("div",st,[e.renderSlot(o.$slots,"cell-date",{start:u.start,end:u.end,events:l.value},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])])):e.createCommentVNode("",!0),o.$slots["cell-content"]?(e.openBlock(),e.createElementBlock("div",lt,[e.renderSlot(o.$slots,"cell-content",{start:u.start,end:u.end,events:l.value})])):e.createCommentVNode("",!0),o.$slots["cell-events"]&&l.value.length?(e.openBlock(),e.createElementBlock("div",rt,[e.renderSlot(o.$slots,"cell-events",{start:u.start,end:u.end,events:l.value})])):(l.value.length||N.value)&&!(e.unref(D).isMonth&&!e.unref(k).eventsOnMonthView)?(e.openBlock(),e.createBlock(e.TransitionGroup,{key:4,class:"vuecal__cell-events",name:"vuecal-event-delete",onBeforeLeave:M[1]||(M[1]=S=>N.value=!0),onAfterLeave:d,tag:"div"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,S=>(e.openBlock(),e.createBlock(De,{key:S._.id,event:S,onEventDeleted:R,style:e.normalizeStyle(B.value[S._.id])},e.createSlots({_:2},[o.$slots.event?{name:"event",fn:e.withCtx($=>[e.renderSlot(o.$slots,"event",e.mergeProps({ref_for:!0},$))]),key:"0"}:void 0]),1032,["event","style"]))),128))]),_:3})):e.createCommentVNode("",!0),E.value?(e.openBlock(),e.createElementBlock("div",{key:5,class:"vuecal__event-placeholder",style:e.normalizeStyle(v.value.style)},e.toDisplayString(v.value.start)+" - "+e.toDisplayString(v.value.end),5)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),o.$slots["event-count"]?e.renderSlot(o.$slots,"event-count",{key:4,events:_.value}):Y.value?(e.openBlock(),e.createElementBlock("div",ot,e.toDisplayString(_.value.length),1)):e.createCommentVNode("",!0),x.show?(e.openBlock(),e.createElementBlock("div",{key:6,class:"vuecal__now-line",style:e.normalizeStyle(x.style),title:x.currentTime},[e.createElementVNode("span",null,e.toDisplayString(x.currentTime),1)],12,it)):e.createCommentVNode("",!0)],16))}},dt={__name:"body",setup(u){const s=e.inject("vuecal");let{view:i,config:D,dateUtils:k}=s;const b=e.ref(null),z=e.ref(null),y=e.computed(()=>({"--vuecal-grid-columns":i.cols,"--vuecal-grid-rows":i.rows})),C=e.computed(()=>{const T=k.formatTime(oe(z.value,D));return{style:{top:z.value+"%"},time:T}}),c=T=>{var d;if(i.isMonth||i.isYear||i.isYears)return;const N=(((d=T.touches)==null?void 0:d[0])||T).clientY,{top:R}=b.value.getBoundingClientRect();z.value=fe(N-R,b.value)},h=()=>{z.value=null};return e.onMounted(()=>{b.value.addEventListener("mousemove",c),b.value.addEventListener("touchmove",c),b.value.addEventListener("mouseleave",h),b.value.addEventListener("touchend",h)}),e.onBeforeUnmount(()=>{b.value&&(b.value.removeEventListener("mousemove",c),b.value.removeEventListener("touchmove",c),b.value.removeEventListener("mouseleave",h),b.value.removeEventListener("touchend",h))}),(T,N)=>(e.openBlock(),e.createElementBlock("div",{class:"vuecal__body",ref_key:"bodyEl",ref:b,style:e.normalizeStyle(y.value)},[e.createVNode(e.Transition,{name:"vuecal-shrink"},{default:e.withCtx(()=>[e.unref(D).timeAtCursor&&z.value!==null?(e.openBlock(),e.createElementBlock("div",{key:0,class:"vuecal__time-at-cursor",style:e.normalizeStyle(C.value.style)},[e.createElementVNode("label",null,e.toDisplayString(C.value.time),1)],4)):e.createCommentVNode("",!0)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i).cellDates,(R,d)=>(e.openBlock(),e.createBlock(ct,{key:d,start:R.start,end:R.end,index:d},e.createSlots({_:2},[T.$slots.cell?{name:"cell",fn:e.withCtx(m=>[e.renderSlot(T.$slots,"cell",e.mergeProps({ref_for:!0},m))]),key:"0"}:void 0,T.$slots["cell-date"]?{name:"cell-date",fn:e.withCtx(m=>[e.renderSlot(T.$slots,"cell-date",e.mergeProps({ref_for:!0},m))]),key:"1"}:void 0,T.$slots["cell-content"]?{name:"cell-content",fn:e.withCtx(m=>[e.renderSlot(T.$slots,"cell-content",e.mergeProps({ref_for:!0},m))]),key:"2"}:void 0,T.$slots["cell-events"]?{name:"cell-events",fn:e.withCtx(m=>[e.renderSlot(T.$slots,"cell-events",e.mergeProps({ref_for:!0},m))]),key:"3"}:T.$slots.event?{name:"event",fn:e.withCtx(m=>[e.renderSlot(T.$slots,"event",e.mergeProps({ref_for:!0},m))]),key:"4"}:T.$slots["event-count"]?{name:"event-count",fn:e.withCtx(m=>[e.renderSlot(T.$slots,"event-count",e.mergeProps({ref_for:!0},m))]),key:"5"}:void 0]),1032,["start","end","index"]))),128))],4))}},ut=["data-locale"],mt={class:"vuecal__scrollable-wrap"},ft={key:1,class:"vuecal__week-numbers"},gt={class:"vuecal__week-number"},ht={class:"vuecal__body-wrap"},yt={__name:"index",props:Be,emits:["ready","view-change","update:view","update:selectedDate","update:viewDate","update:events","event-delete","event-created","event-dropped","event-change"],setup(u,{expose:s,emit:i}){const D=u,k=i,b=e.useTemplateRef("vuecal-el"),z=Se({props:D,emit:k,attrs:e.useAttrs(),vuecalEl:b,uid:e.useId()}),{config:y,view:C,dateUtils:c,touch:h}=z,T=e.computed(()=>y.time&&(C.isDay||C.isDays||C.isWeek)),N=e.computed(()=>Array(C.rows).fill().map((t,f)=>c.getWeek(c.addDays(C.firstCellDate,7*f)))),R=e.computed(()=>{var t;return{"vuecal--ready":y.ready,[`vuecal--${y.theme}-theme`]:y.theme,[`vuecal--${y.size}`]:!0,"vuecal--date-picker":y.datePicker,"vuecal--dark":y.dark,"vuecal--light":!y.dark,[`vuecal--${C.id}-view`]:!0,"vuecal--view-has-time":T.value,"vuecal--timeless":!y.time,"vuecal--dragging-cell":h.isDraggingCell,"vuecal--dragging-event":h.isDraggingEvent,"vuecal--resizing-event":h.isResizingEvent,"vuecal--has-schedules":(t=y.schedules)==null?void 0:t.length}}),d=e.computed(()=>({"--vuecal-time-cell-height":y.timeCellHeight&&`${y.timeCellHeight}px`})),m=e.computed(()=>{var t,f;return{"vuecal__scrollable--row":T.value||y.weekNumbers&&C.isMonth,[`vuecal__scrollable--${C.id}-view`]:!0,"vuecal__scrollable--has-schedules":(t=y.schedules)==null?void 0:t.length,"vuecal__scrollable--no-schedules":!((f=y.schedules)!=null&&f.length)}});return e.onMounted(async()=>{await e.nextTick(),k("ready",{config:y,view:C})}),e.watch(()=>y.locale,t=>y.loadTexts(t)),e.provide("vuecal",z),s({view:z.view}),(t,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal",R.value]),ref:"vuecal-el","data-locale":t.locale,style:e.normalizeStyle(d.value)},[t.$slots.diy?e.renderSlot(t.$slots,"diy",{key:0,vuecal:e.unref(z),view:e.unref(C),availableViews:e.unref(y).availableViews}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createVNode(je,null,e.createSlots({_:2},[t.$slots.header?{name:"header",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"header",e.normalizeProps(e.guardReactiveProps(v)))]),key:"0"}:void 0,!t.$slots.header&&t.$slots["previous-button"]?{name:"previous-button",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"previous-button",e.normalizeProps(e.guardReactiveProps(v)))]),key:"1"}:void 0,!t.$slots.header&&t.$slots["next-button"]?{name:"next-button",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"next-button",e.normalizeProps(e.guardReactiveProps(v)))]),key:"2"}:void 0,!t.$slots.header&&t.$slots["today-button"]?{name:"today-button",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"today-button",e.normalizeProps(e.guardReactiveProps(v)))]),key:"3"}:void 0,!t.$slots.header&&t.$slots.title?{name:"title",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"title",e.normalizeProps(e.guardReactiveProps(v)))]),key:"4"}:void 0,!t.$slots.header&&t.$slots["schedule-heading"]?{name:"schedule-heading",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"schedule-heading",e.normalizeProps(e.guardReactiveProps(v)))]),key:"5"}:void 0]),1024),e.createElementVNode("div",mt,[e.createVNode(e.Transition,{name:`vuecal-slide-fade--${e.unref(C).transitionDirection}`},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__scrollable",m.value]),key:e.unref(C).id+e.unref(C).start.getTime()},[T.value?(e.openBlock(),e.createBlock(qe,{key:0},e.createSlots({_:2},[t.$slots["time-cell"]?{name:"time-cell",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"time-cell",e.normalizeProps(e.guardReactiveProps(v)))]),key:"0"}:void 0]),1024)):e.createCommentVNode("",!0),e.unref(y).weekNumbers&&e.unref(C).isMonth?(e.openBlock(),e.createElementBlock("div",ft,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,v=>(e.openBlock(),e.createElementBlock("div",gt,[e.renderSlot(t.$slots,"week-number",{},()=>[e.createElementVNode("small",null,e.toDisplayString(v),1)])]))),256))])):e.createCommentVNode("",!0),e.createElementVNode("div",ht,[e.createVNode(Xe,null,e.createSlots({_:2},[t.$slots["weekday-heading"]?{name:"weekday-heading",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"weekday-heading",e.normalizeProps(e.guardReactiveProps(v)))]),key:"0"}:void 0,t.$slots["schedule-heading"]?{name:"schedule-heading",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"schedule-heading",e.normalizeProps(e.guardReactiveProps(v)))]),key:"1"}:void 0]),1024),e.createVNode(dt,null,e.createSlots({_:2},[t.$slots.cell?{name:"cell",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"cell",e.normalizeProps(e.guardReactiveProps(v)))]),key:"0"}:void 0,!t.$slots.cell&&t.$slots["cell-date"]?{name:"cell-date",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"cell-date",e.normalizeProps(e.guardReactiveProps(v)))]),key:"1"}:void 0,!t.$slots.cell&&t.$slots["cell-content"]?{name:"cell-content",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"cell-content",e.normalizeProps(e.guardReactiveProps(v)))]),key:"2"}:void 0,!t.$slots.cell&&t.$slots["cell-events"]?{name:"cell-events",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"cell-events",e.normalizeProps(e.guardReactiveProps(v)))]),key:"3"}:void 0,!t.$slots.cell&&t.$slots.event?{name:"event",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"event",e.normalizeProps(e.guardReactiveProps(v)))]),key:"4"}:void 0,!t.$slots.cell&&t.$slots["event-count"]?{name:"event-count",fn:e.withCtx(v=>[e.renderSlot(t.$slots,"event-count",e.normalizeProps(e.guardReactiveProps(v)))]),key:"5"}:void 0]),1024)])],2))]),_:3},8,["name"])])],64))],14,ut))}},pt=u=>{ie.texts={...te.texts,...u},ie.dateUtils.updateTexts(ie.texts)},{addDatePrototypes:vt,removeDatePrototypes:Dt,updateTexts:kt,addDays:wt,subtractDays:_t,addHours:bt,subtractHours:Tt,addMinutes:Mt,subtractMinutes:$t,getWeek:Et,isToday:St,isSameDate:Ct,isInRange:Bt,isLeapYear:Vt,getPreviousFirstDayOfWeek:Yt,stringToDate:Pt,dateToMinutes:zt,countDays:Ot,datesInSameTimeStep:Nt,isValid:jt,formatDate:Ft,formatDateLite:Lt,formatTime:Ht,formatTimeLite:Wt,formatMinutes:Rt}=ie.dateUtils;W.VueCal=yt,W.addDatePrototypes=vt,W.addDays=wt,W.addHours=bt,W.addMinutes=Mt,W.countDays=Ot,W.dateToMinutes=zt,W.datesInSameTimeStep=Nt,W.formatDate=Ft,W.formatDateLite=Lt,W.formatMinutes=Rt,W.formatTime=Ht,W.formatTimeLite=Wt,W.getPreviousFirstDayOfWeek=Yt,W.getWeek=Et,W.isInRange=Bt,W.isLeapYear=Vt,W.isSameDate=Ct,W.isToday=St,W.isValidDate=jt,W.removeDatePrototypes=Dt,W.stringToDate=Pt,W.subtractDays=_t,W.subtractHours=Tt,W.subtractMinutes=$t,W.updateTexts=kt,W.useLocale=pt,Object.defineProperty(W,Symbol.toStringTag,{value:"Module"})});
5
+ */const te={texts:{weekDays:Array(7).fill(""),weekDaysShort:[],months:Array(12).fill(""),years:"",year:"",month:"",week:"",day:"",today:"",noEvent:"",allDay:"",deleteEvent:"",createEvent:"",dateFormat:"dddd MMMM D, YYYY",am:"am",pm:"pm",truncations:!0},availableViews:{day:{cols:1,rows:1},days:{cols:10,rows:1},week:{cols:7,rows:1},month:{cols:7,rows:6},year:{cols:4,rows:3},years:{cols:5,rows:5}}},ky=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],ke=["sun","mon","tue","wed","thu","fri","sat"],py=ke.reduce((k,a,i)=>(k[a]=i||7,k),{}),wy=(k,a,i)=>{const{dateUtils:c}=k,p=!1,b=e.computed(()=>{if(F.value[a.view])return a.view;const h=a.datePicker?"month":"week",M=a.view||h;return F.value[M]?M:(console.warn(`Vue Cal: the provided or default view \`${M}\` is either invalid or not in the list of available views. The first available view will be chosen: \`${Object.keys(F.value)[0]}\`.`),Object.keys(F.value)[0])}),O=e.computed(()=>a.sm&&!a.xs),y=e.computed(()=>a.xs||a.datePicker),j=e.computed(()=>a.clickToNavigate||a.datePicker&&a.clickToNavigate!==!1),m=e.computed(()=>{const h={cell:{},event:{}},M=S=>S.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();for(const[S,r]of Object.entries(i)){const[H,R,U]=S.match(/^on(Cell|Event)(.+)$/)||[];H&&(h[R.toLowerCase()][M(U).replace(/^-+|-+$/g,"")]=r)}return h}),u=e.computed(()=>{var M;const h={};return a.hideWeekends&&(h[6]=!0)&&(h[7]=!0),(M=a.hideWeekdays)!=null&&M.length&&a.hideWeekdays.forEach(S=>h[py[S]]=!0),h}),g=e.computed(()=>a.hideWeekends||u.value[6]&&u.value[7]),F=e.computed(()=>{const h=a.datePicker;let M=0,S={};const r=a.views;return h&&!r?{month:{...te.availableViews.month},year:{...te.availableViews.year},years:{...te.availableViews.years}}:(r?(Array.isArray(r)?S=r.reduce((H,R)=>(typeof R=="string"&&te.availableViews[R]?H[R]=te.availableViews[R]:M++,H),{}):typeof r=="object"&&(S=Object.entries(r).reduce((H,[R,U])=>{const{cols:Z,rows:ee}=te.availableViews[R];return H[R]={cols:U.cols||Z,rows:U.rows||ee},H},{})),M&&console.warn("Vue Cal: the provided `views` prop contains invalid views that will be ignored."),Object.keys(S).length||(console.warn("Vue Cal: No valid view in the provided `views` prop. Falling back to default views."),S={...te.availableViews})):S={...te.availableViews},S)}),V=e.computed(()=>a.datePicker?"month":F.value.week?"week":Object.keys(F.value)[0]),n=e.computed(()=>{if(typeof a.selectedDate=="string")return c.stringToDate(a.selectedDate);if(a.selectedDate instanceof Date)return a.selectedDate;a.selectedDate?console.warn("Vue Cal: The provided selected date is invalid:",a.selectedDate):console.log("Vue Cal: Info - The provided selected date is undefined.")}),s=e.computed(()=>{if(!a.disableDays)return[];const h=[];if(Array.isArray(a.disableDays))for(let M of a.disableDays){let S=M;typeof M=="string"?S=c.stringToDate(M):M instanceof Date&&(M=c.formatDate(M,"YYYY-MM-DD")),S instanceof Date&&!isNaN(S.getTime())?h.push(M):console.warn("Vue Cal: The provided `disableDays` prop contains an invalid date:",M)}else console.warn("Vue Cal: The provided `disableDays` prop is invalid:",a.disableDays);return h}),t=e.computed(()=>{let h=null;return a.minDate&&typeof a.minDate=="string"?h=c.stringToDate(a.minDate):a.minDate&&a.minDate instanceof Date&&(h=a.minDate),(h==null?void 0:h.getTime())||null}),w=e.computed(()=>{let h=null;return a.maxDate&&typeof a.maxDate=="string"?h=c.stringToDate(a.maxDate):a.maxDate&&a.maxDate instanceof Date&&(h=a.maxDate),(h==null?void 0:h.getTime())||null}),d=e.computed(()=>{var S;const{view:h}=k;return a.schedules.length&&(h.isDay||h.isDays||h.isWeek)&&((S=a.schedules)==null?void 0:S.map((r,H)=>({...r,id:r.id??H+1})))||void 0}),Y=e.computed(()=>{const h={drag:!0,resize:!0,delete:!0,create:!0};return a.editableEvents===!0?h:a.editableEvents===!1?Object.keys(h).map(M=>h[M]=!1):{...h,...a.editableEvents}}),z=e.computed(()=>{const{view:h}=k,{eventCount:M}=a;return(Array.isArray(M)?M.includes(h.id):M)&&(h.isMonth&&!a.eventsOnMonthView||h.isYear)}),B=e.computed(()=>a.allDayEvents&&a.time!==!1&&!b.isMonth),f=e.computed(()=>a.timeAtCursor&&a.time!==!1),$=async h=>{var S;let M=Object.assign({"../i18n/ar.json":()=>Promise.resolve().then(()=>Gm).then(r=>r.default),"../i18n/bg.json":()=>Promise.resolve().then(()=>Xm).then(r=>r.default),"../i18n/bn.json":()=>Promise.resolve().then(()=>qm).then(r=>r.default),"../i18n/bs.json":()=>Promise.resolve().then(()=>Km).then(r=>r.default),"../i18n/ca.json":()=>Promise.resolve().then(()=>Um).then(r=>r.default),"../i18n/cs.json":()=>Promise.resolve().then(()=>Zm).then(r=>r.default),"../i18n/da.json":()=>Promise.resolve().then(()=>Qm).then(r=>r.default),"../i18n/de.json":()=>Promise.resolve().then(()=>xm).then(r=>r.default),"../i18n/el.json":()=>Promise.resolve().then(()=>eh).then(r=>r.default),"../i18n/en-gb.json":()=>Promise.resolve().then(()=>th).then(r=>r.default),"../i18n/en-us.json":()=>Promise.resolve().then(()=>_y).then(r=>r.default),"../i18n/es.json":()=>Promise.resolve().then(()=>ah).then(r=>r.default),"../i18n/et.json":()=>Promise.resolve().then(()=>nh).then(r=>r.default),"../i18n/fa.json":()=>Promise.resolve().then(()=>oh).then(r=>r.default),"../i18n/fi.json":()=>Promise.resolve().then(()=>sh).then(r=>r.default),"../i18n/fr.json":()=>Promise.resolve().then(()=>rh).then(r=>r.default),"../i18n/he.json":()=>Promise.resolve().then(()=>lh).then(r=>r.default),"../i18n/hr.json":()=>Promise.resolve().then(()=>ch).then(r=>r.default),"../i18n/hu.json":()=>Promise.resolve().then(()=>dh).then(r=>r.default),"../i18n/id.json":()=>Promise.resolve().then(()=>ih).then(r=>r.default),"../i18n/is.json":()=>Promise.resolve().then(()=>uh).then(r=>r.default),"../i18n/it.json":()=>Promise.resolve().then(()=>yh).then(r=>r.default),"../i18n/ja.json":()=>Promise.resolve().then(()=>mh).then(r=>r.default),"../i18n/ka.json":()=>Promise.resolve().then(()=>hh).then(r=>r.default),"../i18n/ko.json":()=>Promise.resolve().then(()=>fh).then(r=>r.default),"../i18n/lt.json":()=>Promise.resolve().then(()=>vh).then(r=>r.default),"../i18n/mn.json":()=>Promise.resolve().then(()=>gh).then(r=>r.default),"../i18n/nl.json":()=>Promise.resolve().then(()=>$h).then(r=>r.default),"../i18n/no.json":()=>Promise.resolve().then(()=>Dh).then(r=>r.default),"../i18n/pl.json":()=>Promise.resolve().then(()=>kh).then(r=>r.default),"../i18n/pt-br.json":()=>Promise.resolve().then(()=>ph).then(r=>r.default),"../i18n/pt-pt.json":()=>Promise.resolve().then(()=>wh).then(r=>r.default),"../i18n/ro.json":()=>Promise.resolve().then(()=>Eh).then(r=>r.default),"../i18n/ru.json":()=>Promise.resolve().then(()=>bh).then(r=>r.default),"../i18n/sk.json":()=>Promise.resolve().then(()=>Mh).then(r=>r.default),"../i18n/sl.json":()=>Promise.resolve().then(()=>_h).then(r=>r.default),"../i18n/sq.json":()=>Promise.resolve().then(()=>Sh).then(r=>r.default),"../i18n/sr.json":()=>Promise.resolve().then(()=>Th).then(r=>r.default),"../i18n/sv.json":()=>Promise.resolve().then(()=>Yh).then(r=>r.default),"../i18n/tr.json":()=>Promise.resolve().then(()=>Ch).then(r=>r.default),"../i18n/uk.json":()=>Promise.resolve().then(()=>Ph).then(r=>r.default),"../i18n/vi.json":()=>Promise.resolve().then(()=>jh).then(r=>r.default),"../i18n/zh-cn.json":()=>Promise.resolve().then(()=>Fh).then(r=>r.default),"../i18n/zh-hk.json":()=>Promise.resolve().then(()=>zh).then(r=>r.default)});{if(!M[`../i18n/${h}.json`]){console.warn(`Vue Cal: the locale \`${h}\` does not exist. Falling back to \`en-us\`.`),h="en-us";return}M=await((S=M[`../i18n/${h}.json`])==null?void 0:S.call(M))}k.texts=Object.assign(k.texts,Object.assign({...te.texts},M)),c.updateTexts(k.texts)},P=e.reactive(a.events||[]);return e.watch(()=>a.events,h=>P.splice(0,P.length,...h)),e.watch(()=>a.locale,h=>$(h||"en-us")),(a.locale||!k.texts.today)&&$(a.locale||"en-us"),{...e.toRefs(a),events:P,eventListeners:m,defaultView:V,availableViews:F,disableDays:s,ready:p,sm:O,xs:y,clickToNavigate:j,hideWeekdays:u,hideWeekends:g,minTimestamp:t,maxTimestamp:w,schedules:d,selectedDate:n,editableEvents:Y,showCellEventCount:z,allDayEvents:B,timeAtCursor:f,view:b,get hasHiddenDays(){return Object.keys(u.value).length},get size(){return y.value?"xs":O.value?"sm":"lg"},loadTexts:$}},ye=(k,a)=>{const i=a.timeTo-a.timeFrom;return(k-a.timeFrom)*100/i},me=(k,a)=>{const i=a.timeTo-a.timeFrom;return~~(k*i/100+a.timeFrom)},Ee=(k,a)=>{const i=a.clientHeight;return k*100/i},pe=e.reactive({id:null,date:null});let _e=!1,be=!0;const se=e.reactive({el:null,cell:null,timeout:null}),re=e.reactive({eventId:null,fromVueCal:null,toVueCal:null});function Ey(k){const{config:a,view:i,eventsManager:c,emit:p,uid:b,dateUtils:O}=k,y=t=>{var $;const{timeStep:w,timeCellHeight:d,timeFrom:Y}=a,z=((($=t.touches)==null?void 0:$[0])||t).clientY,{top:B}=t.currentTarget.getBoundingClientRect(),f=z-B-~~t.dataTransfer.getData("cursor-grab-at");return me(Ee(f,t.currentTarget),a)},j=(t,w,d)=>{const Y=w.duration||m(w.start,w.end)||a.timeStep;let z=Math.max(y(t),0);if(a.snapToInterval){const P=z+a.snapToInterval/2;z=P-P%a.snapToInterval}const B=new Date(new Date(d).setMinutes(z)),f=Math.min(z+Y,24*60),$=new Date(new Date(d).setMinutes(f));return{start:B,end:$}},m=(t,w)=>Math.round((w-t)/6e4);return{eventDragStart:(t,w)=>{if(t.target.nodeType===3||k.touch.isResizingEvent)return t.preventDefault();t.dataTransfer.effectAllowed="move",t.dataTransfer.dropEffect="move";const d={...w,_:{id:w._.id,duration:m(w.start,w.end)}};try{t.dataTransfer.setData("text/plain",""),t.dataTransfer.setData("event",JSON.stringify(d)),t.dataTransfer.setData("cursor-grab-at",t.offsetY)}catch(z){return console.warn("Vue Cal: Failed to set drag data:",z),t.preventDefault()}re.eventId=w._.id,re.fromVueCal=b,p("event-drag-start",{e:t,event:w});const Y=t.target.closest(".vuecal__event");Y.classList.add("vuecal__event--dragging-ghost"),setTimeout(()=>{Y.classList.add("vuecal__event--dragging-original"),Y.classList.remove("vuecal__event--dragging-ghost")},0),_e=!1,Object.assign(pe,{id:i.id,date:i.firstCellDate}),be=!0,k.touch.isDraggingEvent=!0},eventDragEnd:(t,w)=>{re.eventId=null,t.target.closest(".vuecal__event").classList.remove("vuecal__event--dragging-original");const{fromVueCal:d,toVueCal:Y}=re;Y&&d!==Y&&c.deleteEvent(w._.id,3),_e&&be&&pe.id&&i.switchView(pe.id,pe.date,!0),p("event-drag-end",{e:t,event:w,external:re.fromVueCal!==b}),re.fromVueCal=null,re.toVueCal=null,k.touch.isDraggingEvent=!1},cellDragEnter:(t,w)=>{const{start:d}=w,Y=t.currentTarget;if(!t.currentTarget.contains(t.relatedTarget)){if(Y===se.el||!Y.className.includes("vuecal__cell-content"))return!1;se.el&&(se.cell.highlighted=!1),Object.assign(se,{el:Y,cell:w,timeout:clearTimeout(se.timeout)}),w.highlighted=!0,["years","year","month"].includes(i.id)&&(se.timeout=setTimeout(()=>k.switchToNarrowerView(d),2e3))}},cellDragOver:(t,w)=>{const{start:d,schedule:Y}=w;t.preventDefault(),w.highlighted=!0,(Y||Y===0)&&(w.highlightedSchedule=Y)},cellDragLeave:(t,w)=>{t.preventDefault(),!t.currentTarget.contains(t.relatedTarget)&&(w.highlightedSchedule=!1,se.cell===w&&(clearTimeout(se.timeout),Object.assign(se,{el:null,cell:null,timeout:null}),w.highlighted=!1))},cellDragDrop:async(t,w,d=!1)=>{var S,r,H;t.preventDefault(),clearTimeout(se.timeout),Object.assign(se,{el:null,cell:null,timeout:null});const Y=JSON.parse(t.dataTransfer.getData("event")||"{}");Y.start&&(Y.start=new Date(Y.start)),Y.end&&(Y.end=new Date(Y.end));let z,B,f;d?(B=new Date(w.start),f=new Date(w.end)):{start:B,end:f}=j(t,Y,w.start);const{schedule:$}=((S=t.target.closest("[data-schedule]"))==null?void 0:S.dataset)||{};let P=()=>{};re.fromVueCal===b?(z=c.getEvent(Y._.id),z&&(z._.dragging=!1,P=R=>{if(z.start=B,z.end=f,z.allDay=d,$!==void 0&&(z.schedule=~~$),R&&typeof R=="object"){const{_:U,...Z}=R;Object.assign(z,Z)}})):(z={...Y,start:B,end:f,...$!==void 0&&{schedule:~~$},_:{id:((r=Y._)==null?void 0:r.id)||Y.id,duration:m(B,f)},getOverlappingEvents:()=>c.getEventsInRange(B,f,{schedule:~~$})},P=R=>{if(z=c.createEvent(z),R&&typeof R=="object"){const{_:U,...Z}=R;Object.assign(z,Z)}});let h=!0;const{drop:M}=(H=a.eventListeners)==null?void 0:H.event;M&&(h=await M({e:t,event:{...z,start:B,end:f,schedule:~~$},overlaps:z.getOverlappingEvents({start:B,end:f,schedule:~~$}),cell:w,external:re.fromVueCal!==b})),h!==!1&&P(h),w.highlighted=!1,w.highlightedSchedule=null,be=!1,re.toVueCal=b,p("event-dropped",{e:t,cell:w,event:z,originalEvent:Y,external:re.fromVueCal!==b})}}}const Se=(k,a)=>{let i,c,p,b={},O={};const y=e.ref(k),j=()=>{y.value.today||(y.value=a),Date.prototype.addDays=function(o){return F(this,o||0)},Date.prototype.subtractDays=function(o){return V(this,o||0)},Date.prototype.addHours=function(o){return n(this,o||0)},Date.prototype.subtractHours=function(o){return s(this,o||0)},Date.prototype.addMinutes=function(o){return t(this,o||0)},Date.prototype.subtractMinutes=function(o){return w(this,o||0)},Date.prototype.getWeek=function(){return Y(this)},Date.prototype.isToday=function(){return z(this)},Date.prototype.isLeapYear=function(){return $(this)},Date.prototype.format=function(o="YYYY-MM-DD"){return R(this,o)},Date.prototype.formatTime=function(o="HH:mm"){return Z(this,o)}},m=()=>{delete Date.prototype.addDays,delete Date.prototype.subtractDays,delete Date.prototype.addHours,delete Date.prototype.subtractHours,delete Date.prototype.addMinutes,delete Date.prototype.subtractMinutes,delete Date.prototype.getWeek,delete Date.prototype.isToday,delete Date.prototype.isLeapYear,delete Date.prototype.format,delete Date.prototype.formatTime},u=o=>{y.value=o,Date.prototype.subtractDays&&j()},g=()=>(c!==new Date().getDate()&&(i=new Date,c=i.getDate(),p=`${i.getFullYear()}-${i.getMonth()}-${i.getDate()}`),p),F=(o,E)=>{const D=new Date(o.valueOf());return D.setDate(D.getDate()+E),D},V=(o,E)=>{const D=new Date(o.valueOf());return D.setDate(D.getDate()-E),D},n=(o,E)=>{const D=new Date(o.valueOf());return D.setHours(D.getHours()+E),D},s=(o,E)=>{const D=new Date(o.valueOf());return D.setHours(D.getHours()-E),D},t=(o,E)=>{const D=new Date(o.valueOf());return D.setMinutes(D.getMinutes()+E),D},w=(o,E)=>{const D=new Date(o.valueOf());return D.setMinutes(D.getMinutes()-E),D},d=(o,E)=>{const D=L=>{const G=L%E;return G!==0&&(L+=G>=E/2?E-G:-G),L};if(typeof o=="number")return D(o);if(o instanceof Date){let L=D(o.getMinutes());L>=60&&(o.setHours(o.getHours()+1),L=0),o.setMinutes(L,0,0)}},Y=(o,E=!1)=>{const D=new Date(Date.UTC(o.getFullYear(),o.getMonth(),o.getDate())),L=D.getUTCDay()||7;D.setUTCDate(D.getUTCDate()+4-L);const G=new Date(Date.UTC(D.getUTCFullYear(),0,1));return Math.ceil(((D-G)/864e5+1)/7)+(E?1:0)},z=o=>`${o.getFullYear()}-${o.getMonth()}-${o.getDate()}`===g(),B=(o,E)=>{if(!o||!E)return console.warn(`Vue Cal: missing date${o?"2":"1"} parameter for comparison with \`isSameDate(date1, date2)\`.`);if(H(o)){if(!H(E))return console.warn(`Vue Cal: invalid date2 provided for comparison with \`isSameDate(date1, date2)\`: \`${E}\`.`)}else return console.warn(`Vue Cal: invalid date1 provided for comparison with \`isSameDate(date1, date2)\`: \`${o}\`.`);return o.getFullYear()===E.getFullYear()&&o.getMonth()===E.getMonth()&&o.getDate()===E.getDate()},f=(o,E,D)=>H(o)?o.getTime()>=E&&o.getTime()<=D:console.warn(`Vue Cal: invalid date provided to \`isInRange(date, rangeStart, rangeEnd)\`: \`${o}\`.`),$=o=>{const E=o.getFullYear();return!(E%400)||E%100&&!(E%4)},P=(o=null,E)=>{const D=o&&new Date(o.valueOf())||new Date,L=E?7:6;return D.setDate(D.getDate()-(D.getDay()+L)%7),D},h=o=>o instanceof Date?o:(o.length===10&&(o+=" 00:00"),new Date(o.replace(/-/g,"/"))),M=o=>o.getHours()*60+o.getMinutes(),S=(o,E)=>{typeof o=="string"&&(o=o.replace(/-/g,"/")),typeof E=="string"&&(E=E.replace(/-/g,"/")),o=new Date(o).setHours(0,0,0,0),E=new Date(E).setHours(0,0,1,0);const D=(new Date(E).getTimezoneOffset()-new Date(o).getTimezoneOffset())*60*1e3;return Math.ceil((E-o-D)/(24*3600*1e3))},r=(o,E,D)=>Math.abs(o.getTime()-E.getTime())<=D*60*1e3,H=o=>o&&o instanceof Date&&!isNaN(o),R=(o,E="YYYY-MM-DD",D=null)=>{if(D||(D=y.value),E||(E="YYYY-MM-DD"),E==="YYYY-MM-DD")return U(o);b={},O={};const L={YYYY:()=>K(o,D).YYYY,YY:()=>K(o,D).YY(),M:()=>K(o,D).M,MM:()=>K(o,D).MM(),MMM:()=>K(o,D).MMM(),MMMM:()=>K(o,D).MMMM(),MMMMG:()=>K(o,D).MMMMG(),D:()=>K(o,D).D,DD:()=>K(o,D).DD(),S:()=>K(o,D).S(),d:()=>K(o,D).d,dd:()=>K(o,D).dd(),ddd:()=>K(o,D).ddd(),dddd:()=>K(o,D).dddd(),HH:()=>Q(o,D).HH,H:()=>Q(o,D).H,hh:()=>Q(o,D).hh,h:()=>Q(o,D).h,am:()=>Q(o,D).am,AM:()=>Q(o,D).AM,mm:()=>Q(o,D).mm,m:()=>Q(o,D).m,s:()=>Q(o,D).s};return E.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,(G,oe)=>{const l=L[oe.replace(/\{|\}/g,"")];return l!==void 0?l():oe})},U=o=>{const E=o.getMonth()+1,D=o.getDate();return`${o.getFullYear()}-${E<10?"0":""}${E}-${D<10?"0":""}${D}`},Z=(o,E="HH:mm",D=null,L=!1)=>{let G=!1;if(L){const[T,C,_]=[o.getHours(),o.getMinutes(),o.getSeconds()];T+C+_===141&&(G=!0)}if(o instanceof Date&&E==="HH:mm")return G?"24:00":ee(o);O={},D||(D=y.value);const oe=Q(o,D),l=E.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,(T,C)=>{const _=oe[C.replace(/\{|\}/g,"")];return _!==void 0?_:C});return G?l.replace("23:59","24:00"):l},ee=o=>{const E=o.getHours(),D=o.getMinutes();return`${(E<10?"0":"")+E}:${(D<10?"0":"")+D}`},I=o=>{const E=Math.floor(o/60).toString().padStart(2,0),D=(o%60).toString().padStart(2,0);return`${E}:${D}`},ne=o=>{if(o>3&&o<21)return"th";switch(o%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},K=(o,E)=>{if(b.D)return b;const D=o.getFullYear(),L=o.getMonth()+1,G=o.getDate(),l=(o.getDay()-1+7)%7;return b={YYYY:D,YY:()=>D.toString().substring(2),M:L,MM:()=>L.toString().padStart(2,0),MMM:()=>E.months[L-1].substring(0,3),MMMM:()=>E.months[L-1],MMMMG:()=>(E.monthsGenitive||E.months)[L-1],D:G,DD:()=>G.toString().padStart(2,0),S:()=>ne(G),d:l+1,dd:()=>E.weekDaysShort.length?E.weekDaysShort[l]:E.weekDays[l][0],ddd:()=>E.weekDaysShort.length?E.weekDaysShort[l]:E.weekDays[l].substr(0,3),dddd:()=>E.weekDays[l]},b},Q=(o,E)=>{if(O.am)return O;let D,L,G;o instanceof Date?(D=o.getHours(),L=o.getMinutes(),G=o.getSeconds()):(D=Math.floor(o/60),L=Math.floor(o%60));const oe=D%12?D%12:12,l=(E||{am:"am",pm:"pm"})[D===24||D<12?"am":"pm"];return O={H:D,h:oe,HH:D.toString().padStart(2,0),hh:oe.toString().padStart(2,0),am:l,AM:l.toUpperCase(),m:L,mm:L.toString().padStart(2,0),s:G},O};return{addDatePrototypes:j,removeDatePrototypes:m,updateTexts:u,addDays:F,subtractDays:V,addHours:n,subtractHours:s,addMinutes:t,subtractMinutes:w,snapToInterval:d,getWeek:Y,isToday:z,isSameDate:B,isInRange:f,isLeapYear:$,getPreviousFirstDayOfWeek:P,stringToDate:h,dateToMinutes:M,countDays:S,datesInSameTimeStep:r,isValid:H,formatDate:R,formatDateLite:U,formatTime:Z,formatTimeLite:ee,formatMinutes:I}},by=k=>{const{dateUtils:a,config:i}=k;let c=0;const p=e.computed(()=>{const n={byYear:{},byDate:{},recurring:[],multiday:[],byId:{}},s=i.events.sort((t,w)=>t.start-w.start<0?-1:1);for(const t of s)if(b(t),O(t),n.byId[t._.id]=t,t.recurring)n.recurring.push(t._.id);else if(t._.multiday)n.multiday.push(t._.id),n.byDate[t._.startFormatted]||(n.byDate[t._.startFormatted]=[]),n.byDate[t._.startFormatted].push(t._.id);else{n.byDate[t._.startFormatted]||(n.byDate[t._.startFormatted]=[]),n.byDate[t._.startFormatted].push(t._.id);const w=t._.startFormatted.substring(0,4),d=t._.startFormatted.substring(5,7),Y=t._.startFormatted.substring(8,10);n.byYear[w]||(n.byYear[w]={}),n.byYear[w][d]||(n.byYear[w][d]={}),n.byYear[w][d][Y]||(n.byYear[w][d][Y]=[]),n.byYear[w][d][Y].push(t._.id)}return n}),b=n=>{if(typeof n.start=="string"&&(n.start=a.stringToDate(n.start)),typeof n.end=="string"&&(n.end=a.stringToDate(n.end)),n.start.setSeconds(0,0),n.end.getSeconds()>=59?n.end.setMinutes(60,0,0):n.end.setSeconds(0,0),isNaN(n.start)||isNaN(n.end)||n.end.getTime()<n.start.getTime()){isNaN(n.start)?console.error(`Vue Cal: invalid start date for event "${n.title}".`,n.start):isNaN(n.end)?console.error(`Vue Cal: invalid end date for event "${n.title}".`,n.end):console.error(`Vue Cal: invalid event dates for event "${n.title}". The event ends before it starts.`,n.start,n.end);return}n._||(n._={}),n._.multiday=!a.isSameDate(n.start,new Date(n.end.getTime()-1)),n._.startFormatted=a.formatDate(n.start),n._.startMinutes=~~a.dateToMinutes(n.start),n._.endMinutes=~~a.dateToMinutes(n.end);const s=n.start.getHours(),t=n.start.getMinutes().toString().padStart(2,0),w=n.end.getHours(),d=n.end.getMinutes().toString().padStart(2,0);n._.startTimeFormatted24=`${s.toString().padStart(2,0)}:${t}`,n._.startTimeFormatted12=`${s%12||12}${t?`:${t}`:""} ${s<12?"AM":"PM"}`,n._.endTimeFormatted24=`${w.toString().padStart(2,0)}:${d}`,n._.endTimeFormatted12=`${w%12||12}${d?`:${d}`:""} ${w<12?"AM":"PM"}`,n._.duration=Math.abs(~~((n.end-n.start)/6e4))},O=n=>{n._||(n._={}),n._.id=n._.id||++c,n.delete||(n.delete=s=>u(n._.id,s)),n._.deleting=!1,n._.deleted=!1,n.isOverlapping=(s=null)=>n.getOverlappingEvents(s).length,n.getOverlappingEvents=(s=null)=>{var t;return F((s==null?void 0:s.start)||n.start,(s==null?void 0:s.end)||n.end,{excludeIds:[n._.id],schedule:(t=i.schedules)!=null&&t.length?~~((s==null?void 0:s.schedule)||n.schedule):null})},n._.register=s=>{n._.$el=s,n._.fireCreated&&(k.emit("event-created",n),delete n._.fireCreated)},n._.unregister=()=>{n._.$el=null,n._.register=null,n.isOverlapping=null,n.getOverlappingEvents=null,n.delete=null}},y=n=>p.value.byId[n],j=n=>{const s=[];for(const{start:t,end:w}of n){const d=F(t,w);d.length&&s.push(...d)}return s},m=n=>{if(!n.start||!n.end){console.error("Vue Cal: Cannot create an event without valid start and end dates.");return}return i.snapToInterval&&(a.snapToInterval(n.start,i.snapToInterval),a.snapToInterval(n.end,i.snapToInterval)),n={...n},n._||(n._={}),n._.id=++c,n._.fireCreated=!0,i.events.push(n),n},u=async(n,s=0)=>{var z,B;if(!n)return console.warn("Vue Cal: Cannot delete event without its ID or criteria.");let t=typeof n=="string"||!isNaN(n)?n:null;const w=typeof n=="object"?Object.entries(n):null;if(w){const[f,$]=w[0];t=(z=i.events.find(P=>P[f]===$))==null?void 0:z._.id}if(!i.editableEvents.delete)return console.info("Vue Cal: Event deletion is disabled. Enable it with the `editable-events` props.");if(!t)return console.warn("Vue Cal: Cannot delete event without its ID.");const d=i.events.findIndex(f=>f._.id===t);if(d===-1)return console.warn(`Vue Cal: Cannot delete unknown event \`${t}\`.`);const Y=i.events[d];if(Y.deletable===!1)return console.warn(`Vue Cal: Can't delete event \`${t}\` since it was explicitely set to \`delete: false\`.`);switch(s){case 0:Y._.deleting?i.events.splice(d,1):Y._.deleting=!0;break;case 1:Y._.deleting=!0;break;case 2:Y._.deleted=!0,i.events[d]._.deleted=!0,(B=Y._.$el)==null||B.dispatchEvent(new CustomEvent("event-deleted",{detail:Y._.id}));break;case 3:i.events.splice(d,1),k.emit("update:events",i.events),k.emit("event-delete",Y);break}return!0},g=(n,s)=>{const t=i.allDayEvents?{allDay:!0}:{},w=F(n,s,{background:!1,...t});if(!w.length)return{cellOverlaps:{},longestStreak:0};const d={};let Y=[],z=0;w.sort((B,f)=>B.start-f.start||B.end-B.start-(f.end-f.start));for(const B of w){const f=B._.id;d[f]||(d[f]={overlaps:new Set,maxConcurrent:1,position:0}),Y=Y.filter(S=>S.end>B.start);const $=Y.filter(S=>{var H;return(!((H=i.schedules)!=null&&H.length)||B.schedule===S.schedule)&&S.start<B.end}),P=new Set($.map(S=>{var r;return((r=d[S._.id])==null?void 0:r.position)??0}));let h=0;for(;P.has(h);)h++;d[f].position=h,Y.push(B);const M=Math.max(1,...$.map(S=>{var r;return((r=d[S._.id])==null?void 0:r.maxConcurrent)??1}));d[f].maxConcurrent=Math.max($.length+1,M);for(const S of $)d[S._.id].overlaps.add(f),d[f].overlaps.add(S._.id),d[S._.id].maxConcurrent=d[f].maxConcurrent;z=Math.max(z,d[f].maxConcurrent)}for(const B in d)d[B].overlaps=[...d[B].overlaps];return{cellOverlaps:d,longestStreak:z}},F=(n,s,{excludeIds:t=[],schedule:w=null,background:d=!0,allDay:Y=!1}={})=>{const z=n.getFullYear(),B=s.getFullYear(),f=n.getMonth()+1,$=s.getMonth()+1,P=n.getDate(),h=s.getDate(),M=n.getTime(),S=s.getTime(),r=[],H=new Set(t);for(let R=z;R<=B;R++){const U=`${R}`,Z=p.value.byYear[U];if(!Z)continue;const ee=R===z?f:1,I=R===B?$:12;for(let ne=ee;ne<=I;ne++){const K=String(ne).padStart(2,"0"),Q=Z[K];if(Q)for(const o in Q){const E=+o;if(R===z&&ne===f&&E<P||R===B&&ne===$&&E>h)continue;const D=Q[o];for(let L=0;L<D.length;L++){const G=p.value.byId[D[L]];!G||H.has(G._.id)||w!==null&&w!==G.schedule||d===!1&&G.background||i.allDayEvents&&(Y&&!G.allDay||!Y&&G.allDay)||G.end.getTime()>M&&G.start.getTime()<S&&r.push(G)}}}}return r};return{events:p,getEvent:y,getViewEvents:j,getCellOverlappingEvents:g,getEventsInRange:F,createEvent:m,deleteEvent:u,isEventInRange:(n,s,t)=>{const w=n.allDay||!i.time,d=w?new Date(n.start).setHours(0,0,0,0):n.start.getTime(),Y=w?new Date(n.end).setHours(23,59,59,999):n.end.getTime(),z=w?new Date(s).setHours(0,0,0,0):s.getTime(),B=w?new Date(t).setHours(23,59,59,999):t.getTime();return Y>z&&d<B}}},My=({config:k,dateUtils:a,emit:i,texts:c,eventsManager:p},b)=>{const{availableViews:O}=k,y=e.ref(k.view&&O[k.view]?k.view:k.defaultView),j=e.ref(k.selectedDate||null),m=e.ref(new Date),u=e.ref(new Date(k.viewDate||m.value));u.value.setHours(0,0,0,0);const g=e.ref(new Date(u));let F=null;const V=e.computed(()=>y.value==="month"?g.value:$.value),n=e.computed(()=>y.value==="month"?new Date(g.value.getFullYear(),g.value.getMonth()+1,0,23,59,59,999):h.value),s=e.computed(()=>y.value==="week"?a.getPreviousFirstDayOfWeek($.value,k.startWeekOnSunday):y.value==="month"?$.value:V.value),t=e.computed(()=>{if(y.value==="week"){const v=a.addDays(s.value,7);return v.setMilliseconds(-1),v}return y.value==="month"?h.value:n.value}),w=e.computed(()=>{const v=m.value.getTime();if(y.value==="week")return s.value.getTime()<=v&&v<=t.value.getTime();const A=$.value.getTime(),q=h.value.getTime();return A<=v&&v<=q});function d(){m.value=new Date,F=setTimeout(d,60*1e3)}function Y(){F=setTimeout(d,(60-new Date().getSeconds())*1e3),d()}const z=e.computed(()=>{if(!k.availableViews[y.value])return 1;let v=k.availableViews[y.value].cols;return k.hasHiddenDays&&["week","month"].includes(y.value)&&(v-=k.hasHiddenDays),v}),B=e.computed(()=>{var v;return((v=k.availableViews[y.value])==null?void 0:v.rows)||1}),f=e.computed(()=>z.value*B.value),$=e.computed(()=>{if(y.value==="month"){let v=g.value.getDay()||7;return k.startWeekOnSunday&&!k.hideWeekdays[7]&&(v+=1),k.viewDayOffset&&(v-=k.viewDayOffset),a.subtractDays(g.value,v-1)}if(y.value==="week"){const v="1234567".split("").filter(q=>!Object.keys(k.hideWeekdays).includes(q));let A=Math.min(...v);return k.startWeekOnSunday&&!k.hideWeekdays[7]&&(A=1),k.viewDayOffset&&(A+=k.viewDayOffset),a.addDays(g.value,A-1)}return g.value}),P=e.computed(()=>{const v=[],A=["days","week","month"].includes(y.value);let q=0;for(let X=0;X<f.value+q;X++)switch(y.value){case"day":case"days":case"week":case"month":{const ae=a.addDays($.value,X),De=ae.getDay()||7;if(A&&k.hasHiddenDays&&k.hideWeekdays[De]){q++;continue}const he=new Date(ae);he.setHours(23,59,59,999),v.push({start:ae,startFormatted:a.formatDate(ae),end:he});break}case"year":v.push({start:new Date($.value.getFullYear(),X,1,0,0,0,0),end:new Date($.value.getFullYear(),X+1,0,23,59,59,999)});break;case"years":v.push({start:new Date($.value.getFullYear()+X,0,1,0,0,0,0),end:new Date($.value.getFullYear()+X+1,0,0,23,59,59,999)});break}return v}),h=e.computed(()=>P.value[P.value.length-1].end),M=e.ref("right"),S=e.computed(()=>{const v=Object.keys(k.availableViews);return v[v.indexOf(y.value)+1]}),r=e.computed(()=>{const v=Object.keys(k.availableViews);return v[v.indexOf(y.value)-1]});function H(v,A,q=!1){if(!A||!A[v])return v+1;const X=A[v];return q&&typeof X=="string"?X.substring(0,3):X}function R(v,A,q){const{monthsArray:X,monthBeforeDay:ae,canTruncate:De,xs:he}=q,de=v.getMonth(),ie=v.getFullYear(),ue=A.getMonth(),ve=A.getFullYear(),we=de!==ue,Oh=ie!==ve,ce=De&&(he||we),ge=v.getDate(),$e=A.getDate();return Oh?ae?`${H(de,X,ce)} ${ge}, ${ie} - ${H(ue,X,ce)} ${$e}, ${ve}`:`${ge} ${H(de,X,ce)} ${ie} - ${$e} ${H(ue,X,ce)} ${ve}`:we?ae?`${H(de,X,ce)} ${ge} - ${H(ue,X,ce)} ${$e}, ${ie}`:`${ge} ${H(de,X,ce)} - ${$e} ${H(ue,X,ce)} ${ie}`:ae?`${H(de,X,ce)} ${ge}-${$e}, ${ie}`:`${ge}-${$e} ${H(de,X,ce)} ${ie}`}const U=e.computed(()=>{const{dateFormat:v,months:A,monthsGenitive:q,week:X,truncations:ae}=c,De=k.locale,he=ae!==!1,de=v.indexOf("M")<v.indexOf("D"),ie=q&&De==="el"?q:A;switch(y.value){case"day":return a.formatDate($.value,v);case"days":case"week":{const ue={monthsArray:ie,monthBeforeDay:de,canTruncate:he,xs:k.xs};let ve=R($.value,h.value,ue);if(y.value==="week"){const we=a.getWeek($.value,k.startWeekOnSunday&&!k.hideWeekdays[7]);ve+=` <small>${X} ${we}</small>`}return ve}case"month":{const ue=`${k.xs&&he?"MMM":"MMMM"} YYYY`;return a.formatDate(V.value,ue)}case"year":return $.value.getFullYear();case"years":return`${$.value.getFullYear()} - ${n.value.getFullYear()}`}});function Z(){switch(g.value=new Date(u.value||m.value),g.value.setHours(0,0,0,0),y.value){case"day":break;case"days":break;case"week":g.value=a.getPreviousFirstDayOfWeek(g.value,k.startWeekOnSunday&&!k.hideWeekdays[7]);break;case"month":g.value=new Date(g.value.getFullYear(),g.value.getMonth(),1,0,0,0,0);break;case"year":g.value=new Date(g.value.getFullYear(),0,1,0,0,0,0);break;case"years":g.value=new Date(g.value.getFullYear()-g.value.getFullYear()%f.value,0,1,0,0,0,0);break}k.ready&&i("view-change",{id:y.value,title:U.value,start:V.value,end:n.value,extendedStart:s.value,extendedEnd:t.value,cellDates:P.value,containsToday:w.value,events:J.value}),m.value=new Date}function ee(v){const A=y.value,q=k.availableViews[A];v[A]&&JSON.stringify(v[A])===JSON.stringify(q)||Z()}function I(v,A=!0){const q=Object.keys(k.availableViews);y.value!==v&&(q.includes(v)?(M.value=q.indexOf(v)<q.indexOf(y.value)?"left":"right",y.value=v,i("update:view",v),Z()):console.warn(`Vue Cal: the \`${v}\` view is not available.`))}function ne(){S.value?I(S.value):console.warn("Vue Cal: no broader view is available.")}function K(){r.value?I(r.value):console.warn("Vue Cal: no narrower view is available.")}function Q(){E(!1)}function o(){E(!0)}function E(v=!0){let A=new Date(u.value);switch(y.value){case"day":case"days":v?A=a.addDays(h.value,1):A=a.subtractDays($.value,f.value);break;case"week":{v?(A=a.addDays(t.value,1),A.setHours(0,0,0,0)):A=a.subtractDays(s.value,f.value);break}case"month":{const q=v?1:-1;A=new Date(A.getFullYear(),A.getMonth()+q,1,0,0,0,0);break}case"year":{const q=v?1:-1;A=new Date(A.getFullYear()+q,1,1,0,0,0,0);break}case"years":{const q=v?f.value:-f.value;A=new Date(A.getFullYear()+q,1,1,0,0,0,0);break}}L(A)}function D(){const v=new Date;v.setHours(0,0,0,0),L(v)}function L(v,A=!0,q=!1){if(!a.isValid(v))return console.warn("Vue Cal: can't navigate to the given date: invalid date provided to `updateViewDate(date)`.");let[X,ae]=[$.value,h.value];y.value==="month"&&([X,ae]=[V.value,n.value]),(!a.isInRange(v,X,ae)||q)&&(v.setHours(0,0,0,0),M.value=v.getTime()<X.getTime()?"left":"right",u.value=v,A&&i("update:viewDate",v),Z())}function G(v,A=!0){if(!a.isValid(v))return console.warn("Vue Cal: can't update the selected date: invalid date provided to `updateSelectedDate(date)`.");const{isValid:q,isSameDate:X}=a;(!j.value||!q(j.value)||!X(v,j.value))&&(v.setHours(0,0,0,0),j.value=v,A&&i("update:selectedDate",v))}function oe(v){!v&&!g.value.getDay()?L(a.addDays(g.value,1),!0,!0):(M.value="left",Z())}function l(v){v&&k.startWeekOnSunday&&!g.value.getDay()?L(a.addDays(g.value,1),!0,!0):!v&&k.startWeekOnSunday&&g.value.getDay()===1&&L(a.subtractDays(g.value,1),!0,!0)}function T(){console.log("toggling weekdays",k.hideWeekdays)}function C(v){var X;const A=(X=b.value)==null?void 0:X.querySelector(".vuecal__scrollable"),q=v?v*k.timeCellHeight/k.timeStep:0;A==null||A.scrollTo({top:q,behavior:"smooth"})}function _(){const v=new Date;C(v.getHours()*60+v.getMinutes())}function N(){C(0)}const J=e.computed(()=>p.getViewEvents(P.value)),x=p.createEvent,le=p.deleteEvent;return e.watch(()=>k.view,v=>I(v,!1)),e.watch(()=>k.availableViews,ee),e.watch(()=>k.datePicker,()=>I("month",!1)),e.watch(()=>k.viewDate,v=>L(v,!1)),e.watch(()=>k.selectedDate,v=>G(v,!1)),e.watch(()=>k.startWeekOnSunday,v=>oe(v)),e.watch(()=>k.hideWeekends,v=>l(v)),e.watch(()=>k.hideWeekdays,T),e.watch(()=>f.value,()=>{f.value>90&&console.warn("Vue Cal: high cell count detected. Performance may degrade when interactions are enabled.")}),e.watch(()=>k.watchRealTime,v=>{v&&k.time?Y():F=clearTimeout(F)}),Z(),k.time&&k.watchRealTime&&Y(),e.onBeforeUnmount(()=>F=clearTimeout(F)),{now:m,id:y,broaderView:S,narrowerView:r,title:U,viewDate:u,start:V,end:n,extendedStart:s,extendedEnd:t,firstCellDate:$,lastCellDate:h,containsToday:w,selectedDate:j,cellDates:P,cols:z,rows:B,events:J,transitionDirection:M,switch:I,broader:ne,narrower:K,previous:Q,next:o,navigate:E,goToToday:D,updateViewDate:L,updateSelectedDate:G,scrollToCurrentTime:_,scrollToTime:C,scrollTop:N,createEvent:x,deleteEvent:le,get isDay(){return y.value==="day"},get isDays(){return y.value==="days"},get isWeek(){return y.value==="week"},get isMonth(){return y.value==="month"},get isYear(){return y.value==="year"},get isYears(){return y.value==="years"}}},Te=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Ye=["January","February","March","April","May","June","July","August","September","October","November","December"],Ce="Years",Pe="Year",je="Month",Fe="Week",ze="Days",Oe="Day",Be="Today",Ve="No Event",Ne="All-day",Ae="Delete",He="Create an event",Le="dddd, MMMM D, YYYY",Re="am",Je="pm",Me={weekDays:Te,months:Ye,years:Ce,year:Pe,month:je,week:Fe,days:ze,day:Oe,today:Be,noEvent:Ve,allDay:Ne,deleteEvent:Ae,createEvent:He,dateFormat:Le,am:Re,pm:Je},_y=Object.freeze(Object.defineProperty({__proto__:null,allDay:Ne,am:Re,createEvent:He,dateFormat:Le,day:Oe,days:ze,default:Me,deleteEvent:Ae,month:je,months:Ye,noEvent:Ve,pm:Je,today:Be,week:Fe,weekDays:Te,year:Pe,years:Ce},Symbol.toStringTag,{value:"Module"})),fe=e.reactive({texts:{...te.texts},dateUtils:Se(te.texts,Me)}),Sy=({props:k,emit:a,attrs:i,vuecalEl:c,uid:p})=>{const b=e.reactive({uid:p,emit:a,texts:{...fe.texts},dateUtils:{...fe.dateUtils},now:new Date,config:{},eventsManager:{},view:{},dnd:{},touch:{isDraggingCell:!1,isDraggingEvent:!1,isResizingEvent:!1}});return b.dateUtils=Se(Object.assign(te.texts,b.texts),Me),b.config=wy(b,k,i),b.eventsManager=by(b),b.view=My(b,c),b.dnd=Ey(b),b},Ty=24*60,Yy={allDayEvents:{type:Boolean,default:!1},stackEvents:{type:Boolean,default:!1},clickToNavigate:{type:Boolean,default:void 0},dark:{type:Boolean,default:!1},datePicker:{type:Boolean,default:!1},disableDays:{type:Array,default:()=>[]},editableEvents:{type:[Boolean,Object],default:!1},eventCreateMinDrag:{type:Number,default:15},events:{type:Array,default:()=>[]},eventCount:{type:[Boolean,Array],default:!1},eventsOnMonthView:{type:Boolean,default:!1},hideWeekdays:{type:Array,default:()=>[]},hideWeekends:{type:Boolean,default:!1},locale:{type:String,default:""},maxDate:{type:[String,Date],default:""},minDate:{type:[String,Date],default:""},selectedDate:{type:[String,Date],default:""},sm:{type:Boolean,default:!1},specialHours:{type:Object,default:()=>({})},schedules:{type:Array,default:()=>[]},snapToInterval:{type:Number,default:0},startWeekOnSunday:{type:Boolean,default:!1},theme:{type:[String,Boolean],default:"default"},time:{type:Boolean,default:!0},timeAtCursor:{type:Boolean,default:!1},timeCellHeight:{type:Number,default:40},timeFormat:{type:String,default:""},timeFrom:{type:Number,default:0},timeStep:{type:Number,default:60},timeTo:{type:Number,default:Ty},titleBar:{type:Boolean,default:!0},todayButton:{type:Boolean,default:!0},twelveHour:{type:Boolean,default:!1},view:{type:String,default:""},viewDate:{type:[String,Date],default:""},viewDayOffset:{type:Number,default:0},views:{type:[Array,Object]},viewsBar:{type:Boolean,default:!0},watchRealTime:{type:Boolean,default:!1},weekNumbers:{type:Boolean,default:!1},xs:{type:Boolean,default:!1}},Cy={class:"vuecal__header"},Py={key:0,class:"vuecal__views-bar"},jy=["onClick","innerHTML"],Fy={key:1,class:"vuecal__title-bar"},zy={class:"vuecal__transition-wrap"},Oy=["disabled","innerHTML"],By={__name:"header",setup(k){const a=e.inject("vuecal"),{view:i,config:c}=a,p=()=>{c.clickToNavigate&&i.broader()},b=e.computed(()=>c.clickToNavigate?{click:p}:{});return(O,y)=>(e.openBlock(),e.createElementBlock("div",Cy,[e.renderSlot(O.$slots,"header",{view:e.unref(i),availableViews:e.unref(c).availableViews,vuecal:e.unref(a)}),O.$slots.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.unref(c).viewsBar?(e.openBlock(),e.createElementBlock("div",Py,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c).availableViews,(j,m)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["vuecal__view-button",{"vuecal__view-button--active":e.unref(i).id===m}]),onClick:u=>e.unref(i).switch(m),innerHTML:e.unref(a).texts[m],type:"button"},null,10,jy))),256))])):e.createCommentVNode("",!0),e.unref(c).titleBar?(e.openBlock(),e.createElementBlock("nav",Fy,[e.createElementVNode("button",{class:e.normalizeClass(["vuecal__nav vuecal__nav--prev",{"vuecal__nav--default":!O.$slots["previous-button"]}]),onClick:y[0]||(y[0]=(...j)=>e.unref(i).previous&&e.unref(i).previous(...j)),type:"button"},[e.renderSlot(O.$slots,"previous-button")],2),e.createElementVNode("div",zy,[e.createVNode(e.Transition,{name:`vuecal-slide-fade--${e.unref(i).transitionDirection}`},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{key:e.unref(i).id+e.unref(i).start.getTime()},[O.$slots.title||O.$slots[`title.${e.unref(i).id}`]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(c).clickToNavigate&&e.unref(i).broaderView?"button":"div"),e.mergeProps({key:0,class:"vuecal__title"},e.toHandlers(b.value)),{default:e.withCtx(()=>[O.$slots[`title.${e.unref(i).id}`]?e.renderSlot(O.$slots,`title.${e.unref(i).id}`,e.normalizeProps(e.mergeProps({key:0},e.unref(i)))):e.renderSlot(O.$slots,"title",e.normalizeProps(e.mergeProps({key:1},e.unref(i))))]),_:3},16)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(c).clickToNavigate&&e.unref(i).broaderView?"button":"div"),e.mergeProps({key:1,class:"vuecal__title"},e.toHandlers(b.value),{innerHTML:e.unref(i).title}),null,16,["innerHTML"]))]))]),_:3},8,["name"])]),e.unref(c).todayButton?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[O.$slots["today-button"]?e.renderSlot(O.$slots,"today-button",{key:0,navigate:()=>!e.unref(i).containsToday&&e.unref(i).goToToday(),active:e.unref(i).containsToday}):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(["vuecal__nav vuecal__nav--today vuecal__nav--default",{"vuecal__nav--active":e.unref(i).containsToday}]),onClick:y[1]||(y[1]=j=>!e.unref(i).containsToday&&e.unref(i).goToToday()),disabled:!!e.unref(i).containsToday,type:"button",innerHTML:e.unref(a).texts.today},null,10,Oy))],64)):e.createCommentVNode("",!0),e.createElementVNode("button",{class:e.normalizeClass(["vuecal__nav vuecal__nav--next",{"vuecal__nav--default":!O.$slots["next-button"]}]),onClick:y[2]||(y[2]=(...j)=>e.unref(i).next&&e.unref(i).next(...j)),type:"button"},[e.renderSlot(O.$slots,"next-button")],2)])):e.createCommentVNode("",!0)],64))]))}},Vy=["draggable"],Ny={class:"vuecal__event-details"},Ay={class:"vuecal__event-title"},Hy={key:0,class:"vuecal__event-time"},Ly={key:0,class:"vuecal__event-comma"},Ry={class:"vuecal__event-start"},Jy={key:1,class:"vuecal__event-end"},Iy=["innerHTML"],Ie={__name:"event",props:{event:{type:Object,required:!0},inAllDayBar:{type:Boolean,default:!1}},emits:["event-drag-start","event-drag-end","event-resize-start","event-resize-end"],setup(k,{emit:a}){const{config:i,view:c,dnd:p,touch:b,dateUtils:O}=e.inject("vuecal"),y=k,j=e.ref(null),m=e.reactive(y.event),u=e.reactive({dragging:!1,resizing:!1,fromResizer:!1,holding:!1,holdTimer:null,startX:0,startY:0,startPercentageX:0,startPercentageY:0,moveX:0,moveY:0,movePercentageX:0,movePercentageY:0,resizeStartDate:null,resizingOriginalEvent:null,resizingLastAcceptedEvent:null,cellEl:null,schedule:null}),g=e.computed(()=>i.editableEvents.drag&&m.draggable!==!1&&!m.background),F=e.computed(()=>c.isMonth||c.isYear||c.isYears||y.inAllDayBar?!1:i.time&&i.editableEvents.resize&&m.resizable!==!1&&!m.background);e.computed(()=>i.editableEvents.delete&&m.deletable!==!1&&!m.background);const V=e.computed(()=>{var f,$,P,h,M;return{[`vuecal__event--${m._.id}`]:!0,[m.class]:!!m.class,"vuecal__event--recurring":!!m.recurring,"vuecal__event--background":!!m.background,"vuecal__event--all-day":m.allDay||((f=m._)==null?void 0:f.startMinutes)===0&&(($=m._)==null?void 0:$.duration)===24*60,"vuecal__event--multiday":!!((P=m._)!=null&&P.multiday),"vuecal__event--cut-top":!y.inAllDayBar&&((h=m._)==null?void 0:h.startMinutes)<i.timeFrom,"vuecal__event--cut-bottom":!y.inAllDayBar&&((M=m._)==null?void 0:M.endMinutes)>i.timeTo||m._.multiday,"vuecal__event--dragging":!m._.draggingGhost&&m._.dragging,"vuecal__event--dragging-ghost":m._.draggingGhost,"vuecal__event--resizing":u.resizing}}),n=e.computed(()=>{const f=(c.isDay||c.isDays||c.isWeek)&&i.time&&!y.inAllDayBar;if(!f&&!m.backgroundColor&&!m.color)return!1;const $={backgroundColor:m.backgroundColor||null,color:m.color||null};if(f){const P=Math.max(i.timeFrom,m._.startMinutes),h=Math.min(i.timeTo,m._.endMinutes)+(m._.duration&&!m._.endMinutes?24*60:0),M=ye(P,i),S=ye(h,i)-M;$.top=`${M}%`,$.height=`${S}%`}return $}),s=e.computed(()=>{const f={...i.eventListeners.event};for(const[h,M]of Object.entries(f))["resize-end"].includes(h)||(f[h]=S=>{S.type!=="drop"&&M(S.type?{e:S,event:m}:S)});const $={...f};f.touchstart=h=>{var M;h.stopPropagation(),t(h),(M=$.touchstart)==null||M.call($,{e:h,event:m})},f.mousedown=h=>{var M;h.stopPropagation(),t(h),(M=$.mousedown)==null||M.call($,{e:h,event:m})};let P=null;return f.click=h=>{var M;(M=$.click)==null||M.call($,{e:h,event:m}),P?P=clearTimeout(P):P=setTimeout(()=>{var S;P=null,(S=$["delayed-click"])==null||S.call($,{e:h,event:m})},400)},f.dblclick=h=>{$.dblclick?$.dblclick({e:h,event:m}):m.delete(1)},f}),t=f=>{var h,M,S;const $=((h=f.touches)==null?void 0:h[0])||f;u.fromResizer=$.target.matches(".vuecal__event-resizer, .vuecal__event-resizer *");const P=j.value.getBoundingClientRect();u.startX=(((M=f.touches)==null?void 0:M[0])||f).clientX-P.left,u.startY=(((S=f.touches)==null?void 0:S[0])||f).clientY-P.top,u.startPercentageX=u.startX*100/P.width,u.startPercentageY=u.startY*100/P.height,u.cellEl=j.value.closest(".vuecal__cell"),u.resizeStartDate=m.start,B(f.type==="touchstart"?"touchmove":"mousemove",w),B(f.type==="touchstart"?"touchend":"mouseup",d,{once:!0}),u.holdTimer=setTimeout(()=>{var r,H;u.holding=!0,(H=(r=s.value).hold)==null||H.call(r,{e:f,event:m})},1e3)},w=async f=>{var P,h,M,S;const $=((P=f.touches)==null?void 0:P[0])||f;if(u.fromResizer&&!u.resizing&&(u.resizing=!0,u.resizingOriginalEvent={...m,_:{...m._}},b.isResizingEvent=!0,(M=(h=s.value).resizeStart)==null||M.call(h,{e:f,event:m})),u.holdTimer=clearTimeout(u.holdTimer),u.holding=!1,u.cellEl){const{top:r,left:H,width:R,height:U}=u.cellEl.getBoundingClientRect();u.moveX=$.clientX-H,u.moveY=$.clientY-r,u.movePercentageX=u.moveX*100/R,u.movePercentageY=u.moveY*100/U}if(u.fromResizer){const{newStart:r,newEnd:H}=Y(m);let R=!0;const{resize:U}=(S=i.eventListeners)==null?void 0:S.event;U&&(R=await U({e:f,event:{...m,start:r,end:H},overlaps:m.getOverlappingEvents({start:r,end:H})})),R!==!1?(m.start=r,m.end=H,u.resizingLastAcceptedEvent&&(u.resizingLastAcceptedEvent=null)):U&&(u.resizingLastAcceptedEvent={...m,_:{...m._}})}},d=async f=>{var $,P;if(u.holdTimer=clearTimeout(u.holdTimer),u.holding=!1,u.resizing){const{newStart:h,newEnd:M}=Y(m);let S=!0;const r=s.value["resize-end"];r&&(S=await r({e:f,event:m,original:u.resizingOriginalEvent,overlaps:m.getOverlappingEvents({start:h,end:M})})),m.start=S===!1?(u.resizingLastAcceptedEvent||u.resizingOriginalEvent).start:(($=u.resizingLastAcceptedEvent)==null?void 0:$.start)||h,m.end=S===!1?(u.resizingLastAcceptedEvent||u.resizingOriginalEvent).end:((P=u.resizingLastAcceptedEvent)==null?void 0:P.end)||M,m._.duration<1&&(m.start=u.resizingOriginalEvent.start,m.end=u.resizingOriginalEvent.end),b.isResizingEvent=!1}document.removeEventListener(f.type==="touchend"?"touchmove":"mousemove",w),u.resizing=!1,u.fromResizer=!1,u.dragging=!1,u.startX=0,u.startY=0,u.moveX=0,u.moveY=0,u.startPercentageX=0,u.startPercentageY=0,u.movePercentageX=0,u.movePercentageY=0,u.cellEl=null,u.resizeStartDate=null,u.resizingOriginalEvent=null,u.resizingLastAcceptedEvent=null,u.schedule=null},Y=f=>{const $=new Date(f.start.getFullYear(),f.start.getMonth(),f.start.getDate());new Date($).setDate($.getDate()+1);let h=me(u.movePercentageY,i);if(h=Math.max(0,Math.min(h,24*60)),i.snapToInterval){const r=h+i.snapToInterval/2;h=r-r%i.snapToInterval}let M=f.start,S=new Date($.getTime()+h*6e4);return S<u.resizeStartDate&&(M=S,S=u.resizeStartDate),{newStart:M,newEnd:S}},z=[],B=(f,$,P)=>{document.addEventListener(f,$,P),z.push({event:f,handler:$,options:P})};return e.onMounted(()=>m._.register(j.value)),e.onBeforeUnmount(()=>{m._.unregister();for(const{event:f,handler:$,options:P}of z)document.removeEventListener(f,$,P)}),(f,$)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"vuecal__event"},e.toHandlers(s.value,!0),{ref_key:"eventEl",ref:j,class:V.value,style:n.value,draggable:g.value?"true":void 0,onDragstart:$[2]||($[2]=P=>g.value&&e.unref(p).eventDragStart(P,m)),onDragend:$[3]||($[3]=P=>g.value&&e.unref(p).eventDragEnd(P,m))}),[e.createElementVNode("div",Ny,[f.$slots["event.all-day"]?e.renderSlot(f.$slots,"event.all-day",{key:0,event:m}):f.$slots[`event.${e.unref(c).id}`]?e.renderSlot(f.$slots,`event.${e.unref(c).id}`,{key:1,event:m}):e.renderSlot(f.$slots,"event",{key:2,event:m},()=>[e.createElementVNode("div",Ay,e.toDisplayString(m.title),1),e.unref(i).time&&!k.inAllDayBar?(e.openBlock(),e.createElementBlock("div",Hy,[e.unref(c).isMonth?(e.openBlock(),e.createElementBlock("span",Ly,",")):e.createCommentVNode("",!0),e.createElementVNode("span",Ry,e.toDisplayString(m._[`startTimeFormatted${e.unref(i).twelveHour?12:24}`]),1),e.unref(c).isMonth?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",Jy," - "+e.toDisplayString(m._[`endTimeFormatted${e.unref(i).twelveHour?12:24}`]),1))])):e.createCommentVNode("",!0),k.inAllDayBar?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:1,class:"vuecal__event-content",innerHTML:m.content},null,8,Iy))])]),F.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"vuecal__event-resizer",onDragstart:$[0]||($[0]=e.withModifiers(()=>{},["prevent","stop"]))},null,32)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"vuecal-delete-btn"},{default:e.withCtx(()=>[m._.deleting?(e.openBlock(),e.createElementBlock("div",{key:0,class:"vuecal__event-delete",onClick:$[1]||($[1]=e.withModifiers(P=>m.delete(3),["stop"]))},"Delete")):e.createCommentVNode("",!0)]),_:1})],16,Vy))}},Wy=["innerHTML"],Gy=["data-schedule"],Xy={key:1,class:"vuecal__cell-date"},qy={key:2,class:"vuecal__cell-content"},Ky={key:3,class:"vuecal__cell-events"},Uy={key:1,class:"vuecal__cell-date"},Zy={key:2,class:"vuecal__cell-content"},Qy={key:3,class:"vuecal__cell-events"},xy={key:5,class:"vuecal__cell-events-count"},em=["title"],We={__name:"cell",props:{start:{type:Date,required:!0},end:{type:Date,required:!0},index:{type:Number,required:!0},allDay:{type:Boolean,default:!1}},setup(k){const a=k,i=e.inject("vuecal"),{view:c,config:p,dateUtils:b,eventsManager:O,dnd:y,touch:j}=i,m=e.computed(()=>b.isToday(a.start)),u=e.ref(null),g=e.ref([]),F=e.ref(!1),V=l=>{g.value.push(l.detail),F.value=!0},n=()=>setTimeout(()=>F.value=!1,300),s=e.reactive({dragging:!1,holding:!1,holdTimer:null,thresholdPassed:!1,startX:0,startY:0,moveX:0,moveY:0,startPercentageX:0,startPercentageY:0,movePercentageX:0,movePercentageY:0,schedule:null}),t=e.ref(!1),w=e.ref({cellOverlaps:{},longestStreak:0}),d=e.computed(()=>{let l=Math.min(s.startPercentageY,s.movePercentageY),T=Math.max(s.startPercentageY,s.movePercentageY),C=me(l,p),_=me(T,p);return p.snapToInterval&&(C=b.snapToInterval(C,p.snapToInterval),_=b.snapToInterval(_,p.snapToInterval),l=ye(C,p),T=ye(_,p)),{style:{top:`${l}%`,height:`${Math.abs(T-l)}%`},startMinutes:C,endMinutes:_,start:b.formatMinutes(C),end:b.formatMinutes(_),...s.schedule?{schedule:s.schedule}:{}}}),Y=e.computed(()=>{const l=p.editableEvents.create&&(s.dragging||t.value),T=p.eventCreateMinDrag&&s.thresholdPassed||!p.eventCreateMinDrag;return l&&T}),z=e.computed(()=>{var x;const l=new Date,T=c.start.getFullYear(),C=c.start.getMonth(),_=a.start.getFullYear(),N=a.start.getMonth();return{[`vuecal__cell--${ke[a.start.getDay()]}`]:c.isDay||c.isDays||c.isWeek||c.isMonth,[`vuecal__cell--${ky[N]}`]:c.isYear,[`vuecal__cell--${_}`]:c.isYears,"vuecal__cell--today":m.value,"vuecal__cell--current-month":c.isYear&&_===l.getFullYear()&&N===l.getMonth(),"vuecal__cell--current-year":c.isYears&&_===l.getFullYear(),"vuecal__cell--out-of-range":c.isMonth&&(_!==T||N!==C),"vuecal__cell--before-min":U.value&&H.value,"vuecal__cell--after-max":U.value&&R.value,"vuecal__cell--disabled":U.value,"vuecal__cell--selected":c.selectedDate&&c.selectedDate.getTime()>=a.start.getTime()&&c.selectedDate.getTime()<=a.end.getTime(),"vuecal__cell--has-schedules":(x=p.schedules)==null?void 0:x.length,"vuecal__cell--dragging":s.dragging,"vuecal__cell--has-events":f.value.length}});e.computed(()=>b.formatDate(a.start));const B=e.computed(()=>{switch(c.id){case"day":return"";case"days":return p.availableViews.days.rows>1&&b.formatDate(a.start,"D"),"";case"week":return"";case"month":return b.formatDate(a.start,"D");case"year":return b.formatDate(a.start,p.xs?"MMM":"MMMM");case"years":return b.formatDate(a.start,"YYYY")}}),f=e.computed(()=>p.datePicker?[]:O.getEventsInRange(a.start,a.end,{excludeIds:g.value,...p.allDayEvents?{allDay:a.allDay}:{}})),$=e.computed(()=>f.value.filter(l=>!l.background)),P=e.computed(()=>{var l;return(l=p.schedules)==null?void 0:l.reduce((T,C)=>(T[C.id]=f.value.filter(_=>_.schedule===C.id),T),{})}),h=e.computed(()=>{if(c.isMonth||c.isYear||c.isYears||a.allDay)return{};const l={};for(const T of f.value){const C=T._.id,{maxConcurrent:_=1,position:N=0}=w.value.cellOverlaps[C]||{};l[C]={left:`${100/_*N}%`},p.stackEvents?l[C].width=`${100/_+(N===_-1?0:15)}%`:l[C].width=`${100/_}%`}return l}),M=e.computed(()=>{const l={};for(const T of f.value){const C=T._.id,{maxConcurrent:_=1,position:N=0}=w.value.cellOverlaps[C]||{};l[C]=`vuecal__event--stack-${N+1}-${_}`}return l}),S=e.computed(()=>p.showCellEventCount&&$.value.length),r=e.computed(()=>{var C;if(!p.specialHours||c.isMonth||c.isYear||c.isYears||a.allDay)return;const l=ke[a.start.getDay()];let T=(C=p.specialHours)==null?void 0:C[l];if(T)return Array.isArray(T)||(T=[T]),T.map(_=>{let{from:N,to:J,class:x,label:le}=_;if(isNaN(N)||isNaN(J)||p.timeFrom>=J||p.timeTo<=N)return;N=Math.max(p.timeFrom,N),J=Math.min(p.timeTo,J);const v=ye(N,p),A=ye(J,p)-v;return{style:{top:`${v}%`,height:`${A}%`},label:le,class:x}}).filter(_=>!!_)}),H=e.computed(()=>p.minTimestamp!==null&&p.minTimestamp>a.end.getTime()),R=e.computed(()=>p.maxTimestamp&&p.maxTimestamp<a.start.getTime()),U=e.computed(()=>{const{disableDays:l}=p,T=c.isYear||c.isYears;return l.length&&l.includes(b.formatDate(a.start))&&!T?!0:H.value||R.value}),Z=e.reactive({show:e.computed(()=>{if(!(!c.isDay&&!c.isDays&&!c.isWeek)&&!(!m.value||!p.time||a.allDay)&&!(p.timeFrom>b.dateToMinutes(c.now))&&!(b.dateToMinutes(c.now)>p.timeTo))return!0}),nowInMinutes:e.computed(()=>b.dateToMinutes(c.now)),todaysTimePosition:e.computed(()=>ye(Z.nowInMinutes,p)),style:e.computed(()=>`top: ${Z.todaysTimePosition}%`),currentTime:e.computed(()=>b.formatTime(c.now))}),ee=e.computed(()=>{if(U.value)return{};const l={...p.eventListeners.cell};for(const[_,N]of Object.entries(l))l[_]=J=>{var x,le,v;(v=(le=J.target||((x=J.e)==null?void 0:x.target)).closest)!=null&&v.call(le,".vuecal__event")||N(J.type?{e:J,cell:I.value,cursor:K.value}:J)};const T={...l};let C=null;return l.click=_=>{var J;Q();const N=ne(_);(J=T.click)==null||J.call(T,{e:_,cell:I.value,cursor:N}),C?C=clearTimeout(C):C=setTimeout(()=>{var x;C=null,(x=T["delayed-click"])==null||x.call(T,{e:_,cell:I.value,cursor:N})},400)},(p.time&&c.isDay||c.isDays||c.isWeek)&&(l.touchstart=_=>{var N;o(_.e||_),(N=T.touchstart)==null||N.call(T,{e:_,cell:I.value,cursor:K.value})},l.mousedown=_=>{var N;o(_.e||_),(N=T.mousedown)==null||N.call(T,{e:_,cell:I.value,cursor:K.value})}),T.dblclick&&(l.dblclick=_=>{var N;(N=T.dblclick)==null||N.call(T,{e:_,cell:I.value,cursor:ne(_)})}),p.editableEvents.drag&&(l.dragenter=_=>y.cellDragEnter(_,I.value),l.dragover=_=>{_.preventDefault(),y.cellDragOver(_,I.value)},l.dragleave=_=>y.cellDragLeave(_,I.value),l.drop=_=>y.cellDragDrop(_,I.value,a.allDay)),l}),I=e.computed(()=>({start:a.start,end:a.end,events:f,...s.schedule?{schedule:s.schedule}:{},goNarrower:()=>c.narrower(),goBroader:()=>c.broader(),broader:c.broaderView,narrower:c.narrowerView})),ne=l=>{var J;const T=(((J=l.touches)==null?void 0:J[0])||l).clientY,{top:C}=u.value.getBoundingClientRect(),_=Ee(T-C,u.value),N=new Date(a.start);return N.setMinutes(me(_,p)),{y:_,date:N}},K=e.computed(()=>{const l=me(s.movePercentageY||s.startPercentageY,p),T=new Date(a.start);return T.setMinutes(l),{x:s.movePercentageX||s.startPercentageX,y:s.movePercentageY||s.startPercentageY,date:T}}),Q=()=>{c.updateSelectedDate(a.start),p.clickToNavigate&&((c.isMonth||c.isDays||c.isWeek)&&p.availableViews.day?c.switch("day"):c.isYear&&p.availableViews.month?c.switch("month"):c.isYears&&p.availableViews.year&&c.switch("year")),c.updateViewDate(a.start)},o=l=>{var C,_;s.schedule=~~l.target.dataset.schedule;const T=u.value.getBoundingClientRect();s.startX=(((C=l.touches)==null?void 0:C[0])||l).clientX-T.left,s.startY=(((_=l.touches)==null?void 0:_[0])||l).clientY-T.top,s.startPercentageX=s.startX*100/T.width,s.startPercentageY=s.startY*100/T.height,s.thresholdPassed=!1,document.addEventListener(l.type==="touchstart"?"touchmove":"mousemove",E),document.addEventListener(l.type==="touchstart"?"touchend":"mouseup",D,{once:!0}),s.holdTimer=setTimeout(()=>{var N,J;s.holding=!0,(J=(N=ee.value).hold)==null||J.call(N,{e:l,cell:I.value,cursor:K.value})},1e3)},E=l=>{var C,_,N,J,x,le;s.dragging||(j.isDraggingCell=!0,(_=(C=ee.value)["drag-start"])==null||_.call(C,{e:l,cell:I.value,cursor:K.value})),s.dragging=!0,s.holdTimer=clearTimeout(s.holdTimer),s.holding=!1;const T=u.value.getBoundingClientRect();s.moveX=(((N=l.touches)==null?void 0:N[0])||l).clientX-T.left,s.moveY=(((J=l.touches)==null?void 0:J[0])||l).clientY-T.top,s.movePercentageX=s.moveX*100/T.width,s.movePercentageY=s.moveY*100/T.height,p.eventCreateMinDrag&&Math.abs(s.startY-s.moveY)>p.eventCreateMinDrag&&(s.thresholdPassed=!0),(le=(x=ee.value).drag)==null||le.call(x,{e:l,cell:I.value,cursor:K.value})},D=async l=>{var T,C;document.removeEventListener(l.type==="touchend"?"touchmove":"mousemove",E,{passive:!1}),s.dragging&&((C=(T=ee.value)["drag-end"])==null||C.call(T,{e:l,cell:I.value,cursor:K.value}),j.isDraggingCell=!1,p.editableEvents.create&&(t.value=!0,await L(l),t.value=!1)),s.holdTimer=clearTimeout(s.holdTimer),s.holding=!1,s.dragging=!1,s.startX=0,s.startY=0,s.moveX=0,s.moveY=0,s.startPercentageX=0,s.startPercentageY=0,s.movePercentageX=0,s.movePercentageY=0,s.thresholdPassed=!1,s.schedule=null},L=async l=>{if(!Y.value)return;let{start:T,end:C,startMinutes:_,endMinutes:N}=d.value;T=new Date(a.start),T.setMinutes(_),C=new Date(a.start),C.setMinutes(N);let J={...d.value,start:T,end:C};const{create:x}=p.eventListeners.event;if(typeof x=="function"){const le=J;J=await new Promise(v=>x({e:l,event:J,cell:I.value,resolve:v,cursor:K.value})),J&&typeof J=="object"&&c.createEvent(J),J&&typeof J=="boolean"&&c.createEvent(le)}else c.createEvent(J)},G=()=>{var l;for(const T of Object.keys(ee.value))(l=u.value)==null||l.removeEventListener(T,ee.value[T])},oe=()=>{w.value=O.getCellOverlappingEvents(a.start,a.end)};return e.watch(()=>!c.isYears&&!c.isYear&&$.value.map(l=>`${l._.id}${l.start.getTime()}${l.end.getTime()}`).join(),async()=>{await e.nextTick(),oe()},{immediate:!0,flush:"post"}),e.onBeforeUnmount(async()=>{for(const l of g.value)O.deleteEvent(l,3);G(),await e.nextTick()}),(l,T)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["vuecal__cell",z.value],ref_key:"cellEl",ref:u},e.toHandlers(ee.value,!0)),[l.$slots.cell?e.renderSlot(l.$slots,"cell",{key:0,cell:I.value}):e.createCommentVNode("",!0),r.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(r.value,(C,_)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__special-hours",C.class]),style:e.normalizeStyle(C.style),innerHTML:C.label||""},null,14,Wy))),256)):e.createCommentVNode("",!0),!l.$slots.cell&&e.unref(p).schedules?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(e.unref(p).schedules,C=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__schedule vuecal__schedule--cell",C.class]),key:C.id,style:e.normalizeStyle(C.style||null),"data-schedule":C.id},[l.$slots["cell-events"]?e.renderSlot(l.$slots,"cell-events",{key:0,cell:I.value}):e.createCommentVNode("",!0),B.value||l.$slots["cell-date"]?(e.openBlock(),e.createElementBlock("div",Xy,[e.renderSlot(l.$slots,"cell-date",{cell:I.value},()=>[e.createTextVNode(e.toDisplayString(B.value),1)])])):e.createCommentVNode("",!0),l.$slots["cell-content"]?(e.openBlock(),e.createElementBlock("div",qy,[e.renderSlot(l.$slots,"cell-content",{cell:I.value})])):e.createCommentVNode("",!0),l.$slots["cell-events"]&&f.value.length?(e.openBlock(),e.createElementBlock("div",Ky,[e.renderSlot(l.$slots,"cell-events",{cell:I.value})])):f.value.length||F.value?(e.openBlock(),e.createBlock(e.TransitionGroup,{key:4,class:"vuecal__cell-events",name:"vuecal-event-delete",onBeforeLeave:T[0]||(T[0]=_=>F.value=!0),onAfterLeave:n,tag:"div"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value[C.id],_=>(e.openBlock(),e.createBlock(Ie,{key:_._.id,event:_,onEventDeleted:V,"in-all-day-bar":a.allDay,style:e.normalizeStyle(h.value[_._.id])},e.createSlots({_:2},[l.$slots["event.all-day"]&&a.allDay?{name:"event.all-day",fn:e.withCtx(N=>[e.renderSlot(l.$slots,"event.all-day",e.mergeProps({ref_for:!0},N))]),key:"0"}:void 0,l.$slots[`event.${e.unref(c).id}`]?{name:`event.${e.unref(c).id}`,fn:e.withCtx(N=>[e.renderSlot(l.$slots,`event.${e.unref(c).id}`,e.mergeProps({ref_for:!0},N))]),key:"1"}:void 0,l.$slots.event?{name:"event",fn:e.withCtx(N=>[e.renderSlot(l.$slots,"event",e.mergeProps({ref_for:!0},N))]),key:"2"}:void 0]),1032,["event","in-all-day-bar","style"]))),128))]),_:2},1024)):e.createCommentVNode("",!0),Y.value&&s.schedule===C.id&&!a.allDay?(e.openBlock(),e.createElementBlock("div",{key:5,class:"vuecal__event-placeholder",style:e.normalizeStyle(d.value.style)},e.toDisplayString(d.value.start)+" - "+e.toDisplayString(d.value.end),5)):e.createCommentVNode("",!0)],14,Gy))),128)):e.createCommentVNode("",!0),!l.$slots.cell&&!e.unref(p).schedules?(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[l.$slots["cell-events"]?e.renderSlot(l.$slots,"cell-events",{key:0,cell:I.value}):e.createCommentVNode("",!0),B.value||l.$slots["cell-date"]?(e.openBlock(),e.createElementBlock("div",Uy,[e.renderSlot(l.$slots,"cell-date",{cell:I.value},()=>[e.createTextVNode(e.toDisplayString(B.value),1)])])):e.createCommentVNode("",!0),l.$slots["cell-content"]?(e.openBlock(),e.createElementBlock("div",Zy,[e.renderSlot(l.$slots,"cell-content",{cell:I.value})])):e.createCommentVNode("",!0),l.$slots["cell-events"]&&f.value.length?(e.openBlock(),e.createElementBlock("div",Qy,[e.renderSlot(l.$slots,"cell-events",{cell:I.value})])):!(e.unref(c).isMonth&&!e.unref(p).eventsOnMonthView)&&!e.unref(c).isYear&&!e.unref(c).isYears&&(f.value.length||F.value)?(e.openBlock(),e.createBlock(e.TransitionGroup,{key:4,class:"vuecal__cell-events",name:"vuecal-event-delete",onBeforeLeave:T[1]||(T[1]=C=>F.value=!0),onAfterLeave:n,tag:"div"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,C=>(e.openBlock(),e.createBlock(Ie,{key:C._.id,event:C,onEventDeleted:V,"in-all-day-bar":a.allDay,class:e.normalizeClass(M.value[C._.id]),style:e.normalizeStyle(h.value[C._.id])},e.createSlots({_:2},[l.$slots["event.all-day"]&&a.allDay?{name:"event.all-day",fn:e.withCtx(_=>[e.renderSlot(l.$slots,"event.all-day",e.mergeProps({ref_for:!0},_))]),key:"0"}:void 0,l.$slots[`event.${e.unref(c).id}`]?{name:`event.${e.unref(c).id}`,fn:e.withCtx(_=>[e.renderSlot(l.$slots,`event.${e.unref(c).id}`,e.mergeProps({ref_for:!0},_))]),key:"1"}:void 0,l.$slots.event?{name:"event",fn:e.withCtx(_=>[e.renderSlot(l.$slots,"event",e.mergeProps({ref_for:!0},_))]),key:"2"}:void 0]),1032,["event","in-all-day-bar","class","style"]))),128))]),_:3})):e.createCommentVNode("",!0),Y.value?(e.openBlock(),e.createElementBlock("div",{key:5,class:"vuecal__event-placeholder",style:e.normalizeStyle(d.value.style)},e.toDisplayString(d.value.start)+" - "+e.toDisplayString(d.value.end),5)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),l.$slots["event-count"]?e.renderSlot(l.$slots,"event-count",{key:4,events:$.value}):S.value?(e.openBlock(),e.createElementBlock("div",xy,e.toDisplayString($.value.length),1)):e.createCommentVNode("",!0),Z.show?(e.openBlock(),e.createElementBlock("div",{key:6,class:"vuecal__now-line",style:e.normalizeStyle(Z.style),title:Z.currentTime},[e.createElementVNode("span",null,e.toDisplayString(Z.currentTime),1)],12,em)):e.createCommentVNode("",!0)],16))}},tm={key:0,class:"vuecal__headings"},am={key:0,class:"vuecal__weekdays-headings"},nm=["onClick"],om={class:"vuecal__weekday-day"},sm={key:0,class:"vuecal__weekday-date"},rm={key:1,class:"vuecal__schedules-headings w-flex grow"},lm=["innerHTML"],cm={key:2,class:"vuecal__all-day w-flex grow"},dm={__name:"headings-bar",setup(k){const a=e.inject("vuecal"),i=e.inject("$vuecalEl"),{view:c,config:p,dateUtils:b}=a,O=e.computed(()=>p.xs?"day-xs":p.sm||c.isDays||c.isMonth?"day-sm":"day"),y=e.computed(()=>(c.isDay||c.isDays||c.isWeek||c.isMonth)&&!(c.isDay&&!p.schedules&&!p.allDayEvents)),j=e.computed(()=>c.cellDates.slice(0,c.cols).map(({start:g})=>({id:ke[g.getDay()],date:g,dateNumber:g.getDate(),day:b.formatDate(g,"dddd"),"day-sm":b.formatDate(g,"ddd"),"day-xs":b.formatDate(g,"dd"),isToday:b.isToday(g)}))),m={click:g=>{(c.isDays||c.isWeek)&&c.updateSelectedDate(g)}},u={isResizing:e.ref(!1),startY:e.ref(0),initialHeight:e.ref(0),defaultHeight:25,cleanup(){typeof document<"u"&&(document.removeEventListener("mousemove",u.handleMouseMove),document.removeEventListener("mouseup",u.cleanup),document.removeEventListener("touchmove",u.handleTouchMove,{passive:!1}),document.removeEventListener("touchend",u.cleanup)),u.isResizing.value=!1},startResize(g){var V;this.isResizing.value=!0,this.startY.value=g;const F=(V=i.value)==null?void 0:V.querySelector(".vuecal__all-day");F&&(this.initialHeight.value=F.offsetHeight),document.addEventListener("mousemove",u.handleMouseMove),document.addEventListener("mouseup",u.cleanup),document.addEventListener("touchmove",u.handleTouchMove,{passive:!1}),document.addEventListener("touchend",u.cleanup)},updateHeight(g){var n;if(!this.isResizing.value)return;const F=g-this.startY.value,V=Math.max(20,this.initialHeight.value+F);(n=i.value)==null||n.style.setProperty("--vuecal-all-day-bar-height",`${V}px`)},handleMouseDown(g){this.startResize(g.clientY)},handleMouseMove(g){u.updateHeight(g.clientY)},handleTouchStart(g){var F;(F=g.touches)!=null&&F[0]&&this.startResize(g.touches[0].clientY)},handleTouchMove(g){var F;(F=g.touches)!=null&&F[0]&&(u.updateHeight(g.touches[0].clientY),g.preventDefault())}};return e.onBeforeUnmount(()=>{u.cleanup()}),(g,F)=>y.value?(e.openBlock(),e.createElementBlock("div",tm,[e.unref(c).isDay?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",am,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j.value,(V,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__weekday",{"vuecal__weekday--today":V.isToday}]),key:n,onClick:s=>m.click(V.date)},[e.renderSlot(g.$slots,"weekday-heading",{label:V[O.value],id:V.id,date:V.date},()=>[e.createElementVNode("span",om,e.toDisplayString(V[O.value]),1),e.unref(c).isMonth?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("strong",sm,e.toDisplayString(V.dateNumber),1))])],10,nm))),128))])),e.unref(p).schedules?(e.openBlock(),e.createElementBlock("div",rm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j.value,(V,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:n},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p).schedules,(s,t)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:t},[g.$slots["schedule-heading"]?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["vuecal__schedule vuecal__schedule--heading",s.class])},[e.renderSlot(g.$slots,"schedule-heading",{schedule:s,view:e.unref(c)})],2)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["vuecal__schedule vuecal__schedule--heading",s.class]),innerHTML:s.label},null,10,lm))],64))),128))],64))),128))])):e.createCommentVNode("",!0),e.unref(p).allDayEvents?(e.openBlock(),e.createElementBlock("div",cm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j.value,(V,n)=>(e.openBlock(),e.createBlock(We,{class:e.normalizeClass(["vuecal__all-day-cell",{"vuecal__weekday--today":V.isToday}]),key:n,start:V.date,end:new Date(V.date.getTime()+24*60*60*1e3-1),index:n,"all-day":""},e.createSlots({_:2},[g.$slots["event.all-day"]?{name:"event.all-day",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"event.all-day",e.mergeProps({ref_for:!0},s))]),key:"0"}:{name:"event",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"event",e.mergeProps({ref_for:!0},s))]),key:"1"}]),1032,["class","start","end","index"]))),128)),e.createElementVNode("div",{class:"vuecal__all-day-resizer",onMousedown:F[0]||(F[0]=(...V)=>u.handleMouseDown&&u.handleMouseDown(...V)),onTouchstart:F[1]||(F[1]=(...V)=>u.handleTouchStart&&u.handleTouchStart(...V))},null,32)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)}},im={class:"vuecal__time-column"},um={key:0,class:"vuecal__all-day-label"},ym={__name:"time-column",setup(k){const a=e.inject("vuecal"),{config:i,texts:c}=a,p=e.computed(()=>{const b=[];for(let y=i.timeFrom;y<i.timeTo;y+=i.timeStep){const j=y+i.timeStep>i.timeTo,m=~~(y/60),u=y%60,g=c[y<720?"am":"pm"];let F=null;j&&(F=`calc(var(--vuecal-time-cell-height) * ${(i.timeTo-y)/i.timeStep})`),b.push({minutesSum:y,hours:m,minutes:u,formatted12:`${m%12?m%12:12}${u?`:${u.toString().padStart(2,0)}`:""}${g}`,formatted24:`${m.toString().padStart(2,0)}:${u.toString().padStart(2,0)}`,height:F})}return b});return(b,O)=>(e.openBlock(),e.createElementBlock("div",im,[e.unref(i).allDayEvents?(e.openBlock(),e.createElementBlock("div",um,[e.renderSlot(b.$slots,"all-day-label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(a).texts.allDay),1)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(y,j)=>(e.openBlock(),e.createElementBlock("div",{class:"vuecal__time-cell",key:j,style:e.normalizeStyle({height:y.height||null})},[e.renderSlot(b.$slots,"time-cell",{index:j,minutes:y.minutes,hours:y.hours,minutesSum:y.minutesSum,format12:y.formatted12,format24:y.formatted24},()=>[e.createElementVNode("label",null,e.toDisplayString(e.unref(i).twelveHour?y.formatted12:y.formatted24),1)])],4))),128))]))}},mm={__name:"body",setup(k){const a=e.inject("vuecal"),{view:i,config:c,dateUtils:p}=a,b=e.ref(null),O=e.ref(null),y=e.computed(()=>({"--vuecal-grid-columns":i.cols,"--vuecal-grid-rows":i.rows})),j=e.computed(()=>{const g=p.formatTime(me(O.value,c));return{style:{top:`${O.value}%`},time:g}}),m=g=>{var n;if(i.isMonth||i.isYear||i.isYears)return;const F=(((n=g.touches)==null?void 0:n[0])||g).clientY,{top:V}=b.value.getBoundingClientRect();O.value=Ee(F-V,b.value)},u=()=>{O.value=null};return e.onMounted(()=>{b.value.addEventListener("mousemove",m),b.value.addEventListener("touchmove",m),b.value.addEventListener("mouseleave",u),b.value.addEventListener("touchend",u)}),e.onBeforeUnmount(()=>{b.value&&(b.value.removeEventListener("mousemove",m),b.value.removeEventListener("touchmove",m),b.value.removeEventListener("mouseleave",u),b.value.removeEventListener("touchend",u))}),(g,F)=>(e.openBlock(),e.createElementBlock("div",{class:"vuecal__body",ref_key:"bodyEl",ref:b,style:e.normalizeStyle(y.value)},[e.createVNode(e.Transition,{name:"vuecal-shrink"},{default:e.withCtx(()=>[e.unref(c).timeAtCursor&&O.value!==null?(e.openBlock(),e.createElementBlock("div",{key:0,class:"vuecal__time-at-cursor",style:e.normalizeStyle(j.value.style)},[e.createElementVNode("label",null,e.toDisplayString(j.value.time),1)],4)):e.createCommentVNode("",!0)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i).cellDates,(V,n)=>(e.openBlock(),e.createBlock(We,{key:n,start:V.start,end:V.end,index:n},e.createSlots({_:2},[g.$slots.cell?{name:"cell",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"cell",e.mergeProps({ref_for:!0},s))]),key:"0"}:void 0,g.$slots["cell-date"]?{name:"cell-date",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"cell-date",e.mergeProps({ref_for:!0},s))]),key:"1"}:void 0,g.$slots["cell-content"]?{name:"cell-content",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"cell-content",e.mergeProps({ref_for:!0},s))]),key:"2"}:void 0,g.$slots["cell-events"]?{name:"cell-events",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"cell-events",e.mergeProps({ref_for:!0},s))]),key:"3"}:void 0,g.$slots[`event.${e.unref(i).id}`]?{name:`event.${e.unref(i).id}`,fn:e.withCtx(s=>[e.renderSlot(g.$slots,`event.${e.unref(i).id}`,e.mergeProps({ref_for:!0},s))]),key:"4"}:void 0,g.$slots["event.all-day"]?{name:"event.all-day",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"event.all-day",e.mergeProps({ref_for:!0},s))]),key:"5"}:void 0,g.$slots.event?{name:"event",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"event",e.mergeProps({ref_for:!0},s))]),key:"6"}:void 0,g.$slots["event-count"]?{name:"event-count",fn:e.withCtx(s=>[e.renderSlot(g.$slots,"event-count",e.mergeProps({ref_for:!0},s))]),key:"7"}:void 0]),1032,["start","end","index"]))),128))],4))}},hm=["data-locale"],fm={class:"vuecal__scrollable-wrap"},vm={key:1,class:"vuecal__week-numbers"},gm={class:"vuecal__week-number"},$m={class:"vuecal__body-wrap"},Dm={__name:"index",props:Yy,emits:["ready","view-change","update:view","update:selectedDate","update:viewDate","update:events","event-delete","event-created","event-dropped","event-drag-start","event-drag-end"],setup(k,{expose:a,emit:i}){const c=k,p=i,b=e.useTemplateRef("vuecal-el"),O=Sy({props:c,emit:p,attrs:e.useAttrs(),vuecalEl:b,uid:e.useId()}),{config:y,view:j,dateUtils:m,touch:u}=O,g=e.computed(()=>y.time&&(j.isDay||j.isDays||j.isWeek)),F=e.computed(()=>Array(j.rows).fill().map((t,w)=>m.getWeek(m.addDays(j.firstCellDate,7*w)))),V=e.computed(()=>{var t;return{"vuecal--ready":y.ready,[`vuecal--${y.theme}-theme`]:y.theme,[`vuecal--${y.size}`]:!0,"vuecal--date-picker":y.datePicker,"vuecal--dark":y.dark,"vuecal--light":!y.dark,[`vuecal--${j.id}-view`]:!0,"vuecal--view-has-time":g.value,"vuecal--timeless":!y.time,"vuecal--dragging-cell":u.isDraggingCell,"vuecal--dragging-event":u.isDraggingEvent,"vuecal--resizing-event":u.isResizingEvent,"vuecal--has-schedules":(t=y.schedules)==null?void 0:t.length}}),n=e.computed(()=>({"--vuecal-time-cell-height":y.timeCellHeight&&`${y.timeCellHeight}px`})),s=e.computed(()=>{var t,w;return{"vuecal__scrollable--row":g.value||y.weekNumbers&&j.isMonth,[`vuecal__scrollable--${j.id}-view`]:!0,"vuecal__scrollable--has-schedules":(t=y.schedules)==null?void 0:t.length,"vuecal__scrollable--no-schedules":!((w=y.schedules)!=null&&w.length),"vuecal__scrollable--no-all-day-bar":!y.allDayEvents,"vuecal__scrollable--has-all-day-bar":y.allDayEvents}});return e.onMounted(async()=>{await e.nextTick(),y.ready=!0,p("ready",{config:y,view:j})}),e.provide("vuecal",O),e.provide("$vuecalEl",b),a({view:O.view}),(t,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal",V.value]),ref:"vuecal-el","data-locale":t.locale,style:e.normalizeStyle(n.value)},[t.$slots.diy?e.renderSlot(t.$slots,"diy",{key:0,vuecal:e.unref(O)}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createVNode(By,null,e.createSlots({_:2},[t.$slots.header?{name:"header",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"header",e.normalizeProps(e.guardReactiveProps(d)))]),key:"0"}:void 0,!t.$slots.header&&t.$slots["previous-button"]?{name:"previous-button",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"previous-button",e.normalizeProps(e.guardReactiveProps(d)))]),key:"1"}:void 0,!t.$slots.header&&t.$slots["next-button"]?{name:"next-button",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"next-button",e.normalizeProps(e.guardReactiveProps(d)))]),key:"2"}:void 0,!t.$slots.header&&t.$slots["today-button"]?{name:"today-button",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"today-button",e.normalizeProps(e.guardReactiveProps(d)))]),key:"3"}:void 0,!t.$slots.header&&t.$slots.title?{name:"title",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"title",e.normalizeProps(e.guardReactiveProps(d)))]),key:"4"}:void 0,!t.$slots.header&&t.$slots["title.day"]?{name:"title.day",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"title.day",e.normalizeProps(e.guardReactiveProps(d)))]),key:"5"}:void 0,!t.$slots.header&&t.$slots["title.days"]?{name:"title.days",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"title.days",e.normalizeProps(e.guardReactiveProps(d)))]),key:"6"}:void 0,!t.$slots.header&&t.$slots["title.week"]?{name:"title.week",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"title.week",e.normalizeProps(e.guardReactiveProps(d)))]),key:"7"}:void 0,!t.$slots.header&&t.$slots["title.month"]?{name:"title.month",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"title.month",e.normalizeProps(e.guardReactiveProps(d)))]),key:"8"}:void 0,!t.$slots.header&&t.$slots["title.year"]?{name:"title.year",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"title.year",e.normalizeProps(e.guardReactiveProps(d)))]),key:"9"}:void 0,!t.$slots.header&&t.$slots["title.years"]?{name:"title.years",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"title.years",e.normalizeProps(e.guardReactiveProps(d)))]),key:"10"}:void 0,!t.$slots.header&&t.$slots["schedule-heading"]?{name:"schedule-heading",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"schedule-heading",e.normalizeProps(e.guardReactiveProps(d)))]),key:"11"}:void 0]),1024),e.createElementVNode("div",fm,[e.createVNode(e.Transition,{name:`vuecal-slide-fade--${e.unref(j).transitionDirection}`},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vuecal__scrollable",s.value]),key:e.unref(j).id+e.unref(j).start.getTime()},[g.value?(e.openBlock(),e.createBlock(ym,{key:0},e.createSlots({_:2},[t.$slots["time-cell"]?{name:"time-cell",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"time-cell",e.normalizeProps(e.guardReactiveProps(d)))]),key:"0"}:void 0]),1024)):e.createCommentVNode("",!0),e.unref(y).weekNumbers&&e.unref(j).isMonth?(e.openBlock(),e.createElementBlock("div",vm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(F.value,d=>(e.openBlock(),e.createElementBlock("div",gm,[e.renderSlot(t.$slots,"week-number",{},()=>[e.createElementVNode("small",null,e.toDisplayString(d),1)])]))),256))])):e.createCommentVNode("",!0),e.createElementVNode("div",$m,[e.createVNode(dm,null,e.createSlots({_:2},[t.$slots["weekday-heading"]?{name:"weekday-heading",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"weekday-heading",e.normalizeProps(e.guardReactiveProps(d)))]),key:"0"}:void 0,t.$slots["schedule-heading"]?{name:"schedule-heading",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"schedule-heading",e.normalizeProps(e.guardReactiveProps(d)))]),key:"1"}:void 0,t.$slots["event.all-day"]?{name:"event.all-day",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"event.all-day",e.normalizeProps(e.guardReactiveProps(d)))]),key:"2"}:void 0,t.$slots.event?{name:"event",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"event",e.normalizeProps(e.guardReactiveProps(d)))]),key:"3"}:void 0]),1024),e.createVNode(mm,null,e.createSlots({_:2},[t.$slots.cell?{name:"cell",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"cell",e.normalizeProps(e.guardReactiveProps(d)))]),key:"0"}:void 0,!t.$slots.cell&&t.$slots["cell-date"]?{name:"cell-date",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"cell-date",e.normalizeProps(e.guardReactiveProps(d)))]),key:"1"}:void 0,!t.$slots.cell&&t.$slots["cell-content"]?{name:"cell-content",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"cell-content",e.normalizeProps(e.guardReactiveProps(d)))]),key:"2"}:void 0,!t.$slots.cell&&t.$slots["cell-events"]?{name:"cell-events",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"cell-events",e.normalizeProps(e.guardReactiveProps(d)))]),key:"3"}:void 0,!t.$slots.cell&&!t.$slots["cell-events"]&&t.$slots["event.all-day"]?{name:"event.all-day",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"event.all-day",e.normalizeProps(e.guardReactiveProps(d)))]),key:"4"}:void 0,!t.$slots.cell&&!t.$slots["cell-events"]&&t.$slots[`event.${e.unref(j).id}`]?{name:`event.${e.unref(j).id}`,fn:e.withCtx(d=>[e.renderSlot(t.$slots,`event.${e.unref(j).id}`,e.normalizeProps(e.guardReactiveProps(d)))]),key:"5"}:void 0,!t.$slots.cell&&!t.$slots["cell-events"]&&t.$slots.event?{name:"event",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"event",e.normalizeProps(e.guardReactiveProps(d)))]),key:"6"}:void 0,!t.$slots.cell&&t.$slots["event-count"]?{name:"event-count",fn:e.withCtx(d=>[e.renderSlot(t.$slots,"event-count",e.normalizeProps(e.guardReactiveProps(d)))]),key:"7"}:void 0]),1024)])],2))]),_:3},8,["name"])])],64))],14,hm))}},km=k=>{fe.texts={...te.texts,...k},fe.dateUtils.updateTexts(fe.texts)},{addDatePrototypes:pm,removeDatePrototypes:wm,updateTexts:Em,addDays:bm,subtractDays:Mm,addHours:_m,subtractHours:Sm,addMinutes:Tm,subtractMinutes:Ym,getWeek:Cm,isToday:Pm,isSameDate:jm,isInRange:Fm,isLeapYear:zm,getPreviousFirstDayOfWeek:Om,stringToDate:Bm,dateToMinutes:Vm,countDays:Nm,datesInSameTimeStep:Am,isValid:Hm,formatDate:Lm,formatDateLite:Rm,formatTime:Jm,formatTimeLite:Im,formatMinutes:Wm}=fe.dateUtils,Ge=["الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت","الأحد"],Xe=["ن","ث","ر","خ","ج","س","ح"],qe=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر"," ديسمبر"],Ke="سنوات",Ue="سنة",Ze="شهر",Qe="أسبوع",xe="أيام",et="يوم",tt="اليوم",at="لا حدث",nt="طوال اليوم",ot="حذف",st="إنشاء حدث",rt="dddd D MMMM YYYY",lt=!1,Gm=Object.freeze(Object.defineProperty({__proto__:null,allDay:nt,createEvent:st,dateFormat:rt,day:et,days:xe,default:{weekDays:Ge,weekDaysShort:Xe,months:qe,years:Ke,year:Ue,month:Ze,week:Qe,days:xe,day:et,today:tt,noEvent:at,allDay:nt,deleteEvent:ot,createEvent:st,dateFormat:rt,truncations:lt},deleteEvent:ot,month:Ze,months:qe,noEvent:at,today:tt,truncations:lt,week:Qe,weekDays:Ge,weekDaysShort:Xe,year:Ue,years:Ke},Symbol.toStringTag,{value:"Module"})),ct=["Понеделник","Вторник","Сряда","Четвъртък","Петък","Събота","Неделя"],dt=["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември"],it="Години",ut="Година",yt="Месец",mt="Седмица",ht="Дни",ft="Ден",vt="Днес",gt="Няма събития",$t="Цял ден",Dt="Изтрий",kt="Създай събитие",pt="dddd D MMMM YYYY",Xm=Object.freeze(Object.defineProperty({__proto__:null,allDay:$t,createEvent:kt,dateFormat:pt,day:ft,days:ht,default:{weekDays:ct,months:dt,years:it,year:ut,month:yt,week:mt,days:ht,day:ft,today:vt,noEvent:gt,allDay:$t,deleteEvent:Dt,createEvent:kt,dateFormat:pt},deleteEvent:Dt,month:yt,months:dt,noEvent:gt,today:vt,week:mt,weekDays:ct,year:ut,years:it},Symbol.toStringTag,{value:"Module"})),wt=["সোম","মঙ্গল","বুধ","বৃহস্পতি","শুক্র","শনি","রবি"],Et=["জানুয়ারি","ফেব্ুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","অগাস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর"],bt="বছর",Mt="বছর",_t="মাস",St="সপ্তাহ",Tt="দিন",Yt="দিন",Ct="আজ",Pt="কার্যসূচী",jt="সারাদিন",Ft="মুছুন",zt="কার্যসূচী তৈরি করুন",Ot="dddd D MMMM YYYY",qm=Object.freeze(Object.defineProperty({__proto__:null,allDay:jt,createEvent:zt,dateFormat:Ot,day:Yt,days:Tt,default:{weekDays:wt,months:Et,years:bt,year:Mt,month:_t,week:St,days:Tt,day:Yt,today:Ct,noEvent:Pt,allDay:jt,deleteEvent:Ft,createEvent:zt,dateFormat:Ot},deleteEvent:Ft,month:_t,months:Et,noEvent:Pt,today:Ct,week:St,weekDays:wt,year:Mt,years:bt},Symbol.toStringTag,{value:"Module"})),Bt=["Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota","Nedjelja"],Vt=["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],Nt="Godine",At="Godina",Ht="Mjesec",Lt="Sedmica",Rt="Dana",Jt="Dan",It="Danas",Wt="Nema događaja",Gt="Cijeli dan",Xt="Obriši",qt="Kreiraj događaj",Kt="dddd D MMMM YYYY",Km=Object.freeze(Object.defineProperty({__proto__:null,allDay:Gt,createEvent:qt,dateFormat:Kt,day:Jt,days:Rt,default:{weekDays:Bt,months:Vt,years:Nt,year:At,month:Ht,week:Lt,days:Rt,day:Jt,today:It,noEvent:Wt,allDay:Gt,deleteEvent:Xt,createEvent:qt,dateFormat:Kt},deleteEvent:Xt,month:Ht,months:Vt,noEvent:Wt,today:It,week:Lt,weekDays:Bt,year:At,years:Nt},Symbol.toStringTag,{value:"Module"})),Ut=["Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte","Diumenge"],Zt=["Dl","Dt","Dc","Dj","Dv","Ds","Dg"],Qt=["Gener","Febrer","Març","Abril","Maig","Juny","Juliol","Agost","Setembre","Octubre","Novembre","Desembre"],xt="Anys",ea="Any",ta="Mes",aa="Setmana",na="Dies",oa="Dia",sa="Avui",ra="No hi ha esdeveniments",la="Tot el dia",ca="Eliminar",da="Crear un esdeveniment",ia="dddd D MMMM YYYY",Um=Object.freeze(Object.defineProperty({__proto__:null,allDay:la,createEvent:da,dateFormat:ia,day:oa,days:na,default:{weekDays:Ut,weekDaysShort:Zt,months:Qt,years:xt,year:ea,month:ta,week:aa,days:na,day:oa,today:sa,noEvent:ra,allDay:la,deleteEvent:ca,createEvent:da,dateFormat:ia},deleteEvent:ca,month:ta,months:Qt,noEvent:ra,today:sa,week:aa,weekDays:Ut,weekDaysShort:Zt,year:ea,years:xt},Symbol.toStringTag,{value:"Module"})),ua=["Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota","Neděle"],ya=["Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec"],ma="Roky",ha="Rok",fa="Měsíc",va="Týden",ga="Dny",$a="Den",Da="Dnes",ka="Bez událostí",pa="Celý den",wa="Odstranit",Ea="Vytvořit událost",ba="dddd D. MMMM YYYY",Zm=Object.freeze(Object.defineProperty({__proto__:null,allDay:pa,createEvent:Ea,dateFormat:ba,day:$a,days:ga,default:{weekDays:ua,months:ya,years:ma,year:ha,month:fa,week:va,days:ga,day:$a,today:Da,noEvent:ka,allDay:pa,deleteEvent:wa,createEvent:Ea,dateFormat:ba},deleteEvent:wa,month:fa,months:ya,noEvent:ka,today:Da,week:va,weekDays:ua,year:ha,years:ma},Symbol.toStringTag,{value:"Module"})),Ma=["Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag","Søndag"],_a=["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],Sa="År (flertal)",Ta="År",Ya="Måned",Ca="Uge",Pa="Dage",ja="Dag",Fa="I dag",za="Ingen begivenhed",Oa="Hele dagen",Ba="Slet",Va="Opret et event",Na="dddd D MMMM YYYY",Qm=Object.freeze(Object.defineProperty({__proto__:null,allDay:Oa,createEvent:Va,dateFormat:Na,day:ja,days:Pa,default:{weekDays:Ma,months:_a,years:Sa,year:Ta,month:Ya,week:Ca,days:Pa,day:ja,today:Fa,noEvent:za,allDay:Oa,deleteEvent:Ba,createEvent:Va,dateFormat:Na},deleteEvent:Ba,month:Ya,months:_a,noEvent:za,today:Fa,week:Ca,weekDays:Ma,year:Ta,years:Sa},Symbol.toStringTag,{value:"Module"})),Aa=["Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"],Ha=["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],La="Jahre",Ra="Jahr",Ja="Monat",Ia="Woche",Wa="Tage",Ga="Tag",Xa="Heute",qa="Keine Events",Ka="Ganztägig",Ua="Löschen",Za="Event erstellen",Qa="dddd D MMMM YYYY",xm=Object.freeze(Object.defineProperty({__proto__:null,allDay:Ka,createEvent:Za,dateFormat:Qa,day:Ga,days:Wa,default:{weekDays:Aa,months:Ha,years:La,year:Ra,month:Ja,week:Ia,days:Wa,day:Ga,today:Xa,noEvent:qa,allDay:Ka,deleteEvent:Ua,createEvent:Za,dateFormat:Qa},deleteEvent:Ua,month:Ja,months:Ha,noEvent:qa,today:Xa,week:Ia,weekDays:Aa,year:Ra,years:La},Symbol.toStringTag,{value:"Module"})),xa=["Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο","Κυριακή"],en=["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος"],tn=["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου"],an="Έτη",nn="Έτος",on="Μήνας",sn="Εβδομάδα",rn="Ημέρες",ln="Ημέρα",cn="Σήμερα",dn="Κανένα συμβάν",un="Ημερήσιο συμβάν",yn="Διαγραφή",mn="Δημιουργία συμβάντος",hn="dddd D MMMMG YYYY",fn="π.μ.",vn="μ.μ.",eh=Object.freeze(Object.defineProperty({__proto__:null,allDay:un,am:fn,createEvent:mn,dateFormat:hn,day:ln,days:rn,default:{weekDays:xa,months:en,monthsGenitive:tn,years:an,year:nn,month:on,week:sn,days:rn,day:ln,today:cn,noEvent:dn,allDay:un,deleteEvent:yn,createEvent:mn,dateFormat:hn,am:fn,pm:vn},deleteEvent:yn,month:on,months:en,monthsGenitive:tn,noEvent:dn,pm:vn,today:cn,week:sn,weekDays:xa,year:nn,years:an},Symbol.toStringTag,{value:"Module"})),gn=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],$n=["January","February","March","April","May","June","July","August","September","October","November","December"],Dn="Years",kn="Year",pn="Month",wn="Week",En="Days",bn="Day",Mn="Today",_n="No Event",Sn="All-day",Tn="Delete",Yn="Create an event",Cn="dddd D{S} MMMM YYYY",th=Object.freeze(Object.defineProperty({__proto__:null,allDay:Sn,createEvent:Yn,dateFormat:Cn,day:bn,days:En,default:{weekDays:gn,months:$n,years:Dn,year:kn,month:pn,week:wn,days:En,day:bn,today:Mn,noEvent:_n,allDay:Sn,deleteEvent:Tn,createEvent:Yn,dateFormat:Cn},deleteEvent:Tn,month:pn,months:$n,noEvent:_n,today:Mn,week:wn,weekDays:gn,year:kn,years:Dn},Symbol.toStringTag,{value:"Module"})),Pn=["Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Domingo"],jn=["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],Fn="Años",zn="Año",On="Mes",Bn="Semana",Vn="Días",Nn="Día",An="Hoy",Hn="No hay evento",Ln="Todo el día",Rn="Borrar",Jn="Crear un evento",In="dddd D MMMM YYYY",ah=Object.freeze(Object.defineProperty({__proto__:null,allDay:Ln,createEvent:Jn,dateFormat:In,day:Nn,days:Vn,default:{weekDays:Pn,months:jn,years:Fn,year:zn,month:On,week:Bn,days:Vn,day:Nn,today:An,noEvent:Hn,allDay:Ln,deleteEvent:Rn,createEvent:Jn,dateFormat:In},deleteEvent:Rn,month:On,months:jn,noEvent:Hn,today:An,week:Bn,weekDays:Pn,year:zn,years:Fn},Symbol.toStringTag,{value:"Module"})),Wn=["Esmaspäev","Teisipäev","Kolmapäev","Neljapäev","Reede","Laupäev","Pühapäev"],Gn=["Jaanuar","Veebruar","Märts","Aprill","Mai","Juuni","Juuli","August","September","Oktoober","November","Detsember"],Xn="Aastad",qn="Aasta",Kn="Kuu",Un="Nädal",Zn="Päeva",Qn="Päev",xn="Täna",eo="Sündmus puudub",to="Terve päev",ao="Kustuta",no="Loo sündmus",oo="dddd D MMMM YYYY",nh=Object.freeze(Object.defineProperty({__proto__:null,allDay:to,createEvent:no,dateFormat:oo,day:Qn,days:Zn,default:{weekDays:Wn,months:Gn,years:Xn,year:qn,month:Kn,week:Un,days:Zn,day:Qn,today:xn,noEvent:eo,allDay:to,deleteEvent:ao,createEvent:no,dateFormat:oo},deleteEvent:ao,month:Kn,months:Gn,noEvent:eo,today:xn,week:Un,weekDays:Wn,year:qn,years:Xn},Symbol.toStringTag,{value:"Module"})),so=["دوشنبه","سه شنبه","چهار شنبه","پنج شنبه","جمعه","شنبه","یک شنبه"],ro=["د","س","چ","پ","ج","ش","ی"],lo=["ژانویه","فوریه","مارس","آوریل","می","ژوئن","ژوئیه","اوت","سپتامبر","اکتبر","نوامبر","دسامبر"],co="سالها",io="سال",uo="ماه",yo="هفته",mo="روزها",ho="روز",fo="امروز",vo="رویدادی نیست",go="تمام روز",$o="حذف",Do="ایجاد یک رویداد",ko="dddd D MMMM YYYY",po=!1,oh=Object.freeze(Object.defineProperty({__proto__:null,allDay:go,createEvent:Do,dateFormat:ko,day:ho,days:mo,default:{weekDays:so,weekDaysShort:ro,months:lo,years:co,year:io,month:uo,week:yo,days:mo,day:ho,today:fo,noEvent:vo,allDay:go,deleteEvent:$o,createEvent:Do,dateFormat:ko,truncations:po},deleteEvent:$o,month:uo,months:lo,noEvent:vo,today:fo,truncations:po,week:yo,weekDays:so,weekDaysShort:ro,year:io,years:co},Symbol.toStringTag,{value:"Module"})),wo=["Maanantai","Tiistai","Keskiviikko","Torstai","Perjantai","Lauantai","Sunnuntai"],Eo=["Tammikuu","Helmikuu","Maaliskuu","Huhtikuu","Toukokuu","Kesäkuu","Heinäkuu","Elokuu","Syyskuu","Lokakuu","Marraskuu","Joulukuu"],bo="Vuodet",Mo="Vuosi",_o="Kuukausi",So="Viikko",To="Päivät",Yo="Päivä",Co="Tänään",Po="Ei tapahtumia",jo="Koko päivä",Fo="Poista tapahtuma",zo="Luo tapahtuma",Oo="dddd, D MMMM YYYY",sh=Object.freeze(Object.defineProperty({__proto__:null,allDay:jo,createEvent:zo,dateFormat:Oo,day:Yo,days:To,default:{weekDays:wo,months:Eo,years:bo,year:Mo,month:_o,week:So,days:To,day:Yo,today:Co,noEvent:Po,allDay:jo,deleteEvent:Fo,createEvent:zo,dateFormat:Oo},deleteEvent:Fo,month:_o,months:Eo,noEvent:Po,today:Co,week:So,weekDays:wo,year:Mo,years:bo},Symbol.toStringTag,{value:"Module"})),Bo=["Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"],Vo=["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],No="Années",Ao="Année",Ho="Mois",Lo="Semaine",Ro="Jours",Jo="Jour",Io="Aujourd'hui",Wo="Aucun événement",Go="Jour entier",Xo="Supprimer",qo="Créer un événement",Ko="dddd D MMMM YYYY",rh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Go,createEvent:qo,dateFormat:Ko,day:Jo,days:Ro,default:{weekDays:Bo,months:Vo,years:No,year:Ao,month:Ho,week:Lo,days:Ro,day:Jo,today:Io,noEvent:Wo,allDay:Go,deleteEvent:Xo,createEvent:qo,dateFormat:Ko},deleteEvent:Xo,month:Ho,months:Vo,noEvent:Wo,today:Io,week:Lo,weekDays:Bo,year:Ao,years:No},Symbol.toStringTag,{value:"Module"})),Uo=["שני","שלישי","רביעי","חמישי","שישי","שבת","ראשון"],Zo=["ב","ג","ד","ה","ו","ש","א"],Qo=["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר"],xo="שנים",es="שנה",ts="חודש",as="שבוע",ns="ימים",os="יום",ss="היום",rs="אין אירועים",ls="כל היום",cs="מחיקה",ds="צור אירוע",is="dddd D MMMM YYYY",us=!1,lh=Object.freeze(Object.defineProperty({__proto__:null,allDay:ls,createEvent:ds,dateFormat:is,day:os,days:ns,default:{weekDays:Uo,weekDaysShort:Zo,months:Qo,years:xo,year:es,month:ts,week:as,days:ns,day:os,today:ss,noEvent:rs,allDay:ls,deleteEvent:cs,createEvent:ds,dateFormat:is,truncations:us},deleteEvent:cs,month:ts,months:Qo,noEvent:rs,today:ss,truncations:us,week:as,weekDays:Uo,weekDaysShort:Zo,year:es,years:xo},Symbol.toStringTag,{value:"Module"})),ys=["Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota","Nedjelja"],ms=["Siječanj","Veljača","Ožujak","Travanj","Svibanj","Lipanj","Srpanj","Kolovoz","Rujan","Listopad","Studeni","Prosinac"],hs="Godine",fs="Godina",vs="Mjesec",gs="Tjedan",$s="Dani",Ds="Dan",ks="Današnji dan",ps="Nema događaja",ws="Cijeli dan",Es="Obriši",bs="Kreiraj događaj",Ms="dddd D MMMM YYYY",ch=Object.freeze(Object.defineProperty({__proto__:null,allDay:ws,createEvent:bs,dateFormat:Ms,day:Ds,days:$s,default:{weekDays:ys,months:ms,years:hs,year:fs,month:vs,week:gs,days:$s,day:Ds,today:ks,noEvent:ps,allDay:ws,deleteEvent:Es,createEvent:bs,dateFormat:Ms},deleteEvent:Es,month:vs,months:ms,noEvent:ps,today:ks,week:gs,weekDays:ys,year:fs,years:hs},Symbol.toStringTag,{value:"Module"})),_s=["Hétfo","Kedd","Szerda","Csütörtök","Péntek","Szombat","Vasárnap"],Ss=["Január","Február","Március","Április","Május","Június","Július","Augusztus","Szeptember","Október","November","December"],Ts="Évek",Ys="Év",Cs="Hónap",Ps="Hét",js="Napok",Fs="Nap",zs="Mai nap",Os="Nincs esemény",Bs="Egész nap",Vs="Esemény törlese",Ns="Esemény létrehozása",As="dddd D MMMM YYYY",dh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Bs,createEvent:Ns,dateFormat:As,day:Fs,days:js,default:{weekDays:_s,months:Ss,years:Ts,year:Ys,month:Cs,week:Ps,days:js,day:Fs,today:zs,noEvent:Os,allDay:Bs,deleteEvent:Vs,createEvent:Ns,dateFormat:As},deleteEvent:Vs,month:Cs,months:Ss,noEvent:Os,today:zs,week:Ps,weekDays:_s,year:Ys,years:Ts},Symbol.toStringTag,{value:"Module"})),Hs=["Senin","Selasa","Rabu","Kamis","Jumat","Sabtu","Minggu"],Ls=["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],Rs="Tahunan",Js="Tahun",Is="Bulan",Ws="Minggu",Gs="Hari",Xs="Hari",qs="Hari Ini",Ks="Tidak Ada Kegiatan",Us="Sepanjang Hari",Zs="Hapus",Qs="Tambah Kegiatan",xs="dddd, D MMMM YYYY",ih=Object.freeze(Object.defineProperty({__proto__:null,allDay:Us,createEvent:Qs,dateFormat:xs,day:Xs,days:Gs,default:{weekDays:Hs,months:Ls,years:Rs,year:Js,month:Is,week:Ws,days:Gs,day:Xs,today:qs,noEvent:Ks,allDay:Us,deleteEvent:Zs,createEvent:Qs,dateFormat:xs},deleteEvent:Zs,month:Is,months:Ls,noEvent:Ks,today:qs,week:Ws,weekDays:Hs,year:Js,years:Rs},Symbol.toStringTag,{value:"Module"})),er=["Mánudagur","Þriðjudagur","Miðvikudagur","Fimmtudagur","Föstudagur","Laugardagur","Sunnudagur"],tr=["Janúar","Febrúar","Mars","Apríl","Maí","Júní","Júlí","Ágúst","September","Október","Nóvember","Desember"],ar="Ár",nr="Ár",or="Mánuður",sr="Vika",rr="Dagar",lr="Dagur",cr="Í dag",dr="Enginn atburður",ir="Allan daginn",ur="Eyða",yr="Búðu til viðburð",mr="dddd D MMMM YYYY",uh=Object.freeze(Object.defineProperty({__proto__:null,allDay:ir,createEvent:yr,dateFormat:mr,day:lr,days:rr,default:{weekDays:er,months:tr,years:ar,year:nr,month:or,week:sr,days:rr,day:lr,today:cr,noEvent:dr,allDay:ir,deleteEvent:ur,createEvent:yr,dateFormat:mr},deleteEvent:ur,month:or,months:tr,noEvent:dr,today:cr,week:sr,weekDays:er,year:nr,years:ar},Symbol.toStringTag,{value:"Module"})),hr=["Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato","Domenica"],fr=["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],vr="Anni",gr="Anno",$r="Mese",Dr="Settimana",kr="Giorni",pr="Giorno",wr="Oggi",Er="Nessun evento",br="Tutto il giorno",Mr="Cancella",_r="Crea evento",Sr="dddd D MMMM YYYY",yh=Object.freeze(Object.defineProperty({__proto__:null,allDay:br,createEvent:_r,dateFormat:Sr,day:pr,days:kr,default:{weekDays:hr,months:fr,years:vr,year:gr,month:$r,week:Dr,days:kr,day:pr,today:wr,noEvent:Er,allDay:br,deleteEvent:Mr,createEvent:_r,dateFormat:Sr},deleteEvent:Mr,month:$r,months:fr,noEvent:Er,today:wr,week:Dr,weekDays:hr,year:gr,years:vr},Symbol.toStringTag,{value:"Module"})),Tr=["月","火","水","木","金","土","日"],Yr=["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],Cr="年",Pr="今年",jr="月",Fr="週",zr="日々",Or="日",Br="今日",Vr="イベントなし",Nr="終日",Ar="削除",Hr="イベント作成",Lr="YYYY年 MMMM D日 (dddd)",Rr=!1,mh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Nr,createEvent:Hr,dateFormat:Lr,day:Or,days:zr,default:{weekDays:Tr,months:Yr,years:Cr,year:Pr,month:jr,week:Fr,days:zr,day:Or,today:Br,noEvent:Vr,allDay:Nr,deleteEvent:Ar,createEvent:Hr,dateFormat:Lr,truncations:Rr},deleteEvent:Ar,month:jr,months:Yr,noEvent:Vr,today:Br,truncations:Rr,week:Fr,weekDays:Tr,year:Pr,years:Cr},Symbol.toStringTag,{value:"Module"})),Jr=["ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი","კვირა"],Ir=["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი"],Wr="წლები",Gr="წელი",Xr="თვე",qr="კვირა",Kr="დღეები",Ur="დღე",Zr="დღეს",Qr="ღონისძიება არ არის",xr="მთელი დღე",el="წაშლა",tl="შექმენით ღონისძიება",al="dddd D MMMM YYYY",hh=Object.freeze(Object.defineProperty({__proto__:null,allDay:xr,createEvent:tl,dateFormat:al,day:Ur,days:Kr,default:{weekDays:Jr,months:Ir,years:Wr,year:Gr,month:Xr,week:qr,days:Kr,day:Ur,today:Zr,noEvent:Qr,allDay:xr,deleteEvent:el,createEvent:tl,dateFormat:al},deleteEvent:el,month:Xr,months:Ir,noEvent:Qr,today:Zr,week:qr,weekDays:Jr,year:Gr,years:Wr},Symbol.toStringTag,{value:"Module"})),nl=["월","화","수","목","금","토","일"],ol=["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],sl="년도",rl="연간",ll="월간",cl="주간",dl="일수",il="일간",ul="오늘",yl="일정 없음",ml="하루 종일",hl="삭제",fl="일정 추가",vl="YYYY년 MMMM D일 dddd요일",gl=!1,fh=Object.freeze(Object.defineProperty({__proto__:null,allDay:ml,createEvent:fl,dateFormat:vl,day:il,days:dl,default:{weekDays:nl,months:ol,years:sl,year:rl,month:ll,week:cl,days:dl,day:il,today:ul,noEvent:yl,allDay:ml,deleteEvent:hl,createEvent:fl,dateFormat:vl,truncations:gl},deleteEvent:hl,month:ll,months:ol,noEvent:yl,today:ul,truncations:gl,week:cl,weekDays:nl,year:rl,years:sl},Symbol.toStringTag,{value:"Module"})),$l=["Pirmadienis","Antradienis","Trečiadienis","Ketvirtadienis","Penktadienis","Šeštadienis","Sekmadienis"],Dl=["Sausis","Vasaris","Kovas","Balandis","Gegužė","Birželis","Liepa","Rugpjūtis","Rugsėjis","Spalis","Lapkritis","Gruodis"],kl="Metų pasirinkimas",pl="Metai",wl="Mėnesis",El="Savaitė",bl="Dienos",Ml="Diena",_l="Šiandien",Sl="Jokių įvykių",Tl="Visa diena",Yl="Ištrinti",Cl="Sukurti įvykį",Pl="dddd, D MMMM YYYY",vh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Tl,createEvent:Cl,dateFormat:Pl,day:Ml,days:bl,default:{weekDays:$l,months:Dl,years:kl,year:pl,month:wl,week:El,days:bl,day:Ml,today:_l,noEvent:Sl,allDay:Tl,deleteEvent:Yl,createEvent:Cl,dateFormat:Pl},deleteEvent:Yl,month:wl,months:Dl,noEvent:Sl,today:_l,week:El,weekDays:$l,year:pl,years:kl},Symbol.toStringTag,{value:"Module"})),jl=["Даваа","Мягмар","Лхавга","Пүрэв","Баасан","Бямба","Ням"],Fl=["1-р сар","2-р сар","3-р сар","4-р сар","5-р сар","6-р сар","7-р сар","8-р сар","9-р сар","10-р сар","11-р сар","12-р сар"],zl="Жилүүд",Ol="Жил",Bl="Сар",Vl="Долоо хоног",Nl="Өдрийн",Al="Өдөр",Hl="Өнөөдөр",Ll="Тэмдэглэлгүй",Rl="Бүх өдөр",Jl="Устгах",Il="Шинэ тэмдэглэл",Wl="dddd D MMMM YYYY",gh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Rl,createEvent:Il,dateFormat:Wl,day:Al,days:Nl,default:{weekDays:jl,months:Fl,years:zl,year:Ol,month:Bl,week:Vl,days:Nl,day:Al,today:Hl,noEvent:Ll,allDay:Rl,deleteEvent:Jl,createEvent:Il,dateFormat:Wl},deleteEvent:Jl,month:Bl,months:Fl,noEvent:Ll,today:Hl,week:Vl,weekDays:jl,year:Ol,years:zl},Symbol.toStringTag,{value:"Module"})),Gl=["Maandag","Dinsdag","Woensdag","Donderdag","Vrijdag","Zaterdag","Zondag"],Xl=["Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],ql="Jaren",Kl="Jaar",Ul="Maand",Zl="Week",Ql="Dagen",xl="Dag",ec="Vandaag",tc="Geen afspraken",ac="Hele dag",nc="Verwijderen",oc="Nieuwe afspraak aanmaken",sc="dddd D MMMM YYYY",$h=Object.freeze(Object.defineProperty({__proto__:null,allDay:ac,createEvent:oc,dateFormat:sc,day:xl,days:Ql,default:{weekDays:Gl,months:Xl,years:ql,year:Kl,month:Ul,week:Zl,days:Ql,day:xl,today:ec,noEvent:tc,allDay:ac,deleteEvent:nc,createEvent:oc,dateFormat:sc},deleteEvent:nc,month:Ul,months:Xl,noEvent:tc,today:ec,week:Zl,weekDays:Gl,year:Kl,years:ql},Symbol.toStringTag,{value:"Module"})),rc=["Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag","Søndag"],lc=["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],cc="Velg år",dc="År",ic="Måned",uc="Uke",yc="Dager",mc="Dag",hc="Idag",fc="Ingen hendelse",vc="Hele dagen",gc="Ta bort",$c="Ny hendelse",Dc="dddd, D. MMMM YYYY",Dh=Object.freeze(Object.defineProperty({__proto__:null,allDay:vc,createEvent:$c,dateFormat:Dc,day:mc,days:yc,default:{weekDays:rc,months:lc,years:cc,year:dc,month:ic,week:uc,days:yc,day:mc,today:hc,noEvent:fc,allDay:vc,deleteEvent:gc,createEvent:$c,dateFormat:Dc},deleteEvent:gc,month:ic,months:lc,noEvent:fc,today:hc,week:uc,weekDays:rc,year:dc,years:cc},Symbol.toStringTag,{value:"Module"})),kc=["Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota","Niedziela"],pc=["Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],wc="Lata",Ec="Rok",bc="Miesiąc",Mc="Tydzień",_c="Dni",Sc="Dzień",Tc="Dzisiaj",Yc="Brak wydarzeń",Cc="Cały dzień",Pc="Usuń",jc="Utwórz wydarzenie",Fc="dddd, D MMMM YYYY",kh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Cc,createEvent:jc,dateFormat:Fc,day:Sc,days:_c,default:{weekDays:kc,months:pc,years:wc,year:Ec,month:bc,week:Mc,days:_c,day:Sc,today:Tc,noEvent:Yc,allDay:Cc,deleteEvent:Pc,createEvent:jc,dateFormat:Fc},deleteEvent:Pc,month:bc,months:pc,noEvent:Yc,today:Tc,week:Mc,weekDays:kc,year:Ec,years:wc},Symbol.toStringTag,{value:"Module"})),zc=["Segunda-feira","Terça-feira","Quarta-feira","Quinta-feira","Sexta-feira","Sábado","Domingo"],Oc=["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],Bc="Anos",Vc="Ano",Nc="Mês",Ac="Semana",Hc="Dias",Lc="Dia",Rc="Hoje",Jc="Sem eventos",Ic="Dia inteiro",Wc="Remover",Gc="Criar um evento",Xc="dddd D MMMM YYYY",ph=Object.freeze(Object.defineProperty({__proto__:null,allDay:Ic,createEvent:Gc,dateFormat:Xc,day:Lc,days:Hc,default:{weekDays:zc,months:Oc,years:Bc,year:Vc,month:Nc,week:Ac,days:Hc,day:Lc,today:Rc,noEvent:Jc,allDay:Ic,deleteEvent:Wc,createEvent:Gc,dateFormat:Xc},deleteEvent:Wc,month:Nc,months:Oc,noEvent:Jc,today:Rc,week:Ac,weekDays:zc,year:Vc,years:Bc},Symbol.toStringTag,{value:"Module"})),qc=["Segunda-feira","Terça-feira","Quarta-feira","Quinta-feira","Sexta-feira","Sábado","Domingo"],Kc=["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],Uc="Anos",Zc="Ano",Qc="Mês",xc="Semana",ed="Dias",td="Dia",ad="Hoje",nd="Sem eventos",od="Dia inteiro",sd="Remover",rd="Criar um evento",ld="dddd D MMMM YYYY",wh=Object.freeze(Object.defineProperty({__proto__:null,allDay:od,createEvent:rd,dateFormat:ld,day:td,days:ed,default:{weekDays:qc,months:Kc,years:Uc,year:Zc,month:Qc,week:xc,days:ed,day:td,today:ad,noEvent:nd,allDay:od,deleteEvent:sd,createEvent:rd,dateFormat:ld},deleteEvent:sd,month:Qc,months:Kc,noEvent:nd,today:ad,week:xc,weekDays:qc,year:Zc,years:Uc},Symbol.toStringTag,{value:"Module"})),cd=["Luni","Marți","Miercuri","Joi","Vineri","Sâmbăta","Duminică"],dd=["Ianuarie","Februarie","Martie","Aprilie","Mai","Iunie","Iulie","August","Septembrie","Octombrie","Noiembrie","Decembrie"],id="Ani",ud="An",yd="Lună",md="Săptămână",hd="Zile",fd="Zi",vd="Azi",gd="Nici o interacțiune",$d="Toată ziua",Dd="Șterge",kd="Adaugă un eveniment",pd="dddd D MMMM YYYY",Eh=Object.freeze(Object.defineProperty({__proto__:null,allDay:$d,createEvent:kd,dateFormat:pd,day:fd,days:hd,default:{weekDays:cd,months:dd,years:id,year:ud,month:yd,week:md,days:hd,day:fd,today:vd,noEvent:gd,allDay:$d,deleteEvent:Dd,createEvent:kd,dateFormat:pd},deleteEvent:Dd,month:yd,months:dd,noEvent:gd,today:vd,week:md,weekDays:cd,year:ud,years:id},Symbol.toStringTag,{value:"Module"})),wd=["Понедельник","Вторник","Среда","Четверг","Пятница","Суббота","Воскресенье"],Ed=["Пн","Вт","Ср","Чт","Пт","Сб","Вс"],bd=["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],Md="Годы",_d="Год",Sd="Месяц",Td="Неделя",Yd="Дни",Cd="День",Pd="Сегодня",jd="Нет событий",Fd="Весь день",zd="Удалить",Od="Создать событие",Bd="dddd D MMMM YYYY",bh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Fd,createEvent:Od,dateFormat:Bd,day:Cd,days:Yd,default:{weekDays:wd,weekDaysShort:Ed,months:bd,years:Md,year:_d,month:Sd,week:Td,days:Yd,day:Cd,today:Pd,noEvent:jd,allDay:Fd,deleteEvent:zd,createEvent:Od,dateFormat:Bd},deleteEvent:zd,month:Sd,months:bd,noEvent:jd,today:Pd,week:Td,weekDays:wd,weekDaysShort:Ed,year:_d,years:Md},Symbol.toStringTag,{value:"Module"})),Vd=["Pondelok","Utorok","Streda","Štvrtok","Piatok","Sobota","Nedeľa"],Nd=["Január","Február","Marec","Apríl","Máj","Jún","Júl","August","September","Október","November","December"],Ad="Roky",Hd="Rok",Ld="Mesiac",Rd="Týždeň",Jd="Dni",Id="Deň",Wd="Dnes",Gd="Bez udalosti",Xd="Celý deň",qd="Odstrániť",Kd="Vytvoriť udalosť",Ud="dddd D. MMMM YYYY",Mh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Xd,createEvent:Kd,dateFormat:Ud,day:Id,days:Jd,default:{weekDays:Vd,months:Nd,years:Ad,year:Hd,month:Ld,week:Rd,days:Jd,day:Id,today:Wd,noEvent:Gd,allDay:Xd,deleteEvent:qd,createEvent:Kd,dateFormat:Ud},deleteEvent:qd,month:Ld,months:Nd,noEvent:Gd,today:Wd,week:Rd,weekDays:Vd,year:Hd,years:Ad},Symbol.toStringTag,{value:"Module"})),Zd=["Ponedeljek","Torek","Sreda","Četrtek","Petek","Sobota","Nedelja"],Qd=["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],xd="Leta",ei="Leto",ti="Mesec",ai="Teden",ni="Dni",oi="Dan",si="Danes",ri="Ni dogodkov",li="Cel dan",ci="Odstrani",di="Ustvari dogodek",ii="dddd MMMM D, YYYY",_h=Object.freeze(Object.defineProperty({__proto__:null,allDay:li,createEvent:di,dateFormat:ii,day:oi,days:ni,default:{weekDays:Zd,months:Qd,years:xd,year:ei,month:ti,week:ai,days:ni,day:oi,today:si,noEvent:ri,allDay:li,deleteEvent:ci,createEvent:di,dateFormat:ii},deleteEvent:ci,month:ti,months:Qd,noEvent:ri,today:si,week:ai,weekDays:Zd,year:ei,years:xd},Symbol.toStringTag,{value:"Module"})),ui=["E Hënë","E Martë","E Mërkurë","E Enjte","E Premte","E Shtunë","E Diel"],yi=["Hë","Ma","Mr","Enj","Pr","Sh","D"],mi=["Janar","Shkurt","Mars","Prill","Maj","Qershor","Korrik","Gusht","Shtator","Tetor","Nëntor","Dhjetor"],hi="Vitet",fi="Viti",vi="Muaji",gi="Java",$i="Ditë",Di="Dita",ki="Sot",pi="Nuk ka event",wi="Tërë ditën",Ei="Fshijë",bi="Krijo një event",Mi="dddd D MMMM YYYY",Sh=Object.freeze(Object.defineProperty({__proto__:null,allDay:wi,createEvent:bi,dateFormat:Mi,day:Di,days:$i,default:{weekDays:ui,weekDaysShort:yi,months:mi,years:hi,year:fi,month:vi,week:gi,days:$i,day:Di,today:ki,noEvent:pi,allDay:wi,deleteEvent:Ei,createEvent:bi,dateFormat:Mi},deleteEvent:Ei,month:vi,months:mi,noEvent:pi,today:ki,week:gi,weekDays:ui,weekDaysShort:yi,year:fi,years:hi},Symbol.toStringTag,{value:"Module"})),_i=["Ponedeljak","Utorak","Sreda","Četvrtak","Petak","Subota","Nedelja"],Si=["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],Ti="Godine",Yi="Godina",Ci="Mesec",Pi="Sedmica",ji="Dana",Fi="Dan",zi="Danas",Oi="Nema događaja",Bi="Celi dan",Vi="Obriši",Ni="Kreiraj događaj",Ai="dddd D MMMM YYYY",Th=Object.freeze(Object.defineProperty({__proto__:null,allDay:Bi,createEvent:Ni,dateFormat:Ai,day:Fi,days:ji,default:{weekDays:_i,months:Si,years:Ti,year:Yi,month:Ci,week:Pi,days:ji,day:Fi,today:zi,noEvent:Oi,allDay:Bi,deleteEvent:Vi,createEvent:Ni,dateFormat:Ai},deleteEvent:Vi,month:Ci,months:Si,noEvent:Oi,today:zi,week:Pi,weekDays:_i,year:Yi,years:Ti},Symbol.toStringTag,{value:"Module"})),Hi=["Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag","Söndag"],Li=["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],Ri="År",Ji="År",Ii="Månad",Wi="Vecka",Gi="Dagar",Xi="Dag",qi="Idag",Ki="Ingen händelse",Ui="Heldag",Zi="Ta bort",Qi="Skapa händelse",xi="dddd den D MMMM YYYY",Yh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Ui,createEvent:Qi,dateFormat:xi,day:Xi,days:Gi,default:{weekDays:Hi,months:Li,years:Ri,year:Ji,month:Ii,week:Wi,days:Gi,day:Xi,today:qi,noEvent:Ki,allDay:Ui,deleteEvent:Zi,createEvent:Qi,dateFormat:xi},deleteEvent:Zi,month:Ii,months:Li,noEvent:Ki,today:qi,week:Wi,weekDays:Hi,year:Ji,years:Ri},Symbol.toStringTag,{value:"Module"})),eu=["Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi","Pazar"],tu=["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],au="Yıllar",nu="Yıl",ou="Ay",su="Hafta",ru="Günler",lu="Gün",cu="Bugün",du="Etkinlik Yok",iu="Tüm gün",uu="Sil",yu="Etkinlik ekle",mu="dddd D MMMM YYYY",Ch=Object.freeze(Object.defineProperty({__proto__:null,allDay:iu,createEvent:yu,dateFormat:mu,day:lu,days:ru,default:{weekDays:eu,months:tu,years:au,year:nu,month:ou,week:su,days:ru,day:lu,today:cu,noEvent:du,allDay:iu,deleteEvent:uu,createEvent:yu,dateFormat:mu},deleteEvent:uu,month:ou,months:tu,noEvent:du,today:cu,week:su,weekDays:eu,year:nu,years:au},Symbol.toStringTag,{value:"Module"})),hu=["Понеділок","Вівторок","Середа","Четвер","П'ятниця","Субота","Неділя"],fu=["Пн","Вт","Ср","Чт","Пт","Сб","Нд"],vu=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"],gu="Роки",$u="Рік",Du="Місяць",ku="Тиждень",pu="Дні",wu="День",Eu="Сьогодні",bu="Немає подій",Mu="Весь день",_u="Видалити",Su="Створити подію",Tu="dddd D MMMM YYYY",Ph=Object.freeze(Object.defineProperty({__proto__:null,allDay:Mu,createEvent:Su,dateFormat:Tu,day:wu,days:pu,default:{weekDays:hu,weekDaysShort:fu,months:vu,years:gu,year:$u,month:Du,week:ku,days:pu,day:wu,today:Eu,noEvent:bu,allDay:Mu,deleteEvent:_u,createEvent:Su,dateFormat:Tu},deleteEvent:_u,month:Du,months:vu,noEvent:bu,today:Eu,week:ku,weekDays:hu,weekDaysShort:fu,year:$u,years:gu},Symbol.toStringTag,{value:"Module"})),Yu=["Thứ hai","Thứ ba","Thứ tư","Thứ năm","Thứ sáu","Thứ bảy","Chủ nhật"],Cu=["T2","T3","T4","T5","T6","T7","CN"],Pu=["Tháng 1","Tháng 2","Tháng 3","Tháng 4","Tháng 5","Tháng 6","Tháng 7","Tháng 8","Tháng 9","Tháng 10","Tháng 11","Tháng 12"],ju="Năm",Fu="Năm nay",zu="Tháng",Ou="Tuần",Bu="Vài ngày",Vu="Ngày",Nu="Hôm nay",Au="NKhông có Event",Hu="Cả ngày",Lu="Xóa",Ru="Tạo event",Ju="dddd MMMM D YYYY",jh=Object.freeze(Object.defineProperty({__proto__:null,allDay:Hu,createEvent:Ru,dateFormat:Ju,day:Vu,days:Bu,default:{weekDays:Yu,weekDaysShort:Cu,months:Pu,years:ju,year:Fu,month:zu,week:Ou,days:Bu,day:Vu,today:Nu,noEvent:Au,allDay:Hu,deleteEvent:Lu,createEvent:Ru,dateFormat:Ju},deleteEvent:Lu,month:zu,months:Pu,noEvent:Au,today:Nu,week:Ou,weekDays:Yu,weekDaysShort:Cu,year:Fu,years:ju},Symbol.toStringTag,{value:"Module"})),Iu=["星期一","星期二","星期三","星期四","星期五","星期六","星期日"],Wu=["一","二","三","四","五","六","日"],Gu=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],Xu="年",qu="本年",Ku="月",Uu="周",Zu="多日",Qu="日",xu="今日",ey="暂无活动",ty="整天",ay="删除",ny="新建活动",oy="YYYY MMMM D dddd",Fh=Object.freeze(Object.defineProperty({__proto__:null,allDay:ty,createEvent:ny,dateFormat:oy,day:Qu,days:Zu,default:{weekDays:Iu,weekDaysShort:Wu,months:Gu,years:Xu,year:qu,month:Ku,week:Uu,days:Zu,day:Qu,today:xu,noEvent:ey,allDay:ty,deleteEvent:ay,createEvent:ny,dateFormat:oy},deleteEvent:ay,month:Ku,months:Gu,noEvent:ey,today:xu,week:Uu,weekDays:Iu,weekDaysShort:Wu,year:qu,years:Xu},Symbol.toStringTag,{value:"Module"})),sy=["星期一","星期二","星期三","星期四","星期五","星期六","星期日"],ry=["一","二","三","四","五","六","日"],ly=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],cy="年",dy="本年",iy="月",uy="周",yy="多日",my="日",hy="今日",fy="暫無活動",vy="整天",gy="刪除",$y="新建活動",Dy="YYYY MMMM D dddd",zh=Object.freeze(Object.defineProperty({__proto__:null,allDay:vy,createEvent:$y,dateFormat:Dy,day:my,days:yy,default:{weekDays:sy,weekDaysShort:ry,months:ly,years:cy,year:dy,month:iy,week:uy,days:yy,day:my,today:hy,noEvent:fy,allDay:vy,deleteEvent:gy,createEvent:$y,dateFormat:Dy},deleteEvent:gy,month:iy,months:ly,noEvent:fy,today:hy,week:uy,weekDays:sy,weekDaysShort:ry,year:dy,years:cy},Symbol.toStringTag,{value:"Module"}));W.VueCal=Dm,W.addDatePrototypes=pm,W.addDays=bm,W.addHours=_m,W.addMinutes=Tm,W.countDays=Nm,W.dateToMinutes=Vm,W.datesInSameTimeStep=Am,W.formatDate=Lm,W.formatDateLite=Rm,W.formatMinutes=Wm,W.formatTime=Jm,W.formatTimeLite=Im,W.getPreviousFirstDayOfWeek=Om,W.getWeek=Cm,W.isInRange=Fm,W.isLeapYear=zm,W.isSameDate=jm,W.isToday=Pm,W.isValidDate=Hm,W.removeDatePrototypes=wm,W.stringToDate=Bm,W.subtractDays=Mm,W.subtractHours=Sm,W.subtractMinutes=Ym,W.updateTexts=Em,W.useLocale=km,Object.defineProperty(W,Symbol.toStringTag,{value:"Module"})});