1
0
mirror of https://github.com/ZeroCatDev/Classworks.git synced 2025-12-07 21:13:11 +00:00
Classworks/assets/VDatePicker-CCVDa284.js

3 lines
22 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{g as R,p as W,Z as re,a5 as M,c as F,d as b,y as O,i as g,F as X,x as ue,aI as ne,e as U,ac as le,aO as ae,aB as ie,a_ as ge,n as oe,a$ as Ne,b0 as G,a3 as N,a4 as z,$ as We,a0 as te,ay as E,a6 as De,t as Le,ae as q,b1 as Re,aY as Pe,b2 as we,E as $,b3 as ce,b4 as Fe,I as He,b5 as je,b6 as Ee,b7 as Ue,u as ze,b8 as Je,b9 as Ke,ba as Ze,bb as qe,bc as Ge,m as Qe,bd as Xe,be as pe,bf as ea,bg as aa,f as ta,h as na,bh as la,bi as ra,bj as ia,bk as oa}from"./index-DN18mNda.js";import{a as da}from"./VBadge-CfiGUPxb.js";const xe=W({active:{type:[String,Array],default:void 0},controlHeight:[Number,String],controlVariant:{type:String,default:"docked"},noMonthPicker:Boolean,disabled:{type:[Boolean,String,Array],default:null},nextIcon:{type:ae,default:"$next"},prevIcon:{type:ae,default:"$prev"},modeIcon:{type:ae,default:"$subgroup"},text:String,monthText:String,yearText:String,viewMode:{type:String,default:"month"}},"VDatePickerControls"),ve=R()({name:"VDatePickerControls",props:xe(),emits:{"click:year":()=>!0,"click:month":()=>!0,"click:prev":()=>!0,"click:next":()=>!0,"click:prev-year":()=>!0,"click:next-year":()=>!0},setup(e,t){let{emit:u,slots:n}=t;const{t:a}=re(),c=M(()=>Array.isArray(e.disabled)?e.disabled.includes("text"):!!e.disabled),y=M(()=>Array.isArray(e.disabled)?e.disabled.includes("mode"):!!e.disabled),o=M(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-month"):!!e.disabled),d=M(()=>Array.isArray(e.disabled)?e.disabled.includes("next-month"):!!e.disabled),D=M(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-year"):!!e.disabled),r=M(()=>Array.isArray(e.disabled)?e.disabled.includes("next-year"):!!e.disabled);function f(){u("click:prev")}function w(){u("click:next")}function x(){u("click:prev-year")}function I(){u("click:next-year")}function l(){u("click:year")}function k(){u("click:month")}return F(()=>{const s={VBtn:{density:"comfortable",variant:"text"}},C=b(O,{"data-testid":"prev-month",disabled:o.value,icon:e.prevIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.previousMonth"),onClick:f},null),T=b(O,{"data-testid":"next-month",disabled:d.value,icon:e.nextIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.nextMonth"),onClick:w},null),_=b(O,{"data-testid":"prev-year",disabled:D.value,icon:e.prevIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.previousYear"),onClick:x},null),H=b(O,{"data-testid":"next-year",disabled:r.value,icon:e.nextIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.nextYear"),onClick:I},null),h=b(O,{class:"v-date-picker-controls__only-month-btn","data-testid":"month-btn",density:"default",disabled:c.value,text:e.monthText,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:k},null),i=b(O,{class:"v-date-picker-controls__only-year-btn","data-testid":"year-btn",density:"default",disabled:y.value,text:e.yearText,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:l},null),P=b(O,{class:"v-date-picker-controls__year-btn","data-testid":"year-btn",density:"default",disabled:y.value,text:e.text,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:l},null),Y=g(X,null,[b(O,{class:"v-date-picker-controls__month-btn","data-testid":"month-btn",height:"36",disabled:c.value,text:e.text,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:k},null),b(O,{class:"v-date-picker-controls__mode-btn","data-testid":"year-btn",disabled:y.value,icon:e.modeIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:l},null)]),A={viewMode:e.viewMode,disabled:Array.isArray(e.disabled)?e.disabled:[],monthYearText:e.text??"",monthText:e.monthText??"",yearText:e.yearText??"",openMonths:k,openYears:l,prevMonth:f,nextMonth:w,prevYear:x,nextYear:I},J=g(X,null,[e.noMonthPicker?P:Y,b(ue,null,null),g("div",{class:"v-date-picker-controls__month"},[C,T])]),p=g(X,null,[g("div",{class:"v-date-picker-controls__month"},[C,h,T]),b(ue,null,null),g("div",{class:"v-date-picker-controls__year"},[_,i,H])]);return b(le,{defaults:s},{default:()=>{var ee;return[g("div",{class:U(["v-date-picker-controls",`v-date-picker-controls--variant-${e.controlVariant}`]),style:{"--v-date-picker-controls-height":ne(e.controlHeight)}},[((ee=n.default)==null?void 0:ee.call(n,A))??g(X,null,[e.controlVariant==="modal"&&J,e.controlVariant==="docked"&&p])])]}})}),{}}}),sa=W({appendIcon:ae,color:String,header:String,transition:String,onClick:Ne()},"VDatePickerHeader"),fe=R()({name:"VDatePickerHeader",props:sa(),emits:{click:()=>!0,"click:append":()=>!0},setup(e,t){let{emit:u,slots:n}=t;const{backgroundColorClasses:a,backgroundColorStyles:c}=ie(()=>e.color);function y(){u("click")}function o(){u("click:append")}return F(()=>{const d=!!(n.default||e.header),D=!!(n.append||e.appendIcon);return g("div",{class:U(["v-date-picker-header",{"v-date-picker-header--clickable":!!e.onClick},a.value]),style:oe(c.value),onClick:y},[n.prepend&&g("div",{key:"prepend",class:"v-date-picker-header__prepend"},[n.prepend()]),d&&b(ge,{key:"content",name:e.transition},{default:()=>{var r;return[g("div",{key:e.header,class:"v-date-picker-header__content"},[((r=n.default)==null?void 0:r.call(n))??e.header])]}}),D&&g("div",{class:"v-date-picker-header__append"},[n.append?b(le,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VBtn:{icon:e.appendIcon,variant:"text"}}},{default:()=>{var r;return[(r=n.append)==null?void 0:r.call(n)]}}):b(O,{key:"append-btn",icon:e.appendIcon,variant:"text",onClick:o},null)])])}),{}}}),ua=W({allowedDates:[Array,Function],disabled:{type:Boolean,default:null},displayValue:null,modelValue:Array,month:[Number,String],max:null,min:null,showAdjacentMonths:Boolean,year:[Number,String],weekdays:{type:Array,default:()=>[0,1,2,3,4,5,6]},weeksInMonth:{type:String,default:"dynamic"},firstDayOfWeek:{type:[Number,String],default:void 0},firstDayOfYear:{type:[Number,String],default:void 0},weekdayFormat:String},"calendar");function ca(e){const t=G(),u=N(e,"modelValue",[],l=>z(l).map(k=>t.date(k))),n=M(()=>e.displayValue?t.date(e.displayValue):u.value.length>0?t.date(u.value[0]):e.min?t.date(e.min):Array.isArray(e.allowedDates)?t.date(e.allowedDates[0]):t.date()),a=N(e,"year",void 0,l=>{const k=l!=null?Number(l):t.getYear(n.value);return t.startOfYear(t.setYear(t.date(),k))},l=>t.getYear(l)),c=N(e,"month",void 0,l=>{const k=l!=null?Number(l):t.getMonth(n.value),s=t.setYear(t.startOfMonth(t.date()),t.getYear(a.value));return t.setMonth(s,k)},l=>t.getMonth(l)),y=M(()=>{const l=t.toJsDate(t.startOfWeek(t.date(),e.firstDayOfWeek)).getDay();return t.getWeekdays(e.firstDayOfWeek,e.weekdayFormat).filter((k,s)=>e.weekdays.includes((s+l)%7))}),o=M(()=>{const l=t.getWeekArray(c.value,e.firstDayOfWeek),k=l.flat(),s=6*7;if(e.weeksInMonth==="static"&&k.length<s){const C=k[k.length-1];let T=[];for(let _=1;_<=s-k.length;_++)T.push(t.addDays(C,_)),_%7===0&&(l.push(T),T=[])}return l});function d(l,k){return l.filter(s=>e.weekdays.includes(t.toJsDate(s).getDay())).map((s,C)=>{const T=t.toISO(s),_=!t.isSameMonth(s,c.value),H=t.isSameDay(s,t.startOfMonth(c.value)),h=t.isSameDay(s,t.endOfMonth(c.value)),i=t.isSameDay(s,c.value),P=e.weekdays.length;return{date:s,formatted:t.format(s,"keyboardDate"),isAdjacent:_,isDisabled:I(s),isEnd:h,isHidden:_&&!e.showAdjacentMonths,isSame:i,isSelected:u.value.some(Y=>t.isSameDay(s,Y)),isStart:H,isToday:t.isSameDay(s,k),isWeekEnd:C%P===P-1,isWeekStart:C%P===0,isoDate:T,localized:t.format(s,"dayOfMonth"),month:t.getMonth(s),year:t.getYear(s)}})}const D=M(()=>{const l=t.startOfWeek(n.value,e.firstDayOfWeek),k=[];for(let C=0;C<=6;C++)k.push(t.addDays(l,C));const s=t.date();return d(k,s)}),r=M(()=>{const l=o.value.flat(),k=t.date();return d(l,k)}),f=M(()=>o.value.map(l=>l.length?t.getWeek(l[0],e.firstDayOfWeek,e.firstDayOfYear):null)),{minDate:w,maxDate:x}=Me(e);function I(l){if(e.disabled)return!0;const k=t.date(l);return w.value&&t.isBefore(t.endOfDay(k),w.value)||x.value&&t.isAfter(k,x.value)?!0:Array.isArray(e.allowedDates)&&e.allowedDates.length>0?!e.allowedDates.some(s=>t.isSameDay(t.date(s),k)):typeof e.allowedDates=="function"?!e.allowedDates(k):!1}return{displayValue:n,daysInMonth:r,daysInWeek:D,genDays:d,model:u,weeksInMonth:o,weekdayLabels:y,weekNumbers:f}}function Me(e){const t=G(),u=M(()=>{if(!e.min)return null;const y=t.date(e.min);return t.isValid(y)?y:null}),n=M(()=>{if(!e.max)return null;const y=t.date(e.max);return t.isValid(y)?y:null});function a(y){return u.value&&t.isBefore(y,u.value)?u.value:n.value&&t.isAfter(y,n.value)?n.value:y}function c(y){return(!u.value||t.isAfter(y,u.value))&&(!n.value||t.isBefore(y,n.value))}return{minDate:u,maxDate:n,clampDate:a,isInAllowedRange:c}}const Se=W({color:String,hideWeekdays:Boolean,multiple:[Boolean,Number,String],showWeek:Boolean,transition:{type:String,default:"picker-transition"},reverseTransition:{type:String,default:"picker-reverse-transition"},events:{type:[Array,Function,Object],default:()=>null},eventColor:{type:[Array,Function,Object,String],default:()=>null},...q(ua(),["displayValue"])},"VDatePickerMonth"),he=R()({name:"VDatePickerMonth",props:Se(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0},setup(e,t){let{emit:u,slots:n}=t;const a=We(),{t:c}=re(),{daysInMonth:y,model:o,weekNumbers:d,weekdayLabels:D}=ca(e),r=G(),f=te(),w=te(),x=te(!1),I=E(()=>x.value?e.reverseTransition:e.transition);e.multiple==="range"&&o.value.length>0&&(f.value=o.value[0],o.value.length>1&&(w.value=o.value[o.value.length-1]));const l=M(()=>{const h=["number","string"].includes(typeof e.multiple)?Number(e.multiple):1/0;return o.value.length>=h});De(y,(h,i)=>{i&&(x.value=r.isBefore(h[0].date,i[0].date))});function k(h){const i=r.startOfDay(h);if(o.value.length===0?f.value=void 0:o.value.length===1&&(f.value=o.value[0],w.value=void 0),!f.value)f.value=i,o.value=[f.value];else if(w.value)f.value=h,w.value=void 0,o.value=[f.value];else{if(r.isSameDay(i,f.value)){f.value=void 0,o.value=[];return}else r.isBefore(i,f.value)?(w.value=r.endOfDay(f.value),f.value=i):w.value=r.endOfDay(i);o.value=Re(r,f.value,w.value)}}function s(h){const i=r.format(h.date,"fullDateWithWeekday"),P=h.isToday?"currentDate":"selectDate";return c(`$vuetify.datePicker.ariaLabel.${P}`,i)}function C(h){const i=o.value.findIndex(P=>r.isSameDay(P,h));if(i===-1)o.value=[...o.value,h];else{const P=[...o.value];P.splice(i,1),o.value=P}}function T(h){e.multiple==="range"?k(h):e.multiple?C(h):o.value=[h]}function _(h){const{events:i,eventColor:P}=e;let Y,A=[];if(Array.isArray(i)?Y=i.includes(h):i instanceof Function?Y=i(h)||!1:i?Y=i[h]||!1:Y=!1,Y)Y!==!0?A=z(Y):typeof P=="string"?A=[P]:typeof P=="function"?A=z(P(h)):Array.isArray(P)?A=P:typeof P=="object"&&P!==null&&(A=z(P[h]));else return[];return A.length?A.filter(Boolean).map(J=>typeof J=="string"?J:"surface-variant"):["surface-variant"]}function H(h){const i=_(h);return i.length?g("div",{class:"v-date-picker-month__events"},[i.map(P=>b(da,{dot:!0,color:P},null))]):null}F(()=>g("div",{class:"v-date-picker-month",style:{"--v-date-picker-days-in-week":e.weekdays.length}},[e.showWeek&&g("div",{key:"weeks",class:"v-date-picker-month__weeks"},[!e.hideWeekdays&&g("div",{key:"hide-week-days",class:"v-date-picker-month__day"},[Le(" ")]),d.value.map(h=>g("div",{class:U(["v-date-picker-month__day","v-date-picker-month__day--adjacent"])},[h]))]),b(ge,{name:I.value},{default:()=>{var h;return[g("div",{ref:a,key:(h=y.value[0].date)==null?void 0:h.toString(),class:"v-date-picker-month__days"},[!e.hideWeekdays&&D.value.map(i=>g("div",{class:U(["v-date-picker-month__day","v-date-picker-month__weekday"])},[i])),y.value.map((i,P)=>{var A;const Y={props:{class:"v-date-picker-month__day-btn",color:i.isSelected||i.isToday?e.color:void 0,disabled:i.isDisabled,icon:!0,ripple:!1,variant:i.isSelected?"flat":i.isToday?"outlined":"text","aria-label":s(i),"aria-current":i.isToday?"date":void 0,onClick:()=>T(i.date)},item:i,i:P};return l.value&&!i.isSelected&&(i.isDisabled=!0),g("div",{class:U(["v-date-picker-month__day",{"v-date-picker-month__day--adjacent":i.isAdjacent,"v-date-picker-month__day--hide-adjacent":i.isHidden,"v-date-picker-month__day--selected":i.isSelected,"v-date-picker-month__day--week-end":i.isWeekEnd,"v-date-picker-month__day--week-start":i.isWeekStart}]),"data-v-date":i.isDisabled?void 0:i.isoDate},[(e.showAdjacentMonths||!i.isAdjacent)&&(((A=n.day)==null?void 0:A.call(n,Y))??b(O,Y.props,{default:()=>[i.localized,H(i.isoDate)]}))])})])]}})]))}}),Ve=W({color:String,height:[String,Number],min:null,max:null,modelValue:Number,year:Number,allowedMonths:[Array,Function]},"VDatePickerMonths"),ye=R()({name:"VDatePickerMonths",props:Ve(),emits:{"update:modelValue":e=>!0},setup(e,t){let{emit:u,slots:n}=t;const a=G(),c=N(e,"modelValue"),y=M(()=>{let d=a.startOfYear(a.date());return e.year&&(d=a.setYear(d,e.year)),Pe(12).map(D=>{const r=a.format(d,"monthShort"),f=a.format(d,"month"),w=!!(!o(D)||e.min&&a.isAfter(a.startOfMonth(a.date(e.min)),d)||e.max&&a.isAfter(d,a.startOfMonth(a.date(e.max))));return d=a.getNextMonth(d),{isDisabled:w,text:r,label:f,value:D}})});we(()=>{c.value=c.value??a.getMonth(a.date())});function o(d){return Array.isArray(e.allowedMonths)&&e.allowedMonths.length?e.allowedMonths.includes(d):typeof e.allowedMonths=="function"?e.allowedMonths(d):!0}return F(()=>g("div",{class:"v-date-picker-months",style:{height:ne(e.height)}},[g("div",{class:"v-date-picker-months__content"},[y.value.map((d,D)=>{var w;const r={active:c.value===D,ariaLabel:d.label,color:c.value===D?e.color:void 0,disabled:d.isDisabled,rounded:!0,text:d.text,variant:c.value===d.value?"flat":"text",onClick:()=>f(D)};function f(x){if(c.value===x){u("update:modelValue",c.value);return}c.value=x}return((w=n.month)==null?void 0:w.call(n,{month:d,i:D,props:r}))??b(O,$({key:"month"},r),null)})])])),{}}}),Ce=W({color:String,height:[String,Number],min:null,max:null,modelValue:Number,allowedYears:[Array,Function]},"VDatePickerYears"),ke=R()({name:"VDatePickerYears",props:Ce(),directives:{vIntersect:ce},emits:{"update:modelValue":e=>!0},setup(e,t){let{emit:u,slots:n}=t;const a=G(),c=N(e,"modelValue"),y=M(()=>{const r=a.getYear(a.date());let f=r-100,w=r+52;e.min&&(f=a.getYear(a.date(e.min))),e.max&&(w=a.getYear(a.date(e.max)));let x=a.startOfYear(a.date());return x=a.setYear(x,f),Pe(w-f+1,f).map(I=>{const l=a.format(x,"year");return x=a.setYear(x,a.getYear(x)+1),{text:l,value:I,isDisabled:!D(I)}})});we(()=>{c.value=c.value??a.getYear(a.date())});const o=Fe();function d(){var r,f;(r=o.el)==null||r.focus(),(f=o.el)==null||f.scrollIntoView({block:"center"})}function D(r){return Array.isArray(e.allowedYears)&&e.allowedYears.length?e.allowedYears.includes(r):typeof e.allowedYears=="function"?e.allowedYears(r):!0}return F(()=>He(g("div",{class:"v-date-picker-years",style:{height:ne(e.height)}},[g("div",{class:"v-date-picker-years__content"},[y.value.map((r,f)=>{var x;const w={ref:c.value===r.value?o:void 0,active:c.value===r.value,color:c.value===r.value?e.color:void 0,rounded:!0,text:r.text,disabled:r.isDisabled,variant:c.value===r.value?"flat":"text",onClick:()=>{if(c.value===r.value){u("update:modelValue",c.value);return}c.value=r.value}};return((x=n.year)==null?void 0:x.call(n,{year:r,i:f,props:w}))??b(O,$({key:"month"},w),null)})])]),[[ce,{handler:d},null,{once:!0}]])),{}}}),va=je("v-picker-title"),Ye=W({color:String,...la(),...na(),...ta(),...aa(),...ea(),...pe(),...Xe(),...Qe(),...Ge()},"VSheet"),me=R()({name:"VSheet",props:Ye(),setup(e,t){let{slots:u}=t;const{themeClasses:n}=Ee(e),{backgroundColorClasses:a,backgroundColorStyles:c}=ie(()=>e.color),{borderClasses:y}=Ue(e),{dimensionStyles:o}=ze(e),{elevationClasses:d}=Je(e),{locationStyles:D}=Ke(e),{positionClasses:r}=Ze(e),{roundedClasses:f}=qe(e);return F(()=>b(e.tag,{class:U(["v-sheet",n.value,a.value,y.value,d.value,r.value,f.value,e.class]),style:oe([c.value,o.value,D.value,e.style])},u)),{}}}),_e=W({bgColor:String,divided:Boolean,landscape:Boolean,title:String,hideHeader:Boolean,hideTitle:Boolean,...Ye()},"VPicker"),be=R()({name:"VPicker",props:_e(),setup(e,t){let{slots:u}=t;const{backgroundColorClasses:n,backgroundColorStyles:a}=ie(()=>e.color);return F(()=>{const c=me.filterProps(e),y=!e.hideTitle&&!!(e.title||u.title);return b(me,$(c,{color:e.bgColor,class:["v-picker",{"v-picker--divided":e.divided,"v-picker--landscape":e.landscape,"v-picker--with-actions":!!u.actions},e.class],style:e.style}),{default:()=>{var o;return[!e.hideHeader&&g("div",{key:"header",class:U(["v-picker__header-wrapper",n.value]),style:oe([a.value])},[y&&b(va,{key:"picker-title"},{default:()=>{var d;return[((d=u.title)==null?void 0:d.call(u))??e.title]}}),u.header&&g("div",{class:"v-picker__header"},[u.header()])]),g("div",{class:"v-picker__body"},[(o=u.default)==null?void 0:o.call(u)]),u.actions&&b(le,{defaults:{VBtn:{slim:!0,variant:"text"}}},{default:()=>[g("div",{class:"v-picker__actions"},[u.actions()])]})]}})}),{}}}),fa=W({header:{type:String,default:"$vuetify.datePicker.header"},headerColor:String,headerDateFormat:{type:String,default:"normalDateWithWeekday"},landscapeHeaderWidth:[Number,String],...xe(),...Se({weeksInMonth:"static"}),...q(Ve(),["modelValue"]),...q(Ce(),["modelValue"]),..._e({title:"$vuetify.datePicker.title"}),modelValue:null},"VDatePicker"),ka=R()({name:"VDatePicker",props:fa(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0,"update:viewMode":e=>!0},setup(e,t){let{emit:u,slots:n}=t;const a=G(),{t:c}=re(),{rtlClasses:y}=ra(),o=N(e,"modelValue",void 0,v=>z(v).map(m=>a.date(m)),v=>e.multiple?v:v[0]),d=N(e,"viewMode"),{minDate:D,maxDate:r,clampDate:f}=Me(e),w=M(()=>{var V;const v=a.date(),m=(V=o.value)!=null&&V[0]?a.date(o.value[0]):f(v);return m&&a.isValid(m)?m:v}),x=E(()=>e.headerColor??e.color),I=N(e,"month"),l=M({get:()=>Number(I.value??a.getMonth(a.startOfMonth(w.value))),set:v=>I.value=v}),k=N(e,"year"),s=M({get:()=>Number(k.value??a.getYear(a.startOfYear(a.setMonth(w.value,l.value)))),set:v=>k.value=v}),C=te(!1),T=M(()=>{if(e.multiple&&o.value.length>1)return c("$vuetify.datePicker.itemsSelected",o.value.length);const v=o.value[0]&&a.isValid(o.value[0])?a.format(a.date(o.value[0]),e.headerDateFormat):c(e.header);return e.landscape&&v.split(" ").length===3?v.replace(" ",`
`):v}),_=E(()=>a.parseISO(`${s.value}-${l.value+1}-01`)),H=E(()=>a.format(_.value,"monthAndYear")),h=E(()=>a.format(_.value,"monthShort")),i=E(()=>a.format(_.value,"year")),P=E(()=>`date-picker-header${C.value?"-reverse":""}-transition`),Y=M(()=>{if(e.disabled)return!0;const v=[];if(d.value!=="month")v.push("prev-month","next-month","prev-year","next-year");else{let m=a.date();if(m=a.startOfMonth(m),m=a.setMonth(m,l.value),m=a.setYear(m,s.value),D.value){const V=a.addDays(a.startOfMonth(m),-1),B=a.addDays(a.startOfYear(m),-1);a.isAfter(D.value,V)&&v.push("prev-month"),a.isAfter(D.value,B)&&v.push("next-year")}if(r.value){const V=a.addDays(a.endOfMonth(m),1),B=a.addDays(a.endOfYear(m),1);a.isAfter(V,r.value)&&v.push("next-month"),a.isAfter(B,r.value)&&v.push("next-year")}}return v}),A=M(()=>e.allowedYears||ee),J=M(()=>e.allowedMonths||Ae);function p(v,m){const V=e.allowedDates;if(typeof V!="function")return!0;const B=1+oa(a,v,m);for(let L=0;L<B;L++)if(V(a.addDays(v,L)))return!0;return!1}function ee(v){if(typeof e.allowedDates=="function"){const m=a.parseISO(`${v}-01-01`);return p(m,a.endOfYear(m))}if(Array.isArray(e.allowedDates)&&e.allowedDates.length){for(const m of e.allowedDates)if(a.getYear(a.date(m))===v)return!0;return!1}return!0}function Ae(v){if(typeof e.allowedDates=="function"){const m=String(v+1).padStart(2,"0"),V=a.parseISO(`${s.value}-${m}-01`);return p(V,a.endOfMonth(V))}if(Array.isArray(e.allowedDates)&&e.allowedDates.length){for(const m of e.allowedDates)if(a.getYear(a.date(m))===s.value&&a.getMonth(a.date(m))===v)return!0;return!1}return!0}function Oe(){l.value<11?l.value++:(s.value++,l.value=0,j()),Q()}function Ie(){l.value>0?l.value--:(s.value--,l.value=11,j()),Q()}function Te(){if(s.value++,r.value){const v=a.parseISO(`${s.value}-${l.value+1}-01`);a.isAfter(v,r.value)&&(l.value=a.getMonth(r.value))}j()}function Be(){if(s.value--,D.value){const v=a.endOfMonth(a.parseISO(`${s.value}-${l.value+1}-01`));a.isAfter(D.value,v)&&(l.value=a.getMonth(D.value))}j()}function $e(){d.value="month"}function de(){d.value=d.value==="months"?"month":"months"}function se(){d.value=d.value==="year"?"month":"year"}function Q(){d.value==="months"&&de()}function j(){d.value==="year"&&se()}return De(o,(v,m)=>{const V=z(m),B=z(v);if(!B.length)return;const L=a.date(V[V.length-1]),K=a.date(B[B.length-1]);if(a.isSameDay(L,K))return;const Z=a.getMonth(K),S=a.getYear(K);Z!==l.value&&(l.value=Z,Q()),S!==s.value&&(s.value=S,j()),C.value=a.isBefore(L,K)}),F(()=>{const v=be.filterProps(e),m=q(ve.filterProps(e),["viewMode"]),V=fe.filterProps(e),B=he.filterProps(e),L=q(ye.filterProps(e),["modelValue"]),K=q(ke.filterProps(e),["modelValue"]),Z={color:x.value,header:T.value,transition:P.value};return b(be,$(v,{color:x.value,class:["v-date-picker",`v-date-picker--${d.value}`,{"v-date-picker--show-week":e.showWeek},y.value,e.class],style:[{"--v-date-picker-landscape-header-width":ne(e.landscapeHeaderWidth)},e.style]}),{title:()=>{var S;return((S=n.title)==null?void 0:S.call(n))??g("div",{class:"v-date-picker__title"},[c(e.title)])},header:()=>n.header?b(le,{defaults:{VDatePickerHeader:{...Z}}},{default:()=>{var S;return[(S=n.header)==null?void 0:S.call(n,Z)]}}):b(fe,$({key:"header"},V,Z,{onClick:d.value!=="month"?$e:void 0}),{prepend:n.prepend,append:n.append}),default:()=>g(X,null,[b(ve,$(m,{disabled:Y.value,viewMode:d.value,text:H.value,monthText:h.value,yearText:i.value,"onClick:next":Oe,"onClick:prev":Ie,"onClick:nextYear":Te,"onClick:prevYear":Be,"onClick:month":de,"onClick:year":se}),{default:n.controls}),b(ia,{hideOnLeave:!0},{default:()=>[d.value==="months"?b(ye,$({key:"date-picker-months"},L,{modelValue:l.value,"onUpdate:modelValue":[S=>l.value=S,Q],min:D.value,max:r.value,year:s.value,allowedMonths:J.value}),{month:n.month}):d.value==="year"?b(ke,$({key:"date-picker-years"},K,{modelValue:s.value,"onUpdate:modelValue":[S=>s.value=S,j],min:D.value,max:r.value,allowedYears:A.value}),{year:n.year}):b(he,$({key:"date-picker-month"},B,{modelValue:o.value,"onUpdate:modelValue":S=>o.value=S,month:l.value,"onUpdate:month":[S=>l.value=S,Q],year:s.value,"onUpdate:year":[S=>s.value=S,j],min:D.value,max:r.value}),{day:n.day})]})]),actions:n.actions})}),{}}});export{ka as V,be as a,_e as m};