import{z as st,A as ye,B as ut,C as ke,D as dt,k as le,p as G,E as Re,n as re,G as Pe,b,H as U,I as ct,a as v,x as Le,y as te,J as ge,K as C,i as F,F as ue,L as Ye,M as he,N as be,O as je,P as ft,Q as K,R as ae,S as W,T as de,U as ee,e as Ue,W as ne,X as vt,Y as He,Z as ze,_ as Ae,$ as Ie,a0 as mt,l as ht,a1 as yt,d as kt,a2 as P,a3 as gt,j as bt,u as wt,a4 as Dt,a5 as pt,a6 as xt,h as oe,t as L,a7 as R,a8 as St,a9 as Me,w as _e,aa as Mt,ab as $e,ac as Te,ad as _t,o as se,ae as Ct,af as Vt}from"./index-Cj-040Sc.js";const Pt=Symbol.for("vuetify:date-options");function Yt(e,a,c){const t=[`${e.toISO(c??a).split("T")[0]}T00:00:00Z`,`${e.toISO(a).split("T")[0]}T00:00:00Z`];return typeof e.date()=="string"?e.getDiff(t[0],t[1],"days"):e.getDiff(e.date(t[0]),e.date(t[1]),"days")}function At(e,a){const c=ut(typeof e.adapter=="function"?new e.adapter({locale:e.locale[a.current.value]??a.current.value,formats:e.formats}):e.adapter);return ke(a.current,t=>{c.locale=e.locale[t]??t??c.locale}),c}function ie(){const e=st(Pt);if(!e)throw new Error("[Vuetify] Could not find injected date options");const a=ye();return At(e,a)}const It=dt("v-picker-title"),qe=G({bgColor:String,divided:Boolean,landscape:Boolean,title:String,hideHeader:Boolean,hideTitle:Boolean,...ct()},"VPicker"),Be=le()({name:"VPicker",props:qe(),setup(e,{slots:a}){const{backgroundColorClasses:c,backgroundColorStyles:t}=Re(()=>e.color);return re(()=>{const w=Pe.filterProps(e),_=!e.hideTitle&&!!(e.title||a.title);return b(Pe,U(w,{color:e.bgColor,class:["v-picker",{"v-picker--divided":e.divided,"v-picker--landscape":e.landscape,"v-picker--with-actions":!!a.actions},e.class],style:e.style}),{default:()=>[!e.hideHeader&&v("div",{key:"header",class:te(["v-picker__header-wrapper",c.value]),style:Le([t.value])},[_&&b(It,{key:"picker-title"},{default:()=>[a.title?.()??e.title]}),a.header&&v("div",{class:"v-picker__header"},[a.header()])]),v("div",{class:"v-picker__body"},[a.default?.()]),a.actions&&b(ge,{defaults:{VBtn:{slim:!0,variant:"text"}}},{default:()=>[v("div",{class:"v-picker__actions"},[a.actions()])]})]})}),{}}}),Ke=G({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:he,default:"$next"},prevIcon:{type:he,default:"$prev"},modeIcon:{type:he,default:"$subgroup"},text:String,monthText:String,yearText:String,viewMode:{type:String,default:"month"}},"VDatePickerControls"),Oe=le()({name:"VDatePickerControls",props:Ke(),emits:{"click:year":()=>!0,"click:month":()=>!0,"click:prev":()=>!0,"click:next":()=>!0,"click:prev-year":()=>!0,"click:next-year":()=>!0},setup(e,{emit:a,slots:c}){const{t}=ye(),w=C(()=>Array.isArray(e.disabled)?e.disabled.includes("text"):!!e.disabled),_=C(()=>Array.isArray(e.disabled)?e.disabled.includes("mode"):!!e.disabled),l=C(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-month"):!!e.disabled),u=C(()=>Array.isArray(e.disabled)?e.disabled.includes("next-month"):!!e.disabled),k=C(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-year"):!!e.disabled),D=C(()=>Array.isArray(e.disabled)?e.disabled.includes("next-year"):!!e.disabled);function S(){a("click:prev")}function f(){a("click:next")}function s(){a("click:prev-year")}function V(){a("click:next-year")}function m(){a("click:year")}function h(){a("click:month")}return re(()=>{const o={VBtn:{density:"comfortable",variant:"text"}},g=b(F,{"data-testid":"prev-month",disabled:l.value,icon:e.prevIcon,"aria-label":t("$vuetify.datePicker.ariaLabel.previousMonth"),onClick:S},null),$=b(F,{"data-testid":"next-month",disabled:u.value,icon:e.nextIcon,"aria-label":t("$vuetify.datePicker.ariaLabel.nextMonth"),onClick:f},null),E=b(F,{"data-testid":"prev-year",disabled:k.value,icon:e.prevIcon,"aria-label":t("$vuetify.datePicker.ariaLabel.previousYear"),onClick:s},null),O=b(F,{"data-testid":"next-year",disabled:D.value,icon:e.nextIcon,"aria-label":t("$vuetify.datePicker.ariaLabel.nextYear"),onClick:V},null),i=b(F,{class:"v-date-picker-controls__only-month-btn","data-testid":"month-btn",density:"default",disabled:w.value,text:e.monthText,appendIcon:e.modeIcon,rounded:!0,"aria-label":t("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:h},null),p=b(F,{class:"v-date-picker-controls__only-year-btn","data-testid":"year-btn",density:"default",disabled:_.value,text:e.yearText,appendIcon:e.modeIcon,rounded:!0,"aria-label":t("$vuetify.datePicker.ariaLabel.selectYear"),onClick:m},null),x=b(F,{class:"v-date-picker-controls__year-btn","data-testid":"year-btn",density:"default",disabled:_.value,text:e.text,appendIcon:e.modeIcon,rounded:!0,"aria-label":t("$vuetify.datePicker.ariaLabel.selectYear"),onClick:m},null),Y=v(ue,null,[b(F,{class:"v-date-picker-controls__month-btn","data-testid":"month-btn",height:"36",disabled:w.value,text:e.text,rounded:!0,"aria-label":t("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:h},null),b(F,{class:"v-date-picker-controls__mode-btn","data-testid":"year-btn",disabled:_.value,icon:e.modeIcon,"aria-label":t("$vuetify.datePicker.ariaLabel.selectYear"),onClick:m},null)]),A={viewMode:e.viewMode,disabled:Array.isArray(e.disabled)?e.disabled:[],monthYearText:e.text??"",monthText:e.monthText??"",yearText:e.yearText??"",openMonths:h,openYears:m,prevMonth:S,nextMonth:f,prevYear:s,nextYear:V},J=v(ue,null,[e.noMonthPicker?x:Y,b(Ye,null,null),v("div",{class:"v-date-picker-controls__month"},[g,$])]),Q=v(ue,null,[v("div",{class:"v-date-picker-controls__month"},[g,i,$]),b(Ye,null,null),v("div",{class:"v-date-picker-controls__year"},[E,p,O])]);return b(ge,{defaults:o},{default:()=>[v("div",{class:te(["v-date-picker-controls",`v-date-picker-controls--variant-${e.controlVariant}`]),style:{"--v-date-picker-controls-height":be(e.controlHeight)}},[c.default?.(A)??v(ue,null,[e.controlVariant==="modal"&&J,e.controlVariant==="docked"&&Q])])]})}),{}}}),$t=G({appendIcon:he,color:String,header:String,transition:String,onClick:ft()},"VDatePickerHeader"),Ne=le()({name:"VDatePickerHeader",props:$t(),emits:{click:()=>!0,"click:append":()=>!0},setup(e,{emit:a,slots:c}){const{backgroundColorClasses:t,backgroundColorStyles:w}=Re(()=>e.color);function _(){a("click")}function l(){a("click:append")}return re(()=>{const u=!!(c.default||e.header),k=!!(c.append||e.appendIcon);return v("div",{class:te(["v-date-picker-header",{"v-date-picker-header--clickable":!!e.onClick},t.value]),style:Le(w.value),onClick:_},[c.prepend&&v("div",{key:"prepend",class:"v-date-picker-header__prepend"},[c.prepend()]),u&&b(je,{key:"content",name:e.transition},{default:()=>[v("div",{key:e.header,class:"v-date-picker-header__content"},[c.default?.()??e.header])]}),k&&v("div",{class:"v-date-picker-header__append"},[c.append?b(ge,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VBtn:{icon:e.appendIcon,variant:"text"}}},{default:()=>[c.append?.()]}):b(F,{key:"append-btn",icon:e.appendIcon,variant:"text",onClick:l},null)])])}),{}}}),Tt=G({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 Bt(e){const a=ie(),c=K(e,"modelValue",[],h=>ae(h).map(o=>a.date(o))),t=C(()=>e.displayValue?a.date(e.displayValue):c.value.length>0?a.date(c.value[0]):e.min?a.date(e.min):Array.isArray(e.allowedDates)?a.date(e.allowedDates[0]):a.date()),w=K(e,"year",void 0,h=>{const o=h!=null?Number(h):a.getYear(t.value);return a.startOfYear(a.setYear(a.date(),o))},h=>a.getYear(h)),_=K(e,"month",void 0,h=>{const o=h!=null?Number(h):a.getMonth(t.value),g=a.setYear(a.startOfMonth(a.date()),a.getYear(w.value));return a.setMonth(g,o)},h=>a.getMonth(h)),l=C(()=>{const h=a.toJsDate(a.startOfWeek(a.date(),e.firstDayOfWeek)).getDay();return a.getWeekdays(e.firstDayOfWeek,e.weekdayFormat).filter((o,g)=>e.weekdays.includes((g+h)%7))}),u=C(()=>{const h=a.getWeekArray(_.value,e.firstDayOfWeek),o=h.flat(),g=42;if(e.weeksInMonth==="static"&&o.lengthe.weekdays.includes(a.toJsDate(g).getDay())).map((g,$)=>{const E=a.toISO(g),O=!a.isSameMonth(g,_.value),i=a.isSameDay(g,a.startOfMonth(_.value)),p=a.isSameDay(g,a.endOfMonth(_.value)),x=a.isSameDay(g,_.value),Y=e.weekdays.length;return{date:g,formatted:a.format(g,"keyboardDate"),isAdjacent:O,isDisabled:m(g),isEnd:p,isHidden:O&&!e.showAdjacentMonths,isSame:x,isSelected:c.value.some(A=>a.isSameDay(g,A)),isStart:i,isToday:a.isSameDay(g,o),isWeekEnd:$%Y===Y-1,isWeekStart:$%Y===0,isoDate:E,localized:a.format(g,"dayOfMonth"),month:a.getMonth(g),year:a.getYear(g)}})}const D=C(()=>{const h=a.startOfWeek(t.value,e.firstDayOfWeek),o=[];for(let $=0;$<=6;$++)o.push(a.addDays(h,$));const g=a.date();return k(o,g)}),S=C(()=>{const h=u.value.flat(),o=a.date();return k(h,o)}),f=C(()=>u.value.map(h=>h.length?a.getWeek(h[0],e.firstDayOfWeek,e.firstDayOfYear):null)),{minDate:s,maxDate:V}=Je(e);function m(h){if(e.disabled)return!0;const o=a.date(h);return s.value&&a.isBefore(a.endOfDay(o),s.value)||V.value&&a.isAfter(o,V.value)?!0:Array.isArray(e.allowedDates)&&e.allowedDates.length>0?!e.allowedDates.some(g=>a.isSameDay(a.date(g),o)):typeof e.allowedDates=="function"?!e.allowedDates(o):!1}return{displayValue:t,daysInMonth:S,daysInWeek:D,genDays:k,model:c,weeksInMonth:u,weekdayLabels:l,weekNumbers:f}}function Je(e){const a=ie(),c=C(()=>{if(!e.min)return null;const l=a.date(e.min);return a.isValid(l)?l:null}),t=C(()=>{if(!e.max)return null;const l=a.date(e.max);return a.isValid(l)?l:null});function w(l){return c.value&&a.isBefore(l,c.value)?c.value:t.value&&a.isAfter(l,t.value)?t.value:l}function _(l){return(!c.value||a.isAfter(l,c.value))&&(!t.value||a.isBefore(l,t.value))}return{minDate:c,maxDate:t,clampDate:w,isInAllowedRange:_}}const Ze=G({color:String,hideWeekdays:Boolean,multiple:[Boolean,Number,String],showWeek:Boolean,readonly: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},...ne(Tt(),["displayValue"])},"VDatePickerMonth"),Ee=le()({name:"VDatePickerMonth",props:Ze(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0},setup(e,{emit:a,slots:c}){const t=W(),{t:w}=ye(),{daysInMonth:_,model:l,weekNumbers:u,weekdayLabels:k}=Bt(e),D=ie(),S=de(),f=de(),s=de(!1),V=ee(()=>s.value?e.reverseTransition:e.transition);e.multiple==="range"&&l.value.length>0&&(S.value=l.value[0],l.value.length>1&&(f.value=l.value[l.value.length-1]));const m=C(()=>{const i=["number","string"].includes(typeof e.multiple)?Number(e.multiple):1/0;return l.value.length>=i});ke(_,(i,p)=>{p&&(s.value=D.isBefore(i[0].date,p[0].date))});function h(i){const p=D.startOfDay(i);if(l.value.length===0?S.value=void 0:l.value.length===1&&(S.value=l.value[0],f.value=void 0),!S.value)S.value=p,l.value=[S.value];else if(f.value)S.value=i,f.value=void 0,l.value=[S.value];else{if(D.isSameDay(p,S.value)){S.value=void 0,l.value=[];return}else D.isBefore(p,S.value)?(f.value=D.endOfDay(S.value),S.value=p):f.value=D.endOfDay(p);l.value=[S.value,f.value]}}function o(i){const p=D.format(i.date,"fullDateWithWeekday"),x=i.isToday?"currentDate":"selectDate";return w(`$vuetify.datePicker.ariaLabel.${x}`,p)}function g(i){const p=l.value.findIndex(x=>D.isSameDay(x,i));if(p===-1)l.value=[...l.value,i];else{const x=[...l.value];x.splice(p,1),l.value=x}}function $(i){e.multiple==="range"?h(i):e.multiple?g(i):l.value=[i]}function E(i){const{events:p,eventColor:x}=e;let Y,A=[];if(Array.isArray(p)?Y=p.includes(i):p instanceof Function?Y=p(i)||!1:p?Y=p[i]||!1:Y=!1,Y)Y!==!0?A=ae(Y):typeof x=="string"?A=[x]:typeof x=="function"?A=ae(x(i)):Array.isArray(x)?A=x:typeof x=="object"&&x!==null&&(A=ae(x[i]));else return[];return A.length?A.filter(Boolean).map(J=>typeof J=="string"?J:"surface-variant"):["surface-variant"]}function O(i){const p=E(i);return p.length?v("div",{class:"v-date-picker-month__events"},[p.map(x=>b(vt,{dot:!0,color:x},null))]):null}re(()=>v("div",{class:"v-date-picker-month",style:{"--v-date-picker-days-in-week":e.weekdays.length}},[e.showWeek&&v("div",{key:"weeks",class:"v-date-picker-month__weeks"},[!e.hideWeekdays&&v("div",{key:"hide-week-days",class:"v-date-picker-month__day"},[Ue(" ")]),u.value.map(i=>v("div",{class:te(["v-date-picker-month__day","v-date-picker-month__day--adjacent"])},[i]))]),b(je,{name:V.value},{default:()=>[v("div",{ref:t,key:_.value[0].date?.toString(),class:"v-date-picker-month__days"},[!e.hideWeekdays&&k.value.map(i=>v("div",{class:te(["v-date-picker-month__day","v-date-picker-month__weekday"])},[i])),_.value.map((i,p)=>{const x={props:{class:"v-date-picker-month__day-btn",color:i.isSelected||i.isToday?e.color:void 0,disabled:i.isDisabled,readonly:e.readonly,icon:!0,ripple:!1,variant:i.isSelected?"flat":i.isToday?"outlined":"text","aria-label":o(i),"aria-current":i.isToday?"date":void 0,onClick:()=>$(i.date)},item:i,i:p},Y=e.multiple==="range"&&l.value.length===2?D.isWithinRange(i.date,l.value):l.value.some(A=>D.isSameDay(A,i.date));return m.value&&!Y&&(i.isDisabled=!0),v("div",{class:te(["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":Y,"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)&&(c.day?.(x)??b(F,x.props,{default:()=>[i.localized,O(i.isoDate)]}))])})])]})]))}}),Ge=G({color:String,height:[String,Number],min:null,max:null,modelValue:Number,year:Number,allowedMonths:[Array,Function]},"VDatePickerMonths"),Fe=le()({name:"VDatePickerMonths",props:Ge(),emits:{"update:modelValue":e=>!0},setup(e,{emit:a,slots:c}){const t=ie(),w=K(e,"modelValue"),_=C(()=>{let u=t.startOfYear(t.date());return e.year&&(u=t.setYear(u,e.year)),He(12).map(k=>{const D=t.format(u,"monthShort"),S=t.format(u,"month"),f=!!(!l(k)||e.min&&t.isAfter(t.startOfMonth(t.date(e.min)),u)||e.max&&t.isAfter(u,t.startOfMonth(t.date(e.max))));return u=t.getNextMonth(u),{isDisabled:f,text:D,label:S,value:k}})});ze(()=>{w.value=w.value??t.getMonth(t.date())});function l(u){return Array.isArray(e.allowedMonths)&&e.allowedMonths.length?e.allowedMonths.includes(u):typeof e.allowedMonths=="function"?e.allowedMonths(u):!0}return re(()=>v("div",{class:"v-date-picker-months",style:{height:be(e.height)}},[v("div",{class:"v-date-picker-months__content"},[_.value.map((u,k)=>{const D={active:w.value===k,ariaLabel:u.label,color:w.value===k?e.color:void 0,disabled:u.isDisabled,rounded:!0,text:u.text,variant:w.value===u.value?"flat":"text",onClick:()=>S(k)};function S(f){if(w.value===f){a("update:modelValue",w.value);return}w.value=f}return c.month?.({month:u,i:k,props:D})??b(F,U({key:"month"},D),null)})])])),{}}}),Qe=G({color:String,height:[String,Number],min:null,max:null,modelValue:Number,allowedYears:[Array,Function]},"VDatePickerYears"),We=le()({name:"VDatePickerYears",props:Qe(),directives:{vIntersect:Ae},emits:{"update:modelValue":e=>!0},setup(e,{emit:a,slots:c}){const t=ie(),w=K(e,"modelValue"),_=de(!1),l=C(()=>{const f=t.getYear(t.date());let s=f-100,V=f+52;e.min&&(s=t.getYear(t.date(e.min))),e.max&&(V=t.getYear(t.date(e.max)));let m=t.startOfYear(t.date());return m=t.setYear(m,s),He(V-s+1,s).map(h=>{const o=t.format(m,"year");return m=t.setYear(m,t.getYear(m)+1),{text:o,value:h,isDisabled:!S(h)}})});ze(()=>{w.value=w.value??t.getYear(t.date())});const u=Ie(),k=Ie();function D(){const f=u.el,s=k.el;if(!f||!s)return;const V=f.getBoundingClientRect(),m=s.getBoundingClientRect();f.scrollTop+=m.top-V.top-f.clientHeight/2+m.height/2}function S(f){return Array.isArray(e.allowedYears)&&e.allowedYears.length?e.allowedYears.includes(f):typeof e.allowedYears=="function"?e.allowedYears(f):!0}return re(()=>mt(v("div",{class:"v-date-picker-years",ref:u,style:{height:be(e.height)}},[v("div",{class:"v-date-picker-years__content",onFocus:()=>k.el?.focus(),onFocusin:()=>_.value=!0,onFocusout:()=>_.value=!1,tabindex:_.value?-1:0},[l.value.map((f,s)=>{const V={ref:w.value===f.value?k:void 0,active:w.value===f.value,color:w.value===f.value?e.color:void 0,rounded:!0,text:f.text,disabled:f.isDisabled,variant:w.value===f.value?"flat":"text",onClick:()=>{if(w.value===f.value){a("update:modelValue",w.value);return}w.value=f.value}};return c.year?.({year:f,i:s,props:V})??b(F,U({key:"month"},V),null)})])]),[[Ae,{handler:D},null,{once:!0}]])),{}}}),Ot=G({header:{type:String,default:"$vuetify.datePicker.header"},headerColor:String,headerDateFormat:{type:String,default:"normalDateWithWeekday"},landscapeHeaderWidth:[Number,String],...ne(Ke(),["active","monthText","yearText"]),...Ze({weeksInMonth:"static"}),...ne(Ge(),["modelValue"]),...ne(Qe(),["modelValue"]),...qe({title:"$vuetify.datePicker.title"}),modelValue:null},"VDatePicker"),Nt=le()({name:"VDatePicker",props:Ot(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0,"update:viewMode":e=>!0},setup(e,{emit:a,slots:c}){const t=ie(),{t:w}=ye(),{rtlClasses:_}=ht(),l=K(e,"modelValue",void 0,d=>ae(d).map(y=>t.date(y)),d=>e.multiple?d:d[0]),u=K(e,"viewMode"),{minDate:k,maxDate:D,clampDate:S}=Je(e),f=C(()=>{const d=t.date(),y=l.value?.[0]?t.date(l.value[0]):S(d);return y&&t.isValid(y)?y:d}),s=ee(()=>e.headerColor??e.color),V=K(e,"month"),m=C({get:()=>Number(V.value??t.getMonth(t.startOfMonth(f.value))),set:d=>V.value=d}),h=K(e,"year"),o=C({get:()=>Number(h.value??t.getYear(t.startOfYear(t.setMonth(f.value,m.value)))),set:d=>h.value=d}),g=de(!1),$=C(()=>{if(e.multiple==="range"&&l.value.length===2){const[y,T]=l.value,N=t.getDiff(T,y,"days")+1;return w("$vuetify.datePicker.itemsSelected",N)}if(e.multiple&&l.value.length>1)return w("$vuetify.datePicker.itemsSelected",l.value.length);const d=l.value[0]&&t.isValid(l.value[0])?t.format(t.date(l.value[0]),e.headerDateFormat):w(e.header);return e.landscape&&d.split(" ").length===3?d.replace(" ",` `):d}),E=ee(()=>{let d=t.date();return d=t.setDate(d,1),d=t.setMonth(d,m.value),d=t.setYear(d,o.value),d}),O=ee(()=>t.format(E.value,"monthAndYear")),i=ee(()=>t.format(E.value,"monthShort")),p=ee(()=>t.format(E.value,"year")),x=ee(()=>`date-picker-header${g.value?"-reverse":""}-transition`),Y=C(()=>{if(e.disabled)return!0;const d=[];if(u.value!=="month")d.push("prev-month","next-month","prev-year","next-year");else{let y=t.date();if(y=t.startOfMonth(y),y=t.setMonth(y,m.value),y=t.setYear(y,o.value),k.value){const T=t.addDays(t.startOfMonth(y),-1),N=t.addDays(t.startOfYear(y),-1);t.isAfter(k.value,T)&&d.push("prev-month"),t.isAfter(k.value,N)&&d.push("prev-year")}if(D.value){const T=t.addDays(t.endOfMonth(y),1),N=t.addDays(t.endOfYear(y),1);t.isAfter(T,D.value)&&d.push("next-month"),t.isAfter(N,D.value)&&d.push("next-year")}}return d}),A=C(()=>e.allowedYears||H),J=C(()=>e.allowedMonths||we);function Q(d,y){const T=e.allowedDates;if(typeof T!="function")return!0;const N=1+Yt(t,d,y);for(let j=0;j0?m.value--:(o.value--,m.value=11,z()),X()}function pe(){if(o.value++,D.value){const d=String(m.value+1).padStart(2,"0"),y=t.parseISO(`${o.value}-${d}-01`);t.isAfter(y,D.value)&&(m.value=t.getMonth(D.value))}z()}function xe(){if(o.value--,k.value){const d=String(m.value+1).padStart(2,"0"),y=t.endOfMonth(t.parseISO(`${o.value}-${d}-01`));t.isAfter(k.value,y)&&(m.value=t.getMonth(k.value))}z()}function Se(){u.value="month"}function fe(){u.value=u.value==="months"?"month":"months"}function ve(){u.value=u.value==="year"?"month":"year"}function X(){u.value==="months"&&fe()}function z(){u.value==="year"&&ve()}return ke(l,(d,y)=>{const T=ae(y),N=ae(d);if(!N.length)return;const j=t.date(T[T.length-1]),q=t.date(N[N.length-1]);if(t.isSameDay(j,q))return;const Z=t.getMonth(q),B=t.getYear(q);Z!==m.value&&(m.value=Z,X()),B!==o.value&&(o.value=B,z()),g.value=t.isBefore(j,q)}),re(()=>{const d=Be.filterProps(e),y=ne(Oe.filterProps(e),["viewMode"]),T=Ne.filterProps(e),N=Ee.filterProps(e),j=ne(Fe.filterProps(e),["modelValue"]),q=ne(We.filterProps(e),["modelValue"]),Z={color:s.value,header:$.value,transition:x.value};return b(Be,U(d,{color:s.value,class:["v-date-picker",`v-date-picker--${u.value}`,{"v-date-picker--show-week":e.showWeek},_.value,e.class],style:[{"--v-date-picker-landscape-header-width":be(e.landscapeHeaderWidth)},e.style]}),{title:()=>c.title?.()??v("div",{class:"v-date-picker__title"},[w(e.title)]),header:()=>c.header?b(ge,{defaults:{VDatePickerHeader:{...Z}}},{default:()=>[c.header?.(Z)]}):b(Ne,U({key:"header"},T,Z,{onClick:u.value!=="month"?Se:void 0}),{prepend:c.prepend,append:c.append}),default:()=>v(ue,null,[b(Oe,U(y,{disabled:Y.value,viewMode:u.value,text:O.value,monthText:i.value,yearText:p.value,"onClick:next":De,"onClick:prev":ce,"onClick:nextYear":pe,"onClick:prevYear":xe,"onClick:month":fe,"onClick:year":ve}),{default:c.controls}),b(yt,{hideOnLeave:!0},{default:()=>[u.value==="months"?b(Fe,U({key:"date-picker-months"},j,{modelValue:m.value,"onUpdate:modelValue":[B=>m.value=B,X],min:k.value,max:D.value,year:o.value,allowedMonths:J.value}),{month:c.month}):u.value==="year"?b(We,U({key:"date-picker-years"},q,{modelValue:o.value,"onUpdate:modelValue":[B=>o.value=B,z],min:k.value,max:D.value,allowedYears:A.value}),{year:c.year}):b(Ee,U({key:"date-picker-month"},N,{modelValue:l.value,"onUpdate:modelValue":B=>l.value=B,month:m.value,"onUpdate:month":[B=>m.value=B,X],year:o.value,"onUpdate:year":[B=>o.value=B,z],min:k.value,max:D.value}),{day:c.day})]})]),actions:c.actions})}),{}}}),Et={class:"mx-auto max-w-[1105px] select-none space-y-6"},Ft={class:"text-3xl"},Wt={class:"text-justify text-gray-300"},Rt={class:"bg-brand-card flex w-full flex-col gap-4 rounded-md p-6"},Lt={class:"mb-2 block text-sm font-medium text-gray-200"},jt={class:"mb-2 block text-sm font-medium text-gray-200"},Ut={class:"mb-2 block text-sm font-medium text-gray-200"},Ht={class:"flex flex-col items-center gap-4 sm:col-span-3 sm:flex-row sm:items-center sm:justify-end"},zt={key:0,class:"w-full sm:mr-auto sm:w-[300px]"},qt={class:"mb-2 block text-sm font-medium text-gray-200"},Kt={key:0,class:"text-error mt-1 text-xs"},Jt={key:0},Zt={key:1,class:"inline-flex items-center gap-2"},Gt={class:"mt-4 w-full text-center text-sm text-gray-400"},ea={auth:!1,crumb:[{textKey:"breadcrumb.home",link:"/"},{textKey:"breadcrumb.annual-statement"}]},Qt=kt({__name:"Index",setup(e){const a=P("annual-statement.errors.generic"),c=P("annual-statement.errors.unavailable"),t="https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit",w=_t(),_=gt(),l=bt(),u=W(""),k=W(""),D=W(""),S=W(!1),f=W(""),s=W({document:"",birthday:"",email:"",captcha:""}),V=W(!1),m=W(null),h=W(null),o=W(null),g=W(!1),$=W(!1),O=new Date().getFullYear()-1,i=C(()=>_.hasRemoteSettings&&_.business.features_comprovabet===!1),p=C(()=>""),x=C(()=>!1),Y=C(()=>k.value?pe(k.value):null);wt({title:P("annual-statement.title")});function A(n){return n.replace(/\D/g,"").trim()}function J(n){return A(n).slice(0,11).replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d{1,2})$/,"$1-$2")}function Q(n){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(n.trim())}function H(n){s.value[n]=""}function we(){s.value={document:"",birthday:"",email:"",captcha:s.value.captcha}}function De(n){u.value=J(String(n??"")),A(u.value).length===11&&H("document")}function ce(n){const r=n.getFullYear(),M=String(n.getMonth()+1).padStart(2,"0"),I=String(n.getDate()).padStart(2,"0");return`${r}-${M}-${I}`}function pe(n){const r=n.match(/^(\d{4})-(\d{2})-(\d{2})$/);return r?new Date(Number(r[1]),Number(r[2])-1,Number(r[3])):null}function xe(n){const r=n.match(/^(\d{4})-(\d{2})-(\d{2})$/);return r?`${r[3]}/${r[2]}/${r[1]}`:""}function Se(n){const r=n.match(/^(\d{2})\/(\d{2})\/(\d{4})$/);if(!r)return"";const M=Number(r[1]),I=Number(r[2]),Ve=Number(r[3]),me=new Date(Ve,I-1,M);return me.getFullYear()!==Ve||me.getMonth()!==I-1||me.getDate()!==M?"":ce(me)}function fe(n){return A(n).slice(0,8).replace(/(\d{2})(\d)/,"$1/$2").replace(/(\d{2})(\d)/,"$1/$2")}function ve(n){const r=fe(String(n??""));D.value=r,k.value=Se(r),k.value&&H("birthday")}function X(n){if(!n)return;const r=typeof n=="string"?n:ce(n);k.value=r,D.value=xe(r),H("birthday"),S.value=!1}function z(n){f.value=String(n??""),Q(f.value)&&H("email")}function d(n){return`ComprovaBet — IRPF ${n+1} (Ano-calendário ${n}).pdf`}function y(n){if(!n)return null;const r=n.match(/filename\*=UTF-8''([^;]+)/i);return r?.[1]?decodeURIComponent(r[1].replace(/"/g,"").trim()):n.match(/filename="?([^";]+)"?/i)?.[1]?.trim()||null}function T(n,r){const M=n.headers?.["content-disposition"]||n.headers?.["Content-Disposition"];return y(Array.isArray(M)?M[0]:M)||d(r)}function N(n,r){if(navigator.msSaveBlob){navigator.msSaveBlob(n,r);return}const M=window.URL.createObjectURL(n),I=document.createElement("a");I.href=M,I.download=r,document.body.appendChild(I),I.click(),document.body.removeChild(I),window.URL.revokeObjectURL(M)}async function j(n){try{const r=await n.text();if(!r)return null;const M=JSON.parse(r);return M.error||M.message||null}catch{return null}}async function q(n){if(n instanceof Blob)return j(n);if(n&&typeof n=="object"){const r=n;if(typeof r.error=="string")return r.error;if(typeof r.message=="string")return r.message}return null}async function Z(n){return n.status===404?c:await q(n.data)||a}function B(n){l.showAlert("error",n)}function Xe(n){l.showAlert("success",n)}function et(){m.value=null,o.value&&window.turnstile?.reset(o.value)}function tt(n){m.value=n,g.value=!1,$.value=!1,H("captcha")}function Ce(){m.value=null,g.value=!0}function at(){m.value=null,g.value=!0;const n=P("annual-statement.errors.captcha-expired");s.value.captcha=n,B(n)}async function nt(){typeof window>"u"||window.turnstile||await new Promise((n,r)=>{const M=document.querySelector(`script[src="${t}"]`);if(M){M.addEventListener("load",()=>n(),{once:!0}),M.addEventListener("error",()=>r(new Error("Turnstile failed to load")),{once:!0});return}const I=document.createElement("script");I.src=t,I.async=!0,I.defer=!0,I.onload=()=>n(),I.onerror=()=>r(new Error("Turnstile failed to load")),document.head.appendChild(I)})}async function lt(){if(!(!x.value||!h.value||o.value))try{if(await nt(),!window.turnstile||!h.value)return;o.value=window.turnstile.render(h.value,{sitekey:p.value,theme:"dark",callback:tt,"error-callback":Ce,"expired-callback":at})}catch{Ce()}}function rt(n){we(),n?n.length!==11&&(s.value.document=P("annual-statement.errors.document-invalid")):s.value.document=P("annual-statement.errors.document-required"),D.value.trim()?k.value||(s.value.birthday=P("annual-statement.errors.birthday-invalid")):s.value.birthday=P("annual-statement.errors.birthday-required"),f.value.trim()?Q(f.value)||(s.value.email=P("annual-statement.errors.email-invalid")):s.value.email=P("annual-statement.errors.email-required");const r=s.value.document||s.value.birthday||s.value.email;return r?(B(r),!1):!0}function it(){if(!x.value||m.value)return H("captcha"),!0;if(g.value&&!$.value){$.value=!0;const r=P("annual-statement.errors.captcha-bypass");return H("captcha"),l.showAlert("warning",r),!0}const n=P("annual-statement.errors.captcha-required");return s.value.captcha=n,B(n),!1}async function ot(){const n=A(u.value);if(!(!rt(n)||!it()||V.value))try{V.value=!0;const r=new URLSearchParams({document:n,birthday:k.value,email:f.value});m.value&&r.append("turnstileToken",m.value);const M=await Ct.get(`/api/comprova-bet/generate-unauthenticated?${r}`,{responseType:"blob",timeout:0,validateStatus:()=>!0});if(M.status!==200)throw new Error(await Z(M));if(!(M.data instanceof Blob))throw new Error(P("annual-statement.errors.invalid-document"));N(M.data,T(M,O)),Xe(P("annual-statement.success.download-started")),x.value&&et()}catch(r){const M=r.response?.data,I=await q(M)||(r instanceof Error?r.message:"")||a;B(I)}finally{V.value=!1}}return ke(i,n=>{n&&w.replace("/")},{immediate:!0}),Dt(async()=>{await pt(),x.value&&await lt()}),xt(()=>{o.value&&window.turnstile?.remove?.(o.value)}),(n,r)=>(se(),oe("div",Et,[v("header",null,[v("h2",Ft,L(R(P)("annual-statement.title")),1)]),v("p",Wt,L(R(P)("annual-statement.instructions.first"))+" "+L(R(P)("annual-statement.instructions.second")),1),v("section",Rt,[v("form",{class:"grid grid-cols-1 gap-4 sm:grid-cols-3",onSubmit:St(ot,["prevent"])},[v("div",null,[v("label",Lt,L(R(P)("annual-statement.form.document.label")),1),b(Me,{"model-value":u.value,type:"tel",placeholder:R(P)("annual-statement.form.document.placeholder"),class:"annual-statement-field",variant:"plain",density:"default",error:!!s.value.document,"error-messages":s.value.document?[s.value.document]:[],"hide-details":!s.value.document,disabled:V.value,"onUpdate:modelValue":De},null,8,["model-value","placeholder","error","error-messages","hide-details","disabled"])]),v("div",null,[v("label",jt,L(R(P)("annual-statement.form.birthday.label")),1),b(Mt,{modelValue:S.value,"onUpdate:modelValue":r[1]||(r[1]=M=>S.value=M),"close-on-content-click":!1,location:"bottom start"},{activator:_e(({props:M})=>[b(Me,U(M,{"model-value":D.value,placeholder:"dd/mm/aaaa",class:"annual-statement-field",variant:"plain",density:"default","append-inner-icon":"$calendar",error:!!s.value.birthday,"error-messages":s.value.birthday?[s.value.birthday]:[],"hide-details":!s.value.birthday,disabled:V.value,"onClick:appendInner":r[0]||(r[0]=I=>S.value=!0),"onUpdate:modelValue":ve}),null,16,["model-value","error","error-messages","hide-details","disabled"])]),default:_e(()=>[b(Nt,{"model-value":Y.value,color:"primary","hide-header":"","show-adjacent-months":"","onUpdate:modelValue":X},null,8,["model-value"])]),_:1},8,["modelValue"])]),v("div",null,[v("label",Ut,L(R(P)("annual-statement.form.email.label")),1),b(Me,{"model-value":f.value,type:"email",placeholder:R(P)("annual-statement.form.email.placeholder"),class:"annual-statement-field",variant:"plain",density:"default",error:!!s.value.email,"error-messages":s.value.email?[s.value.email]:[],"hide-details":!s.value.email,disabled:V.value,"onUpdate:modelValue":z},null,8,["model-value","placeholder","error","error-messages","hide-details","disabled"])]),v("div",Ht,[x.value?(se(),oe("div",zt,[v("label",qt,L(R(P)("annual-statement.captcha.label")),1),v("div",{class:te(["annual-statement-captcha-box",{"annual-statement-captcha-box--error":s.value.captcha}])},[v("div",{ref_key:"turnstileContainer",ref:h,class:"flex min-h-[65px] w-full items-center justify-center sm:justify-start"},null,512)],2),s.value.captcha?(se(),oe("p",Kt,L(s.value.captcha),1)):$e("",!0)])):$e("",!0),b(F,{type:"submit",size:"large",variant:"flat",class:"w-full sm:w-auto sm:shrink-0",disabled:V.value},{default:_e(()=>[V.value?(se(),oe("span",Zt,[v("span",null,L(R(P)("annual-statement.form.loading")),1),b(Te,{class:"animate-spin",icon:"fa6-solid:circle-notch",size:"16"})])):(se(),oe("span",Jt,L(R(P)("annual-statement.form.submit")),1))]),_:1},8,["disabled"])])],32),v("div",Gt,[b(Te,{icon:"fa-classic fa-regular fa-circle-info",size:"14",class:"mr-1"}),r[2]||(r[2]=Ue()),v("span",null,L(R(P)("annual-statement.password-info")),1)])])]))}}),ta=Vt(Qt,[["__scopeId","data-v-ec5ddd1f"]]);export{ta as default,ea as page};