bs-ad-calendar-react 1.3.0 → 1.3.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(M,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react"],c):(M=typeof globalThis<"u"?globalThis:M||self,c(M.BSADCalendar={},M.ReactJSXRuntime,M.React))})(this,(function(M,c,w){"use strict";const Z=[1943,4,14],$t=[31,28,31,30,31,30,31,31,30,31,30,31],we=[31,29,31,30,31,30,31,31,30,31,30,31],_=[[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,31,32,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,31,32,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,31,29,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365]];let Ft=class extends Error{constructor(t){super(t),this.name="DateOutOfRangeError"}};const Nt=()=>Z[0]+1,Ot=()=>Z[0]+_.length-1,Ht=()=>2e3,It=()=>2e3+_.length-1,st=e=>e%400===0||e%4===0&&e%100!==0,wt=e=>st(e)?we:$t,Ye=(e,t,n)=>!(e<Nt()||e>Ot()||t<1||t>12||n<1||n>wt(e)[t-1]),Lt=(e,t,n)=>{let a=e*365+n;for(let s=0;s<t-1;s++)a+=$t[s];return t<=2&&(e-=1),a+=Math.floor(e/4)-Math.floor(e/100)+Math.floor(e/400),a};function ke(e,t,n){const a=t+1;if(!Ye(e,a,n))throw new Ft("Date out of range");let s=2e3,r=1,o=1,u=Math.abs(Lt(e,a,n)-Lt(...Z)),i=0;for(;u>=_[i][1];)u-=_[i][1],s+=1,i+=1;let h=0;for(;u>=_[i][0][h];)u-=_[i][0][h],r+=1,h+=1;return o+=u,[s,r-1,o]}const Ce=(e,t,n)=>!(e<Ht()||e>It()||t<1||t>12||n<1||n>_[e-2e3][0][t-1]),Ae=(e,t,n)=>{let a=n-1;const s=e-2e3;for(let r=0;r<t-1;r++)a+=_[s][0][r];for(let r=0;r<s;r++)a+=_[r][1];return a},ve=(e,t,n)=>{const a=t+1;if(!Ce(e,a,n))throw new Ft("Date out of range");let[s,r,o]=[Z[0],1,1];const u=wt(s).slice(0,Z[1]-1).reduce((g,m)=>g+m,0)+Z[2]-1;let i=Math.abs(Ae(e,a,n)+u);for(;i>=366&&st(s)||i>=365&&!st(s);)i-=st(s)?366:365,s+=1;const h=wt(s);let l=0;for(;i>=h[l];)i-=h[l],r+=1,l+=1;return o+=i,[s,r-1,o]},V={enMinYear:Nt,enMaxYear:Ot,npMinYear:Ht,npMaxYear:It,englishToNepali:ke,nepaliToEnglish:ve},xt="en",x="ne",Bt=207e5,_t=198e5,Te=5049018e5,$e=new Date(1986,0,1,0,15),at=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],Yt=["Bai","Jes","Asa","Shr","Bhd","Asw","Kar","Man","Pou","Mag","Fal","Cha"],jt=["बैशाख","जेठ","असार","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुण","चैत्र"],Fe=["बै","जे","अ","श्रा","भा","आ","का","मं","पौ","मा","फा","चै"],kt=["January","February","March","April","May","June","July","August","September","October","November","December"],Ct=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Ne=["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जुन","जुलाई","अगस्ट","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर"],Oe=["जन","फेब","मार","अप्रि","मे","जुन","जुला","अग","सेप","अक्टो","नोभे","डिसे"],Pt=["०","१","२","३","४","५","६","७","८","९"],Q=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],rt=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Wt=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],Vt=["आइतबार","सोमबार","मंगलबार","बुधबार","बिहिबार","शुक्रबार","शनिबार"],He=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DD?|ddd?d?|do?|YYYY|YY|y{2,4}|yo?|a|A|hh?|HH?|mm?|ss?|SSS|x|X|.)/g,Ie=e=>{const t=e.getTime(),n=t<Te?_t:Bt,a=new Date(t+n),s=a.getUTCFullYear(),r=a.getUTCMonth(),o=a.getUTCDate(),u=a.getUTCHours(),i=a.getUTCMinutes(),h=a.getUTCSeconds(),l=a.getUTCMilliseconds(),g=a.getUTCDay();return{year:s,month0:r,day:o,hour:u,minute:i,second:h,ms:l,weekDay:g}},Ut=(e,t,n,a,s,r,o)=>{const u=new Date(e,t,n,a,s,r,o);let i=u<$e?_t:Bt;const h=-1*u.getTimezoneOffset()*60*1e3;return new Date(u.getTime()-i+h)},ot=e=>{const t=e.match(He);return t?t.map(n=>n.startsWith("[")&&n.endsWith("]")?n.slice(1,-1):n):[]},j=e=>{if(e.length===0)return new RegExp("");let t=[...e];if(t=t.sort((a,s)=>s.length-a.length),t[0]==="")return new RegExp("");const n=`(${t.join("|")})`;return new RegExp(n)},$=e=>e.toString().padStart(2,"0"),Jt=e=>e.toString().padStart(3,"0"),Le=e=>e.split("").map(t=>Pt[t.charCodeAt(0)-48]).join(""),S=(e,t)=>{const n=typeof e=="string"?e:String(e);return t!==x?n:Le(n)},xe=(e,t)=>S(e.getYear(),t).substring(2),Be=(e,t)=>S(e.getYear(),t),_e=(e,t)=>S(e.getEnglishYear(),t).substring(2),je=(e,t)=>S(e.getEnglishYear(),t),Pe=(e,t)=>S(e.getMonth()+1,t),We=(e,t)=>S($(e.getMonth()+1),t),Ve=(e,t)=>t===x?Fe[e.getMonth()]:Yt[e.getMonth()],Ue=(e,t)=>t===x?jt[e.getMonth()]:at[e.getMonth()],Je=(e,t)=>S(e.getEnglishMonth()+1,t),Ke=(e,t)=>S($(e.getEnglishMonth()+1),t),Ge=(e,t)=>t===x?Oe[e.getEnglishMonth()]:Ct[e.getEnglishMonth()],ze=(e,t)=>t===x?Ne[e.getEnglishMonth()]:kt[e.getEnglishMonth()],qe=(e,t)=>S(e.getDate(),t),Xe=(e,t)=>S($(e.getDate()),t),Ze=(e,t)=>S(e.getEnglishDate(),t),Qe=(e,t)=>S($(e.getEnglishDate()),t),Kt=(e,t)=>S(e.getDay(),t),it=(e,t)=>t===x?Wt[e.getDay()]:Q[e.getDay()],Gt=(e,t)=>t===x?Vt[e.getDay()]:rt[e.getDay()],zt=(e,t)=>S(e.getHours(),t),qt=(e,t)=>S($(e.getHours()),t),Xt=(e,t)=>{const n=e.getHours(),a=n>12?n-12:n;return S(a,t)},Zt=(e,t)=>{const n=e.getHours(),a=n>12?n-12:n;return S($(a),t)},Qt=(e,t)=>S(e.getMinutes(),t),Rt=(e,t)=>S($(e.getMinutes()),t),te=(e,t)=>S(e.getSeconds(),t),ee=(e,t)=>S($(e.getSeconds()),t),ne=(e,t)=>S(Jt(e.getMilliseconds()),t),se=(e,t)=>t===x?e.getHours()>=12?"पिम":"एम":e.getHours()>=12?"PM":"AM",ae=(e,t)=>t===x?e.getHours()>=12?"पिम":"एम":e.getHours()>=12?"pm":"am",re={YY:xe,YYYY:Be,M:Pe,MM:We,MMM:Ve,MMMM:Ue,D:qe,DD:Xe,d:Kt,dd:it,ddd:it,dddd:Gt,H:zt,HH:qt,h:Xt,hh:Zt,m:Qt,mm:Rt,s:te,ss:ee,SSS:ne,A:se,a:ae},oe=(e,t,n)=>{const a=ot(t),s=r=>r in re?re[r](e,n):r;return a.map(s).join("")},Re=(e,t)=>oe(e,t,xt),t3=(e,t)=>oe(e,t,x),e3=e=>{const t=$(e.getYear()),n=$(e.getMonth()+1),a=$(e.getDate()),s=$(e.getHours()),r=$(e.getMinutes()),o=$(e.getSeconds()),u=e.getMilliseconds(),i=u===0?"":`.${Jt(u)}`;return`${t}-${n}-${a} ${s}:${r}:${o}${i}`},ie={YY:_e,YYYY:je,M:Je,MM:Ke,MMM:Ge,MMMM:ze,D:Ze,DD:Qe,d:Kt,dd:it,ddd:it,dddd:Gt,H:zt,HH:qt,h:Xt,hh:Zt,m:Qt,mm:Rt,s:te,ss:ee,SSS:ne,A:se,a:ae},ue=(e,t,n)=>{const a=ot(t),s=r=>r in ie?ie[r](e,n):r;return a.map(s).join("")},n3=(e,t)=>ue(e,t,xt),s3=(e,t)=>ue(e,t,x);function a3(e){const t=e.split(/[-./]/,3),[n,a=1,s=1]=t.map(r=>{const o=parseInt(r,10);if(Number.isNaN(o))throw new Error("Invalid date");return o});return[n,a-1,s]}function r3(e){if(!e)return[0,0,0,0];const[t,n="0"]=e.split(".",2),a=t.split(":",3),[s,r=0,o=0]=a.map(i=>{const h=parseInt(i,10);if(Number.isNaN(h))throw new Error("Invalid time");return h});let u=parseInt(n,10);return Number.isNaN(u)&&(u=0),[s,r,o,u]}function o3(e){const[t,n]=e.split(" ",2),[a,s,r]=a3(t),[o,u,i,h]=r3(n);return[a,s,r,o,u,i,h]}const ce={YY:/(\d\d)/,YYYY:/(\d\d\d\d)/,M:/(1[0-2]|0[1-9]|[1-9])/,MM:/(1[0-2]|0[1-9]|[1-9])/,D:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,DD:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,H:/(2[0-3]|[0-1]\d|\d)/,HH:/(2[0-3]|[0-1]\d|\d)/,hh:/(1[0-2]|0[1-9]|[1-9])/,mm:/([0-5]\d|\d)/,ss:/([0-5]\d|\d)/,SSS:/(\d\d\d)/,A:/(AM|PM)/,a:/(am|pm)/,MMMM:j(at),MMM:j(Yt),dddd:j(rt),ddd:j(Q),dd:j(Q),d:/([0-6])/};function i3(e){const t=[],n=[];for(const s of e)s in ce?(t.push(s),n.push(ce[s].source)):n.push(s.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"));const a=n.join("");return{dateTokens:t,regex:new RegExp(`^${a}$`)}}function u3(e,t){let[n,a,s,r,o,u,i,h]=[0,1,1,0,0,0,0,0],l=!1,g=!1;for(let m=0;m<e.length;m++){const b=e[m],D=parseInt(t[m+1]);switch(b){case"YYYY":n=D;break;case"YY":n=2e3+parseInt(t[m]);break;case"MM":case"M":a=D;break;case"MMMM":a=at.indexOf(t[m+1])+1;break;case"MMM":a=Yt.indexOf(t[m+1])+1;break;case"DD":case"D":s=D;break;case"HH":case"H":r=D;break;case"hh":case"h":o=D,g=!0;break;case"mm":case"m":u=D;break;case"ss":case"s":i=D;break;case"SSS":h=D;break;case"A":case"a":l=t[m+1].toLowerCase()==="pm"}}return g&&(r=o+(l?12:0)),{year:n,month0:a-1,day:s,hour:r,minute:u,second:i,ms:h}}function he(e,t){const n=ot(t),{dateTokens:a,regex:s}=i3(n),r=RegExp(s).exec(e);if(!r)throw new Error("Invalid date format");const{year:o,month0:u,day:i,hour:h,minute:l,second:g,ms:m}=u3(a,r);return[o,u,i,h,l,g,m]}const le={YY:/(\d\d)/,YYYY:/(\d\d\d\d)/,M:/(1[0-2]|0[1-9]|[1-9])/,MM:/(1[0-2]|0[1-9]|[1-9])/,D:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,DD:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,H:/(2[0-3]|[0-1]\d|\d)/,HH:/(2[0-3]|[0-1]\d|\d)/,hh:/(1[0-2]|0[1-9]|[1-9])/,mm:/([0-5]\d|\d)/,ss:/([0-5]\d|\d)/,SSS:/(\d\d\d)/,A:/(AM|PM)/,a:/(am|pm)/,MMMM:j(kt),MMM:j(Ct),dddd:j(rt),ddd:j(Q),dd:j(Q),d:/([0-6])/};function c3(e){const t=[],n=[];for(const s of e)s in le?(t.push(s),n.push(le[s].source)):n.push(s.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"));const a=n.join("");return{dateTokens:t,regex:new RegExp(`^${a}$`)}}function h3(e,t){let[n,a,s,r,o,u,i,h]=[0,1,1,0,0,0,0,0],l=!1,g=!1;for(let m=0;m<e.length;m++){const b=e[m],D=parseInt(t[m+1]);switch(b){case"YYYY":n=D;break;case"YY":n=2e3+parseInt(t[m]);break;case"MM":case"M":a=D;break;case"MMMM":a=kt.indexOf(t[m+1])+1;break;case"MMM":a=Ct.indexOf(t[m+1])+1;break;case"DD":case"D":s=D;break;case"HH":case"H":r=D;break;case"hh":case"h":o=D,g=!0;break;case"mm":case"m":u=D;break;case"ss":case"s":i=D;break;case"SSS":h=D;break;case"A":case"a":l=t[m+1].toLowerCase()==="pm"}}return g&&(r=o+(l?12:0)),{year:n,month0:a-1,day:s,hour:r,minute:u,second:i,ms:h}}function l3(e,t){const n=ot(t),{dateTokens:a,regex:s}=c3(n),r=RegExp(s).exec(e);if(!r)throw new Error("Invalid date format");const{year:o,month0:u,day:i,hour:h,minute:l,second:g,ms:m}=h3(a,r);return[o,u,i,h,l,g,m]}function d3(e){const t={एम:"AM",पिम:"PM"};jt.forEach((a,s)=>t[a]=at[s]),Vt.forEach((a,s)=>t[a]=rt[s]),Wt.forEach((a,s)=>t[a]=Q[s]),Pt.forEach((a,s)=>t[a]=String(s));const n=new RegExp(Object.keys(t).join("|"),"g");return e.replace(n,a=>t[a])}function g3(e,t){const n=d3(e);return he(n,t)}class ut extends Error{constructor(t){super(t),this.name="ValidationError"}}const m3=e=>{if(e<0||e>23)throw new ut("Hour should be in the range 0-23")},f3=e=>{if(e<0||e>59)throw new ut("Minute should be in the range 0-59")},D3=e=>{if(e<0||e>59)throw new ut("Second should be in the range 0-59")},y3=e=>{if(e<0||e>999)throw new ut("Millisecond should be in the range 0-999")},M3=(e,t,n,a)=>{m3(e),f3(t),D3(n),y3(a)};class Y{timestamp;year;yearEn;month;monthEn;day;dayEn;hour;minute;weekDay;constructor(...t){if(t.length===0)this.initFromCurrentDate();else if(t.length===1&&t[0]instanceof Date)this.initFromEnglishDate(t[0]);else if(t.length===1&&t[0]instanceof Y)this.initFromNepaliDate(t[0]);else if(t.length===1&&typeof t[0]=="string")this.parseFromString(t[0]);else if(t.length===1&&typeof t[0]=="number")this.initFromTimestamp(t[0]);else if(t.length===2&&typeof t[0]=="string"&&typeof t[1]=="string")this.parseFromStringWithFormat(t[0],t[1]);else if(t.length>=2&&t.length<=8&&t.every(n=>typeof n=="number"))this.initFromComponents(t);else throw new Error("Invalid date argument")}initFromCurrentDate(){this._setDateObject(new Date)}initFromEnglishDate(t){this._setDateObject(t)}initFromNepaliDate(t){this.set(t.year,t.month,t.day,t.hour,t.minute,t.getSeconds(),t.getMilliseconds())}parseFromString(t){const n=o3(t);this.set(n[0],n[1],n[2],n[3],n[4],n[5],n[6])}initFromTimestamp(t){this._setDateObject(new Date(t))}parseFromStringWithFormat(t,n){const a=he(t,n);this.set(a[0],a[1],a[2],a[3],a[4],a[5],a[6])}initFromComponents(t){this.set(t[0],t[1],t[2]??1,t[3]??0,t[4]??0,t[5]??0,t[6]??0)}_setDateObject(t,n=!0){this.timestamp=t;const{year:a,month0:s,day:r,hour:o,minute:u,weekDay:i}=Ie(t);if(this.yearEn=a,this.monthEn=s,this.dayEn=r,this.hour=o,this.minute=u,this.weekDay=i,n){const[h,l,g]=V.englishToNepali(a,s,r);this.year=h,this.month=l,this.day=g}}getDateObject(){return this.timestamp}getYear(){return this.year}getEnglishYear(){return this.yearEn}getMonth(){return this.month}getEnglishMonth(){return this.monthEn}getDate(){return this.day}getEnglishDate(){return this.dayEn}getDay(){return this.weekDay}getHours(){return this.hour}getMinutes(){return this.minute}getSeconds(){return this.timestamp.getSeconds()}getMilliseconds(){return this.timestamp.getMilliseconds()}getTime(){return this.timestamp.getTime()}setYear(t){this.set(t,this.month,this.day,this.hour,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setMonth(t){this.set(this.year,t,this.day,this.hour,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setDate(t){this.set(this.year,this.month,t,this.hour,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setHours(t){this.set(this.year,this.month,this.day,t,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setMinutes(t){this.set(this.year,this.month,this.day,this.hour,t,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setSeconds(t){this.set(this.year,this.month,this.day,this.hour,this.minute,t,this.timestamp.getMilliseconds())}setMilliseconds(t){this.set(this.year,this.month,this.day,this.hour,this.minute,this.timestamp.getSeconds(),t)}setTime(t){this._setDateObject(new Date(t))}set(t,n,a,s,r,o,u){M3(s,r,o,u);const[i,h,l]=V.nepaliToEnglish(t,n,a);this.year=t,this.month=n,this.day=a,this._setDateObject(Ut(i,h,l,s,r,o,u),!1)}setDateObject(t){this._setDateObject(t,!0)}format(t){return Re(this,t)}formatNepali(t){return t3(this,t)}toString(){return e3(this)}formatEnglishDate(t){return n3(this,t)}formatEnglishDateInNepali(t){return s3(this,t)}static fromEnglishDate(t,n,a,s=0,r=0,o=0,u=0){const i=Ut(t,n,a,s,r,o,u);return new Y(i)}static parseNepaliFormat(t,n){const[a,s,r,o,u,i,h]=g3(t,n);return new Y(a,s,r,o,u,i,h)}static parseEnglishDate(t,n){const[a,s,r,o,u,i,h]=l3(t,n);return Y.fromEnglishDate(a,s,r,o,u,i,h)}static getDaysOfMonth(t,n){if(t<V.npMinYear()||t>V.npMaxYear())throw new Error("Year out of range");if(n<0||n>11)throw new Error("Month out of range");return _[t-V.npMinYear()][0][n]}static minSupportedDate(){return Y.fromEnglishDate(V.enMinYear(),0,1).getDateObject()}static maxSupportedDate(){return Y.fromEnglishDate(V.enMaxYear(),11,31).getDateObject()}static minSupportedNepaliDate(){return new Y(V.npMinYear(),0,1)}static maxSupportedNepaliDate(){const t=V.npMaxYear();return new Y(t,11,this.getDaysOfMonth(t,11))}static minimum(){return console.warn("`NepaliDate.minimum()` is deprecated and will be removed in a future version. Please use `NepaliDate.minSupportedDate()` instead."),this.minSupportedDate()}static maximum(){return console.warn("`NepaliDate.maximum()` is deprecated and will be removed in a future version. Please use `NepaliDate.maxSupportedDate()` instead."),this.maxSupportedDate()}}const de=["बैशाख","जेठ","आषाढ","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुन","चैत्र"],At=["Baishakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],ge=["January","February","March","April","May","June","July","August","September","October","November","December"],me=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],fe=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],De=["०","१","२","३","४","५","६","७","८","९"],S3={light:{primary:"#3b82f6",background:"#ffffff",text:"#1f2937",border:"#e5e7eb",hover:"#f3f4f6",selected:"#3b82f6",today:"#dbeafe",disabled:"#d1d5db"},dark:{primary:"#60a5fa",background:"#1f2937",text:"#f9fafb",border:"#374151",hover:"#374151",selected:"#3b82f6",today:"#1e40af",disabled:"#6b7280"}},U=e=>e.toString().split("").map(t=>De[parseInt(t)]).join(""),vt=(e,t,n)=>{if(e==="BS")try{const a=n===11?new Y(t+1,0,1):new Y(t,n+1,1);return new Y(a.getTime()-1440*60*1e3).getDate()}catch{return 30}return new Date(t,n+1,0).getDate()},ye=(e,t,n)=>{if(e==="BS")try{return new Y(t,n,1).getDay()||0}catch{return 0}return new Date(t,n,1).getDay()},F=e=>{const t=new Date;if(e==="BS")try{const n=Y.fromEnglishDate(t.getFullYear(),t.getMonth(),t.getDate());return{year:n.getYear(),month:n.getMonth(),day:n.getDate()}}catch{return{year:2081,month:0,day:1}}return{year:t.getFullYear(),month:t.getMonth(),day:t.getDate()}},ct=(e,t,n,a,s)=>{if(e==="BS")try{const r=new Y(t,n,a),u=new Date(r.getEnglishYear(),r.getEnglishMonth(),r.getEnglishDate()).toISOString().split("T")[0];return{bs:`${t}-${String(n+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`,ad:u,formatted:{bs:`${s[n]} ${a}, ${t}`,ad:new Date(r.getEnglishYear(),r.getEnglishMonth(),r.getEnglishDate()).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}}}catch{const r=`${t}-${String(n+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`;return{bs:r,ad:r,formatted:{bs:`${s[n]} ${a}, ${t}`,ad:`${s[n]} ${a}, ${t}`}}}else{const r=new Date(t,n,a),o=r.toISOString().split("T")[0];try{const u=Y.fromEnglishDate(t,n,a),i=`${u.getYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`;return{ad:o,bs:i,formatted:{ad:r.toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),bs:`${At[u.getMonth()]} ${u.getDate()}, ${u.getYear()}`}}}catch{return{ad:o,bs:o,formatted:{ad:r.toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),bs:r.toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}}}}},p3=(e,t,n)=>{const a=new Date(e.year,e.month,e.day).getTime(),s=new Date(t.year,t.month,t.day).getTime(),r=new Date(n.year,n.month,n.day).getTime();return a>=s&&a<=r},Me=e=>{try{const[t,n,a]=e.split("-").map(Number);return!t||!n||!a?null:{year:t,month:n-1,day:a}}catch{return null}},nt=(e,t,n)=>{if(!t&&!n)return!1;const a=new Date(e.year,e.month,e.day).getTime();if(t){const s=Me(t);if(s){const r=new Date(s.year,s.month,s.day).getTime();if(a<r)return!0}}if(n){const s=Me(n);if(s){const r=new Date(s.year,s.month,s.day).getTime();if(a>r)return!0}}return!1},Se=(e="AD")=>{const t=w.useMemo(()=>F(e),[e]),[n,a]=w.useState(t.year),[s,r]=w.useState(t.month),[o,u]=w.useState(null),[i,h]=w.useState(null),[l,g]=w.useState(null);w.useEffect(()=>{a(t.year),r(t.month)},[t.year,t.month]);const m=w.useMemo(()=>{const k=vt(e,n,s),O=ye(e,n,s),p=[];for(let C=0;C<O;C++)p.push(null);for(let C=1;C<=k;C++)p.push(C);return p},[n,s,e]);return{currentYear:n,currentMonth:s,selectedDate:o,rangeStart:i,rangeEnd:l,today:t,calendarDays:m,setCurrentYear:a,setCurrentMonth:r,setSelectedDate:u,setRangeStart:h,setRangeEnd:g,navigateMonth:k=>{let p=s+k,C=n;for(;p>11;)p-=12,C+=1;for(;p<0;)p+=12,C-=1;r(p),a(C)},isToday:k=>n===t.year&&s===t.month&&k===t.day,isSelected:(k,O="single")=>O==="range"?!!(i&&i.year===n&&i.month===s&&i.day===k)||!!(l&&l.year===n&&l.month===s&&l.day===k):!!(o&&o.year===n&&o.month===s&&o.day===k),isInRange:k=>{if(!i||!l)return!1;const O=new Date(n,s,k).getTime(),p=new Date(i.year,i.month,i.day).getTime(),C=new Date(l.year,l.month,l.day).getTime();return O>=p&&O<=C}}},R=(e,t,n)=>{if(n==="BS")try{const a=new Y(e.year,e.month,e.day),s=new Date(a.getEnglishYear(),a.getEnglishMonth(),a.getEnglishDate());s.setDate(s.getDate()+t);const r=Y.fromEnglishDate(s.getFullYear(),s.getMonth(),s.getDate());return{year:r.getYear(),month:r.getMonth(),day:r.getDate()}}catch{return e}else{const a=new Date(e.year,e.month,e.day);return a.setDate(a.getDate()+t),{year:a.getFullYear(),month:a.getMonth(),day:a.getDate()}}},ht=(e,t,n)=>{if(n==="BS")try{let a=e.year,s=e.month+t;for(;s<0;)a-=1,s+=12;for(;s>=12;)a+=1,s-=12;const r=vt("BS",a,s),o=Math.min(e.day,r);return{year:a,month:s,day:o}}catch{return e}else{const a=new Date(e.year,e.month,e.day);return a.setMonth(a.getMonth()+t),{year:a.getFullYear(),month:a.getMonth(),day:a.getDate()}}},G=e=>({year:e.year,month:e.month,day:1}),b3=(e,t)=>{if(t==="BS")try{const a=new Y(e.year,e.month,e.day).getDay();return R(e,-a,"BS")}catch{return e}else{const n=new Date(e.year,e.month,e.day),a=n.getDay();return n.setDate(n.getDate()-a),{year:n.getFullYear(),month:n.getMonth(),day:n.getDate()}}},E3={TODAY:"today",YESTERDAY:"yesterday",THIS_WEEK:"thisWeek",LAST_7_DAYS:"last7days",LAST_30_DAYS:"last30days",THIS_MONTH:"thisMonth",LAST_MONTH:"lastMonth",LAST_3_MONTHS:"last3months",LAST_6_MONTHS:"last6months",LAST_180_DAYS:"last180days",LAST_9_MONTHS:"last9months",LAST_YEAR:"lastYear"},pe=(e,t)=>{const n=[{key:"today",label:"Today",getValue:s=>{const r=F(s);return{start:r,end:r}}},{key:"yesterday",label:"Yesterday",getValue:s=>{const r=F(s),o=R(r,-1,s);return{start:o,end:o}}},{key:"thisWeek",label:"This Week",getValue:s=>{const r=F(s);return{start:b3(r,s),end:r}}},{key:"last7days",label:"Last 7 Days",getValue:s=>{const r=F(s);return{start:R(r,-6,s),end:r}}},{key:"last30days",label:"Last 30 Days",getValue:s=>{const r=F(s);return{start:R(r,-29,s),end:r}}},{key:"thisMonth",label:"This Month",getValue:s=>{const r=F(s);return{start:G(r),end:r}}},{key:"lastMonth",label:"Last Month",getValue:s=>{const r=F(s),o=R(G(r),-1,s);return{start:G(o),end:o}}},{key:"last3months",label:"Last 3 Months",getValue:s=>{const r=F(s),o=ht(r,-2,s);return{start:G(o),end:r}}},{key:"last6months",label:"Last 6 Months",getValue:s=>{const r=F(s),o=ht(r,-5,s);return{start:G(o),end:r}}},{key:"last180days",label:"Last 180 Days",getValue:s=>{const r=F(s);return{start:R(r,-179,s),end:r}}},{key:"last9months",label:"Last 9 Months",getValue:s=>{const r=F(s),o=ht(r,-8,s);return{start:G(o),end:r}}},{key:"lastYear",label:"Last Year",getValue:s=>{const r=F(s),o=ht(r,-11,s);return{start:G(o),end:r}}}],a=e?n.filter(s=>e.includes(s.key)):n;return t?a.map(s=>({...s,label:t[s.key]||s.label})):a},w3=({currentYear:e,currentMonth:t,months:n,onYearChange:a,onMonthChange:s,onClose:r,showNepaliNumbers:o=!1,convertToNepaliNumber:u=h=>h.toString(),calendarType:i})=>{const[h,l]=w.useState(Math.floor(e/12)*12),g=i==="BS"?2e3:1944,m=i==="BS"?2100:2043;return c.jsx("div",{className:"bsac-picker-overlay",onClick:r,children:c.jsxs("div",{className:"bsac-picker-content",onClick:b=>b.stopPropagation(),children:[c.jsxs("div",{className:"bsac-picker-header",children:[c.jsx("h3",{children:"Select Month & Year"}),c.jsx("button",{className:"bsac-close-btn",onClick:r,children:"×"})]}),c.jsxs("div",{className:"bsac-picker-body",children:[c.jsxs("div",{className:"bsac-picker-section",children:[c.jsxs("div",{className:"bsac-picker-section-header",children:[c.jsx("label",{children:"Year"}),c.jsxs("div",{className:"bsac-year-nav",children:[c.jsx("button",{onClick:()=>l(Math.max(g,h-12)),disabled:h<=g,children:"«"}),c.jsxs("span",{children:[o?u(h):h," – ",o?u(h+11):h+11]}),c.jsx("button",{onClick:()=>l(Math.min(m-11,h+12)),disabled:h+11>=m,children:"»"})]})]}),c.jsx("div",{className:"bsac-year-grid",children:Array.from({length:12},(b,D)=>{const A=h+D;return A>m?null:c.jsx("button",{onClick:()=>a(A),className:A===e?"bsac-selected":"",children:o?u(A):A},A)})})]}),c.jsxs("div",{className:"bsac-picker-section",children:[c.jsx("label",{children:"Month"}),c.jsx("div",{className:"bsac-month-grid",children:n.map((b,D)=>c.jsx("button",{onClick:()=>{s(D),r()},className:D===t?"bsac-selected":"",children:b},D))})]})]})]})})},lt=({currentMonth:e,currentYear:t,months:n,onNavigateMonth:a,onYearChange:s,onMonthChange:r,disabled:o=!1,showNepaliNumbers:u=!1,convertToNepaliNumber:i,calendarType:h})=>{const[l,g]=w.useState(!1);return c.jsxs("div",{className:"bsac-header",children:[c.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(-12),disabled:o,"aria-label":"Previous year",children:"«"}),c.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(-1),disabled:o,"aria-label":"Previous month",children:"‹"}),c.jsxs("button",{className:"bsac-month-year-btn",onClick:()=>g(!0),disabled:o,children:[n[e]," ",u?i(t):t]}),c.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(1),disabled:o,"aria-label":"Next month",children:"›"}),c.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(12),disabled:o,"aria-label":"Next year",children:"»"}),l&&c.jsx(w3,{currentYear:t,currentMonth:e,months:n,onYearChange:s,onMonthChange:r,onClose:()=>g(!1),showNepaliNumbers:u,convertToNepaliNumber:i,calendarType:h})]})},dt=({calendarDays:e,days:t,onDateSelect:n,isSelected:a,isInRange:s,isToday:r,isDisabled:o,disabled:u=!1,showNepaliNumbers:i=!1,convertToNepaliNumber:h})=>c.jsxs("div",{className:"bsac-grid",children:[t.map(l=>c.jsx("div",{className:"bsac-day-header",children:l},l)),e.map((l,g)=>{const m=l?o?.(l)||u:!1,b=l?a(l):!1,D=l?s(l):!1,A=l?r(l):!1,v=["bsac-day",l?m?"bsac-day-disabled":b?"bsac-day-selected":D?"bsac-day-in-range":A?"bsac-day-today":"":"bsac-day-empty"].filter(Boolean).join(" ");return c.jsx("div",{className:v,onClick:()=>l&&!m&&n(l),children:l?i?h(l):l:""},g)})]}),gt=({presets:e,calendarType:t,onPresetSelect:n,activePreset:a,position:s="top"})=>{const r=o=>{const u=o.getValue(t);n(o,u)};return c.jsx("div",{className:`bsac-presets bsac-presets--${s}`,children:e.map(o=>c.jsx("button",{onClick:()=>r(o),className:`bsac-preset-btn${a===o.key?" bsac-preset-btn--active":""}`,children:o.label},o.key))})},be=({calendarType:e="AD",value:t,onChange:n,className:a="",showToday:s=!0,disabled:r=!1,outputFormat:o="both",onDateSelect:u,mode:i="single",onRangeSelect:h,showRangePresets:l=!1,rangePresetsPosition:g="top",predefinedRanges:m,presetKeys:b,presetLabels:D,onPresetSelect:A,renderPresets:v,showNepaliMonths:k=!1,showNepaliDays:O=!1,showNepaliNumbers:p=!1,theme:C="light",colors:J,minDate:z,maxDate:q})=>{const{currentYear:H,currentMonth:I,rangeStart:f,rangeEnd:T,calendarDays:B,setSelectedDate:E,setRangeStart:N,setRangeEnd:P,setCurrentYear:W,setCurrentMonth:K,navigateMonth:L,isToday:mt,isSelected:ft,isInRange:Dt}=Se(e),[yt,Tt]=w.useState(),Mt=m||pe(b,D),St=(d,y)=>({start:ct(e,d.year,d.month,d.day,X),end:ct(e,y.year,y.month,y.day,X)}),X=e==="BS"&&k?de:e==="BS"?At:ge,pt=e==="BS"&&O?me:fe,bt=(d,y)=>{y.start&&y.end&&(N(y.start),P(y.end),W(y.start.year),K(y.start.month),Tt(d.key),A?.(d,y),h?.(St(y.start,y.end)))},Y3=(d,y)=>{N(d),P(y),Tt(void 0),h?.(St(d,y))},Et=d=>{if(r)return;const y={year:H,month:I,day:d};if(nt(y,z,q))return;if(i==="range"){if(Tt(void 0),!f||f&&T)N(y),P(null);else{const et=new Date(f.year,f.month,f.day).getTime();new Date(y.year,y.month,y.day).getTime()<et?(N(y),P(f),h?.(St(y,f))):(P(y),h?.(St(f,y)))}return}E(y);const tt=ct(e,H,I,d,X);if(u?.(tt),n){let et;switch(o){case"iso":et=tt.ad;break;case"object":et=JSON.stringify(tt);break;default:et=JSON.stringify(tt);break}n(et)}},k3=d=>{if(!r){switch(d.key){case"ArrowLeft":L(-1);break;case"ArrowRight":L(1);break;case"ArrowUp":L(-12);break;case"ArrowDown":L(12);break;case"PageUp":d.shiftKey?L(-12):L(-1);break;case"PageDown":d.shiftKey?L(12):L(1);break;default:return}d.preventDefault()}},C3={...J?Object.entries(J).reduce((d,[y,tt])=>(d[`--calendar-${y}`]=tt,d),{}):{}};return c.jsxs("div",{className:`bsac-calendar ${a}`,style:C3,"data-theme":C,onKeyDown:k3,tabIndex:0,role:"application","aria-label":"Calendar",children:[i==="range"&&v&&c.jsxs("div",{style:{display:"flex",gap:"16px"},children:[c.jsx("div",{children:v({onRangeChange:Y3})}),c.jsxs("div",{style:{flex:1},children:[c.jsx(lt,{currentMonth:I,currentYear:H,months:X,onNavigateMonth:L,onYearChange:W,onMonthChange:K,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U,calendarType:e}),c.jsx(dt,{calendarDays:B,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>nt({year:H,month:I,day:d},z,q),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U})]})]}),i==="range"&&l&&g==="left"&&!v&&c.jsxs("div",{style:{display:"flex",gap:"16px",flexWrap:"nowrap"},children:[c.jsx(gt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"left"}),c.jsxs("div",{children:[c.jsx(lt,{currentMonth:I,currentYear:H,months:X,onNavigateMonth:L,onYearChange:W,onMonthChange:K,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U,calendarType:e}),c.jsx(dt,{calendarDays:B,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>nt({year:H,month:I,day:d},z,q),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U})]})]}),i==="range"&&l&&g==="right"&&!v&&c.jsxs("div",{style:{display:"flex",gap:"16px",flexWrap:"nowrap"},children:[c.jsxs("div",{children:[c.jsx(lt,{currentMonth:I,currentYear:H,months:X,onNavigateMonth:L,onYearChange:W,onMonthChange:K,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U,calendarType:e}),c.jsx(dt,{calendarDays:B,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>nt({year:H,month:I,day:d},z,q),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U})]}),c.jsx(gt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"right"})]}),(!i||i==="single"||!l&&!v||g==="top"||g==="bottom")&&c.jsxs(c.Fragment,{children:[i==="range"&&l&&g==="top"&&c.jsx(gt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"top"}),c.jsx(lt,{currentMonth:I,currentYear:H,months:X,onNavigateMonth:L,onYearChange:W,onMonthChange:K,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U,calendarType:e}),c.jsx(dt,{calendarDays:B,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>nt({year:H,month:I,day:d},z,q),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:U}),i==="range"&&l&&g==="bottom"&&c.jsx(gt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"bottom"})]})]})},Ee=({placeholder:e="Select date",format:t="YYYY-MM-DD",onDateSelect:n,inputClassName:a="",popupClassName:s="",style:r,inputStyle:o,icon:u,showIcon:i=!0,calendarType:h="AD",...l})=>{const[g,m]=w.useState(!1),[b,D]=w.useState(null),[A,v]=w.useState(""),k=w.useRef(null),O=w.useRef(null),[p,C]=w.useState({visibility:"hidden"}),J=()=>{if(!k.current)return;const f=k.current.getBoundingClientRect(),T=O.current?.offsetHeight||360,B=O.current?.offsetWidth||280,E=window.innerHeight-f.bottom,N=window.innerWidth-f.left,P=E>=T+8?f.bottom+8:Math.max(8,f.top-T-8),W=N>=B?f.left:Math.max(8,f.right-B);C({top:P,left:W,visibility:"visible"})};w.useEffect(()=>(g&&(requestAnimationFrame(J),window.addEventListener("scroll",J,!0),window.addEventListener("resize",J)),()=>{window.removeEventListener("scroll",J,!0),window.removeEventListener("resize",J)}),[g]),w.useEffect(()=>{const f=T=>{k.current&&!k.current.contains(T.target)&&m(!1)};return g&&document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[g]);const z=f=>{D(f),v(h==="BS"?f.bs:f.ad),m(!1),n?.(f)},q=f=>{const T=f.target.value;if(T===""){v("");return}if((f.target.selectionStart||0)===T.length&&T.length>A.length){const E=T.replace(/[^0-9]/g,"");let N=E;E.length>4&&E.length<=6?N=E.slice(0,4)+"-"+E.slice(4):E.length>6&&(N=E.slice(0,4)+"-"+E.slice(4,6)+"-"+E.slice(6,8)),v(N)}else{const E=T.replace(/[^0-9-]/g,"");E.length<=10&&v(E)}},H=()=>{const f=A.trim();if(!f){D(null);return}const T=f.match(/^(\d{4})-(\d{2})-(\d{2})$/);if(T){const[,B,E,N]=T,P=parseInt(E),W=parseInt(N);if(P<1||P>12||W<1||W>32){v(b?h==="BS"?b.bs:b.ad:"");return}const K={bs:h==="BS"?`${B}-${E}-${N}`:"",ad:h==="AD"?`${B}-${E}-${N}`:"",formatted:{bs:h==="BS"?f:"",ad:h==="AD"?f:""}};D(K),n?.(K)}else f.length<10&&v(b?h==="BS"?b.bs:b.ad:"")},I=f=>{f.key==="Enter"?(H(),m(!1)):f.key==="Escape"&&m(!1)};return c.jsxs("div",{className:"bsac-datepicker",ref:k,style:r,children:[c.jsx("input",{type:"text",value:A,placeholder:e,onChange:q,onBlur:H,onKeyDown:I,className:`bsac-input ${a}`,style:o,"aria-label":"Date picker input","aria-haspopup":"dialog","aria-expanded":g,maxLength:10}),c.jsx("button",{type:"button",className:"bsac-icon-btn",onClick:()=>m(!g),"aria-label":"Toggle calendar",style:{display:i?"flex":"none"},children:u||c.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[c.jsx("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),c.jsx("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),c.jsx("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),c.jsx("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})}),g&&c.jsx("div",{ref:O,className:`bsac-popup ${s}`,style:p,children:c.jsx(be,{calendarType:h,onDateSelect:z,...l})})]})};M.Calendar=be,M.CalendarInput=Ee,M.DEFAULT_COLORS=S3,M.DatePicker=Ee,M.ENGLISH_DAYS=fe,M.ENGLISH_MONTHS_AD=ge,M.ENGLISH_MONTHS_BS=At,M.NEPALI_DAYS=me,M.NEPALI_DIGITS=De,M.NEPALI_MONTHS=de,M.PRESET_KEYS=E3,M.convertToNepaliNumber=U,M.createDateOutput=ct,M.createPredefinedRanges=pe,M.getDaysInMonth=vt,M.getFirstDayOfMonth=ye,M.getTodayDate=F,M.isDateInRange=p3,M.useCalendar=Se,Object.defineProperty(M,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
(function(S,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react"],h):(S=typeof globalThis<"u"?globalThis:S||self,h(S.BSADCalendar={},S.ReactJSXRuntime,S.React))})(this,(function(S,h,k){"use strict";const X=[1943,4,14],Ft=[31,28,31,30,31,30,31,31,30,31,30,31],we=[31,29,31,30,31,30,31,31,30,31,30,31],_=[[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,31,32,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,31,32,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,31,29,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,31,32,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,30],365],[[31,32,31,32,31,30,30,30,29,30,29,31],366],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[30,32,31,32,31,30,30,30,29,30,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,29,31],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365],[[31,32,31,32,31,30,30,30,29,29,30,31],366],[[31,31,31,32,31,31,29,30,30,29,30,30],365],[[31,31,32,31,31,31,30,29,30,29,30,30],365],[[31,31,32,32,31,30,30,29,30,29,30,30],365]];let Nt=class extends Error{constructor(t){super(t),this.name="DateOutOfRangeError"}};const Tt=()=>X[0]+1,Ot=()=>X[0]+_.length-1,Ht=()=>2e3,It=()=>2e3+_.length-1,nt=e=>e%400===0||e%4===0&&e%100!==0,wt=e=>nt(e)?we:Ft,Ye=(e,t,n)=>!(e<Tt()||e>Ot()||t<1||t>12||n<1||n>wt(e)[t-1]),Bt=(e,t,n)=>{let a=e*365+n;for(let s=0;s<t-1;s++)a+=Ft[s];return t<=2&&(e-=1),a+=Math.floor(e/4)-Math.floor(e/100)+Math.floor(e/400),a};function ke(e,t,n){const a=t+1;if(!Ye(e,a,n))throw new Nt("Date out of range");let s=2e3,r=1,o=1,u=Math.abs(Bt(e,a,n)-Bt(...X)),i=0;for(;u>=_[i][1];)u-=_[i][1],s+=1,i+=1;let l=0;for(;u>=_[i][0][l];)u-=_[i][0][l],r+=1,l+=1;return o+=u,[s,r-1,o]}const Ce=(e,t,n)=>!(e<Ht()||e>It()||t<1||t>12||n<1||n>_[e-2e3][0][t-1]),Ae=(e,t,n)=>{let a=n-1;const s=e-2e3;for(let r=0;r<t-1;r++)a+=_[s][0][r];for(let r=0;r<s;r++)a+=_[r][1];return a},ve=(e,t,n)=>{const a=t+1;if(!Ce(e,a,n))throw new Nt("Date out of range");let[s,r,o]=[X[0],1,1];const u=wt(s).slice(0,X[1]-1).reduce((f,g)=>f+g,0)+X[2]-1;let i=Math.abs(Ae(e,a,n)+u);for(;i>=366&&nt(s)||i>=365&&!nt(s);)i-=nt(s)?366:365,s+=1;const l=wt(s);let c=0;for(;i>=l[c];)i-=l[c],r+=1,c+=1;return o+=i,[s,r-1,o]},V={enMinYear:Tt,enMaxYear:Ot,npMinYear:Ht,npMaxYear:It,englishToNepali:ke,nepaliToEnglish:ve},Lt="en",L="ne",xt=207e5,_t=198e5,$e=5049018e5,Fe=new Date(1986,0,1,0,15),st=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],Yt=["Bai","Jes","Asa","Shr","Bhd","Asw","Kar","Man","Pou","Mag","Fal","Cha"],jt=["बैशाख","जेठ","असार","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुण","चैत्र"],Ne=["बै","जे","अ","श्रा","भा","आ","का","मं","पौ","मा","फा","चै"],kt=["January","February","March","April","May","June","July","August","September","October","November","December"],Ct=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Te=["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जुन","जुलाई","अगस्ट","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर"],Oe=["जन","फेब","मार","अप्रि","मे","जुन","जुला","अग","सेप","अक्टो","नोभे","डिसे"],Pt=["०","१","२","३","४","५","६","७","८","९"],Z=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],at=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Wt=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],Ut=["आइतबार","सोमबार","मंगलबार","बुधबार","बिहिबार","शुक्रबार","शनिबार"],He=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DD?|ddd?d?|do?|YYYY|YY|y{2,4}|yo?|a|A|hh?|HH?|mm?|ss?|SSS|x|X|.)/g,Ie=e=>{const t=e.getTime(),n=t<$e?_t:xt,a=new Date(t+n),s=a.getUTCFullYear(),r=a.getUTCMonth(),o=a.getUTCDate(),u=a.getUTCHours(),i=a.getUTCMinutes(),l=a.getUTCSeconds(),c=a.getUTCMilliseconds(),f=a.getUTCDay();return{year:s,month0:r,day:o,hour:u,minute:i,second:l,ms:c,weekDay:f}},Jt=(e,t,n,a,s,r,o)=>{const u=new Date(e,t,n,a,s,r,o);let i=u<Fe?_t:xt;const l=-1*u.getTimezoneOffset()*60*1e3;return new Date(u.getTime()-i+l)},rt=e=>{const t=e.match(He);return t?t.map(n=>n.startsWith("[")&&n.endsWith("]")?n.slice(1,-1):n):[]},j=e=>{if(e.length===0)return new RegExp("");let t=[...e];if(t=t.sort((a,s)=>s.length-a.length),t[0]==="")return new RegExp("");const n=`(${t.join("|")})`;return new RegExp(n)},T=e=>e.toString().padStart(2,"0"),Vt=e=>e.toString().padStart(3,"0"),Be=e=>e.split("").map(t=>Pt[t.charCodeAt(0)-48]).join(""),b=(e,t)=>{const n=typeof e=="string"?e:String(e);return t!==L?n:Be(n)},Le=(e,t)=>b(e.getYear(),t).substring(2),xe=(e,t)=>b(e.getYear(),t),_e=(e,t)=>b(e.getEnglishYear(),t).substring(2),je=(e,t)=>b(e.getEnglishYear(),t),Pe=(e,t)=>b(e.getMonth()+1,t),We=(e,t)=>b(T(e.getMonth()+1),t),Ue=(e,t)=>t===L?Ne[e.getMonth()]:Yt[e.getMonth()],Je=(e,t)=>t===L?jt[e.getMonth()]:st[e.getMonth()],Ve=(e,t)=>b(e.getEnglishMonth()+1,t),Ke=(e,t)=>b(T(e.getEnglishMonth()+1),t),Ge=(e,t)=>t===L?Oe[e.getEnglishMonth()]:Ct[e.getEnglishMonth()],ze=(e,t)=>t===L?Te[e.getEnglishMonth()]:kt[e.getEnglishMonth()],qe=(e,t)=>b(e.getDate(),t),Xe=(e,t)=>b(T(e.getDate()),t),Ze=(e,t)=>b(e.getEnglishDate(),t),Qe=(e,t)=>b(T(e.getEnglishDate()),t),Kt=(e,t)=>b(e.getDay(),t),ot=(e,t)=>t===L?Wt[e.getDay()]:Z[e.getDay()],Gt=(e,t)=>t===L?Ut[e.getDay()]:at[e.getDay()],zt=(e,t)=>b(e.getHours(),t),qt=(e,t)=>b(T(e.getHours()),t),Xt=(e,t)=>{const n=e.getHours(),a=n>12?n-12:n;return b(a,t)},Zt=(e,t)=>{const n=e.getHours(),a=n>12?n-12:n;return b(T(a),t)},Qt=(e,t)=>b(e.getMinutes(),t),Rt=(e,t)=>b(T(e.getMinutes()),t),te=(e,t)=>b(e.getSeconds(),t),ee=(e,t)=>b(T(e.getSeconds()),t),ne=(e,t)=>b(Vt(e.getMilliseconds()),t),se=(e,t)=>t===L?e.getHours()>=12?"पिम":"एम":e.getHours()>=12?"PM":"AM",ae=(e,t)=>t===L?e.getHours()>=12?"पिम":"एम":e.getHours()>=12?"pm":"am",re={YY:Le,YYYY:xe,M:Pe,MM:We,MMM:Ue,MMMM:Je,D:qe,DD:Xe,d:Kt,dd:ot,ddd:ot,dddd:Gt,H:zt,HH:qt,h:Xt,hh:Zt,m:Qt,mm:Rt,s:te,ss:ee,SSS:ne,A:se,a:ae},oe=(e,t,n)=>{const a=rt(t),s=r=>r in re?re[r](e,n):r;return a.map(s).join("")},Re=(e,t)=>oe(e,t,Lt),t3=(e,t)=>oe(e,t,L),e3=e=>{const t=T(e.getYear()),n=T(e.getMonth()+1),a=T(e.getDate()),s=T(e.getHours()),r=T(e.getMinutes()),o=T(e.getSeconds()),u=e.getMilliseconds(),i=u===0?"":`.${Vt(u)}`;return`${t}-${n}-${a} ${s}:${r}:${o}${i}`},ie={YY:_e,YYYY:je,M:Ve,MM:Ke,MMM:Ge,MMMM:ze,D:Ze,DD:Qe,d:Kt,dd:ot,ddd:ot,dddd:Gt,H:zt,HH:qt,h:Xt,hh:Zt,m:Qt,mm:Rt,s:te,ss:ee,SSS:ne,A:se,a:ae},ue=(e,t,n)=>{const a=rt(t),s=r=>r in ie?ie[r](e,n):r;return a.map(s).join("")},n3=(e,t)=>ue(e,t,Lt),s3=(e,t)=>ue(e,t,L);function a3(e){const t=e.split(/[-./]/,3),[n,a=1,s=1]=t.map(r=>{const o=parseInt(r,10);if(Number.isNaN(o))throw new Error("Invalid date");return o});return[n,a-1,s]}function r3(e){if(!e)return[0,0,0,0];const[t,n="0"]=e.split(".",2),a=t.split(":",3),[s,r=0,o=0]=a.map(i=>{const l=parseInt(i,10);if(Number.isNaN(l))throw new Error("Invalid time");return l});let u=parseInt(n,10);return Number.isNaN(u)&&(u=0),[s,r,o,u]}function o3(e){const[t,n]=e.split(" ",2),[a,s,r]=a3(t),[o,u,i,l]=r3(n);return[a,s,r,o,u,i,l]}const ce={YY:/(\d\d)/,YYYY:/(\d\d\d\d)/,M:/(1[0-2]|0[1-9]|[1-9])/,MM:/(1[0-2]|0[1-9]|[1-9])/,D:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,DD:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,H:/(2[0-3]|[0-1]\d|\d)/,HH:/(2[0-3]|[0-1]\d|\d)/,hh:/(1[0-2]|0[1-9]|[1-9])/,mm:/([0-5]\d|\d)/,ss:/([0-5]\d|\d)/,SSS:/(\d\d\d)/,A:/(AM|PM)/,a:/(am|pm)/,MMMM:j(st),MMM:j(Yt),dddd:j(at),ddd:j(Z),dd:j(Z),d:/([0-6])/};function i3(e){const t=[],n=[];for(const s of e)s in ce?(t.push(s),n.push(ce[s].source)):n.push(s.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"));const a=n.join("");return{dateTokens:t,regex:new RegExp(`^${a}$`)}}function u3(e,t){let[n,a,s,r,o,u,i,l]=[0,1,1,0,0,0,0,0],c=!1,f=!1;for(let g=0;g<e.length;g++){const C=e[g],m=parseInt(t[g+1]);switch(C){case"YYYY":n=m;break;case"YY":n=2e3+parseInt(t[g]);break;case"MM":case"M":a=m;break;case"MMMM":a=st.indexOf(t[g+1])+1;break;case"MMM":a=Yt.indexOf(t[g+1])+1;break;case"DD":case"D":s=m;break;case"HH":case"H":r=m;break;case"hh":case"h":o=m,f=!0;break;case"mm":case"m":u=m;break;case"ss":case"s":i=m;break;case"SSS":l=m;break;case"A":case"a":c=t[g+1].toLowerCase()==="pm"}}return f&&(r=o+(c?12:0)),{year:n,month0:a-1,day:s,hour:r,minute:u,second:i,ms:l}}function he(e,t){const n=rt(t),{dateTokens:a,regex:s}=i3(n),r=RegExp(s).exec(e);if(!r)throw new Error("Invalid date format");const{year:o,month0:u,day:i,hour:l,minute:c,second:f,ms:g}=u3(a,r);return[o,u,i,l,c,f,g]}const le={YY:/(\d\d)/,YYYY:/(\d\d\d\d)/,M:/(1[0-2]|0[1-9]|[1-9])/,MM:/(1[0-2]|0[1-9]|[1-9])/,D:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,DD:/(3[0-2]|[1-2]\d|0[1-9]|[1-9]| [1-9])/,H:/(2[0-3]|[0-1]\d|\d)/,HH:/(2[0-3]|[0-1]\d|\d)/,hh:/(1[0-2]|0[1-9]|[1-9])/,mm:/([0-5]\d|\d)/,ss:/([0-5]\d|\d)/,SSS:/(\d\d\d)/,A:/(AM|PM)/,a:/(am|pm)/,MMMM:j(kt),MMM:j(Ct),dddd:j(at),ddd:j(Z),dd:j(Z),d:/([0-6])/};function c3(e){const t=[],n=[];for(const s of e)s in le?(t.push(s),n.push(le[s].source)):n.push(s.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"));const a=n.join("");return{dateTokens:t,regex:new RegExp(`^${a}$`)}}function h3(e,t){let[n,a,s,r,o,u,i,l]=[0,1,1,0,0,0,0,0],c=!1,f=!1;for(let g=0;g<e.length;g++){const C=e[g],m=parseInt(t[g+1]);switch(C){case"YYYY":n=m;break;case"YY":n=2e3+parseInt(t[g]);break;case"MM":case"M":a=m;break;case"MMMM":a=kt.indexOf(t[g+1])+1;break;case"MMM":a=Ct.indexOf(t[g+1])+1;break;case"DD":case"D":s=m;break;case"HH":case"H":r=m;break;case"hh":case"h":o=m,f=!0;break;case"mm":case"m":u=m;break;case"ss":case"s":i=m;break;case"SSS":l=m;break;case"A":case"a":c=t[g+1].toLowerCase()==="pm"}}return f&&(r=o+(c?12:0)),{year:n,month0:a-1,day:s,hour:r,minute:u,second:i,ms:l}}function l3(e,t){const n=rt(t),{dateTokens:a,regex:s}=c3(n),r=RegExp(s).exec(e);if(!r)throw new Error("Invalid date format");const{year:o,month0:u,day:i,hour:l,minute:c,second:f,ms:g}=h3(a,r);return[o,u,i,l,c,f,g]}function d3(e){const t={एम:"AM",पिम:"PM"};jt.forEach((a,s)=>t[a]=st[s]),Ut.forEach((a,s)=>t[a]=at[s]),Wt.forEach((a,s)=>t[a]=Z[s]),Pt.forEach((a,s)=>t[a]=String(s));const n=new RegExp(Object.keys(t).join("|"),"g");return e.replace(n,a=>t[a])}function g3(e,t){const n=d3(e);return he(n,t)}class it extends Error{constructor(t){super(t),this.name="ValidationError"}}const m3=e=>{if(e<0||e>23)throw new it("Hour should be in the range 0-23")},f3=e=>{if(e<0||e>59)throw new it("Minute should be in the range 0-59")},D3=e=>{if(e<0||e>59)throw new it("Second should be in the range 0-59")},y3=e=>{if(e<0||e>999)throw new it("Millisecond should be in the range 0-999")},M3=(e,t,n,a)=>{m3(e),f3(t),D3(n),y3(a)};class E{timestamp;year;yearEn;month;monthEn;day;dayEn;hour;minute;weekDay;constructor(...t){if(t.length===0)this.initFromCurrentDate();else if(t.length===1&&t[0]instanceof Date)this.initFromEnglishDate(t[0]);else if(t.length===1&&t[0]instanceof E)this.initFromNepaliDate(t[0]);else if(t.length===1&&typeof t[0]=="string")this.parseFromString(t[0]);else if(t.length===1&&typeof t[0]=="number")this.initFromTimestamp(t[0]);else if(t.length===2&&typeof t[0]=="string"&&typeof t[1]=="string")this.parseFromStringWithFormat(t[0],t[1]);else if(t.length>=2&&t.length<=8&&t.every(n=>typeof n=="number"))this.initFromComponents(t);else throw new Error("Invalid date argument")}initFromCurrentDate(){this._setDateObject(new Date)}initFromEnglishDate(t){this._setDateObject(t)}initFromNepaliDate(t){this.set(t.year,t.month,t.day,t.hour,t.minute,t.getSeconds(),t.getMilliseconds())}parseFromString(t){const n=o3(t);this.set(n[0],n[1],n[2],n[3],n[4],n[5],n[6])}initFromTimestamp(t){this._setDateObject(new Date(t))}parseFromStringWithFormat(t,n){const a=he(t,n);this.set(a[0],a[1],a[2],a[3],a[4],a[5],a[6])}initFromComponents(t){this.set(t[0],t[1],t[2]??1,t[3]??0,t[4]??0,t[5]??0,t[6]??0)}_setDateObject(t,n=!0){this.timestamp=t;const{year:a,month0:s,day:r,hour:o,minute:u,weekDay:i}=Ie(t);if(this.yearEn=a,this.monthEn=s,this.dayEn=r,this.hour=o,this.minute=u,this.weekDay=i,n){const[l,c,f]=V.englishToNepali(a,s,r);this.year=l,this.month=c,this.day=f}}getDateObject(){return this.timestamp}getYear(){return this.year}getEnglishYear(){return this.yearEn}getMonth(){return this.month}getEnglishMonth(){return this.monthEn}getDate(){return this.day}getEnglishDate(){return this.dayEn}getDay(){return this.weekDay}getHours(){return this.hour}getMinutes(){return this.minute}getSeconds(){return this.timestamp.getSeconds()}getMilliseconds(){return this.timestamp.getMilliseconds()}getTime(){return this.timestamp.getTime()}setYear(t){this.set(t,this.month,this.day,this.hour,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setMonth(t){this.set(this.year,t,this.day,this.hour,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setDate(t){this.set(this.year,this.month,t,this.hour,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setHours(t){this.set(this.year,this.month,this.day,t,this.minute,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setMinutes(t){this.set(this.year,this.month,this.day,this.hour,t,this.timestamp.getSeconds(),this.timestamp.getMilliseconds())}setSeconds(t){this.set(this.year,this.month,this.day,this.hour,this.minute,t,this.timestamp.getMilliseconds())}setMilliseconds(t){this.set(this.year,this.month,this.day,this.hour,this.minute,this.timestamp.getSeconds(),t)}setTime(t){this._setDateObject(new Date(t))}set(t,n,a,s,r,o,u){M3(s,r,o,u);const[i,l,c]=V.nepaliToEnglish(t,n,a);this.year=t,this.month=n,this.day=a,this._setDateObject(Jt(i,l,c,s,r,o,u),!1)}setDateObject(t){this._setDateObject(t,!0)}format(t){return Re(this,t)}formatNepali(t){return t3(this,t)}toString(){return e3(this)}formatEnglishDate(t){return n3(this,t)}formatEnglishDateInNepali(t){return s3(this,t)}static fromEnglishDate(t,n,a,s=0,r=0,o=0,u=0){const i=Jt(t,n,a,s,r,o,u);return new E(i)}static parseNepaliFormat(t,n){const[a,s,r,o,u,i,l]=g3(t,n);return new E(a,s,r,o,u,i,l)}static parseEnglishDate(t,n){const[a,s,r,o,u,i,l]=l3(t,n);return E.fromEnglishDate(a,s,r,o,u,i,l)}static getDaysOfMonth(t,n){if(t<V.npMinYear()||t>V.npMaxYear())throw new Error("Year out of range");if(n<0||n>11)throw new Error("Month out of range");return _[t-V.npMinYear()][0][n]}static minSupportedDate(){return E.fromEnglishDate(V.enMinYear(),0,1).getDateObject()}static maxSupportedDate(){return E.fromEnglishDate(V.enMaxYear(),11,31).getDateObject()}static minSupportedNepaliDate(){return new E(V.npMinYear(),0,1)}static maxSupportedNepaliDate(){const t=V.npMaxYear();return new E(t,11,this.getDaysOfMonth(t,11))}static minimum(){return console.warn("`NepaliDate.minimum()` is deprecated and will be removed in a future version. Please use `NepaliDate.minSupportedDate()` instead."),this.minSupportedDate()}static maximum(){return console.warn("`NepaliDate.maximum()` is deprecated and will be removed in a future version. Please use `NepaliDate.maxSupportedDate()` instead."),this.maxSupportedDate()}}const de=["बैशाख","जेठ","आषाढ","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुन","चैत्र"],At=["Baishakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],ge=["January","February","March","April","May","June","July","August","September","October","November","December"],me=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],fe=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],De=["०","१","२","३","४","५","६","७","८","९"],S3={light:{primary:"#3b82f6",background:"#ffffff",text:"#1f2937",border:"#e5e7eb",hover:"#f3f4f6",selected:"#3b82f6",today:"#dbeafe",disabled:"#d1d5db"},dark:{primary:"#60a5fa",background:"#1f2937",text:"#f9fafb",border:"#374151",hover:"#374151",selected:"#3b82f6",today:"#1e40af",disabled:"#6b7280"}},K=e=>e.toString().split("").map(t=>De[parseInt(t)]).join(""),vt=(e,t,n)=>{if(e==="BS")try{const a=n===11?new E(t+1,0,1):new E(t,n+1,1);return new E(a.getTime()-1440*60*1e3).getDate()}catch{return 30}return new Date(t,n+1,0).getDate()},ye=(e,t,n)=>{if(e==="BS")try{return new E(t,n,1).getDay()||0}catch{return 0}return new Date(t,n,1).getDay()},O=e=>{const t=new Date;if(e==="BS")try{const n=E.fromEnglishDate(t.getFullYear(),t.getMonth(),t.getDate());return{year:n.getYear(),month:n.getMonth(),day:n.getDate()}}catch{return{year:2081,month:0,day:1}}return{year:t.getFullYear(),month:t.getMonth(),day:t.getDate()}},ut=(e,t,n,a,s)=>{if(e==="BS")try{const r=new E(t,n,a),u=new Date(r.getEnglishYear(),r.getEnglishMonth(),r.getEnglishDate()).toISOString().split("T")[0];return{bs:`${t}-${String(n+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`,ad:u,formatted:{bs:`${s[n]} ${a}, ${t}`,ad:new Date(r.getEnglishYear(),r.getEnglishMonth(),r.getEnglishDate()).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}}}catch{const r=`${t}-${String(n+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`;return{bs:r,ad:r,formatted:{bs:`${s[n]} ${a}, ${t}`,ad:`${s[n]} ${a}, ${t}`}}}else{const r=new Date(t,n,a),o=r.toISOString().split("T")[0];try{const u=E.fromEnglishDate(t,n,a),i=`${u.getYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`;return{ad:o,bs:i,formatted:{ad:r.toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),bs:`${At[u.getMonth()]} ${u.getDate()}, ${u.getYear()}`}}}catch{return{ad:o,bs:o,formatted:{ad:r.toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),bs:r.toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}}}}},p3=(e,t,n)=>{const a=new Date(e.year,e.month,e.day).getTime(),s=new Date(t.year,t.month,t.day).getTime(),r=new Date(n.year,n.month,n.day).getTime();return a>=s&&a<=r},Me=e=>{try{const[t,n,a]=e.split("-").map(Number);return!t||!n||!a?null:{year:t,month:n-1,day:a}}catch{return null}},et=(e,t,n)=>{if(!t&&!n)return!1;const a=new Date(e.year,e.month,e.day).getTime();if(t){const s=Me(t);if(s){const r=new Date(s.year,s.month,s.day).getTime();if(a<r)return!0}}if(n){const s=Me(n);if(s){const r=new Date(s.year,s.month,s.day).getTime();if(a>r)return!0}}return!1},Se=(e="AD")=>{const t=k.useMemo(()=>O(e),[e]),[n,a]=k.useState(t.year),[s,r]=k.useState(t.month),[o,u]=k.useState(null),[i,l]=k.useState(null),[c,f]=k.useState(null);k.useEffect(()=>{a(t.year),r(t.month)},[t.year,t.month]);const g=k.useMemo(()=>{const w=vt(e,n,s),$=ye(e,n,s),p=[];for(let A=0;A<$;A++)p.push(null);for(let A=1;A<=w;A++)p.push(A);return p},[n,s,e]);return{currentYear:n,currentMonth:s,selectedDate:o,rangeStart:i,rangeEnd:c,today:t,calendarDays:g,setCurrentYear:a,setCurrentMonth:r,setSelectedDate:u,setRangeStart:l,setRangeEnd:f,navigateMonth:w=>{let p=s+w,A=n;for(;p>11;)p-=12,A+=1;for(;p<0;)p+=12,A-=1;r(p),a(A)},isToday:w=>n===t.year&&s===t.month&&w===t.day,isSelected:(w,$="single")=>$==="range"?!!(i&&i.year===n&&i.month===s&&i.day===w)||!!(c&&c.year===n&&c.month===s&&c.day===w):!!(o&&o.year===n&&o.month===s&&o.day===w),isInRange:w=>{if(!i||!c)return!1;const $=new Date(n,s,w).getTime(),p=new Date(i.year,i.month,i.day).getTime(),A=new Date(c.year,c.month,c.day).getTime();return $>=p&&$<=A}}},Q=(e,t,n)=>{if(n==="BS")try{const a=new E(e.year,e.month,e.day),s=new Date(a.getEnglishYear(),a.getEnglishMonth(),a.getEnglishDate());s.setDate(s.getDate()+t);const r=E.fromEnglishDate(s.getFullYear(),s.getMonth(),s.getDate());return{year:r.getYear(),month:r.getMonth(),day:r.getDate()}}catch{return e}else{const a=new Date(e.year,e.month,e.day);return a.setDate(a.getDate()+t),{year:a.getFullYear(),month:a.getMonth(),day:a.getDate()}}},ct=(e,t,n)=>{if(n==="BS")try{let a=e.year,s=e.month+t;for(;s<0;)a-=1,s+=12;for(;s>=12;)a+=1,s-=12;const r=vt("BS",a,s),o=Math.min(e.day,r);return{year:a,month:s,day:o}}catch{return e}else{const a=new Date(e.year,e.month,e.day);return a.setMonth(a.getMonth()+t),{year:a.getFullYear(),month:a.getMonth(),day:a.getDate()}}},G=e=>({year:e.year,month:e.month,day:1}),b3=(e,t)=>{if(t==="BS")try{const a=new E(e.year,e.month,e.day).getDay();return Q(e,-a,"BS")}catch{return e}else{const n=new Date(e.year,e.month,e.day),a=n.getDay();return n.setDate(n.getDate()-a),{year:n.getFullYear(),month:n.getMonth(),day:n.getDate()}}},E3={TODAY:"today",YESTERDAY:"yesterday",THIS_WEEK:"thisWeek",LAST_7_DAYS:"last7days",LAST_30_DAYS:"last30days",THIS_MONTH:"thisMonth",LAST_MONTH:"lastMonth",LAST_3_MONTHS:"last3months",LAST_6_MONTHS:"last6months",LAST_180_DAYS:"last180days",LAST_9_MONTHS:"last9months",LAST_YEAR:"lastYear"},pe=(e,t)=>{const n=[{key:"today",label:"Today",getValue:s=>{const r=O(s);return{start:r,end:r}}},{key:"yesterday",label:"Yesterday",getValue:s=>{const r=O(s),o=Q(r,-1,s);return{start:o,end:o}}},{key:"thisWeek",label:"This Week",getValue:s=>{const r=O(s);return{start:b3(r,s),end:r}}},{key:"last7days",label:"Last 7 Days",getValue:s=>{const r=O(s);return{start:Q(r,-6,s),end:r}}},{key:"last30days",label:"Last 30 Days",getValue:s=>{const r=O(s);return{start:Q(r,-29,s),end:r}}},{key:"thisMonth",label:"This Month",getValue:s=>{const r=O(s);return{start:G(r),end:r}}},{key:"lastMonth",label:"Last Month",getValue:s=>{const r=O(s),o=Q(G(r),-1,s);return{start:G(o),end:o}}},{key:"last3months",label:"Last 3 Months",getValue:s=>{const r=O(s),o=ct(r,-2,s);return{start:G(o),end:r}}},{key:"last6months",label:"Last 6 Months",getValue:s=>{const r=O(s),o=ct(r,-5,s);return{start:G(o),end:r}}},{key:"last180days",label:"Last 180 Days",getValue:s=>{const r=O(s);return{start:Q(r,-179,s),end:r}}},{key:"last9months",label:"Last 9 Months",getValue:s=>{const r=O(s),o=ct(r,-8,s);return{start:G(o),end:r}}},{key:"lastYear",label:"Last Year",getValue:s=>{const r=O(s),o=ct(r,-11,s);return{start:G(o),end:r}}}],a=e?n.filter(s=>e.includes(s.key)):n;return t?a.map(s=>({...s,label:t[s.key]||s.label})):a},w3=({currentYear:e,currentMonth:t,months:n,onYearChange:a,onMonthChange:s,onClose:r,showNepaliNumbers:o=!1,convertToNepaliNumber:u=l=>l.toString(),calendarType:i})=>{const[l,c]=k.useState(Math.floor(e/12)*12),f=i==="BS"?2e3:1944,g=i==="BS"?2100:2043;return h.jsx("div",{className:"bsac-picker-overlay",onClick:r,children:h.jsxs("div",{className:"bsac-picker-content",onClick:C=>C.stopPropagation(),children:[h.jsxs("div",{className:"bsac-picker-header",children:[h.jsx("h3",{children:"Select Month & Year"}),h.jsx("button",{className:"bsac-close-btn",onClick:r,children:"×"})]}),h.jsxs("div",{className:"bsac-picker-body",children:[h.jsxs("div",{className:"bsac-picker-section",children:[h.jsxs("div",{className:"bsac-picker-section-header",children:[h.jsx("label",{children:"Year"}),h.jsxs("div",{className:"bsac-year-nav",children:[h.jsx("button",{onClick:()=>c(Math.max(f,l-12)),disabled:l<=f,children:"«"}),h.jsxs("span",{children:[o?u(l):l," – ",o?u(l+11):l+11]}),h.jsx("button",{onClick:()=>c(Math.min(g-11,l+12)),disabled:l+11>=g,children:"»"})]})]}),h.jsx("div",{className:"bsac-year-grid",children:Array.from({length:12},(C,m)=>{const v=l+m;return v>g?null:h.jsx("button",{onClick:()=>a(v),className:v===e?"bsac-selected":"",children:o?u(v):v},v)})})]}),h.jsxs("div",{className:"bsac-picker-section",children:[h.jsx("label",{children:"Month"}),h.jsx("div",{className:"bsac-month-grid",children:n.map((C,m)=>h.jsx("button",{onClick:()=>{s(m),r()},className:m===t?"bsac-selected":"",children:C},m))})]})]})]})})},ht=({currentMonth:e,currentYear:t,months:n,onNavigateMonth:a,onYearChange:s,onMonthChange:r,disabled:o=!1,showNepaliNumbers:u=!1,convertToNepaliNumber:i,calendarType:l})=>{const[c,f]=k.useState(!1);return h.jsxs("div",{className:"bsac-header",children:[h.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(-12),disabled:o,"aria-label":"Previous year",children:"«"}),h.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(-1),disabled:o,"aria-label":"Previous month",children:"‹"}),h.jsxs("button",{className:"bsac-month-year-btn",onClick:()=>f(!0),disabled:o,children:[n[e]," ",u?i(t):t]}),h.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(1),disabled:o,"aria-label":"Next month",children:"›"}),h.jsx("button",{className:"bsac-nav-btn",onClick:()=>a(12),disabled:o,"aria-label":"Next year",children:"»"}),c&&h.jsx(w3,{currentYear:t,currentMonth:e,months:n,onYearChange:s,onMonthChange:r,onClose:()=>f(!1),showNepaliNumbers:u,convertToNepaliNumber:i,calendarType:l})]})},lt=({calendarDays:e,days:t,onDateSelect:n,isSelected:a,isInRange:s,isToday:r,isDisabled:o,disabled:u=!1,showNepaliNumbers:i=!1,convertToNepaliNumber:l})=>h.jsxs("div",{className:"bsac-grid",children:[t.map(c=>h.jsx("div",{className:"bsac-day-header",children:c},c)),e.map((c,f)=>{const g=c?o?.(c)||u:!1,C=c?a(c):!1,m=c?s(c):!1,v=c?r(c):!1,I=["bsac-day",c?g?"bsac-day-disabled":C?"bsac-day-selected":m?"bsac-day-in-range":v?"bsac-day-today":"":"bsac-day-empty"].filter(Boolean).join(" ");return h.jsx("div",{className:I,onClick:()=>c&&!g&&n(c),children:c?i?l(c):c:""},f)})]}),dt=({presets:e,calendarType:t,onPresetSelect:n,activePreset:a,position:s="top"})=>{const r=o=>{const u=o.getValue(t);n(o,u)};return h.jsx("div",{className:`bsac-presets bsac-presets--${s}`,children:e.map(o=>h.jsx("button",{onClick:()=>r(o),className:`bsac-preset-btn${a===o.key?" bsac-preset-btn--active":""}`,children:o.label},o.key))})},be=({calendarType:e="AD",value:t,onChange:n,className:a="",showToday:s=!0,disabled:r=!1,outputFormat:o="both",onDateSelect:u,mode:i="single",onRangeSelect:l,showRangePresets:c=!1,rangePresetsPosition:f="top",predefinedRanges:g,presetKeys:C,presetLabels:m,onPresetSelect:v,renderPresets:I,showNepaliMonths:w=!1,showNepaliDays:$=!1,showNepaliNumbers:p=!1,theme:A="light",colors:gt,minDate:x,maxDate:z})=>{const{currentYear:B,currentMonth:H,rangeStart:P,rangeEnd:D,calendarDays:Y,setSelectedDate:W,setRangeStart:M,setRangeEnd:F,setCurrentYear:U,setCurrentMonth:J,navigateMonth:N,isToday:mt,isSelected:ft,isInRange:Dt}=Se(e),[yt,$t]=k.useState(),Mt=g||pe(C,m),St=(d,y)=>({start:ut(e,d.year,d.month,d.day,q),end:ut(e,y.year,y.month,y.day,q)}),q=e==="BS"&&w?de:e==="BS"?At:ge,pt=e==="BS"&&$?me:fe,bt=(d,y)=>{y.start&&y.end&&(M(y.start),F(y.end),U(y.start.year),J(y.start.month),$t(d.key),v?.(d,y),l?.(St(y.start,y.end)))},Y3=(d,y)=>{M(d),F(y),$t(void 0),l?.(St(d,y))},Et=d=>{if(r)return;const y={year:B,month:H,day:d};if(et(y,x,z))return;if(i==="range"){if($t(void 0),!P||P&&D)M(y),F(null);else{const tt=new Date(P.year,P.month,P.day).getTime();new Date(y.year,y.month,y.day).getTime()<tt?(M(y),F(P),l?.(St(y,P))):(F(y),l?.(St(P,y)))}return}W(y);const R=ut(e,B,H,d,q);if(u?.(R),n){let tt;switch(o){case"iso":tt=R.ad;break;case"object":tt=JSON.stringify(R);break;default:tt=JSON.stringify(R);break}n(tt)}},k3=d=>{if(!r){switch(d.key){case"ArrowLeft":N(-1);break;case"ArrowRight":N(1);break;case"ArrowUp":N(-12);break;case"ArrowDown":N(12);break;case"PageUp":d.shiftKey?N(-12):N(-1);break;case"PageDown":d.shiftKey?N(12):N(1);break;default:return}d.preventDefault()}},C3={...gt?Object.entries(gt).reduce((d,[y,R])=>(d[`--calendar-${y}`]=R,d),{}):{}};return h.jsxs("div",{className:`bsac-calendar ${a}`,style:C3,"data-theme":A,onKeyDown:k3,tabIndex:0,role:"application","aria-label":"Calendar",children:[i==="range"&&I&&h.jsxs("div",{style:{display:"flex",gap:"16px"},children:[h.jsx("div",{children:I({onRangeChange:Y3})}),h.jsxs("div",{style:{flex:1},children:[h.jsx(ht,{currentMonth:H,currentYear:B,months:q,onNavigateMonth:N,onYearChange:U,onMonthChange:J,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K,calendarType:e}),h.jsx(lt,{calendarDays:Y,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>et({year:B,month:H,day:d},x,z),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K})]})]}),i==="range"&&c&&f==="left"&&!I&&h.jsxs("div",{style:{display:"flex",gap:"16px",flexWrap:"nowrap"},children:[h.jsx(dt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"left"}),h.jsxs("div",{children:[h.jsx(ht,{currentMonth:H,currentYear:B,months:q,onNavigateMonth:N,onYearChange:U,onMonthChange:J,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K,calendarType:e}),h.jsx(lt,{calendarDays:Y,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>et({year:B,month:H,day:d},x,z),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K})]})]}),i==="range"&&c&&f==="right"&&!I&&h.jsxs("div",{style:{display:"flex",gap:"16px",flexWrap:"nowrap"},children:[h.jsxs("div",{children:[h.jsx(ht,{currentMonth:H,currentYear:B,months:q,onNavigateMonth:N,onYearChange:U,onMonthChange:J,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K,calendarType:e}),h.jsx(lt,{calendarDays:Y,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>et({year:B,month:H,day:d},x,z),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K})]}),h.jsx(dt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"right"})]}),(!i||i==="single"||!c&&!I||f==="top"||f==="bottom")&&h.jsxs(h.Fragment,{children:[i==="range"&&c&&f==="top"&&h.jsx(dt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"top"}),h.jsx(ht,{currentMonth:H,currentYear:B,months:q,onNavigateMonth:N,onYearChange:U,onMonthChange:J,disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K,calendarType:e}),h.jsx(lt,{calendarDays:Y,days:pt,onDateSelect:Et,isSelected:d=>ft(d,i),isInRange:Dt,isToday:d=>s&&mt(d),isDisabled:d=>et({year:B,month:H,day:d},x,z),disabled:r,showNepaliNumbers:p,convertToNepaliNumber:K}),i==="range"&&c&&f==="bottom"&&h.jsx(dt,{presets:Mt,calendarType:e,onPresetSelect:bt,activePreset:yt,position:"bottom"})]})]})},Ee=({placeholder:e="Select date",format:t="YYYY-MM-DD",defaultValue:n,onDateSelect:a,inputClassName:s="",popupClassName:r="",style:o,inputStyle:u,icon:i,showIcon:l=!0,calendarType:c="AD",...f})=>{const[g,C]=k.useState(!1),[m,v]=k.useState(null),[I,w]=k.useState(()=>{if(!n)return"";if(c==="BS")try{const[D,Y,W]=n.split("-").map(Number),M=E.fromEnglishDate(D,Y-1,W);return`${M.getYear()}-${String(M.getMonth()+1).padStart(2,"0")}-${String(M.getDate()).padStart(2,"0")}`}catch{return n}return n}),$=k.useRef(null),p=k.useRef(null),[A,gt]=k.useState({visibility:"hidden"}),x=()=>{if(!$.current)return;const D=$.current.getBoundingClientRect(),Y=p.current?.offsetHeight||360,W=p.current?.offsetWidth||280,M=window.innerHeight-D.bottom,F=window.innerWidth-D.left,U=M>=Y+8?D.bottom+8:Math.max(8,D.top-Y-8),J=F>=W?D.left:Math.max(8,D.right-W);gt({top:U,left:J,visibility:"visible"})};k.useEffect(()=>(g&&(requestAnimationFrame(x),window.addEventListener("scroll",x,!0),window.addEventListener("resize",x)),()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",x)}),[g]),k.useEffect(()=>{const D=Y=>{$.current&&!$.current.contains(Y.target)&&C(!1)};return g&&document.addEventListener("mousedown",D),()=>document.removeEventListener("mousedown",D)},[g]);const z=D=>{v(D),w(c==="BS"?D.bs:D.ad),C(!1),a?.(D)},B=D=>{const Y=D.target.value;if(Y===""){w("");return}if((D.target.selectionStart||0)===Y.length&&Y.length>I.length){const M=Y.replace(/[^0-9]/g,"");let F=M;M.length>4&&M.length<=6?F=M.slice(0,4)+"-"+M.slice(4):M.length>6&&(F=M.slice(0,4)+"-"+M.slice(4,6)+"-"+M.slice(6,8)),w(F)}else{const M=Y.replace(/[^0-9-]/g,"");M.length<=10&&w(M)}},H=()=>{const D=I.trim();if(!D){v(null);return}const Y=D.match(/^(\d{4})-(\d{2})-(\d{2})$/);if(Y){const[,W,M,F]=Y,U=parseInt(M),J=parseInt(F);if(U<1||U>12||J<1||J>32){w(m?c==="BS"?m.bs:m.ad:"");return}const N={bs:c==="BS"?`${W}-${M}-${F}`:"",ad:c==="AD"?`${W}-${M}-${F}`:"",formatted:{bs:c==="BS"?D:"",ad:c==="AD"?D:""}};v(N),a?.(N)}else D.length<10&&w(m?c==="BS"?m.bs:m.ad:"")},P=D=>{D.key==="Enter"?(H(),C(!1)):D.key==="Escape"&&C(!1)};return h.jsxs("div",{className:"bsac-datepicker",ref:$,style:o,children:[h.jsx("input",{type:"text",value:I,placeholder:e,onChange:B,onBlur:H,onKeyDown:P,className:`bsac-input ${s}`,style:u,"aria-label":"Date picker input","aria-haspopup":"dialog","aria-expanded":g,maxLength:10}),h.jsx("button",{type:"button",className:"bsac-icon-btn",onClick:()=>C(!g),"aria-label":"Toggle calendar",style:{display:l?"flex":"none"},children:i||h.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[h.jsx("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),h.jsx("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),h.jsx("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),h.jsx("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})}),g&&h.jsx("div",{ref:p,className:`bsac-popup ${r}`,style:A,children:h.jsx(be,{calendarType:c,onDateSelect:z,...f})})]})};S.Calendar=be,S.CalendarInput=Ee,S.DEFAULT_COLORS=S3,S.DatePicker=Ee,S.ENGLISH_DAYS=fe,S.ENGLISH_MONTHS_AD=ge,S.ENGLISH_MONTHS_BS=At,S.NEPALI_DAYS=me,S.NEPALI_DIGITS=De,S.NEPALI_MONTHS=de,S.PRESET_KEYS=E3,S.convertToNepaliNumber=K,S.createDateOutput=ut,S.createPredefinedRanges=pe,S.getDaysInMonth=vt,S.getFirstDayOfMonth=ye,S.getTodayDate=O,S.isDateInRange=p3,S.useCalendar=Se,Object.defineProperty(S,Symbol.toStringTag,{value:"Module"})}));
|
|
@@ -3,6 +3,7 @@ import type { DateOutput, CalendarProps } from '../../types';
|
|
|
3
3
|
interface CalendarInputProps extends Omit<CalendarProps, 'onDateSelect'> {
|
|
4
4
|
placeholder?: string;
|
|
5
5
|
format?: string;
|
|
6
|
+
defaultValue?: string;
|
|
6
7
|
onDateSelect?: (date: DateOutput) => void;
|
|
7
8
|
inputClassName?: string;
|
|
8
9
|
popupClassName?: string;
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bs-ad-calendar-react",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"private": false,
|
|
5
|
-
"description": "A modern React calendar component
|
|
5
|
+
"description": "A modern React calendar component for seamless conversion between Bikram Sambat (BS) and Gregorian (AD) calendars. Supports date picker, range selection, Nepali localization, and dark theme.",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./dist/bs-ad-calendar.js",
|
|
8
8
|
"module": "./dist/bs-ad-calendar.js",
|
|
@@ -36,10 +36,30 @@
|
|
|
36
36
|
"react",
|
|
37
37
|
"calendar",
|
|
38
38
|
"nepali",
|
|
39
|
+
"nepali-calendar",
|
|
39
40
|
"bikram-sambat",
|
|
41
|
+
"bs-calendar",
|
|
42
|
+
"ad-calendar",
|
|
43
|
+
"bs-ad-calendar",
|
|
44
|
+
"bs-ad-converter",
|
|
40
45
|
"date-picker",
|
|
46
|
+
"nepali-date-picker",
|
|
47
|
+
"date-converter",
|
|
48
|
+
"nepali-date-converter",
|
|
41
49
|
"bs",
|
|
42
|
-
"ad"
|
|
50
|
+
"ad",
|
|
51
|
+
"nepali-date",
|
|
52
|
+
"react-calendar",
|
|
53
|
+
"react-datepicker",
|
|
54
|
+
"react-nepali-calendar",
|
|
55
|
+
"range-picker",
|
|
56
|
+
"date-range-picker",
|
|
57
|
+
"range-selector",
|
|
58
|
+
"date-range-selector",
|
|
59
|
+
"nepali-range-picker",
|
|
60
|
+
"bs-date-range",
|
|
61
|
+
"typescript",
|
|
62
|
+
"nepal"
|
|
43
63
|
],
|
|
44
64
|
"author": "Bibek Amatya",
|
|
45
65
|
"license": "MIT",
|