bangla-stdlib 1.0.2 → 1.0.3
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.
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1162 -1110
- package/dist/index.d.ts +1162 -1110
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var Mr=Object.defineProperty;var t=(r,e)=>Mr(r,"name",{value:e,configurable:!0});var $=["\u09E6","\u09E7","\u09E8","\u09E9","\u09EA","\u09EB","\u09EC","\u09ED","\u09EE","\u09EF"],v=["0","1","2","3","4","5","6","7","8","9"];var M=["\u09AC\u09C8\u09B6\u09BE\u0996","\u099C\u09CD\u09AF\u09C8\u09B7\u09CD\u09A0","\u0986\u09B7\u09BE\u09A2\u09BC","\u09B6\u09CD\u09B0\u09BE\u09AC\u09A3","\u09AD\u09BE\u09A6\u09CD\u09B0","\u0986\u09B6\u09CD\u09AC\u09BF\u09A8","\u0995\u09BE\u09B0\u09CD\u09A4\u09BF\u0995","\u0985\u0997\u09CD\u09B0\u09B9\u09BE\u09AF\u09BC\u09A3","\u09AA\u09CC\u09B7","\u09AE\u09BE\u0998","\u09AB\u09BE\u09B2\u09CD\u0997\u09C1\u09A8","\u099A\u09C8\u09A4\u09CD\u09B0"];var O=["\u09B0\u09AC\u09BF\u09AC\u09BE\u09B0","\u09B8\u09CB\u09AE\u09AC\u09BE\u09B0","\u09AE\u0999\u09CD\u0997\u09B2\u09AC\u09BE\u09B0","\u09AC\u09C1\u09A7\u09AC\u09BE\u09B0","\u09AC\u09C3\u09B9\u09B8\u09CD\u09AA\u09A4\u09BF\u09AC\u09BE\u09B0","\u09B6\u09C1\u0995\u09CD\u09B0\u09AC\u09BE\u09B0","\u09B6\u09A8\u09BF\u09AC\u09BE\u09B0"];var b=["\u0997\u09CD\u09B0\u09C0\u09B7\u09CD\u09AE","\u09AC\u09B0\u09CD\u09B7\u09BE","\u09B6\u09B0\u09CE","\u09B9\u09C7\u09AE\u09A8\u09CD\u09A4","\u09B6\u09C0\u09A4","\u09AC\u09B8\u09A8\u09CD\u09A4"];function f(r){if(r==null)throw new TypeError("Invalid input");let e=String(r).trim();if(e==="")throw new Error("Empty input");if(/[eE]/.test(e))throw new Error("Scientific notation not supported");if(typeof r=="number"){if(!Number.isFinite(r))throw new TypeError("Input must be a finite number");if(Number.isInteger(r)&&Math.abs(r)>=1e5){let s=Math.abs(r),a=Math.log10(s);if(Number.isInteger(a)&&a>=5)throw new Error("Scientific notation not supported")}if(Number.isInteger(r)&&!Number.isSafeInteger(r))throw new TypeError("Input must be a safe integer")}if(/[০-৯]/.test(e))throw new Error("Input already contains Bangla digits");let n=!1,o=!1,i="";for(let s=0;s<e.length;s++){let a=e[s];if(a==="."){if(n)throw new Error("Multiple decimal points");n=!0,i+=".";continue}if(a==="-"){if(s!==0)throw new Error("Invalid minus position");i+="-";continue}let u=v.indexOf(a);if(u!==-1){o=!0,i+=$[u];continue}throw new Error(`Invalid character in number: ${a}`)}if(!o)throw new Error("No digits found");if(n){if(e.startsWith(".")||e.startsWith("-."))throw new Error("Decimal must have leading digit");if(e.endsWith("."))throw new Error("Decimal must have trailing digit")}return i}t(f,"toBanglaNumber");function w(r){if(typeof r!="string")throw new TypeError("Input must be a string");let e=r.trim();if(e==="")throw new Error("Empty input");let n=!1,o=!1,i="";for(let a=0;a<e.length;a++){let u=e[a];if(u==="."){if(n)throw new Error("Multiple decimal points");n=!0,i+=".";continue}if(u==="-"){if(a!==0)throw new Error("Invalid minus position");i+="-";continue}let l=$.indexOf(u);if(l!==-1){o=!0,i+=v[l];continue}throw new Error(`Invalid Bangla digit: ${u}`)}if(!o)throw new Error("No digits found");if(n){if(e.startsWith(".")||e.startsWith("-."))throw new Error("Decimal must have leading digit");if(e.endsWith("."))throw new Error("Decimal must have trailing digit")}let s=Number(i);if(!Number.isFinite(s))throw new TypeError("Failed to parse Bangla number");return s}t(w,"fromBanglaNumber");function U(r){if(r===0)return"\u09B6\u09C2\u09A8\u09CD\u09AF";if(r<0)return"\u098B\u09A3\u09BE\u09A4\u09CD\u09AE\u0995 "+U(-r);if(r<100)return _(r);if(r<1e3)return P(r);if(r<1e5)return Q(r);if(r<1e7)return rr(r);if(r<1e9)return er(r);if(r<1e11)return Er(r);throw new Error("Number too large to convert to words")}t(U,"toWords");function _(r){let e=["","\u098F\u0995","\u09A6\u09C1\u0987","\u09A4\u09BF\u09A8","\u099A\u09BE\u09B0","\u09AA\u09BE\u0981\u099A","\u099B\u09AF\u09BC","\u09B8\u09BE\u09A4","\u0986\u099F","\u09A8\u09AF\u09BC","\u09A6\u09B6","\u098F\u0997\u09BE\u09B0\u09CB","\u09AC\u09BE\u09B0\u09CB","\u09A4\u09C7\u09B0\u09CB","\u099A\u09CC\u09A6\u09CD\u09A6","\u09AA\u09A8\u09C7\u09B0\u09CB","\u09B7\u09CB\u09B2","\u09B8\u09A4\u09C7\u09B0\u09CB","\u0986\u09A0\u09BE\u09B0\u09CB","\u098A\u09A8\u09BF\u09B6","\u09AC\u09BF\u09B6"],n=["","","\u0995\u09C1\u09A1\u09BC\u09BF","\u09A4\u09BF\u09B0\u09BF\u09B6","\u099A\u09B2\u09CD\u09B2\u09BF\u09B6","\u09AA\u099E\u09CD\u099A\u09BE\u09B6","\u09B7\u09BE\u099F","\u09B8\u09A4\u09CD\u09A4\u09B0","\u0986\u09B6\u09BF","\u09A8\u09AC\u09CD\u09AC\u0987"];if(r===0)return"";if(r<20)return e[r];if(r===23)return"\u09A4\u09C7\u0987\u09B6";if(r===34)return"\u099A\u09CC\u09A4\u09CD\u09B0\u09BF\u09B6";if(r===56)return"\u099B\u09BE\u09AA\u09CD\u09AA\u09BE\u09A8\u09CD\u09A8";let o=Math.floor(r/10),i=r%10;return i===0?n[o]:n[o]+" "+e[i]}t(_,"convertBelowHundred");function P(r){let e=Math.floor(r/100),n=r%100,o="";return e>0&&(e===1?o="\u098F\u0995\u09B6\u09A4":o=_(e)+"\u09B6\u09A4"),n>0&&(o+=(o?" ":"")+_(n)),o}t(P,"convertBelowThousand");function Q(r){let e=Math.floor(r/1e3),n=r%1e3,o="";return e>0&&(e===1?o="\u098F\u0995 \u09B9\u09BE\u099C\u09BE\u09B0":o=P(e)+" \u09B9\u09BE\u099C\u09BE\u09B0"),n>0&&(o+=(o?" ":"")+P(n)),o}t(Q,"convertBelowLakh");function rr(r){let e=Math.floor(r/1e5),n=r%1e5,o="";return e>0&&(e===1?o="\u098F\u0995 \u09B2\u0995\u09CD\u09B7":o=P(e)+" \u09B2\u0995\u09CD\u09B7"),n>0&&(o+=(o?" ":"")+Q(n)),o}t(rr,"convertBelowCrore");function er(r){let e=Math.floor(r/1e7),n=r%1e7,o="";return e>0&&(e===1?o="\u098F\u0995 \u0995\u09CB\u099F\u09BF":o=P(e)+" \u0995\u09CB\u099F\u09BF"),n>0&&(o+=(o?" ":"")+rr(n)),o}t(er,"convertBelowArab");function Er(r){let e=Math.floor(r/1e9),n=r%1e9,o="";return e>0&&(e===1?o="\u098F\u0995 \u09B9\u09BE\u099C\u09BE\u09B0 \u0995\u09CB\u099F\u09BF":o=P(e)+" \u09B9\u09BE\u099C\u09BE\u09B0 \u0995\u09CB\u099F\u09BF"),n>0&&(o+=(o?" ":"")+er(n)),o}t(Er,"convertBelowKharab");function me(r,e={}){let{precision:n=2,useBanglaDigits:o=!0}=e;if(r===0)return o?"\u09E6":"0";let i=Math.abs(r),s=r<0?"-":"",a,u;if(i>=1e7)a=i/1e7,u="\u0995\u09CB\u099F\u09BF";else if(i>=1e5)a=i/1e5,u="\u09B2\u0995\u09CD\u09B7";else if(i>=1e3)a=i/1e3,u="\u09B9\u09BE\u099C\u09BE\u09B0";else{let g=o?f(i):i.toString();return s+g}let l=Number(a.toFixed(n)),m=o?f(l):l.toString();return s+m+" "+u}t(me,"formatWithUnits");function nr(r,e={}){let{useBanglaDigits:n=!0,separator:o=","}=e,i=typeof r=="string"?r:r.toString(),[s,a]=i.split("."),u=s;n&&(u=f(s));let l=Sr(u,o);if(a!==void 0){let m=n?f(a):a;return`${l}.${m}`}return l}t(nr,"formatNumber");function Sr(r,e){let n=r.startsWith("-"),o=n?r.slice(1):r;if(o.length<=3)return r;let s=o.slice(-3),a=o.slice(0,-3),u=[];for(let m=a.length;m>0;m-=2){let g=Math.max(0,m-2);u.unshift(a.slice(g,m))}let l=`${u.join(e)}${e}${s}`;return n?`-${l}`:l}t(Sr,"formatIntegerPart");function he(r){if(typeof r!="string")return!1;let e=r.trim();if(e==="")return!1;let n=!1,o=!1;for(let i=0;i<e.length;i++){let s=e[i];if(s==="."){if(n)return!1;n=!0;continue}if(s==="-"){if(i!==0)return!1;continue}if($.indexOf(s)!==-1){o=!0;continue}return!1}return!(!o||n&&(e.startsWith(".")||e.startsWith("-.")||e.endsWith(".")))}t(he,"isValidBanglaNumber");function xe(r){if(r==null)return!1;let e=String(r).trim();if(e===""||/[eE]/.test(e))return!1;if(typeof r=="number"){if(!Number.isFinite(r)||Number.isInteger(r)&&!Number.isSafeInteger(r))return!1;if(Number.isInteger(r)&&Math.abs(r)>=1e5){let i=Math.abs(r),s=Math.log10(i);if(Number.isInteger(s)&&s>=5)return!1}}if(/[০-৯]/.test(e))return!1;let n=!1,o=!1;for(let i=0;i<e.length;i++){let s=e[i];if(s==="."){if(n)return!1;n=!0;continue}if(s==="-"){if(i!==0)return!1;continue}if(v.indexOf(s)!==-1){o=!0;continue}return!1}return!(!o||n&&(e.startsWith(".")||e.startsWith("-.")||e.endsWith(".")))}t(xe,"isValidNumber");function ye(r){return typeof r!="number"||!Number.isFinite(r)||!Number.isInteger(r)?!1:r>=-99999999999&&r<=99999999999}t(ye,"isValidNumberForWords");function we(r){return typeof r!="number"||!Number.isFinite(r)||!Number.isInteger(r)?!1:r>0}t(we,"isValidNumberForOrdinal");function tr(r){if(typeof r!="string")return"";let e=r.trim();return e=e.replace(/,/g,""),e=e.replace(/৳/g,""),e.trim()}t(tr,"sanitizeNumberInput");function Te(r){let e=[],n=[];for(let o of r)try{let i=f(o);e.push({input:o,output:i})}catch(i){n.push({input:o,error:i instanceof Error?i.message:String(i)})}return{success:e,errors:n}}t(Te,"batchToBanglaNumber");function Ae(r){let e=[],n=[];for(let o of r)try{let i=w(o);e.push({input:o,output:i})}catch(i){n.push({input:o,error:i instanceof Error?i.message:String(i)})}return{success:e,errors:n}}t(Ae,"batchFromBanglaNumber");function We(r,e=""){try{return f(r)}catch{return e}}t(We,"safeToBanglaNumber");function Ce(r,e=0){try{return w(r)}catch{return e}}t(Ce,"safeFromBanglaNumber");function Fe(r){let e=tr(r);return f(e)}t(Fe,"parseAndConvertToBangla");function $e(r,e=!0,n=","){return nr(r,{useBanglaDigits:e,separator:n})}t($e,"formatAndConvert");function ve(r){return{words:U(r),digits:f(r)}}t(ve,"convertToWordsAndDigits");function Oe(r,e,n){return Number.isFinite(r)?r>=e&&r<=n:!1}t(Oe,"isNumberInRange");function Pe(r,e=2){let n=Math.pow(10,e);return Math.trunc(r*n)/n}t(Pe,"truncateDecimals");function z(r,e={}){let{includeSymbol:n=!0,includeWord:o=!1}=e,i=typeof r=="string"?parseFloat(r):r;if(Number.isNaN(i))throw new Error("Invalid amount");let s=f(i.toFixed(2)),a=[];return n&&a.push("\u09F3"),a.push(s),o&&a.push("\u099F\u09BE\u0995\u09BE"),a.join(" ")}t(z,"formatCurrency");function j(r){let e=r.replace(/৳/g,"").replace(/টাকা/g,"").trim();return e=e.replace(/\s+/g,""),w(e)}t(j,"parseCurrency");function c(r){return typeof r=="number"&&!isNaN(r)&&isFinite(r)}t(c,"isValidCurrency");function Tr(r){if(typeof r!="string"||!r.trim())return!1;let e=r.trim();return e.includes("\u09F3")||e.includes("\u099F\u09BE\u0995\u09BE")?!0:/[০-৯]/.test(e)}t(Tr,"isBanglaCurrency");function Qe(r){return c(r)&&r>0}t(Qe,"isPositiveAmount");function rn(r){return c(r)&&r<0}t(rn,"isNegativeAmount");function en(r){return c(r)&&r===0}t(en,"isZeroAmount");function or(r){if(typeof r=="number")return isNaN(r)||!isFinite(r)?null:r;if(typeof r=="string"){let e=r.trim();if(e==="")return null;if(Tr(e))return e;let n=parseFloat(e);return isNaN(n)?null:n}return null}t(or,"sanitizeCurrencyInput");function nn(r,e,n){return!c(r)||!c(e)||!c(n)||e>n?!1:r>=e&&r<=n}t(nn,"isCurrencyInRange");function tn(r){return typeof r!="string"?!1:r.includes("\u09F3")}t(tn,"hasTakaSymbol");function on(r){return typeof r!="string"?!1:r.includes("\u099F\u09BE\u0995\u09BE")}t(on,"hasTakaWord");function ln(r,e={},n=""){try{let o=typeof r=="string"?parseFloat(r):r;return c(o)?z(r,e):n}catch{return n}}t(ln,"safeFormatCurrency");function cn(r,e=0){try{let n=j(r);return c(n)?n:e}catch{return e}}t(cn,"safeParseCurrency");function gn(r,e={}){return r.filter(n=>c(n)).map(n=>z(n,e))}t(gn,"batchFormatCurrency");function E(r,e=2){if(!c(r))throw new Error("Invalid currency amount");let n=Math.pow(10,e);return Math.round(r*n)/n}t(E,"roundCurrency");function Ar(r){let n=r.filter(o=>c(o)).reduce((o,i)=>o+i,0);return E(n,2)}t(Ar,"sumCurrency");function ir(r,e){if(!c(r)||!c(e))throw new Error("Invalid currency amounts");return E(r-e,2)}t(ir,"subtractCurrency");function pn(r,e){if(!c(r)||!c(e))throw new Error("Invalid currency amount or factor");return E(r*e,2)}t(pn,"multiplyCurrency");function Wr(r,e){if(!c(r)||!c(e))throw new Error("Invalid currency amount or divisor");if(e===0)throw new Error("Cannot divide by zero");return E(r/e,2)}t(Wr,"divideCurrency");function sr(r,e){if(!c(r)||!c(e))throw new Error("Invalid currency amount or percentage");return E(r*e/100,2)}t(sr,"calculatePercentage");function bn(r,e){let n=sr(r,e);return ir(r,n)}t(bn,"applyDiscount");function dn(r,e){let n=sr(r,e);return E(r+n,2)}t(dn,"addTax");function hn(r,e){if(!c(r))throw new Error("Invalid currency amount");if(!Number.isInteger(e)||e<1)throw new Error("Parts must be a positive integer");let n=Wr(r,e),o=Array(e-1).fill(n),i=Ar(o),s=ir(r,i);return o.push(s),o}t(hn,"splitAmount");function xn(r,e){if(!c(r)||!c(e))throw new Error("Invalid currency amounts");let n=E(r,2),o=E(e,2);return n<o?-1:n>o?1:0}t(xn,"compareCurrency");function yn(r){if(!c(r))throw new Error("Invalid currency amount");return Math.abs(r)}t(yn,"getAbsoluteAmount");function wn(r){if(!c(r))throw new Error("Invalid currency amount");return-r}t(wn,"negateAmount");function Dn(r,e={}){let n=or(r);if(n===null)throw new Error("Invalid currency input");if(typeof n=="string"){let o=j(n);return z(o,e)}return z(n,e)}t(Dn,"parseAndFormatCurrency");function h(r){if(r<1||r>12)throw new Error("Month number must be between 1 and 12");return M[r-1]}t(h,"toBanglaMonth");function D(r){let e=M.indexOf(r);if(e===-1)throw new Error(`Invalid Bangla month name: ${r}`);return e+1}t(D,"fromBanglaMonth");function ar(r){let e=r.getMonth()+1;return h(e)}t(ar,"getMonthName");function p(r){return r instanceof Date&&!isNaN(r.getTime())}t(p,"isValidDate");function ur(r){if(typeof r!="string"||r.trim()==="")return!1;let e=r.trim().replace(/\s+/g," ");if(/^\d{4}[\-\/]\d{1,2}[\-\/]\d{1,2}$/.test(e))return!1;let n=/^(\d+|[০-৯]+)\s+(বৈশাখ|জ্যৈষ্ঠ|আষাঢ়|শ্রাবণ|ভাদ্র|আশ্বিন|কার্তিক|অগ্রহায়ণ|পৌষ|মাঘ|ফাল্গুন|চৈত্র)(?:\s+(\d+|[০-৯]+))?$/,o=/^(\d{1,2}|[০-৯]{1,2})[\/\-](\d{1,2}|[০-৯]{1,2})[\/\-](\d{2,4}|[০-৯]{2,4})$/;return n.test(e)||o.test(e)}t(ur,"isValidBengaliDateString");function Ln(r){return typeof r!="string"?!1:/[০-৯]/.test(r)}t(Ln,"hasBengaliDigits");function Vn(r){return typeof r!="string"?!1:/(বৈশাখ|জ্যৈষ্ঠ|আষাঢ়|শ্রাবণ|ভাদ্র|আশ্বিন|কার্তিক|অগ্রহায়ণ|পৌষ|মাঘ|ফাল্গুন|চৈত্র)/.test(r)}t(Vn,"hasBengaliMonth");function zn(r){return p(r)?r:null}t(zn,"sanitizeDate");function N(r){return typeof r=="number"&&Number.isInteger(r)&&r>=1&&r<=12}t(N,"isValidMonthNumber");function B(r){if(typeof r!="string")return!1;let e=r.trim();return M.includes(e)}t(B,"isValidBanglaMonth");function fr(r){if(typeof r=="string"){let n=r.trim();if(n==="")return null;let o=Number(n);if(isNaN(o))return null;r=o}if(typeof r!="number"||isNaN(r)||!isFinite(r))return null;let e=Math.round(r);return e<1||e>12?null:e}t(fr,"sanitizeMonthNumber");function Yn(r){if(typeof r!="string")return null;let e=r.trim();return e===""||!B(e)?null:e}t(Yn,"sanitizeBanglaMonth");function Jn(r,e=""){try{return N(r)?h(r):e}catch{return e}}t(Jn,"safeToBanglaMonth");function Qn(r,e=0){try{return B(r)?D(r):e}catch{return e}}t(Qn,"safeFromBanglaMonth");function rt(){return[...M]}t(rt,"getAllMonths");function et(r){if(typeof r=="number"){if(!N(r))throw new Error("Invalid month number");return r===12?1:r+1}else{if(!B(r))throw new Error("Invalid Bangla month name");let e=D(r),n=e===12?1:e+1;return h(n)}}t(et,"getNextMonth");function nt(r){if(typeof r=="number"){if(!N(r))throw new Error("Invalid month number");return r===1?12:r-1}else{if(!B(r))throw new Error("Invalid Bangla month name");let e=D(r),n=e===1?12:e-1;return h(n)}}t(nt,"getPreviousMonth");function Cr(r,e){let n=typeof r=="number",o,i;if(n){if(!N(r)||!N(e))throw new Error("Invalid month numbers");o=r,i=e}else{if(!B(r)||!B(e))throw new Error("Invalid Bangla month names");o=D(r),i=D(e)}let s=[],a=o;for(;n?s.push(a):s.push(h(a)),!(a===i||(a=a===12?1:a+1,s.length>12)););return s}t(Cr,"getMonthRange");function tt(r,e,n){try{return Cr(e,n).includes(r)}catch{return!1}}t(tt,"isMonthInRange");function ot(r,e){let n,o;if(typeof r=="number"){if(!N(r))throw new Error("Invalid month1");n=r}else{if(!B(r))throw new Error("Invalid month1");n=D(r)}if(typeof e=="number"){if(!N(e))throw new Error("Invalid month2");o=e}else{if(!B(e))throw new Error("Invalid month2");o=D(e)}return n<o?-1:n>o?1:0}t(ot,"compareMonths");function it(r){if(typeof r=="number"){if(!N(r))throw new Error("Invalid month number");return r-1}else{if(!B(r))throw new Error("Invalid Bangla month name");return D(r)-1}}t(it,"getMonthIndex");function st(r){if(!Number.isInteger(r)||r<0||r>11)throw new Error("Index must be between 0 and 11");return r+1}t(st,"getMonthFromIndex");function at(r){if(typeof r=="string"&&B(r.trim()))return r.trim();let e=fr(r);if(e===null)throw new Error("Invalid month input");return h(e)}t(at,"parseAndConvertToMonth");function ut(r){return r.filter(e=>N(e)).map(e=>h(e))}t(ut,"batchToBanglaMonth");function ft(){let r={};for(let e=1;e<=12;e++)r[e]=h(e);return r}t(ft,"getMonthMapping");function k(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return O[r]}t(k,"toBanglaWeekday");function H(r){let e=O.indexOf(r);if(e===-1)throw new Error(`Invalid Bangla weekday name: ${r}`);return e}t(H,"fromBanglaWeekday");function mr(r){let e=r.getDay();return k(e)}t(mr,"getWeekdayName");function Tt(r){return typeof r!="number"||!Number.isFinite(r)||!Number.isInteger(r)?!1:r>=0&&r<=6}t(Tt,"isValidWeekdayNumber");function At(r){if(typeof r!="string")return!1;let e=r.trim();return e===""?!1:O.includes(e)}t(At,"isValidBanglaWeekday");function Wt(r){return r instanceof Date?!isNaN(r.getTime()):!1}t(Wt,"isValidDateForWeekday");function lr(r){return typeof r!="string"?"":r.trim()}t(lr,"sanitizeWeekdayInput");function Fr(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return r===5||r===6}t(Fr,"isWeekend");function Pt(r){let e=H(r);return Fr(e)}t(Pt,"isBanglaWeekend");function $r(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return(r+1)%7}t($r,"getNextWeekday");function vr(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return(r-1+7)%7}t(vr,"getPreviousWeekday");function kt(r){let e=$r(r);return k(e)}t(kt,"getNextBanglaWeekday");function Lt(r){let e=vr(r);return k(e)}t(Lt,"getPreviousBanglaWeekday");function Vt(r){let e=lr(r);return H(e)}t(Vt,"parseWeekdayInput");function zt(r,e=""){try{return k(r)}catch{return e}}t(zt,"safeToBanglaWeekday");function Gt(r,e=-1){try{return H(r)}catch{return e}}t(Gt,"safeFromBanglaWeekday");function Ht(){return["\u09B0\u09AC\u09BF\u09AC\u09BE\u09B0","\u09B8\u09CB\u09AE\u09AC\u09BE\u09B0","\u09AE\u0999\u09CD\u0997\u09B2\u09AC\u09BE\u09B0","\u09AC\u09C1\u09A7\u09AC\u09BE\u09B0","\u09AC\u09C3\u09B9\u09B8\u09CD\u09AA\u09A4\u09BF\u09AC\u09BE\u09B0","\u09B6\u09C1\u0995\u09CD\u09B0\u09AC\u09BE\u09B0","\u09B6\u09A8\u09BF\u09AC\u09BE\u09B0"]}t(Ht,"getAllBanglaWeekdays");function Rt(r,e){if(r<0||r>6||e<0||e>6)throw new Error("Weekday numbers must be between 0 and 6");return(e-r+7)%7}t(Rt,"getDaysBetween");function K(r,e={}){let{includeWeekday:n=!1,includeYear:o=!0,format:i="long"}=e,s=[];if(n){let m=mr(r);s.push(m)}let a=f(r.getDate()),u=ar(r),l=o?f(r.getFullYear()):null;return i==="short"?s.push(`${a} ${u}`):s.push(a,u),l&&s.push(l),s.join(" ")}t(K,"formatDate");function cr(r){let e=r.trim().replace(/\s+/g," "),n=e.match(/^(\d+|[০-৯]+)\s+(বৈশাখ|জ্যৈষ্ঠ|আষাঢ়|শ্রাবণ|ভাদ্র|আশ্বিন|কার্তিক|অগ্রহায়ণ|পৌষ|মাঘ|ফাল্গুন|চৈত্র)(?:\s+(\d+|[০-৯]+))?$/);if(n){let i=n[1],s=n[2],a=n[3],u=/[০-৯]/.test(i)?w(i):parseInt(i,10),l=D(s),m=a?/[০-৯]/.test(a)?w(a):parseInt(a,10):new Date().getFullYear();return new Date(m,l-1,u)}let o=e.match(/^(\d+|[০-৯]+)[\/\-](\d+|[০-৯]+)[\/\-](\d+|[০-৯]+)$/);if(o){let i=o[1],s=o[2],a=o[3],u=/[০-৯]/.test(i)?w(i):parseInt(i,10),l=/[০-৯]/.test(s)?w(s):parseInt(s,10),m=/[০-৯]/.test(a)?w(a):parseInt(a,10);return new Date(m,l-1,u)}throw new Error(`Unable to parse date string: ${r}`)}t(cr,"parseDate");function Or(r,e,n=""){try{return p(r)?K(r,e):n}catch{return n}}t(Or,"safeFormatDate");function Pr(r,e){try{return cr(r)}catch{return e||new Date}}t(Pr,"safeParseDate");function mo(r){return K(new Date,r)}t(mo,"formatToday");function lo(r,e){return r.map(n=>Or(n,e))}t(lo,"batchFormatDates");function co(r){return r.map(e=>Pr(e))}t(co,"batchParseDates");function go(r){return ur(r)}t(go,"canParseBengaliDate");function gr(r,e){if(!p(r)||!p(e))throw new Error("Invalid date");let n=r.getTime(),o=e.getTime();return n<o?-1:n>o?1:0}t(gr,"compareDates");function po(r){if(!p(r))return!1;let e=new Date;return r.getDate()===e.getDate()&&r.getMonth()===e.getMonth()&&r.getFullYear()===e.getFullYear()}t(po,"isToday");function bo(r){return p(r)?r.getTime()<Date.now():!1}t(bo,"isPast");function ho(r){return p(r)?r.getTime()>Date.now():!1}t(ho,"isFuture");function xo(r,e){if(!p(r)||!p(e))throw new Error("Invalid date");let n=e.getTime()-r.getTime();return Math.floor(n/(1e3*60*60*24))}t(xo,"getDaysDifference");function yo(r,e){if(!p(r))throw new Error("Invalid date");let n=new Date(r);return n.setDate(n.getDate()+e),n}t(yo,"addDays");function wo(r,e,n){return!p(r)||!p(e)||!p(n)?!1:gr(r,e)>=0&&gr(r,n)<=0}t(wo,"isDateInRange");function R(r){if(r<1||r>12)throw new Error("Month number must be between 1 and 12");return r<=2?b[0]:r<=4?b[1]:r<=6?b[2]:r<=8?b[3]:r<=10?b[4]:b[5]}t(R,"getSeasonFromMonth");function L(r){let{year:e,month:n,day:o}=r,i=A(e);if(n<1||n>12)throw new Error("Invalid Bengali month");if(o<1||o>i[n-1])throw new Error("Invalid Bengali day for given month");let s=e+593,a=new Date(Date.UTC(s,3,14)),u=0;for(let l=1;l<n;l++)u+=i[l-1];return u+=o-1,new Date(a.getTime()+u*864e5)}t(L,"fromBengali");function pr(r,e={}){let{includeYear:n=!0,includeWeekday:o=!1}=e,i=I(r);return[...o?[["\u09B0\u09AC\u09BF\u09AC\u09BE\u09B0","\u09B8\u09CB\u09AE\u09AC\u09BE\u09B0","\u09AE\u0999\u09CD\u0997\u09B2\u09AC\u09BE\u09B0","\u09AC\u09C1\u09A7\u09AC\u09BE\u09B0","\u09AC\u09C3\u09B9\u09B8\u09CD\u09AA\u09A4\u09BF\u09AC\u09BE\u09B0","\u09B6\u09C1\u0995\u09CD\u09B0\u09AC\u09BE\u09B0","\u09B6\u09A8\u09BF\u09AC\u09BE\u09B0"][r.getDay()]]:[],f(i.day),h(i.month),...n?[f(i.year)]:[]].join(" ")}t(pr,"getBengaliDate");function W(r){return typeof r=="number"&&Number.isInteger(r)&&r>0&&isFinite(r)}t(W,"isValidBengaliYear");function V(r){return typeof r=="number"&&Number.isInteger(r)&&r>=1&&r<=12}t(V,"isValidBengaliMonth");function kr(r,e,n){if(typeof r!="number"||!Number.isInteger(r)||r<1||!V(e)||!W(n))return!1;let o=A(n);return r<=o[e-1]}t(kr,"isValidBengaliDay");function x(r){if(!r||typeof r!="object")return!1;let{year:e,month:n,day:o}=r;return W(e)&&V(n)&&kr(o,n,e)}t(x,"isValidBengaliDate");function zo(r){return x(r)?r:null}t(zo,"sanitizeBengaliDate");function Lr(r,e){try{return!(r instanceof Date)||isNaN(r.getTime())?e||I(new Date):I(r)}catch{return e||I(new Date)}}t(Lr,"safeToBengali");function jo(r,e){try{return x(r)?L(r):e||new Date}catch{return e||new Date}}t(jo,"safeFromBengali");function Vr(r,e){return!V(r)||!W(e)?0:A(e)[r-1]}t(Vr,"getBengaliMonthDays");function Ko(r,e){if(!x(r))throw new Error("Invalid Bengali date");let n=L(r),o=new Date(n.getTime()+e*864e5);return I(o)}t(Ko,"addDaysToBengaliDate");function qo(r,e){if(!x(r)||!x(e))throw new Error("Invalid Bengali date");let n=L(r),o=L(e);return Math.floor((o.getTime()-n.getTime())/864e5)}t(qo,"getBengaliDateDifference");function br(r,e){if(!x(r)||!x(e))throw new Error("Invalid Bengali date");return r.year!==e.year?r.year<e.year?-1:1:r.month!==e.month?r.month<e.month?-1:1:r.day!==e.day?r.day<e.day?-1:1:0}t(br,"compareBengaliDates");function Zo(r,e,n){return!x(r)||!x(e)||!x(n)?!1:br(r,e)>=0&&br(r,n)<=0}t(Zo,"isBengaliDateInRange");function Xo(r,e){if(!V(r)||!W(e))throw new Error("Invalid month or year");return{year:e,month:r,day:1}}t(Xo,"getFirstDayOfBengaliMonth");function Jo(r,e){if(!V(r)||!W(e))throw new Error("Invalid month or year");let n=Vr(r,e);return{year:e,month:r,day:n}}t(Jo,"getLastDayOfBengaliMonth");function Qo(r){if(!W(r))return!1;let e=r+593;return e%4===0&&e%100!==0||e%400===0}t(Qo,"isBengaliLeapYear");function ri(r,e){if(!x(r))throw new Error("Invalid Bengali date");let n=L(r);return pr(n,e)}t(ri,"formatBengaliDate");function ei(){return I(new Date)}t(ei,"getCurrentBengaliDate");function ni(r){return r.map(e=>Lr(e))}t(ni,"batchToBengali");function A(r){let e=r+594;return[31,31,31,31,31,30,30,30,30,30,e%4===0&&(e%100!==0||e%400===0)?30:29,30]}t(A,"getBengaliMonthLengths");function I(r){let e=new Date(Date.UTC(r.getFullYear(),r.getMonth(),r.getDate())),n=e.getUTCFullYear(),o=e.getUTCMonth()+1,i=e.getUTCDate(),s=o<4||o===4&&i<14,a=n-(s?594:593),u=s?n-1:n,l=new Date(Date.UTC(u,3,14)),m=Math.floor((e.getTime()-l.getTime())/864e5),g=A(a),C=m,T=0;for(;C>=g[T];)C-=g[T],T++;return{year:a,month:T+1,day:C+1}}t(I,"toBengali");function G(r){let e=I(r);return R(e.month)}t(G,"getSeason");function gi(r){return typeof r!="number"||!Number.isFinite(r)||!Number.isInteger(r)?!1:r>=1&&r<=12}t(gi,"isValidMonth");function pi(r){if(typeof r!="string")return!1;let e=r.trim();return e===""?!1:b.includes(e)}t(pi,"isValidSeasonName");function bi(r){return r instanceof Date?!isNaN(r.getTime()):!1}t(bi,"isValidDateForSeason");function Di(){return["\u0997\u09CD\u09B0\u09C0\u09B7\u09CD\u09AE","\u09AC\u09B0\u09CD\u09B7\u09BE","\u09B6\u09B0\u09CE","\u09B9\u09C7\u09AE\u09A8\u09CD\u09A4","\u09B6\u09C0\u09A4","\u09AC\u09B8\u09A8\u09CD\u09A4"]}t(Di,"getAllSeasons");function dr(r){let n={\u0997\u09CD\u09B0\u09C0\u09B7\u09CD\u09AE:[1,2],\u09AC\u09B0\u09CD\u09B7\u09BE:[3,4,5],"\u09B6\u09B0\u09CE":[6,7],\u09B9\u09C7\u09AE\u09A8\u09CD\u09A4:[8],\u09B6\u09C0\u09A4:[9,10],\u09AC\u09B8\u09A8\u09CD\u09A4:[11,12]}[r];if(!n)throw new Error(`Invalid season name: ${r}`);return n}t(dr,"getSeasonMonths");function q(r){return b.indexOf(r)}t(q,"getSeasonIndex");function Bi(r){if(r<0||r>5)throw new Error("Season index must be between 0 and 5");return b[r]}t(Bi,"getSeasonByIndex");function Ni(r,e){if(r<1||r>12)return!1;try{return dr(e).includes(r)}catch{return!1}}t(Ni,"isMonthInSeason");function Ii(r){let e=q(r);if(e===-1)throw new Error(`Invalid season name: ${r}`);let n=(e+1)%6;return b[n]}t(Ii,"getNextSeason");function Mi(r){let e=q(r);if(e===-1)throw new Error(`Invalid season name: ${r}`);let n=(e-1+6)%6;return b[n]}t(Mi,"getPreviousSeason");function Ei(r,e=""){if(!(r instanceof Date)||isNaN(r.getTime()))return e;try{return G(r)}catch{return e}}t(Ei,"safeGetSeason");function Si(r,e=""){try{return R(r)}catch{return e}}t(Si,"safeGetSeasonFromMonth");function Ti(){return G(new Date)}t(Ti,"getCurrentSeason");function Ai(r,e){let n=G(r),o=G(e);return n===o}t(Ai,"isSameSeason");function Wi(r){let e=q(r);if(e===-1)throw new Error(`Invalid season name: ${r}`);let n=dr(r),o={1:"\u09AC\u09C8\u09B6\u09BE\u0996",2:"\u099C\u09CD\u09AF\u09C8\u09B7\u09CD\u09A0",3:"\u0986\u09B7\u09BE\u09A2\u09BC",4:"\u09B6\u09CD\u09B0\u09BE\u09AC\u09A3",5:"\u09AD\u09BE\u09A6\u09CD\u09B0",6:"\u0986\u09B6\u09CD\u09AC\u09BF\u09A8",7:"\u0995\u09BE\u09B0\u09CD\u09A4\u09BF\u0995",8:"\u0985\u0997\u09CD\u09B0\u09B9\u09BE\u09AF\u09BC\u09A3",9:"\u09AA\u09CC\u09B7",10:"\u09AE\u09BE\u0998",11:"\u09AB\u09BE\u09B2\u09CD\u0997\u09C1\u09A8",12:"\u099A\u09C8\u09A4\u09CD\u09B0"},i=n.map(s=>o[s]);return{name:r,months:n,index:e,monthNames:i}}t(Wi,"getSeasonInfo");function y(r){if(r<1)throw new Error("Number must be greater than 0");let e={1:"\u09AA\u09CD\u09B0\u09A5\u09AE",2:"\u09A6\u09CD\u09AC\u09BF\u09A4\u09C0\u09AF\u09BC",3:"\u09A4\u09C3\u09A4\u09C0\u09AF\u09BC",4:"\u099A\u09A4\u09C1\u09B0\u09CD\u09A5",5:"\u09AA\u099E\u09CD\u099A\u09AE",6:"\u09B7\u09B7\u09CD\u09A0",7:"\u09B8\u09AA\u09CD\u09A4\u09AE",8:"\u0985\u09B7\u09CD\u099F\u09AE",9:"\u09A8\u09AC\u09AE",10:"\u09A6\u09B6\u09AE",11:"\u098F\u0995\u09BE\u09A6\u09B6",12:"\u09A6\u09CD\u09AC\u09BE\u09A6\u09B6",13:"\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09A6\u09B6",14:"\u099A\u09A4\u09C1\u09B0\u09CD\u09A6\u09B6",15:"\u09AA\u099E\u09CD\u099A\u09A6\u09B6",16:"\u09B7\u09CB\u09A1\u09BC\u09B6",17:"\u09B8\u09AA\u09CD\u09A4\u09A6\u09B6",18:"\u0985\u09B7\u09CD\u099F\u09BE\u09A6\u09B6",19:"\u098A\u09A8\u09AC\u09BF\u0982\u09B6",20:"\u09AC\u09BF\u0982\u09B6",21:"\u098F\u0995\u09AC\u09BF\u0982\u09B6",22:"\u09A6\u09CD\u09AC\u09BE\u09AC\u09BF\u0982\u09B6",23:"\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09AC\u09BF\u0982\u09B6",24:"\u099A\u09A4\u09C1\u09B0\u09CD\u09AC\u09BF\u0982\u09B6",25:"\u09AA\u099E\u09CD\u099A\u09AC\u09BF\u0982\u09B6",30:"\u09A4\u09CD\u09B0\u09BF\u0982\u09B6",40:"\u099A\u09A4\u09CD\u09AC\u09BE\u09B0\u09BF\u0982\u09B6",50:"\u09AA\u099E\u09CD\u099A\u09BE\u09B6\u09A4\u09CD\u09A4\u09AE",60:"\u09B7\u09B7\u09CD\u099F\u09BF\u09A4\u09AE",70:"\u09B8\u09AA\u09CD\u09A4\u09A4\u09BF\u09A4\u09AE",80:"\u0985\u09B6\u09C0\u09A4\u09BF\u09A4\u09AE",90:"\u09A8\u09AC\u09A4\u09BF\u09A4\u09AE",100:"\u09B6\u09A4\u09A4\u09AE"};return e[r]?e[r]:`${f(r)}\u09A4\u09AE`}t(y,"toOrdinal");function d(r){return typeof r=="number"&&!isNaN(r)&&isFinite(r)&&Number.isInteger(r)&&r>=1}t(d,"isValidOrdinal");function Gi(r){if(typeof r!="string"||!r.trim())return!1;let e=r.trim();return["\u09AA\u09CD\u09B0\u09A5\u09AE","\u09A6\u09CD\u09AC\u09BF\u09A4\u09C0\u09AF\u09BC","\u09A4\u09C3\u09A4\u09C0\u09AF\u09BC","\u099A\u09A4\u09C1\u09B0\u09CD\u09A5","\u09AA\u099E\u09CD\u099A\u09AE","\u09B7\u09B7\u09CD\u09A0","\u09B8\u09AA\u09CD\u09A4\u09AE","\u0985\u09B7\u09CD\u099F\u09AE","\u09A8\u09AC\u09AE","\u09A6\u09B6\u09AE","\u098F\u0995\u09BE\u09A6\u09B6","\u09A6\u09CD\u09AC\u09BE\u09A6\u09B6","\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09A6\u09B6","\u099A\u09A4\u09C1\u09B0\u09CD\u09A6\u09B6","\u09AA\u099E\u09CD\u099A\u09A6\u09B6","\u09B7\u09CB\u09A1\u09BC\u09B6","\u09B8\u09AA\u09CD\u09A4\u09A6\u09B6","\u0985\u09B7\u09CD\u099F\u09BE\u09A6\u09B6","\u098A\u09A8\u09AC\u09BF\u0982\u09B6","\u09AC\u09BF\u0982\u09B6","\u098F\u0995\u09AC\u09BF\u0982\u09B6","\u09A6\u09CD\u09AC\u09BE\u09AC\u09BF\u0982\u09B6","\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09AC\u09BF\u0982\u09B6","\u099A\u09A4\u09C1\u09B0\u09CD\u09AC\u09BF\u0982\u09B6","\u09AA\u099E\u09CD\u099A\u09AC\u09BF\u0982\u09B6","\u09A4\u09CD\u09B0\u09BF\u0982\u09B6","\u099A\u09A4\u09CD\u09AC\u09BE\u09B0\u09BF\u0982\u09B6","\u09AA\u099E\u09CD\u099A\u09BE\u09B6\u09A4\u09CD\u09A4\u09AE","\u09B7\u09B7\u09CD\u099F\u09BF\u09A4\u09AE","\u09B8\u09AA\u09CD\u09A4\u09A4\u09BF\u09A4\u09AE","\u0985\u09B6\u09C0\u09A4\u09BF\u09A4\u09AE","\u09A8\u09AC\u09A4\u09BF\u09A4\u09AE","\u09B6\u09A4\u09A4\u09AE"].includes(e)?!0:e.endsWith("\u09A4\u09AE")}t(Gi,"isBanglaOrdinal");function Hi(r){return d(r)?[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,30,40,50,60,70,80,90,100].includes(r):!1}t(Hi,"hasSpecialOrdinal");function hr(r){if(typeof r=="string"){let n=r.trim();if(n==="")return null;let o=Number(n);if(isNaN(o))return null;r=o}if(typeof r!="number"||isNaN(r)||!isFinite(r))return null;let e=Math.round(r);return e<1?null:e}t(hr,"sanitizeOrdinalInput");function Ri(r){return d(r)&&r>=1&&r<=100}t(Ri,"isInSpecialOrdinalRange");function Ki(r,e=""){try{return d(r)?y(r):e}catch{return e}}t(Ki,"safeToOrdinal");function qi(r){return r.filter(e=>d(e)).map(e=>y(e))}t(qi,"batchToOrdinal");function Zi(r){let e=hr(r);if(e===null)throw new Error("Invalid input for ordinal conversion");return y(e)}t(Zi,"parseAndConvertToOrdinal");function Xi(){return[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,30,40,50,60,70,80,90,100].map(e=>({number:e,ordinal:y(e)}))}t(Xi,"getSpecialOrdinals");function Ji(r,e){if(!d(r)||!d(e))throw new Error("Start and end must be positive integers");if(r>e)throw new Error("Start must be less than or equal to end");let n=[];for(let o=r;o<=e;o++)n.push(y(o));return n}t(Ji,"getOrdinalSequence");function Qi(r,e={}){let{separator:n=" ",showNumber:o=!0}=e,i=y(r);return o?`${r}${n}${i}`:i}t(Qi,"formatOrdinal");function rs(r){if(!d(r))throw new Error("Number must be a valid positive integer");let e=y(r);return e.endsWith("\u09A4\u09AE")&&/[০-৯]/.test(e)?"suffix":"special"}t(rs,"getOrdinalType");function es(r,e){let n=y(r);return e?`${n} ${e}`:n}t(es,"getRanking");function ns(r,e){if(!d(r)||!d(e))throw new Error("Both numbers must be valid positive integers");return r<e?-1:r>e?1:0}t(ns,"compareOrdinals");function ts(r){if(!d(r))throw new Error("Current must be a valid positive integer");return y(r+1)}t(ts,"getNextOrdinal");function os(r){if(!d(r))throw new Error("Current must be a valid positive integer");if(r===1)throw new Error("No previous ordinal for 1 (\u09AA\u09CD\u09B0\u09A5\u09AE is the first)");return y(r-1)}t(os,"getPreviousOrdinal");function is(r,e=1){if(!d(e))throw new Error("startFrom must be a valid positive integer");return r.map((n,o)=>{let i=e+o;return{position:i,ordinal:y(i),item:n}})}t(is,"createOrdinalList");function Z(r,e={}){let{includeSeconds:n=!1,use12Hour:o=!1}=e,i,s,a;if(typeof r=="string"){let F=r.split(":");if(i=parseInt(F[0],10),s=parseInt(F[1],10),a=F[2]?parseInt(F[2],10):0,Number.isNaN(i)||Number.isNaN(s))throw new Error("Invalid time string format. Use HH:mm or HH:mm:ss")}else i=r.getHours(),s=r.getMinutes(),a=r.getSeconds();let u=i,l="";o&&(i===0?(u=12,l="\u09B0\u09BE\u09A4"):i<12?l="\u09B8\u0995\u09BE\u09B2":i===12?l="\u09A6\u09C1\u09AA\u09C1\u09B0":(u=i-12,l="\u09AC\u09BF\u0995\u09BE\u09B2"));let m=f(u.toString().padStart(2,"0")),g=f(s.toString().padStart(2,"0")),C=[m,g];if(n){let F=f(a.toString().padStart(2,"0"));C.push(F)}let T=C.join(":");return l?`${T} ${l}`:T}t(Z,"formatTime");function xr(r,e=new Date){let n=r.getTime()-e.getTime(),o=Math.floor(n/1e3),i=Math.floor(o/60),s=Math.floor(i/60),a=Math.abs(s),u=new Date(e);u.setHours(0,0,0,0);let l=new Date(r);l.setHours(0,0,0,0);let m=Math.floor((l.getTime()-u.getTime())/(1e3*60*60*24));if(a<24)return o===0?"\u098F\u0996\u09A8":Math.abs(o)<60?o<0?`${f(Math.abs(o))} \u09B8\u09C7\u0995\u09C7\u09A8\u09CD\u09A1 \u0986\u0997\u09C7`:`${f(o)} \u09B8\u09C7\u0995\u09C7\u09A8\u09CD\u09A1 \u09AA\u09B0\u09C7`:Math.abs(i)<60?i<0?`${f(Math.abs(i))} \u09AE\u09BF\u09A8\u09BF\u099F \u0986\u0997\u09C7`:`${f(i)} \u09AE\u09BF\u09A8\u09BF\u099F \u09AA\u09B0\u09C7`:s<0?`${f(Math.abs(s))} \u0998\u09A3\u09CD\u099F\u09BE \u0986\u0997\u09C7`:`${f(s)} \u0998\u09A3\u09CD\u099F\u09BE \u09AA\u09B0\u09C7`;if(m===-1)return"\u0997\u09A4\u0995\u09BE\u09B2";if(m===1)return"\u0986\u0997\u09BE\u09AE\u09C0\u0995\u09BE\u09B2";if(m===-2)return"\u0997\u09A4 \u09AA\u09B0\u09B6\u09C1";if(m===2)return"\u09AA\u09B0\u09B6\u09C1";if(m<0){if(Math.abs(m)<7)return`${f(Math.abs(m))} \u09A6\u09BF\u09A8 \u0986\u0997\u09C7`;if(Math.abs(m)<30){let g=Math.floor(Math.abs(m)/7);return`${f(g)} \u09B8\u09AA\u09CD\u09A4\u09BE\u09B9 \u0986\u0997\u09C7`}else if(Math.abs(m)<365){let g=Math.floor(Math.abs(m)/30);return`${f(g)} \u09AE\u09BE\u09B8 \u0986\u0997\u09C7`}else{let g=Math.floor(Math.abs(m)/365);return`${f(g)} \u09AC\u099B\u09B0 \u0986\u0997\u09C7`}}else{if(m<7)return`${f(m)} \u09A6\u09BF\u09A8 \u09AA\u09B0\u09C7`;if(m<30){let g=Math.floor(m/7);return`${f(g)} \u09B8\u09AA\u09CD\u09A4\u09BE\u09B9 \u09AA\u09B0\u09C7`}else if(m<365){let g=Math.floor(m/30);return`${f(g)} \u09AE\u09BE\u09B8 \u09AA\u09B0\u09C7`}else{let g=Math.floor(m/365);return`${f(g)} \u09AC\u099B\u09B0 \u09AA\u09B0\u09C7`}}}t(xr,"relativeTime");function ds(r,e=new Date){let n=new Date(e);n.setHours(0,0,0,0);let o=new Date(r);o.setHours(0,0,0,0);let i=Math.floor((o.getTime()-n.getTime())/(1e3*60*60*24));return i===0?"\u0986\u099C":i===-1?"\u0997\u09A4\u0995\u09BE\u09B2":i===1?"\u0986\u0997\u09BE\u09AE\u09C0\u0995\u09BE\u09B2":i===-2?"\u0997\u09A4 \u09AA\u09B0\u09B6\u09C1":i===2?"\u09AA\u09B0\u09B6\u09C1":""}t(ds,"relativeDay");function yr(r){if(typeof r!="string")return!1;let e=r.trim();if(e==="")return!1;let n=/^(\d{1,2}):(\d{2})(?::(\d{2}))?$/,o=e.match(n);if(!o)return!1;let i=parseInt(o[1],10),s=parseInt(o[2],10),a=o[3]?parseInt(o[3],10):0;return!(i<0||i>23||s<0||s>59||a<0||a>59)}t(yr,"isValidTimeString");function ws(r){return p(r)||yr(r)}t(ws,"isValidTimeInput");function Ds(r){return yr(r)?r.trim().split(":").length===3:!1}t(Ds,"hasSeconds");function wr(r){return typeof r!="string"?"":r.trim()}t(wr,"sanitizeTimeInput");function Dr(r){let n=wr(r).split(":"),o=parseInt(n[0],10),i=parseInt(n[1],10),s=n[2]?parseInt(n[2],10):0;if(Number.isNaN(o)||Number.isNaN(i))throw new Error("Invalid time string format. Use HH:mm or HH:mm:ss");if(o<0||o>23)throw new Error("Hours must be between 0 and 23");if(i<0||i>59)throw new Error("Minutes must be between 0 and 59");if(s<0||s>59)throw new Error("Seconds must be between 0 and 59");return{hours:o,minutes:i,seconds:s}}t(Dr,"parseTime");function S(r){let{hours:e,minutes:n,seconds:o}=Dr(r);return e*3600+n*60+o}t(S,"timeToSeconds");function zr(r){if(r<0||r>=86400)throw new Error("Seconds must be between 0 and 86399");let e=Math.floor(r/3600),n=Math.floor(r%3600/60),o=r%60;return`${e.toString().padStart(2,"0")}:${n.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`}t(zr,"secondsToTime");function Ss(r,e){let n=S(r),o=S(e);return n<o?-1:n>o?1:0}t(Ss,"compareTimes");function Ts(r,e,n){let o=S(r),i=S(e),s=S(n);return o>=i&&o<=s}t(Ts,"isTimeInRange");function As(r,e){let o=S(r)+e*60;return o=(o%86400+86400)%86400,zr(o)}t(As,"addMinutesToTime");function Ws(r,e){let n=S(r),o=S(e);return Math.floor((o-n)/60)}t(Ws,"timeDifferenceMinutes");function Cs(r,e={},n=""){try{return Z(r,e)}catch{return n}}t(Cs,"safeFormatTime");function Fs(r,e=new Date,n=""){try{return xr(r,e)}catch{return n}}t(Fs,"safeRelativeTime");function $s(r){let e;if(typeof r=="string"){let{hours:n}=Dr(r);e=n}else e=r.getHours();return e>=0&&e<6?"\u09B0\u09BE\u09A4":e>=6&&e<12?"\u09B8\u0995\u09BE\u09B2":e>=12&&e<15?"\u09A6\u09C1\u09AA\u09C1\u09B0":e>=15&&e<18?"\u09AC\u09BF\u0995\u09BE\u09B2":e>=18&&e<20?"\u09B8\u09A8\u09CD\u09A7\u09CD\u09AF\u09BE":"\u09B0\u09BE\u09A4"}t($s,"getTimePeriod");function vs(r={}){return Z(new Date,r)}t(vs,"getCurrentTimeBangla");function Os(r,e){return r.getFullYear()===e.getFullYear()&&r.getMonth()===e.getMonth()&&r.getDate()===e.getDate()}t(Os,"isSameDay");function X(r,e={}){let{includeCountryCode:n=!1,useBanglaDigits:o=!1,format:i="spaced"}=e,s=r.replace(/\D/g,""),a=s;if(s.startsWith("880")?a=s.slice(3):s.startsWith("+880")&&(a=s.slice(4)),a.length!==10&&a.length!==11)throw new Error("Invalid Bangladeshi phone number length");let u="";return a.length===11?u=`${a.slice(0,3)} ${a.slice(3,7)} ${a.slice(7)}`:u=`0${a.slice(0,2)} ${a.slice(2,6)} ${a.slice(6)}`,i==="dashed"?u=u.replace(/\s/g,"-"):i==="compact"&&(u=u.replace(/\s/g,"")),n&&(u="+880 "+u),o&&(u=f(u.replace(/\s|-/g,"")),i==="spaced"?u=`${u.slice(0,3)} ${u.slice(3,7)} ${u.slice(7)}`:i==="dashed"&&(u=`${u.slice(0,3)}-${u.slice(3,7)}-${u.slice(7)}`),n&&(u="+\u09EE\u09EE\u09E6 "+u)),u}t(X,"formatPhone");function J(r){let e=r.replace(/\D/g,""),n=e;if(e.startsWith("880")?n=e.slice(3):e.startsWith("+880")&&(n=e.slice(4)),n.length!==10&&n.length!==11||!n.startsWith("01")&&n.length===11||n.length===10&&!n.startsWith("1"))return!1;let o=n.length===11?n.slice(0,3):"0"+n.slice(0,2);return["013","014","015","016","017","018","019"].includes(o)}t(J,"validatePhone");function Js(r){return["013","014","015","016","017","018","019"].includes(r)}t(Js,"isValidOperatorCode");function Qs(r){let e=r.trim();return e.startsWith("+880")||e.startsWith("880")}t(Qs,"hasCountryCode");function Br(r){if(typeof r!="string")return"";let e=r.trim(),n=e.startsWith("+");return e=e.replace(/\D/g,""),n&&(e="+"+e),e}t(Br,"sanitizePhoneNumber");function ra(r){return typeof r!="string"?!1:/^[\d\s\-()+ ]+$/.test(r.trim())}t(ra,"isValidPhoneFormat");function ia(r){if(!J(r))return null;let e=r.replace(/\D/g,""),n=e;e.startsWith("880")&&(n=e.slice(3));let o=n.length===11?n.slice(0,3):"0"+n.slice(0,2),s={"013":{name:"Grameenphone",nameBangla:"\u0997\u09CD\u09B0\u09BE\u09AE\u09C0\u09A3\u09AB\u09CB\u09A8"},"014":{name:"Banglalink",nameBangla:"\u09AC\u09BE\u0982\u09B2\u09BE\u09B2\u09BF\u0982\u0995"},"015":{name:"Teletalk",nameBangla:"\u099F\u09C7\u09B2\u09BF\u099F\u0995"},"016":{name:"Airtel",nameBangla:"\u098F\u09AF\u09BC\u09BE\u09B0\u099F\u09C7\u09B2"},"017":{name:"Grameenphone",nameBangla:"\u0997\u09CD\u09B0\u09BE\u09AE\u09C0\u09A3\u09AB\u09CB\u09A8"},"018":{name:"Robi",nameBangla:"\u09B0\u09AC\u09BF"},"019":{name:"Banglalink",nameBangla:"\u09AC\u09BE\u0982\u09B2\u09BE\u09B2\u09BF\u0982\u0995"}}[o];return s?{code:o,...s}:null}t(ia,"getOperator");function Gr(r){if(!J(r))throw new Error("Invalid phone number");let e=r,n=r.replace(/\D/g,""),o=n,i="880";n.startsWith("880")&&(o=n.slice(3)),o.length===10&&(o="0"+o);let s=o.slice(0,3),a=o.slice(3);return{original:e,countryCode:i,operatorCode:s,number:a,fullNumber:o}}t(Gr,"parsePhoneNumber");function Y(r){return Gr(r).fullNumber}t(Y,"normalizePhoneNumber");function sa(r,e="plus"){let o=Y(r).slice(1);return e==="plus"?`+880${o}`:`880${o}`}t(sa,"addCountryCode");function aa(r){return Y(r)}t(aa,"removeCountryCode");function ua(r,e={},n=""){try{return X(r,e)}catch{return n}}t(ua,"safeFormatPhone");function fa(r,e){try{let n=Y(r),o=Y(e);return n===o}catch{return!1}}t(fa,"isSameNumber");function ma(){return["013","014","015","016","017","018","019"]}t(ma,"getAllOperatorCodes");function la(){return[{code:"013",name:"Grameenphone",nameBangla:"\u0997\u09CD\u09B0\u09BE\u09AE\u09C0\u09A3\u09AB\u09CB\u09A8"},{code:"014",name:"Banglalink",nameBangla:"\u09AC\u09BE\u0982\u09B2\u09BE\u09B2\u09BF\u0982\u0995"},{code:"015",name:"Teletalk",nameBangla:"\u099F\u09C7\u09B2\u09BF\u099F\u0995"},{code:"016",name:"Airtel",nameBangla:"\u098F\u09AF\u09BC\u09BE\u09B0\u099F\u09C7\u09B2"},{code:"017",name:"Grameenphone",nameBangla:"\u0997\u09CD\u09B0\u09BE\u09AE\u09C0\u09A3\u09AB\u09CB\u09A8"},{code:"018",name:"Robi",nameBangla:"\u09B0\u09AC\u09BF"},{code:"019",name:"Banglalink",nameBangla:"\u09AC\u09BE\u0982\u09B2\u09BE\u09B2\u09BF\u0982\u0995"}]}t(la,"getAllOperators");function ca(r,e={}){let n=Br(r);return X(n,e)}t(ca,"parseAndFormat");function ya(r){return/^[\u0980-\u09FF\s]+$/.test(r)}t(ya,"validateBangla");function Nr(r){return/[০-৯]/.test(r)}t(Nr,"isBanglaDigit");function Ia(r){return/[\u0980-\u09FF]/.test(r)}t(Ia,"isBanglaText");function Hr(r){let e=r.match(/[\u0980-\u09FF]/g);return e?e.length:0}t(Hr,"countBengaliCharacters");function Ta(r){let e=r.match(/[০-৯]/g);return e?e.length:0}t(Ta,"countBengaliDigits");function Aa(r){let e=/[\u0980-\u09FF]/.test(r),n=/[a-zA-Z0-9]/.test(r);return e&&n}t(Aa,"isMixedContent");function Ir(r,e=!1){return e?r.replace(/[^\u0980-\u09FF\s]/g,"").trim():r.replace(/[^\u0980-\u09FF]/g,"")}t(Ir,"extractBengaliChars");function Rr(r){return r.replace(/[\u0980-\u09FF]/g,"")}t(Rr,"removeBengaliChars");function Yr(r){let e=r.replace(/\s/g,"");if(e.length===0)return 0;let n=Hr(r);return Math.round(n/e.length*100)}t(Yr,"getBengaliPercentage");function Wa(r){return Yr(r)>50}t(Wa,"isPrimarilyBengali");function Ca(r,e=!0,n=""){let o=Ir(r,e);return o.length>0?o:n}t(Ca,"sanitizeBengaliText");function Fa(r){return/\d|[০-৯]/.test(r)?!/\d/.test(r)&&Nr(r):!1}t(Fa,"hasOnlyBengaliDigits");function $a(r){return r.replace(/\s+/g," ").trim()}t($a,"normalizeWhitespace");function va(r){return{bengali:Ir(r,!0).trim(),nonBengali:Rr(r).trim()}}t(va,"splitBengaliContent");function Oa(r){return/[ক-হড়ঢ়য়ৎ]/.test(r)}t(Oa,"hasBengaliConsonants");function Pa(r){return/[অ-ঔা-ৌ]/.test(r)}t(Pa,"hasBengaliVowels");export{$ as BANGLA_DIGITS,M as BANGLA_MONTHS,b as BANGLA_SEASONS,O as BANGLA_WEEKDAYS,v as ENGLISH_DIGITS,sa as addCountryCode,yo as addDays,Ko as addDaysToBengaliDate,As as addMinutesToTime,dn as addTax,bn as applyDiscount,gn as batchFormatCurrency,lo as batchFormatDates,Ae as batchFromBanglaNumber,co as batchParseDates,ut as batchToBanglaMonth,Te as batchToBanglaNumber,ni as batchToBengali,qi as batchToOrdinal,sr as calculatePercentage,go as canParseBengaliDate,br as compareBengaliDates,xn as compareCurrency,gr as compareDates,ot as compareMonths,ns as compareOrdinals,Ss as compareTimes,ve as convertToWordsAndDigits,Hr as countBengaliCharacters,Ta as countBengaliDigits,is as createOrdinalList,Wr as divideCurrency,Ir as extractBengaliChars,$e as formatAndConvert,ri as formatBengaliDate,z as formatCurrency,K as formatDate,nr as formatNumber,Qi as formatOrdinal,X as formatPhone,Z as formatTime,mo as formatToday,me as formatWithUnits,D as fromBanglaMonth,w as fromBanglaNumber,H as fromBanglaWeekday,L as fromBengali,yn as getAbsoluteAmount,Ht as getAllBanglaWeekdays,rt as getAllMonths,ma as getAllOperatorCodes,la as getAllOperators,Di as getAllSeasons,pr as getBengaliDate,qo as getBengaliDateDifference,Vr as getBengaliMonthDays,A as getBengaliMonthLengths,Yr as getBengaliPercentage,ei as getCurrentBengaliDate,Ti as getCurrentSeason,vs as getCurrentTimeBangla,Rt as getDaysBetween,xo as getDaysDifference,Xo as getFirstDayOfBengaliMonth,Jo as getLastDayOfBengaliMonth,st as getMonthFromIndex,it as getMonthIndex,ft as getMonthMapping,ar as getMonthName,Cr as getMonthRange,kt as getNextBanglaWeekday,et as getNextMonth,ts as getNextOrdinal,Ii as getNextSeason,$r as getNextWeekday,ia as getOperator,Ji as getOrdinalSequence,rs as getOrdinalType,Lt as getPreviousBanglaWeekday,nt as getPreviousMonth,os as getPreviousOrdinal,Mi as getPreviousSeason,vr as getPreviousWeekday,es as getRanking,G as getSeason,Bi as getSeasonByIndex,R as getSeasonFromMonth,q as getSeasonIndex,Wi as getSeasonInfo,dr as getSeasonMonths,Xi as getSpecialOrdinals,$s as getTimePeriod,mr as getWeekdayName,Oa as hasBengaliConsonants,Ln as hasBengaliDigits,Vn as hasBengaliMonth,Pa as hasBengaliVowels,Qs as hasCountryCode,Fa as hasOnlyBengaliDigits,Ds as hasSeconds,Hi as hasSpecialOrdinal,tn as hasTakaSymbol,on as hasTakaWord,Tr as isBanglaCurrency,Nr as isBanglaDigit,Gi as isBanglaOrdinal,Ia as isBanglaText,Pt as isBanglaWeekend,Zo as isBengaliDateInRange,Qo as isBengaliLeapYear,nn as isCurrencyInRange,wo as isDateInRange,ho as isFuture,Ri as isInSpecialOrdinalRange,Aa as isMixedContent,tt as isMonthInRange,Ni as isMonthInSeason,rn as isNegativeAmount,Oe as isNumberInRange,bo as isPast,Qe as isPositiveAmount,Wa as isPrimarilyBengali,Os as isSameDay,fa as isSameNumber,Ai as isSameSeason,Ts as isTimeInRange,po as isToday,B as isValidBanglaMonth,he as isValidBanglaNumber,At as isValidBanglaWeekday,x as isValidBengaliDate,ur as isValidBengaliDateString,kr as isValidBengaliDay,V as isValidBengaliMonth,W as isValidBengaliYear,c as isValidCurrency,p as isValidDate,bi as isValidDateForSeason,Wt as isValidDateForWeekday,gi as isValidMonth,N as isValidMonthNumber,xe as isValidNumber,we as isValidNumberForOrdinal,ye as isValidNumberForWords,Js as isValidOperatorCode,d as isValidOrdinal,ra as isValidPhoneFormat,pi as isValidSeasonName,ws as isValidTimeInput,yr as isValidTimeString,Tt as isValidWeekdayNumber,Fr as isWeekend,en as isZeroAmount,pn as multiplyCurrency,wn as negateAmount,Y as normalizePhoneNumber,$a as normalizeWhitespace,Fe as parseAndConvertToBangla,at as parseAndConvertToMonth,Zi as parseAndConvertToOrdinal,ca as parseAndFormat,Dn as parseAndFormatCurrency,j as parseCurrency,cr as parseDate,Gr as parsePhoneNumber,Dr as parseTime,Vt as parseWeekdayInput,ds as relativeDay,xr as relativeTime,Rr as removeBengaliChars,aa as removeCountryCode,E as roundCurrency,ln as safeFormatCurrency,Or as safeFormatDate,ua as safeFormatPhone,Cs as safeFormatTime,Qn as safeFromBanglaMonth,Ce as safeFromBanglaNumber,Gt as safeFromBanglaWeekday,jo as safeFromBengali,Ei as safeGetSeason,Si as safeGetSeasonFromMonth,cn as safeParseCurrency,Pr as safeParseDate,Fs as safeRelativeTime,Jn as safeToBanglaMonth,We as safeToBanglaNumber,zt as safeToBanglaWeekday,Lr as safeToBengali,Ki as safeToOrdinal,Yn as sanitizeBanglaMonth,zo as sanitizeBengaliDate,Ca as sanitizeBengaliText,or as sanitizeCurrencyInput,zn as sanitizeDate,fr as sanitizeMonthNumber,tr as sanitizeNumberInput,hr as sanitizeOrdinalInput,Br as sanitizePhoneNumber,wr as sanitizeTimeInput,lr as sanitizeWeekdayInput,zr as secondsToTime,hn as splitAmount,va as splitBengaliContent,ir as subtractCurrency,Ar as sumCurrency,Ws as timeDifferenceMinutes,S as timeToSeconds,h as toBanglaMonth,f as toBanglaNumber,k as toBanglaWeekday,I as toBengali,y as toOrdinal,U as toWords,Pe as truncateDecimals,ya as validateBangla,J as validatePhone};
|
|
1
|
+
var zr=Object.defineProperty;var t=(r,e)=>zr(r,"name",{value:e,configurable:!0});var R=["\u09E6","\u09E7","\u09E8","\u09E9","\u09EA","\u09EB","\u09EC","\u09ED","\u09EE","\u09EF"],V=["0","1","2","3","4","5","6","7","8","9"];var M=["\u09AC\u09C8\u09B6\u09BE\u0996","\u099C\u09CD\u09AF\u09C8\u09B7\u09CD\u09A0","\u0986\u09B7\u09BE\u09A2\u09BC","\u09B6\u09CD\u09B0\u09BE\u09AC\u09A3","\u09AD\u09BE\u09A6\u09CD\u09B0","\u0986\u09B6\u09CD\u09AC\u09BF\u09A8","\u0995\u09BE\u09B0\u09CD\u09A4\u09BF\u0995","\u0985\u0997\u09CD\u09B0\u09B9\u09BE\u09AF\u09BC\u09A3","\u09AA\u09CC\u09B7","\u09AE\u09BE\u0998","\u09AB\u09BE\u09B2\u09CD\u0997\u09C1\u09A8","\u099A\u09C8\u09A4\u09CD\u09B0"];var A=["\u09B0\u09AC\u09BF\u09AC\u09BE\u09B0","\u09B8\u09CB\u09AE\u09AC\u09BE\u09B0","\u09AE\u0999\u09CD\u0997\u09B2\u09AC\u09BE\u09B0","\u09AC\u09C1\u09A7\u09AC\u09BE\u09B0","\u09AC\u09C3\u09B9\u09B8\u09CD\u09AA\u09A4\u09BF\u09AC\u09BE\u09B0","\u09B6\u09C1\u0995\u09CD\u09B0\u09AC\u09BE\u09B0","\u09B6\u09A8\u09BF\u09AC\u09BE\u09B0"];var d=["\u0997\u09CD\u09B0\u09C0\u09B7\u09CD\u09AE","\u09AC\u09B0\u09CD\u09B7\u09BE","\u09B6\u09B0\u09CE","\u09B9\u09C7\u09AE\u09A8\u09CD\u09A4","\u09B6\u09C0\u09A4","\u09AC\u09B8\u09A8\u09CD\u09A4"];var k=["013","014","015","016","017","018","019"],er={"013":{name:"Grameenphone",nameBangla:"\u0997\u09CD\u09B0\u09BE\u09AE\u09C0\u09A3\u09AB\u09CB\u09A8"},"014":{name:"Banglalink",nameBangla:"\u09AC\u09BE\u0982\u09B2\u09BE\u09B2\u09BF\u0982\u0995"},"015":{name:"Teletalk",nameBangla:"\u099F\u09C7\u09B2\u09BF\u099F\u0995"},"016":{name:"Airtel",nameBangla:"\u098F\u09AF\u09BC\u09BE\u09B0\u099F\u09C7\u09B2"},"017":{name:"Grameenphone",nameBangla:"\u0997\u09CD\u09B0\u09BE\u09AE\u09C0\u09A3\u09AB\u09CB\u09A8"},"018":{name:"Robi",nameBangla:"\u09B0\u09AC\u09BF"},"019":{name:"Banglalink",nameBangla:"\u09AC\u09BE\u0982\u09B2\u09BE\u09B2\u09BF\u0982\u0995"}};function m(r){if(r==null)throw new TypeError("Invalid input");let e=String(r).trim();if(e==="")throw new Error("Empty input");if(/[eE]/.test(e))throw new Error("Scientific notation not supported");if(typeof r=="number"){if(!Number.isFinite(r))throw new TypeError("Input must be a finite number");if(Number.isInteger(r)&&Math.abs(r)>=1e5){let a=Math.abs(r),s=Math.log10(a);if(Number.isInteger(s)&&s>=5)throw new Error("Scientific notation not supported")}if(Number.isInteger(r)&&!Number.isSafeInteger(r))throw new TypeError("Input must be a safe integer")}if(/[০-৯]/.test(e))throw new Error("Input already contains Bangla digits");let n=!1,o=!1,i="";for(let a=0;a<e.length;a++){let s=e[a];if(s==="."){if(n)throw new Error("Multiple decimal points");n=!0,i+=".";continue}if(s==="-"){if(a!==0)throw new Error("Invalid minus position");i+="-";continue}let u=V.indexOf(s);if(u!==-1){o=!0,i+=R[u];continue}throw new Error(`Invalid character in number: ${s}`)}if(!o)throw new Error("No digits found");if(n){if(e.startsWith(".")||e.startsWith("-."))throw new Error("Decimal must have leading digit");if(e.endsWith("."))throw new Error("Decimal must have trailing digit")}return i}t(m,"toBanglaNumber");function I(r){if(typeof r!="string")throw new TypeError("Input must be a string");let e=r.trim();if(e==="")throw new Error("Empty input");let n=!1,o=!1,i="";for(let s=0;s<e.length;s++){let u=e[s];if(u==="."){if(n)throw new Error("Multiple decimal points");n=!0,i+=".";continue}if(u==="-"){if(s!==0)throw new Error("Invalid minus position");i+="-";continue}let c=R.indexOf(u);if(c!==-1){o=!0,i+=V[c];continue}throw new Error(`Invalid Bangla digit: ${u}`)}if(!o)throw new Error("No digits found");if(n){if(e.startsWith(".")||e.startsWith("-."))throw new Error("Decimal must have leading digit");if(e.endsWith("."))throw new Error("Decimal must have trailing digit")}let a=Number(i);if(!Number.isFinite(a))throw new TypeError("Failed to parse Bangla number");return a}t(I,"fromBanglaNumber");function nr(r){if(r===0)return"\u09B6\u09C2\u09A8\u09CD\u09AF";if(r<0)return"\u098B\u09A3\u09BE\u09A4\u09CD\u09AE\u0995 "+nr(-r);if(r<100)return tr(r);if(r<1e3)return L(r);if(r<1e5)return br(r);if(r<1e7)return dr(r);if(r<1e9)return hr(r);if(r<1e11)return Gr(r);throw new Error("Number too large to convert to words")}t(nr,"toWords");function tr(r){let e=["","\u098F\u0995","\u09A6\u09C1\u0987","\u09A4\u09BF\u09A8","\u099A\u09BE\u09B0","\u09AA\u09BE\u0981\u099A","\u099B\u09AF\u09BC","\u09B8\u09BE\u09A4","\u0986\u099F","\u09A8\u09AF\u09BC","\u09A6\u09B6","\u098F\u0997\u09BE\u09B0\u09CB","\u09AC\u09BE\u09B0\u09CB","\u09A4\u09C7\u09B0\u09CB","\u099A\u09CC\u09A6\u09CD\u09A6","\u09AA\u09A8\u09C7\u09B0\u09CB","\u09B7\u09CB\u09B2","\u09B8\u09A4\u09C7\u09B0\u09CB","\u0986\u09A0\u09BE\u09B0\u09CB","\u098A\u09A8\u09BF\u09B6","\u09AC\u09BF\u09B6"],n=["","","\u0995\u09C1\u09A1\u09BC\u09BF","\u09A4\u09BF\u09B0\u09BF\u09B6","\u099A\u09B2\u09CD\u09B2\u09BF\u09B6","\u09AA\u099E\u09CD\u099A\u09BE\u09B6","\u09B7\u09BE\u099F","\u09B8\u09A4\u09CD\u09A4\u09B0","\u0986\u09B6\u09BF","\u09A8\u09AC\u09CD\u09AC\u0987"];if(r===0)return"";if(r<20)return e[r];if(r===23)return"\u09A4\u09C7\u0987\u09B6";if(r===34)return"\u099A\u09CC\u09A4\u09CD\u09B0\u09BF\u09B6";if(r===56)return"\u099B\u09BE\u09AA\u09CD\u09AA\u09BE\u09A8\u09CD\u09A8";let o=Math.floor(r/10),i=r%10;return i===0?n[o]:n[o]+" "+e[i]}t(tr,"convertBelowHundred");function L(r){let e=Math.floor(r/100),n=r%100,o="";return e>0&&(e===1?o="\u098F\u0995\u09B6\u09A4":o=tr(e)+"\u09B6\u09A4"),n>0&&(o+=(o?" ":"")+tr(n)),o}t(L,"convertBelowThousand");function br(r){let e=Math.floor(r/1e3),n=r%1e3,o="";return e>0&&(e===1?o="\u098F\u0995 \u09B9\u09BE\u099C\u09BE\u09B0":o=L(e)+" \u09B9\u09BE\u099C\u09BE\u09B0"),n>0&&(o+=(o?" ":"")+L(n)),o}t(br,"convertBelowLakh");function dr(r){let e=Math.floor(r/1e5),n=r%1e5,o="";return e>0&&(e===1?o="\u098F\u0995 \u09B2\u0995\u09CD\u09B7":o=L(e)+" \u09B2\u0995\u09CD\u09B7"),n>0&&(o+=(o?" ":"")+br(n)),o}t(dr,"convertBelowCrore");function hr(r){let e=Math.floor(r/1e7),n=r%1e7,o="";return e>0&&(e===1?o="\u098F\u0995 \u0995\u09CB\u099F\u09BF":o=L(e)+" \u0995\u09CB\u099F\u09BF"),n>0&&(o+=(o?" ":"")+dr(n)),o}t(hr,"convertBelowArab");function Gr(r){let e=Math.floor(r/1e9),n=r%1e9,o="";return e>0&&(e===1?o="\u098F\u0995 \u09B9\u09BE\u099C\u09BE\u09B0 \u0995\u09CB\u099F\u09BF":o=L(e)+" \u09B9\u09BE\u099C\u09BE\u09B0 \u0995\u09CB\u099F\u09BF"),n>0&&(o+=(o?" ":"")+hr(n)),o}t(Gr,"convertBelowKharab");function xr(r,e={}){let{useBanglaDigits:n=!0,separator:o=","}=e,i=typeof r=="string"?r:r.toString(),[a,s]=i.split("."),u=a;n&&(u=m(a));let c=_r(u,o);if(s!==void 0){let f=n?m(s):s;return`${c}.${f}`}return c}t(xr,"formatNumber");function _r(r,e){let n=r.startsWith("-"),o=n?r.slice(1):r;if(o.length<=3)return r;let a=o.slice(-3),s=o.slice(0,-3),u=[];for(let f=s.length;f>0;f-=2){let g=Math.max(0,f-2);u.unshift(s.slice(g,f))}let c=`${u.join(e)}${e}${a}`;return n?`-${c}`:c}t(_r,"formatIntegerPart");function Ae(r,e={}){let{precision:n=2,useBanglaDigits:o=!0}=e;if(r===0)return o?"\u09E6":"0";let i=Math.abs(r),a=r<0?"-":"",s,u;if(i>=1e7)s=i/1e7,u="\u0995\u09CB\u099F\u09BF";else if(i>=1e5)s=i/1e5,u="\u09B2\u0995\u09CD\u09B7";else if(i>=1e3)s=i/1e3,u="\u09B9\u09BE\u099C\u09BE\u09B0";else{let g=o?m(i):i.toString();return a+g}let c=Number(s.toFixed(n)),f=o?m(c):c.toString();return a+f+" "+u}t(Ae,"formatWithUnits");function w(r){return typeof r=="string"}t(w,"isString");function K(r){return typeof r=="number"}t(K,"isNumber");function yr(r){return r==null}t(yr,"isNullish");var b={isFinite:t(r=>Number.isFinite(r),"isFinite"),isSafeInteger:t(r=>Number.isSafeInteger(r),"isSafeInteger"),isInteger:t(r=>Number.isFinite(r)&&Number.isInteger(r),"isInteger"),isPositive:t(r=>Number.isFinite(r)&&r>0,"isPositive"),isNonNegative:t(r=>Number.isFinite(r)&&r>=0,"isNonNegative"),isNegative:t(r=>Number.isFinite(r)&&r<0,"isNegative"),hasValidDecimalFormat:t(r=>r.split(".").length<=2&&!r.startsWith(".")&&!r.endsWith("."),"hasValidDecimalFormat"),isValidNumber:t(r=>Number.isFinite(r)&&!isNaN(r),"isValidNumber"),isInSafeIntegerRange:t(r=>Number.isFinite(r)&&r>=Number.MIN_SAFE_INTEGER&&r<=Number.MAX_SAFE_INTEGER,"isInSafeIntegerRange")};function or(r,e,n){return b.isFinite(r)&&r>=e&&r<=n}t(or,"isNumberInRange");function z(r,e){return n=>or(n,r,e)}t(z,"createNumberRangeValidator");var F={isMonthNumber:z(1,12),isWeekdayNumber:z(0,6),isHour:z(0,23),isMinuteOrSecond:z(0,59),isSeasonNumber:z(1,6),isPercentage:z(0,100)};function Je(r){if(!w(r))return!1;let e=r.trim();if(e==="")return!1;let n=!1,o=!1;for(let i=0;i<e.length;i++){let a=e[i];if(a==="."){if(n)return!1;n=!0;continue}if(a==="-"){if(i!==0)return!1;continue}if(R.indexOf(a)!==-1){o=!0;continue}return!1}return!(!o||n&&(e.startsWith(".")||e.startsWith("-.")||e.endsWith(".")))}t(Je,"isValidBanglaNumber");function Qe(r){if(yr(r))return!1;let e=String(r).trim();if(e===""||/[eE]/.test(e))return!1;if(K(r)){if(!b.isFinite(r)||b.isInteger(r)&&!b.isSafeInteger(r))return!1;if(b.isInteger(r)&&Math.abs(r)>=1e5){let i=Math.abs(r),a=Math.log10(i);if(Number.isInteger(a)&&a>=5)return!1}}if(/[০-৯]/.test(e))return!1;let n=!1,o=!1;for(let i=0;i<e.length;i++){let a=e[i];if(a==="."){if(n)return!1;n=!0;continue}if(a==="-"){if(i!==0)return!1;continue}if(V.indexOf(a)!==-1){o=!0;continue}return!1}return!(!o||n&&(e.startsWith(".")||e.startsWith("-.")||e.endsWith(".")))}t(Qe,"isValidNumber");function rt(r){return!K(r)||!b.isFinite(r)||!b.isInteger(r)?!1:r>=-99999999999&&r<=99999999999}t(rt,"isValidNumberForWords");function et(r){return!K(r)||!b.isFinite(r)||!b.isInteger(r)?!1:b.isPositive(r)}t(et,"isValidNumberForOrdinal");function wr(r){if(!w(r))return"";let e=r.trim();return e=e.replace(/,/g,""),e=e.replace(/৳/g,""),e.trim()}t(wr,"sanitizeNumberInput");function ir(r,e){return(n,o)=>{try{return r(n)}catch{return o??e??void 0}}}t(ir,"createSafeWrapper");function ar(r){return e=>{let n=[],o=[];for(let i of e)try{let a=r(i);n.push({input:i,output:a})}catch(a){o.push({input:i,error:a instanceof Error?a.message:String(a)})}return{success:n,errors:o}}}t(ar,"createBatchProcessor");function q(r,e){return n=>n.filter(o=>e(o)).map(o=>r(o))}t(q,"createValidatingBatchProcessor");var Dt=ar(m),Tt=ar(I),It=ir(m,""),Nt=ir(I,0);function Bt(r){let e=wr(r);return m(e)}t(Bt,"parseAndConvertToBangla");function Et(r,e=!0,n=","){return xr(r,{useBanglaDigits:e,separator:n})}t(Et,"formatAndConvert");function St(r){return{words:nr(r),digits:m(r)}}t(St,"convertToWordsAndDigits");var Mt=or;function Ct(r,e=2){let n=Math.pow(10,e);return Math.trunc(r*n)/n}t(Ct,"truncateDecimals");function Y(r,e={}){let{includeSymbol:n=!0,includeWord:o=!1}=e,i=typeof r=="string"?parseFloat(r):r;if(Number.isNaN(i))throw new Error("Invalid amount");let a=m(i.toFixed(2)),s=[];return n&&s.push("\u09F3"),s.push(a),o&&s.push("\u099F\u09BE\u0995\u09BE"),s.join(" ")}t(Y,"formatCurrency");function sr(r){let e=r.replace(/৳/g,"").replace(/টাকা/g,"").trim();return e=e.replace(/\s+/g,""),I(e)}t(sr,"parseCurrency");function l(r){return typeof r=="number"&&!isNaN(r)&&isFinite(r)}t(l,"isValidCurrency");function Hr(r){if(typeof r!="string"||!r.trim())return!1;let e=r.trim();return e.includes("\u09F3")||e.includes("\u099F\u09BE\u0995\u09BE")?!0:/[০-৯]/.test(e)}t(Hr,"isBanglaCurrency");function Ut(r){return l(r)&&r>0}t(Ut,"isPositiveAmount");function jt(r){return l(r)&&r<0}t(jt,"isNegativeAmount");function Kt(r){return l(r)&&r===0}t(Kt,"isZeroAmount");function Dr(r){if(typeof r=="number")return isNaN(r)||!isFinite(r)?null:r;if(typeof r=="string"){let e=r.trim();if(e==="")return null;if(Hr(e))return e;let n=parseFloat(e);return isNaN(n)?null:n}return null}t(Dr,"sanitizeCurrencyInput");function qt(r,e,n){return!l(r)||!l(e)||!l(n)||e>n?!1:r>=e&&r<=n}t(qt,"isCurrencyInRange");function Zt(r){return typeof r!="string"?!1:r.includes("\u09F3")}t(Zt,"hasTakaSymbol");function Xt(r){return typeof r!="string"?!1:r.includes("\u099F\u09BE\u0995\u09BE")}t(Xt,"hasTakaWord");function N(r,e=2){if(!l(r))throw new Error("Invalid currency amount");let n=Math.pow(10,e);return Math.round(r*n)/n}t(N,"roundCurrency");function Tr(r){let n=r.filter(o=>l(o)).reduce((o,i)=>o+i,0);return N(n,2)}t(Tr,"sumCurrency");function en(r,e){if(!l(r)||!l(e))throw new Error("Invalid currency amounts");return N(r+e,2)}t(en,"addCurrency");function Z(r,e){if(!l(r)||!l(e))throw new Error("Invalid currency amounts");return N(r-e,2)}t(Z,"subtractCurrency");function tn(r,e){if(!l(r)||!l(e))throw new Error("Invalid currency amount or factor");return N(r*e,2)}t(tn,"multiplyCurrency");function Ir(r,e){if(!l(r)||!l(e))throw new Error("Invalid currency amount or divisor");if(e===0)throw new Error("Cannot divide by zero");return N(r/e,2)}t(Ir,"divideCurrency");function X(r,e){if(!l(r)||!l(e))throw new Error("Invalid currency amount or percentage");return N(r*e/100,2)}t(X,"calculatePercentage");function un(r,e){let n=X(r,e);return Z(r,n)}t(un,"applyDiscount");function mn(r,e){let n=X(r,e);return N(r+n,2)}t(mn,"addTax");function fn(r,e){return X(r,e)}t(fn,"calculateTax");function ln(r,e){return X(r,e)}t(ln,"calculateDiscount");function dn(r,e){if(!l(r))throw new Error("Invalid currency amount");if(!Number.isInteger(e)||e<1)throw new Error("Parts must be a positive integer");let n=Ir(r,e),o=Array(e-1).fill(n),i=Tr(o),a=Z(r,i);return o.push(a),o}t(dn,"splitAmount");function hn(r){if(!l(r))throw new Error("Invalid currency amount");return Math.ceil(r)}t(hn,"ceilCurrency");function xn(r){if(!l(r))throw new Error("Invalid currency amount");return Math.floor(r)}t(xn,"floorCurrency");function Yr(r){return(e,n)=>{let o=r(e),i=r(n);return o<i?-1:o>i?1:0}}t(Yr,"createComparator");var U={number:t((r,e)=>r<e?-1:r>e?1:0,"number"),string:t((r,e)=>r<e?-1:r>e?1:0,"string"),date:Yr(r=>r.getTime()),currency:t((r,e)=>{let n=Math.round(r*100)/100,o=Math.round(e*100)/100;return U.number(n,o)},"currency"),boolean:t((r,e)=>r===e?0:r?1:-1,"boolean")};function Pn(r,e={},n=""){try{let o=typeof r=="string"?parseFloat(r):r;return l(o)?Y(r,e):n}catch{return n}}t(Pn,"safeFormatCurrency");function $n(r,e=0){try{let n=sr(r);return l(n)?n:e}catch{return e}}t($n,"safeParseCurrency");function Rn(r,e={}){return q(o=>Y(o,e),l)(r)}t(Rn,"batchFormatCurrency");function Nr(r,e){if(!l(r)||!l(e))throw new Error("Invalid currency amounts");return U.currency(r,e)}t(Nr,"compareCurrency");function Vn(r){if(!l(r))throw new Error("Invalid currency amount");return Math.abs(r)}t(Vn,"getAbsoluteAmount");function kn(r){if(!l(r))throw new Error("Invalid currency amount");return-r}t(kn,"negateAmount");function Ln(r,e={}){let n=Dr(r);if(n===null)throw new Error("Invalid currency input");if(typeof n=="string"){let o=sr(n);return Y(o,e)}return Y(n,e)}t(Ln,"parseAndFormatCurrency");function zn(r,e){return!l(r)||!l(e)?!1:N(r,2)===N(e,2)}t(zn,"isCurrencyEqual");function Gn(r,e){return Nr(r,e)===1}t(Gn,"isGreaterThan");function _n(r,e){return Nr(r,e)===-1}t(_n,"isLessThan");function h(r){if(r<1||r>12)throw new Error("Month number must be between 1 and 12");return M[r-1]}t(h,"toBanglaMonth");function B(r){let e=M.indexOf(r);if(e===-1)throw new Error(`Invalid Bangla month name: ${r}`);return e+1}t(B,"fromBanglaMonth");function G(r){let{year:e,month:n,day:o}=r,i=W(e);if(n<1||n>12)throw new Error("Invalid Bangla month");if(o<1||o>i[n-1])throw new Error("Invalid Bangla day for given month");let a=e+593,s=new Date(Date.UTC(a,3,14)),u=0;for(let c=1;c<n;c++)u+=i[c-1];return u+=o-1,new Date(s.getTime()+u*864e5)}t(G,"fromBanglaCalendar");function v(r){return typeof r=="number"&&Number.isInteger(r)&&r>0&&isFinite(r)}t(v,"isValidBanglaYear");function _(r){return typeof r=="number"&&Number.isInteger(r)&&r>=1&&r<=12}t(_,"isValidBanglaMonthNumber");function Ur(r,e,n){if(typeof r!="number"||!Number.isInteger(r)||r<1||!_(e)||!v(n))return!1;let o=W(n);return r<=o[e-1]}t(Ur,"isValidBanglaDay");function D(r){if(!r||typeof r!="object")return!1;let{year:e,month:n,day:o}=r;return v(e)&&_(n)&&Ur(o,n,e)}t(D,"isValidBanglaDate");function uo(r){return D(r)?r:null}t(uo,"sanitizeBanglaDate");function jr(r,e){try{return!(r instanceof Date)||isNaN(r.getTime())?e||x(new Date):x(r)}catch{return e||x(new Date)}}t(jr,"safeToBangla");function bo(r,e){try{return D(r)?G(r):e||new Date}catch{return e||new Date}}t(bo,"safeFromBangla");function Kr(r,e){return!_(r)||!v(e)?0:W(e)[r-1]}t(Kr,"getBanglaMonthDays");function ho(r,e){if(!D(r))throw new Error("Invalid Bangla date");let n=G(r),o=new Date(n.getTime()+e*864e5);return x(o)}t(ho,"addDaysToBanglaDate");function xo(r,e){if(!D(r)||!D(e))throw new Error("Invalid Bangla date");let n=G(r),o=G(e);return Math.floor((o.getTime()-n.getTime())/864e5)}t(xo,"getBanglaDateDifference");function Br(r,e){if(!D(r)||!D(e))throw new Error("Invalid Bangla date");return r.year!==e.year?r.year<e.year?-1:1:r.month!==e.month?r.month<e.month?-1:1:r.day!==e.day?r.day<e.day?-1:1:0}t(Br,"compareBanglaDates");function yo(r,e,n){return!D(r)||!D(e)||!D(n)?!1:Br(r,e)>=0&&Br(r,n)<=0}t(yo,"isBanglaDateInRange");function wo(r,e){if(!_(r)||!v(e))throw new Error("Invalid month or year");return{year:e,month:r,day:1}}t(wo,"getFirstDayOfBanglaMonth");function Do(r,e){if(!_(r)||!v(e))throw new Error("Invalid month or year");let n=Kr(r,e);return{year:e,month:r,day:n}}t(Do,"getLastDayOfBanglaMonth");function To(r){if(!v(r))return!1;let e=r+594;return e%4===0&&e%100!==0||e%400===0}t(To,"isBanglaLeapYear");function Io(r,e){if(!D(r))throw new Error("Invalid Bangla date");let n=G(r);return Er(n,e)}t(Io,"formatBanglaDate");function No(){return x(new Date)}t(No,"getCurrentBanglaDate");function Bo(r){return r.map(e=>jr(e))}t(Bo,"batchToBangla");function W(r){let e=r+594;return[31,31,31,31,31,30,30,30,30,30,e%4===0&&(e%100!==0||e%400===0)?31:30,30]}t(W,"getBanglaMonthLengths");function x(r){let e=new Date(Date.UTC(r.getFullYear(),r.getMonth(),r.getDate())),n=e.getUTCFullYear(),o=e.getUTCMonth()+1,i=e.getUTCDate(),a=o<4||o===4&&i<14,s=n-(a?594:593),u=a?n-1:n,c=new Date(Date.UTC(u,3,14)),f=Math.floor((e.getTime()-c.getTime())/864e5),g=W(s),P=f,O=0;for(;P>=g[O];)P-=g[O],O++;return{year:s,month:O+1,day:P+1}}t(x,"toBanglaCalendar");function Er(r,e={}){let{includeYear:n=!0,includeWeekday:o=!1}=e,i=x(r);return[...o?[["\u09B0\u09AC\u09BF\u09AC\u09BE\u09B0","\u09B8\u09CB\u09AE\u09AC\u09BE\u09B0","\u09AE\u0999\u09CD\u0997\u09B2\u09AC\u09BE\u09B0","\u09AC\u09C1\u09A7\u09AC\u09BE\u09B0","\u09AC\u09C3\u09B9\u09B8\u09CD\u09AA\u09A4\u09BF\u09AC\u09BE\u09B0","\u09B6\u09C1\u0995\u09CD\u09B0\u09AC\u09BE\u09B0","\u09B6\u09A8\u09BF\u09AC\u09BE\u09B0"][r.getDay()]]:[],m(i.day),h(i.month),...n?[m(i.year)]:[]].join(" ")}t(Er,"getBanglaDate");function Ho(r){let e=x(r);return h(e.month)}t(Ho,"getMonthName");function C(r){return b.isInteger(r)&&F.isMonthNumber(r)}t(C,"isValidMonthNumber");function E(r){if(!w(r))return!1;let e=r.trim();return M.includes(e)}t(E,"isValidBanglaMonth");function Sr(r){if(w(r)){let n=r.trim();if(n==="")return null;let o=Number(n);if(isNaN(o))return null;r=o}if(!b.isValidNumber(r))return null;let e=Math.round(r);return!b.isInteger(e)||!F.isMonthNumber(e)?null:e}t(Sr,"sanitizeMonthNumber");function Xo(r){if(!w(r))return null;let e=r.trim();return e===""||!E(e)?null:e}t(Xo,"sanitizeBanglaMonth");function ii(r,e=""){try{return C(r)?h(r):e}catch{return e}}t(ii,"safeToBanglaMonth");function ai(r,e=0){try{return E(r)?B(r):e}catch{return e}}t(ai,"safeFromBanglaMonth");function si(){return[...M]}t(si,"getAllMonths");function ui(r){if(typeof r=="number"){if(!C(r))throw new Error("Invalid month number");return r===12?1:r+1}else{if(!E(r))throw new Error("Invalid Bangla month name");let e=B(r),n=e===12?1:e+1;return h(n)}}t(ui,"getNextMonth");function mi(r){if(typeof r=="number"){if(!C(r))throw new Error("Invalid month number");return r===1?12:r-1}else{if(!E(r))throw new Error("Invalid Bangla month name");let e=B(r),n=e===1?12:e-1;return h(n)}}t(mi,"getPreviousMonth");function qr(r,e){let n=typeof r=="number",o,i;if(n){if(!C(r)||!C(e))throw new Error("Invalid month numbers");o=r,i=e}else{if(!E(r)||!E(e))throw new Error("Invalid Bangla month names");o=B(r),i=B(e)}let a=[],s=o;for(;n?a.push(s):a.push(h(s)),!(s===i||(s=s===12?1:s+1,a.length>12)););return a}t(qr,"getMonthRange");function fi(r,e,n){try{return qr(e,n).includes(r)}catch{return!1}}t(fi,"isMonthInRange");function li(r,e){let n,o;if(typeof r=="number"){if(!C(r))throw new Error("Invalid month1");n=r}else{if(!E(r))throw new Error("Invalid month1");n=B(r)}if(typeof e=="number"){if(!C(e))throw new Error("Invalid month2");o=e}else{if(!E(e))throw new Error("Invalid month2");o=B(e)}return n<o?-1:n>o?1:0}t(li,"compareMonths");function ci(r){if(typeof r=="number"){if(!C(r))throw new Error("Invalid month number");return r-1}else{if(!E(r))throw new Error("Invalid Bangla month name");return B(r)-1}}t(ci,"getMonthIndex");function pi(r){if(!Number.isInteger(r)||r<0||r>11)throw new Error("Index must be between 0 and 11");return r+1}t(pi,"getMonthFromIndex");function gi(r){if(typeof r=="string"&&E(r.trim()))return r.trim();let e=Sr(r);if(e===null)throw new Error("Invalid month input");return h(e)}t(gi,"parseAndConvertToMonth");function bi(r){return r.filter(e=>C(e)).map(e=>h(e))}t(bi,"batchToBanglaMonth");function di(){let r={};for(let e=1;e<=12;e++)r[e]=h(e);return r}t(di,"getMonthMapping");function H(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return A[r]}t(H,"toBanglaWeekday");function J(r){let e=A.indexOf(r);if(e===-1)throw new Error(`Invalid Bangla weekday name: ${r}`);return e}t(J,"fromBanglaWeekday");function Mr(r){let e=r.getDay();return H(e)}t(Mr,"getWeekdayName");function ki(r){return b.isInteger(r)&&F.isWeekdayNumber(r)}t(ki,"isValidWeekdayNumber");function Li(r){if(!w(r))return!1;let e=r.trim();return e===""?!1:A.includes(e)}t(Li,"isValidBanglaWeekday");function zi(r){return p(r)}t(zi,"isValidDateForWeekday");function Cr(r){return w(r)?r.trim():""}t(Cr,"sanitizeWeekdayInput");function Zr(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return r===5||r===6}t(Zr,"isWeekend");function Ki(r){let e=J(r);return Zr(e)}t(Ki,"isBanglaWeekend");function Xr(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return(r+1)%7}t(Xr,"getNextWeekday");function Jr(r){if(r<0||r>6)throw new Error("Weekday number must be between 0 and 6");return(r-1+7)%7}t(Jr,"getPreviousWeekday");function qi(r){let e=Xr(r);return H(e)}t(qi,"getNextBanglaWeekday");function Zi(r){let e=Jr(r);return H(e)}t(Zi,"getPreviousBanglaWeekday");function Xi(r){let e=Cr(r);return J(e)}t(Xi,"parseWeekdayInput");function Ji(r,e=""){try{return H(r)}catch{return e}}t(Ji,"safeToBanglaWeekday");function Qi(r,e=-1){try{return J(r)}catch{return e}}t(Qi,"safeFromBanglaWeekday");function ra(){return[...A]}t(ra,"getAllBanglaWeekdays");function ea(r,e){if(r<0||r>6||e<0||e>6)throw new Error("Weekday numbers must be between 0 and 6");return(e-r+7)%7}t(ea,"getDaysBetween");function ur(r,e={}){let{includeWeekday:n=!1,includeYear:o=!0,format:i="long"}=e,a=[];if(n){let g=Mr(r);a.push(g)}let s=x(r),u=m(s.day),c=h(s.month),f=o?m(s.year):null;return i==="short"?a.push(`${u} ${c}`):a.push(u,c),f&&a.push(f),a.join(" ")}t(ur,"formatDate");function Ar(r){let e=r.trim().replace(/\s+/g," "),n=e.match(/^(\d+|[০-৯]+)\s+(বৈশাখ|জ্যৈষ্ঠ|আষাঢ়|শ্রাবণ|ভাদ্র|আশ্বিন|কার্তিক|অগ্রহায়ণ|পৌষ|মাঘ|ফাল্গুন|চৈত্র)(?:\s+(\d+|[০-৯]+))?$/);if(n){let i=n[1],a=n[2],s=n[3],u=/[০-৯]/.test(i)?I(i):parseInt(i,10),c=B(a),f=s?/[০-৯]/.test(s)?I(s):parseInt(s,10):new Date().getFullYear();return new Date(f,c-1,u)}let o=e.match(/^(\d+|[০-৯]+)[\/\-](\d+|[০-৯]+)[\/\-](\d+|[০-৯]+)$/);if(o){let i=o[1],a=o[2],s=o[3],u=/[০-৯]/.test(i)?I(i):parseInt(i,10),c=/[০-৯]/.test(a)?I(a):parseInt(a,10),f=/[০-৯]/.test(s)?I(s):parseInt(s,10);return new Date(f,c-1,u)}throw new Error(`Unable to parse date string: ${r}`)}t(Ar,"parseDate");function p(r){return r instanceof Date&&!isNaN(r.getTime())}t(p,"isValidDate");function Or(r){if(typeof r!="string"||r.trim()==="")return!1;let e=r.trim().replace(/\s+/g," ");if(/^\d{4}[\-\/]\d{1,2}[\-\/]\d{1,2}$/.test(e))return!1;let n=/^(\d+|[০-৯]+)\s+(বৈশাখ|জ্যৈষ্ঠ|আষাঢ়|শ্রাবণ|ভাদ্র|আশ্বিন|কার্তিক|অগ্রহায়ণ|পৌষ|মাঘ|ফাল্গুন|চৈত্র)(?:\s+(\d+|[০-৯]+))?$/,o=/^(\d{1,2}|[০-৯]{1,2})[\/\-](\d{1,2}|[০-৯]{1,2})[\/\-](\d{2,4}|[০-৯]{2,4})$/;return n.test(e)||o.test(e)}t(Or,"isValidBanglaDateString");function wa(r){return typeof r!="string"?!1:/[০-৯]/.test(r)}t(wa,"hasBanglaDigits");function Da(r){return typeof r!="string"?!1:/(বৈশাখ|জ্যৈষ্ঠ|আষাঢ়|শ্রাবণ|ভাদ্র|আশ্বিন|কার্তিক|অগ্রহায়ণ|পৌষ|মাঘ|ফাল্গুন|চৈত্র)/.test(r)}t(Da,"hasBanglaMonth");function Ta(r){return p(r)?r:null}t(Ta,"sanitizeDate");function mr(r,e){if(!p(r)||!p(e))throw new Error("Invalid date");return U.date(r,e)}t(mr,"compareDates");function Aa(r,e){if(!p(r)||!p(e))throw new Error("Invalid date");let n=e.getTime()-r.getTime();return Math.floor(n/(1e3*60*60*24))}t(Aa,"getDaysDifference");function Oa(r,e){if(!p(r))throw new Error("Invalid date");let n=new Date(r);return n.setDate(n.getDate()+e),n}t(Oa,"addDays");function $a(r){if(!p(r))return!1;let e=new Date;return r.getDate()===e.getDate()&&r.getMonth()===e.getMonth()&&r.getFullYear()===e.getFullYear()}t($a,"isToday");function Ra(r){return p(r)?r.getTime()<Date.now():!1}t(Ra,"isPast");function Va(r){return p(r)?r.getTime()>Date.now():!1}t(Va,"isFuture");function ka(r,e,n){return!p(r)||!p(e)||!p(n)?!1:mr(r,e)>=0&&mr(r,n)<=0}t(ka,"isDateInRange");function Qr(r,e,n=""){try{return p(r)?ur(r,e):n}catch{return n}}t(Qr,"safeFormatDate");function re(r,e){try{return Ar(r)}catch{return e||new Date}}t(re,"safeParseDate");function qa(r){return ur(new Date,r)}t(qa,"formatToday");function Za(r,e){return r.map(n=>Qr(n,e))}t(Za,"batchFormatDates");function Xa(r){return r.map(e=>re(e))}t(Xa,"batchParseDates");function Ja(r){return Or(r)}t(Ja,"canParseBanglaDate");function Q(r){if(r<1||r>12)throw new Error("Month number must be between 1 and 12");return r<=2?d[0]:r<=4?d[1]:r<=6?d[2]:r<=8?d[3]:r<=10?d[4]:d[5]}t(Q,"getSeasonFromMonth");function j(r){let e=x(r);return Q(e.month)}t(j,"getSeason");function ys(r){return b.isInteger(r)&&F.isMonthNumber(r)}t(ys,"isValidMonth");function ws(r){if(!w(r))return!1;let e=r.trim();return e===""?!1:d.includes(e)}t(ws,"isValidSeasonName");function Ds(r){return p(r)}t(Ds,"isValidDateForSeason");function Ss(){return[...d]}t(Ss,"getAllSeasons");function Fr(r){let n={\u0997\u09CD\u09B0\u09C0\u09B7\u09CD\u09AE:[1,2],\u09AC\u09B0\u09CD\u09B7\u09BE:[3,4],"\u09B6\u09B0\u09CE":[5,6],\u09B9\u09C7\u09AE\u09A8\u09CD\u09A4:[7,8],\u09B6\u09C0\u09A4:[9,10],\u09AC\u09B8\u09A8\u09CD\u09A4:[11,12]}[r];if(!n)throw new Error(`Invalid season name: ${r}`);return n}t(Fr,"getSeasonMonths");function fr(r){return d.indexOf(r)}t(fr,"getSeasonIndex");function Ms(r){if(r<0||r>5)throw new Error("Season index must be between 0 and 5");return d[r]}t(Ms,"getSeasonByIndex");function Cs(r,e){if(r<1||r>12)return!1;try{return Fr(e).includes(r)}catch{return!1}}t(Cs,"isMonthInSeason");function As(r){let e=fr(r);if(e===-1)throw new Error(`Invalid season name: ${r}`);let n=(e+1)%6;return d[n]}t(As,"getNextSeason");function Os(r){let e=fr(r);if(e===-1)throw new Error(`Invalid season name: ${r}`);let n=(e-1+6)%6;return d[n]}t(Os,"getPreviousSeason");function Fs(r,e=""){if(!(r instanceof Date)||isNaN(r.getTime()))return e;try{return j(r)}catch{return e}}t(Fs,"safeGetSeason");function Ws(r,e=""){try{return Q(r)}catch{return e}}t(Ws,"safeGetSeasonFromMonth");function vs(){return j(new Date)}t(vs,"getCurrentSeason");function Ps(r,e){let n=j(r),o=j(e);return n===o}t(Ps,"isSameSeason");function $s(r){let e=fr(r);if(e===-1)throw new Error(`Invalid season name: ${r}`);let n=Fr(r),o=n.map(i=>M[i-1]);return{name:r,months:n,index:e,monthNames:o}}t($s,"getSeasonInfo");function T(r){if(r<1)throw new Error("Number must be greater than 0");let e={1:"\u09AA\u09CD\u09B0\u09A5\u09AE",2:"\u09A6\u09CD\u09AC\u09BF\u09A4\u09C0\u09AF\u09BC",3:"\u09A4\u09C3\u09A4\u09C0\u09AF\u09BC",4:"\u099A\u09A4\u09C1\u09B0\u09CD\u09A5",5:"\u09AA\u099E\u09CD\u099A\u09AE",6:"\u09B7\u09B7\u09CD\u09A0",7:"\u09B8\u09AA\u09CD\u09A4\u09AE",8:"\u0985\u09B7\u09CD\u099F\u09AE",9:"\u09A8\u09AC\u09AE",10:"\u09A6\u09B6\u09AE",11:"\u098F\u0995\u09BE\u09A6\u09B6",12:"\u09A6\u09CD\u09AC\u09BE\u09A6\u09B6",13:"\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09A6\u09B6",14:"\u099A\u09A4\u09C1\u09B0\u09CD\u09A6\u09B6",15:"\u09AA\u099E\u09CD\u099A\u09A6\u09B6",16:"\u09B7\u09CB\u09A1\u09BC\u09B6",17:"\u09B8\u09AA\u09CD\u09A4\u09A6\u09B6",18:"\u0985\u09B7\u09CD\u099F\u09BE\u09A6\u09B6",19:"\u098A\u09A8\u09AC\u09BF\u0982\u09B6",20:"\u09AC\u09BF\u0982\u09B6",21:"\u098F\u0995\u09AC\u09BF\u0982\u09B6",22:"\u09A6\u09CD\u09AC\u09BE\u09AC\u09BF\u0982\u09B6",23:"\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09AC\u09BF\u0982\u09B6",24:"\u099A\u09A4\u09C1\u09B0\u09CD\u09AC\u09BF\u0982\u09B6",25:"\u09AA\u099E\u09CD\u099A\u09AC\u09BF\u0982\u09B6",30:"\u09A4\u09CD\u09B0\u09BF\u0982\u09B6",40:"\u099A\u09A4\u09CD\u09AC\u09BE\u09B0\u09BF\u0982\u09B6",50:"\u09AA\u099E\u09CD\u099A\u09BE\u09B6\u09A4\u09CD\u09A4\u09AE",60:"\u09B7\u09B7\u09CD\u099F\u09BF\u09A4\u09AE",70:"\u09B8\u09AA\u09CD\u09A4\u09A4\u09BF\u09A4\u09AE",80:"\u0985\u09B6\u09C0\u09A4\u09BF\u09A4\u09AE",90:"\u09A8\u09AC\u09A4\u09BF\u09A4\u09AE",100:"\u09B6\u09A4\u09A4\u09AE"};return e[r]?e[r]:`${m(r)}\u09A4\u09AE`}t(T,"toOrdinal");function y(r){return typeof r=="number"&&!isNaN(r)&&isFinite(r)&&Number.isInteger(r)&&r>=1}t(y,"isValidOrdinal");function js(r){if(typeof r!="string"||!r.trim())return!1;let e=r.trim();return["\u09AA\u09CD\u09B0\u09A5\u09AE","\u09A6\u09CD\u09AC\u09BF\u09A4\u09C0\u09AF\u09BC","\u09A4\u09C3\u09A4\u09C0\u09AF\u09BC","\u099A\u09A4\u09C1\u09B0\u09CD\u09A5","\u09AA\u099E\u09CD\u099A\u09AE","\u09B7\u09B7\u09CD\u09A0","\u09B8\u09AA\u09CD\u09A4\u09AE","\u0985\u09B7\u09CD\u099F\u09AE","\u09A8\u09AC\u09AE","\u09A6\u09B6\u09AE","\u098F\u0995\u09BE\u09A6\u09B6","\u09A6\u09CD\u09AC\u09BE\u09A6\u09B6","\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09A6\u09B6","\u099A\u09A4\u09C1\u09B0\u09CD\u09A6\u09B6","\u09AA\u099E\u09CD\u099A\u09A6\u09B6","\u09B7\u09CB\u09A1\u09BC\u09B6","\u09B8\u09AA\u09CD\u09A4\u09A6\u09B6","\u0985\u09B7\u09CD\u099F\u09BE\u09A6\u09B6","\u098A\u09A8\u09AC\u09BF\u0982\u09B6","\u09AC\u09BF\u0982\u09B6","\u098F\u0995\u09AC\u09BF\u0982\u09B6","\u09A6\u09CD\u09AC\u09BE\u09AC\u09BF\u0982\u09B6","\u09A4\u09CD\u09B0\u09AF\u09BC\u09CB\u09AC\u09BF\u0982\u09B6","\u099A\u09A4\u09C1\u09B0\u09CD\u09AC\u09BF\u0982\u09B6","\u09AA\u099E\u09CD\u099A\u09AC\u09BF\u0982\u09B6","\u09A4\u09CD\u09B0\u09BF\u0982\u09B6","\u099A\u09A4\u09CD\u09AC\u09BE\u09B0\u09BF\u0982\u09B6","\u09AA\u099E\u09CD\u099A\u09BE\u09B6\u09A4\u09CD\u09A4\u09AE","\u09B7\u09B7\u09CD\u099F\u09BF\u09A4\u09AE","\u09B8\u09AA\u09CD\u09A4\u09A4\u09BF\u09A4\u09AE","\u0985\u09B6\u09C0\u09A4\u09BF\u09A4\u09AE","\u09A8\u09AC\u09A4\u09BF\u09A4\u09AE","\u09B6\u09A4\u09A4\u09AE"].includes(e)?!0:e.endsWith("\u09A4\u09AE")}t(js,"isBanglaOrdinal");function Ks(r){return y(r)?[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,30,40,50,60,70,80,90,100].includes(r):!1}t(Ks,"hasSpecialOrdinal");function Wr(r){if(typeof r=="string"){let n=r.trim();if(n==="")return null;let o=Number(n);if(isNaN(o))return null;r=o}if(typeof r!="number"||isNaN(r)||!isFinite(r))return null;let e=Math.round(r);return e<1?null:e}t(Wr,"sanitizeOrdinalInput");function qs(r){return y(r)&&r>=1&&r<=100}t(qs,"isInSpecialOrdinalRange");function eu(r,e=""){try{return y(r)?T(r):e}catch{return e}}t(eu,"safeToOrdinal");var tu=q(T,y);function nu(r){let e=Wr(r);if(e===null)throw new Error("Invalid input for ordinal conversion");return T(e)}t(nu,"parseAndConvertToOrdinal");function ou(){return[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,30,40,50,60,70,80,90,100].map(e=>({number:e,ordinal:T(e)}))}t(ou,"getSpecialOrdinals");function iu(r,e){if(!y(r)||!y(e))throw new Error("Start and end must be positive integers");if(r>e)throw new Error("Start must be less than or equal to end");let n=[];for(let o=r;o<=e;o++)n.push(T(o));return n}t(iu,"getOrdinalSequence");function au(r,e={}){let{separator:n=" ",showNumber:o=!0}=e,i=T(r);return o?`${r}${n}${i}`:i}t(au,"formatOrdinal");function su(r){if(!y(r))throw new Error("Number must be a valid positive integer");let e=T(r);return e.endsWith("\u09A4\u09AE")&&/[০-৯]/.test(e)?"suffix":"special"}t(su,"getOrdinalType");function uu(r,e){let n=T(r);return e?`${n} ${e}`:n}t(uu,"getRanking");function mu(r,e){if(!y(r)||!y(e))throw new Error("Both numbers must be valid positive integers");return r<e?-1:r>e?1:0}t(mu,"compareOrdinals");function fu(r){if(!y(r))throw new Error("Current must be a valid positive integer");return T(r+1)}t(fu,"getNextOrdinal");function lu(r){if(!y(r))throw new Error("Current must be a valid positive integer");if(r===1)throw new Error("No previous ordinal for 1 (\u09AA\u09CD\u09B0\u09A5\u09AE is the first)");return T(r-1)}t(lu,"getPreviousOrdinal");function cu(r,e=1){if(!y(e))throw new Error("startFrom must be a valid positive integer");return r.map((n,o)=>{let i=e+o;return{position:i,ordinal:T(i),item:n}})}t(cu,"createOrdinalList");function lr(r,e={}){let{includeSeconds:n=!1,use12Hour:o=!1}=e,i,a,s;if(typeof r=="string"){let $=r.split(":");if(i=parseInt($[0],10),a=parseInt($[1],10),s=$[2]?parseInt($[2],10):0,Number.isNaN(i)||Number.isNaN(a))throw new Error("Invalid time string format. Use HH:mm or HH:mm:ss")}else i=r.getHours(),a=r.getMinutes(),s=r.getSeconds();let u=i,c="";o&&(c=ee(i),i===0?u=12:i>12&&(u=i-12));let f=m(u.toString().padStart(2,"0")),g=m(a.toString().padStart(2,"0")),P=[f,g];if(n){let $=m(s.toString().padStart(2,"0"));P.push($)}let O=P.join(":");return c?`${c} ${O}`:O}t(lr,"formatTime");function ee(r){return r>=6&&r<12?"\u09B8\u0995\u09BE\u09B2":r>=12&&r<15?"\u09A6\u09C1\u09AA\u09C1\u09B0":r>=15&&r<18?"\u09AC\u09BF\u0995\u09BE\u09B2":r>=18&&r<20?"\u09B8\u09A8\u09CD\u09A7\u09CD\u09AF\u09BE":"\u09B0\u09BE\u09A4"}t(ee,"getBanglaPeriod");function vr(r,e=new Date){let n=r.getTime()-e.getTime(),o=Math.floor(n/1e3),i=Math.floor(o/60),a=Math.floor(i/60),s=Math.abs(a),u=new Date(e);u.setHours(0,0,0,0);let c=new Date(r);c.setHours(0,0,0,0);let f=Math.floor((c.getTime()-u.getTime())/(1e3*60*60*24));if(s<24)return o===0?"\u098F\u0996\u09A8":Math.abs(o)<60?o<0?`${m(Math.abs(o))} \u09B8\u09C7\u0995\u09C7\u09A8\u09CD\u09A1 \u0986\u0997\u09C7`:`${m(o)} \u09B8\u09C7\u0995\u09C7\u09A8\u09CD\u09A1 \u09AA\u09B0\u09C7`:Math.abs(i)<60?i<0?`${m(Math.abs(i))} \u09AE\u09BF\u09A8\u09BF\u099F \u0986\u0997\u09C7`:`${m(i)} \u09AE\u09BF\u09A8\u09BF\u099F \u09AA\u09B0\u09C7`:a<0?`${m(Math.abs(a))} \u0998\u09A3\u09CD\u099F\u09BE \u0986\u0997\u09C7`:`${m(a)} \u0998\u09A3\u09CD\u099F\u09BE \u09AA\u09B0\u09C7`;if(f===-1)return"\u0997\u09A4\u0995\u09BE\u09B2";if(f===1)return"\u0986\u0997\u09BE\u09AE\u09C0\u0995\u09BE\u09B2";if(f===-2)return"\u0997\u09A4 \u09AA\u09B0\u09B6\u09C1";if(f===2)return"\u09AA\u09B0\u09B6\u09C1";if(f<0){if(Math.abs(f)<7)return`${m(Math.abs(f))} \u09A6\u09BF\u09A8 \u0986\u0997\u09C7`;if(Math.abs(f)<30){let g=Math.floor(Math.abs(f)/7);return`${m(g)} \u09B8\u09AA\u09CD\u09A4\u09BE\u09B9 \u0986\u0997\u09C7`}else if(Math.abs(f)<365){let g=Math.floor(Math.abs(f)/30);return`${m(g)} \u09AE\u09BE\u09B8 \u0986\u0997\u09C7`}else{let g=Math.floor(Math.abs(f)/365);return`${m(g)} \u09AC\u099B\u09B0 \u0986\u0997\u09C7`}}else{if(f<7)return`${m(f)} \u09A6\u09BF\u09A8 \u09AA\u09B0\u09C7`;if(f<30){let g=Math.floor(f/7);return`${m(g)} \u09B8\u09AA\u09CD\u09A4\u09BE\u09B9 \u09AA\u09B0\u09C7`}else if(f<365){let g=Math.floor(f/30);return`${m(g)} \u09AE\u09BE\u09B8 \u09AA\u09B0\u09C7`}else{let g=Math.floor(f/365);return`${m(g)} \u09AC\u099B\u09B0 \u09AA\u09B0\u09C7`}}}t(vr,"relativeTime");function Iu(r,e=new Date){let n=new Date(e);n.setHours(0,0,0,0);let o=new Date(r);o.setHours(0,0,0,0);let i=Math.floor((o.getTime()-n.getTime())/(1e3*60*60*24));return i===0?"\u0986\u099C":i===-1?"\u0997\u09A4\u0995\u09BE\u09B2":i===1?"\u0986\u0997\u09BE\u09AE\u09C0\u0995\u09BE\u09B2":i===-2?"\u0997\u09A4 \u09AA\u09B0\u09B6\u09C1":i===2?"\u09AA\u09B0\u09B6\u09C1":""}t(Iu,"relativeDay");function Pr(r){if(typeof r!="string")return!1;let e=r.trim();if(e==="")return!1;let n=/^(\d{1,2}):(\d{2})(?::(\d{2}))?$/,o=e.match(n);if(!o)return!1;let i=parseInt(o[1],10),a=parseInt(o[2],10),s=o[3]?parseInt(o[3],10):0;return!(i<0||i>23||a<0||a>59||s<0||s>59)}t(Pr,"isValidTimeString");function Su(r){return p(r)||Pr(r)}t(Su,"isValidTimeInput");function Mu(r){return Pr(r)?r.trim().split(":").length===3:!1}t(Mu,"hasSeconds");function $r(r){return typeof r!="string"?"":r.trim()}t($r,"sanitizeTimeInput");function cr(r){let n=$r(r).split(":"),o=parseInt(n[0],10),i=parseInt(n[1],10),a=n[2]?parseInt(n[2],10):0;if(Number.isNaN(o)||Number.isNaN(i))throw new Error("Invalid time string format. Use HH:mm or HH:mm:ss");if(o<0||o>23)throw new Error("Hours must be between 0 and 23");if(i<0||i>59)throw new Error("Minutes must be between 0 and 59");if(a<0||a>59)throw new Error("Seconds must be between 0 and 59");return{hours:o,minutes:i,seconds:a}}t(cr,"parseTime");function S(r){let{hours:e,minutes:n,seconds:o}=cr(r);return e*3600+n*60+o}t(S,"timeToSeconds");function Rr(r){if(r<0||r>=86400)throw new Error("Seconds must be between 0 and 86399");let e=Math.floor(r/3600),n=Math.floor(r%3600/60),o=r%60;return`${e.toString().padStart(2,"0")}:${n.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`}t(Rr,"secondsToTime");function Pu(r,e){let n=S(r),o=S(e);return n<o?-1:n>o?1:0}t(Pu,"compareTimes");function $u(r,e){return r.getFullYear()===e.getFullYear()&&r.getMonth()===e.getMonth()&&r.getDate()===e.getDate()}t($u,"isSameDay");function Lu(r,e){let o=S(r)+e*60;return o=(o%86400+86400)%86400,Rr(o)}t(Lu,"addMinutesToTime");function zu(r,e){let n=S(r),o=S(e);return Math.floor((o-n)/60)}t(zu,"timeDifferenceMinutes");function Yu(r,e,n){let o=S(r),i=S(e),a=S(n);return o>=i&&o<=a}t(Yu,"isTimeInRange");function em(r,e={},n=""){try{return lr(r,e)}catch{return n}}t(em,"safeFormatTime");function tm(r,e=new Date,n=""){try{return vr(r,e)}catch{return n}}t(tm,"safeRelativeTime");function nm(r){let e;if(typeof r=="string"){let{hours:n}=cr(r);e=n}else e=r.getHours();return e>=0&&e<6?"\u09B0\u09BE\u09A4":e>=6&&e<12?"\u09B8\u0995\u09BE\u09B2":e>=12&&e<15?"\u09A6\u09C1\u09AA\u09C1\u09B0":e>=15&&e<18?"\u09AC\u09BF\u0995\u09BE\u09B2":e>=18&&e<20?"\u09B8\u09A8\u09CD\u09A7\u09CD\u09AF\u09BE":"\u09B0\u09BE\u09A4"}t(nm,"getTimePeriod");function om(r={}){return lr(new Date,r)}t(om,"getCurrentTimeBangla");function pr(r,e={}){let{includeCountryCode:n=!1,useBanglaDigits:o=!1,format:i="spaced"}=e,a=r.replace(/\D/g,""),s=a;if(a.startsWith("880")?s=a.slice(3):a.startsWith("+880")&&(s=a.slice(4)),s.length!==10&&s.length!==11)throw new Error("Invalid Bangladeshi phone number length");let u="";return s.length===11?u=`${s.slice(0,3)} ${s.slice(3,7)} ${s.slice(7)}`:u=`0${s.slice(0,2)} ${s.slice(2,6)} ${s.slice(6)}`,i==="dashed"?u=u.replace(/\s/g,"-"):i==="compact"&&(u=u.replace(/\s/g,"")),n&&(u="+880 "+u),o&&(u=m(u.replace(/\s|-/g,"")),i==="spaced"?u=`${u.slice(0,3)} ${u.slice(3,7)} ${u.slice(7)}`:i==="dashed"&&(u=`${u.slice(0,3)}-${u.slice(3,7)}-${u.slice(7)}`),n&&(u="+\u09EE\u09EE\u09E6 "+u)),u}t(pr,"formatPhone");function gr(r){let e=r.replace(/\D/g,""),n=e;if(e.startsWith("880")?n=e.slice(3):e.startsWith("+880")&&(n=e.slice(4)),n.length!==10&&n.length!==11||!n.startsWith("01")&&n.length===11||n.length===10&&!n.startsWith("1"))return!1;let o=n.length===11?n.slice(0,3):"0"+n.slice(0,2);return k.includes(o)}t(gr,"validatePhone");function xm(r){return k.includes(r)}t(xm,"isValidOperatorCode");function ym(r){let e=r.trim();return e.startsWith("+880")||e.startsWith("880")}t(ym,"hasCountryCode");function Vr(r){if(typeof r!="string")return"";let e=r.trim(),n=e.startsWith("+");return e=e.replace(/\D/g,""),n&&(e="+"+e),e}t(Vr,"sanitizePhoneNumber");function wm(r){return typeof r!="string"?!1:/^[\d\s\-()+ ]+$/.test(r.trim())}t(wm,"isValidPhoneFormat");function Em(r){if(!gr(r))return null;let e=r.replace(/\D/g,""),n=e;e.startsWith("880")&&(n=e.slice(3));let o=n.length===11?n.slice(0,3):"0"+n.slice(0,2),i=er[o];return i?{code:o,...i}:null}t(Em,"getOperator");function te(r){if(!gr(r))throw new Error("Invalid phone number");let e=r,n=r.replace(/\D/g,""),o=n,i="880";n.startsWith("880")&&(o=n.slice(3)),o.length===10&&(o="0"+o);let a=o.slice(0,3),s=o.slice(3);return{original:e,countryCode:i,operatorCode:a,number:s,fullNumber:o}}t(te,"parsePhoneNumber");function rr(r){return te(r).fullNumber}t(rr,"normalizePhoneNumber");function Sm(r,e="plus"){let o=rr(r).slice(1);return e==="plus"?`+880${o}`:`880${o}`}t(Sm,"addCountryCode");function Mm(r){return rr(r)}t(Mm,"removeCountryCode");function Cm(r,e={},n=""){try{return pr(r,e)}catch{return n}}t(Cm,"safeFormatPhone");function Am(r,e){try{let n=rr(r),o=rr(e);return n===o}catch{return!1}}t(Am,"isSameNumber");function Om(){return[...k]}t(Om,"getAllOperatorCodes");function Fm(){return k.map(r=>({code:r,...er[r]}))}t(Fm,"getAllOperators");function Wm(r,e={}){let n=Vr(r);return pr(n,e)}t(Wm,"parseAndFormat");function Lm(r){return/^[\u0980-\u09FF\s]+$/.test(r)}t(Lm,"validateBangla");function kr(r){return/[০-৯]/.test(r)}t(kr,"isBanglaDigit");function Ym(r){return/[\u0980-\u09FF]/.test(r)}t(Ym,"isBanglaText");function ne(r){let e=r.match(/[\u0980-\u09FF]/g);return e?e.length:0}t(ne,"countBanglaCharacters");function qm(r){let e=r.match(/[০-৯]/g);return e?e.length:0}t(qm,"countBanglaDigits");function Zm(r){let e=/[\u0980-\u09FF]/.test(r),n=/[a-zA-Z0-9]/.test(r);return e&&n}t(Zm,"isMixedContent");function Lr(r,e=!1){return e?r.replace(/[^\u0980-\u09FF\s]/g,"").trim():r.replace(/[^\u0980-\u09FF]/g,"")}t(Lr,"extractBanglaChars");function oe(r){return r.replace(/[\u0980-\u09FF]/g,"")}t(oe,"removeBanglaChars");function ie(r){let e=r.replace(/\s/g,"");if(e.length===0)return 0;let n=ne(r);return Math.round(n/e.length*100)}t(ie,"getBanglaPercentage");function Xm(r){return ie(r)>50}t(Xm,"isPrimarilyBangla");function Jm(r,e=!0,n=""){let o=Lr(r,e);return o.length>0?o:n}t(Jm,"sanitizeBanglaText");function Qm(r){return/\d|[০-৯]/.test(r)?!/\d/.test(r)&&kr(r):!1}t(Qm,"hasOnlyBanglaDigits");function rf(r){return r.replace(/\s+/g," ").trim()}t(rf,"normalizeWhitespace");function ef(r){return{bengali:Lr(r,!0).trim(),nonBangla:oe(r).trim()}}t(ef,"splitBanglaContent");function tf(r){return/[ক-হড়ঢ়য়ৎ]/.test(r)}t(tf,"hasBanglaConsonants");function nf(r){return/[অ-ঔা-ৌ]/.test(r)}t(nf,"hasBanglaVowels");export{R as BANGLA_DIGITS,M as BANGLA_MONTHS,d as BANGLA_SEASONS,A as BANGLA_WEEKDAYS,V as ENGLISH_DIGITS,er as OPERATOR_INFO,k as VALID_OPERATOR_CODES,Sm as addCountryCode,en as addCurrency,Oa as addDays,ho as addDaysToBanglaDate,Lu as addMinutesToTime,mn as addTax,un as applyDiscount,Rn as batchFormatCurrency,Za as batchFormatDates,Tt as batchFromBanglaNumber,Xa as batchParseDates,Bo as batchToBangla,bi as batchToBanglaMonth,Dt as batchToBanglaNumber,tu as batchToOrdinal,ln as calculateDiscount,X as calculatePercentage,fn as calculateTax,Ja as canParseBanglaDate,hn as ceilCurrency,Br as compareBanglaDates,Nr as compareCurrency,mr as compareDates,li as compareMonths,mu as compareOrdinals,Pu as compareTimes,St as convertToWordsAndDigits,ne as countBanglaCharacters,qm as countBanglaDigits,cu as createOrdinalList,Ir as divideCurrency,Lr as extractBanglaChars,xn as floorCurrency,Et as formatAndConvert,Io as formatBanglaDate,Y as formatCurrency,ur as formatDate,xr as formatNumber,au as formatOrdinal,pr as formatPhone,lr as formatTime,qa as formatToday,Ae as formatWithUnits,G as fromBanglaCalendar,B as fromBanglaMonth,I as fromBanglaNumber,J as fromBanglaWeekday,Vn as getAbsoluteAmount,ra as getAllBanglaWeekdays,si as getAllMonths,Om as getAllOperatorCodes,Fm as getAllOperators,Ss as getAllSeasons,Er as getBanglaDate,xo as getBanglaDateDifference,Kr as getBanglaMonthDays,W as getBanglaMonthLengths,ie as getBanglaPercentage,No as getCurrentBanglaDate,vs as getCurrentSeason,om as getCurrentTimeBangla,ea as getDaysBetween,Aa as getDaysDifference,wo as getFirstDayOfBanglaMonth,Do as getLastDayOfBanglaMonth,pi as getMonthFromIndex,ci as getMonthIndex,di as getMonthMapping,Ho as getMonthName,qr as getMonthRange,qi as getNextBanglaWeekday,ui as getNextMonth,fu as getNextOrdinal,As as getNextSeason,Xr as getNextWeekday,Em as getOperator,iu as getOrdinalSequence,su as getOrdinalType,Zi as getPreviousBanglaWeekday,mi as getPreviousMonth,lu as getPreviousOrdinal,Os as getPreviousSeason,Jr as getPreviousWeekday,uu as getRanking,j as getSeason,Ms as getSeasonByIndex,Q as getSeasonFromMonth,fr as getSeasonIndex,$s as getSeasonInfo,Fr as getSeasonMonths,ou as getSpecialOrdinals,nm as getTimePeriod,Mr as getWeekdayName,tf as hasBanglaConsonants,wa as hasBanglaDigits,Da as hasBanglaMonth,nf as hasBanglaVowels,ym as hasCountryCode,Qm as hasOnlyBanglaDigits,Mu as hasSeconds,Ks as hasSpecialOrdinal,Zt as hasTakaSymbol,Xt as hasTakaWord,Hr as isBanglaCurrency,yo as isBanglaDateInRange,kr as isBanglaDigit,To as isBanglaLeapYear,js as isBanglaOrdinal,Ym as isBanglaText,Ki as isBanglaWeekend,zn as isCurrencyEqual,qt as isCurrencyInRange,ka as isDateInRange,Va as isFuture,Gn as isGreaterThan,qs as isInSpecialOrdinalRange,_n as isLessThan,Zm as isMixedContent,fi as isMonthInRange,Cs as isMonthInSeason,jt as isNegativeAmount,Mt as isNumberInRange,Ra as isPast,Ut as isPositiveAmount,Xm as isPrimarilyBangla,$u as isSameDay,Am as isSameNumber,Ps as isSameSeason,Yu as isTimeInRange,$a as isToday,D as isValidBanglaDate,Or as isValidBanglaDateString,Ur as isValidBanglaDay,E as isValidBanglaMonth,_ as isValidBanglaMonthNumber,Je as isValidBanglaNumber,Li as isValidBanglaWeekday,v as isValidBanglaYear,l as isValidCurrency,p as isValidDate,Ds as isValidDateForSeason,zi as isValidDateForWeekday,ys as isValidMonth,C as isValidMonthNumber,Qe as isValidNumber,et as isValidNumberForOrdinal,rt as isValidNumberForWords,xm as isValidOperatorCode,y as isValidOrdinal,wm as isValidPhoneFormat,ws as isValidSeasonName,Su as isValidTimeInput,Pr as isValidTimeString,ki as isValidWeekdayNumber,Zr as isWeekend,Kt as isZeroAmount,tn as multiplyCurrency,kn as negateAmount,rr as normalizePhoneNumber,rf as normalizeWhitespace,Bt as parseAndConvertToBangla,gi as parseAndConvertToMonth,nu as parseAndConvertToOrdinal,Wm as parseAndFormat,Ln as parseAndFormatCurrency,sr as parseCurrency,Ar as parseDate,te as parsePhoneNumber,cr as parseTime,Xi as parseWeekdayInput,Iu as relativeDay,vr as relativeTime,oe as removeBanglaChars,Mm as removeCountryCode,N as roundCurrency,Pn as safeFormatCurrency,Qr as safeFormatDate,Cm as safeFormatPhone,em as safeFormatTime,bo as safeFromBangla,ai as safeFromBanglaMonth,Nt as safeFromBanglaNumber,Qi as safeFromBanglaWeekday,Fs as safeGetSeason,Ws as safeGetSeasonFromMonth,$n as safeParseCurrency,re as safeParseDate,tm as safeRelativeTime,jr as safeToBangla,ii as safeToBanglaMonth,It as safeToBanglaNumber,Ji as safeToBanglaWeekday,eu as safeToOrdinal,uo as sanitizeBanglaDate,Xo as sanitizeBanglaMonth,Jm as sanitizeBanglaText,Dr as sanitizeCurrencyInput,Ta as sanitizeDate,Sr as sanitizeMonthNumber,wr as sanitizeNumberInput,Wr as sanitizeOrdinalInput,Vr as sanitizePhoneNumber,$r as sanitizeTimeInput,Cr as sanitizeWeekdayInput,Rr as secondsToTime,dn as splitAmount,ef as splitBanglaContent,Z as subtractCurrency,Tr as sumCurrency,zu as timeDifferenceMinutes,S as timeToSeconds,x as toBanglaCalendar,h as toBanglaMonth,m as toBanglaNumber,H as toBanglaWeekday,T as toOrdinal,nr as toWords,Ct as truncateDecimals,Lm as validateBangla,gr as validatePhone};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|