import{b4 as E}from"./BxiWQxwE.js";const L="d MMM yyyy, HH:mm",Y="d MMMM",k="d MMMM yyyy",r={EXPIRED:"verlopen",TODAY:"vandaag",TOMORROW:"morgen",DAY:"dag",PLURAL:"en",WEEK:"week",WEEKS:"weken",YEAR:"jaar",YEARS:"jaren"},w={nl:{today:"vandaag",yesterday:"gisteren",month:{full:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],abbreviated:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."]}}},u=(t,e)=>"0".repeat(Math.max(0,e-String(t).length))+String(t),y=t=>{const e=Object.prototype.toString.call(t);return t instanceof Date||typeof t=="object"&&e==="[object Date]"?new t.constructor(+t):typeof t=="number"||e==="[object Number]"||typeof t=="string"||e==="[object String]"?new Date(t):new Date(NaN)},O=(t,e)=>new Date(t.getTime()+e*1e3),g=t=>{const e=y(t);return e.setHours(0,0,0,0),e},d=(t,e)=>{const n=g(t),a=g(e);return+n==+a},m=t=>d(t,Date.now()),p=(t,e)=>{const n=y(t);return n.setDate(n.getDate()-e),n},h=t=>d(t,p(Date.now(),1)),S=()=>{const t=new Date,e=t.getDay(),n=e===0?0:7-e,a=new Date(t);return a.setDate(t.getDate()+n),a},T=(t,e)=>{const n=new Date,a=n.getDay();let c=0;e?c=t-a+7:c=a===0?t:t-a;const i=new Date(n);return i.setDate(n.getDate()+c),i},W=()=>{const t=S(),e=new Date(t);return e.setDate(t.getDate()-7),e},R=()=>{const t=new Date,e=t.getDay(),n=e===0?6:6-e,a=new Date(t);return a.setDate(t.getDate()+n+7),a},A=t=>{const e=new Date(t.getTime());return new Date(e.setDate(e.getDate()+7))},v=t=>{const e=new Date(t),n=new Date(e.getFullYear(),0,1),a=24*60*60*1e3,c=Math.floor((e.getTime()-n.getTime())/a),i=Math.ceil((c+n.getDay()+1)/7),o=e.getMonth()+1;return{weekNumber:i,monthNumber:o}},b=t=>{const e=new Date(t.toString()),n=new Date,a=e.getTime()-n.getTime();return Math.ceil(a/(1e3*60*60*24))-1},j=t=>{const e=b(t);if(e<0)return r.EXPIRED;if(e===0)return r.TODAY;if(e===1)return r.TOMORROW;if(e===7)return`1 ${r.WEEK}`;if(e===14)return`2 ${r.WEEKS}`;if(e===21)return`3 ${r.WEEKS}`;const n=[{label:r.YEAR,pluralLabel:r.YEARS,divisor:365},{label:r.WEEK,pluralLabel:r.WEEKS,divisor:7}];for(const a of n)if(e>a.divisor){const c=Math.floor(e/a.divisor);if(a.label===r.WEEK&&c<=1)continue;return`${c} ${c>1?a.pluralLabel:a.label}`}return`${e} ${r.DAY}${e>1?r.PLURAL:""}`},x=()=>{const t=w.nl,e=E("date",()=>new Date),n=(o,D)=>{var f;const s=y(o);return D?(f=D.match(/(.)\1*/g))==null?void 0:f.map(M=>{switch(M){case"d":return s.getDate();case"dd":return u(s.getDate(),2);case"MM":return u(s.getMonth()+1,2);case"MMM":return t.month.abbreviated[s.getMonth()];case"MMMM":return t.month.full[s.getMonth()];case"yy":return s.getFullYear().toString().slice(-2);case"yyyy":return s.getFullYear();case"mm":return u(s.getMinutes(),2);case"H":return s.getHours();case"HH":return u(s.getHours(),2);case"SS":return u(s.getSeconds(),2);case"xxx":{const l=s.getTimezoneOffset();return[l>0?"-":"+",u(Math.floor(Math.abs(l)/60),2),":",u(Math.abs(l)%60,2)].join("")}default:return M}}).join(""):o};return{format:n,formatRelative:(o,D)=>m(o)?t.today:h(o)?t.yesterday:n(o,D),toDate:y,toISOString:o=>n(o,"yyyy-MM-ddTHH:mm:SSxxx"),toLocalDateInputString:o=>n(o,"yyyy-MM-ddTHH:mm"),isSameDay:d,isToday:m,startOfDay:g,getSundayOfCurrentWeek:S,getSundayOfLastWeek:W,getSaturdayOfNextWeek:R,getWeekdayOfRelativeWeek:T,getWeekAndMonthNumber:v,getNextWeek:A,remainingDays:b,formatRemainingDays:j,addSecondsToDate:O,now:e}};export{Y as D,k as a,L as b,x as u};
