nepali-date-library 1.1.0 → 1.1.2
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/NepaliDate.d.ts +106 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.mjs.js +1 -1
- package/package.json +21 -4
package/dist/NepaliDate.d.ts
CHANGED
|
@@ -182,6 +182,20 @@ export declare class NepaliDate {
|
|
|
182
182
|
* @returns A new NepaliDate set to the end of the day
|
|
183
183
|
*/
|
|
184
184
|
endOfDay(): NepaliDate;
|
|
185
|
+
/**
|
|
186
|
+
* Returns a new NepaliDate representing the start of the week containing this date
|
|
187
|
+
* By default, weeks start on Sunday (day 0)
|
|
188
|
+
* @param startOfWeek Day to consider as start of week (0-6, where 0 = Sunday, 1 = Monday, etc.)
|
|
189
|
+
* @returns A new NepaliDate set to the first day of the week
|
|
190
|
+
*/
|
|
191
|
+
startOfWeek(startOfWeek?: number): NepaliDate;
|
|
192
|
+
/**
|
|
193
|
+
* Returns a new NepaliDate representing the end of the week containing this date
|
|
194
|
+
* By default, weeks end on Saturday (day 6)
|
|
195
|
+
* @param startOfWeek Day to consider as start of week (0-6, where 0 = Sunday, 1 = Monday, etc.)
|
|
196
|
+
* @returns A new NepaliDate set to the last day of the week
|
|
197
|
+
*/
|
|
198
|
+
endOfWeek(startOfWeek?: number): NepaliDate;
|
|
185
199
|
/**
|
|
186
200
|
* Returns a new NepaliDate representing the start of the current month (1st day)
|
|
187
201
|
* @returns A new NepaliDate set to the first day of the month
|
|
@@ -286,4 +300,96 @@ export declare class NepaliDate {
|
|
|
286
300
|
* @returns true if dates are the same for the specified unit, false otherwise
|
|
287
301
|
*/
|
|
288
302
|
isSame(date: NepaliDate, unit: 'year' | 'month' | 'day'): boolean;
|
|
303
|
+
/**
|
|
304
|
+
* Returns the start and end dates for a specific quarter in the specified year
|
|
305
|
+
* @param quarter Quarter number (1-4)
|
|
306
|
+
* @param year Nepali year (defaults to current year if not specified)
|
|
307
|
+
* @returns Object containing start and end dates for the specified quarter
|
|
308
|
+
* @throws Error if quarter is not between 1 and 4
|
|
309
|
+
*/
|
|
310
|
+
static getQuarter(quarter: number, year?: number): {
|
|
311
|
+
start: NepaliDate;
|
|
312
|
+
end: NepaliDate;
|
|
313
|
+
};
|
|
314
|
+
/**
|
|
315
|
+
* Returns the quarter number (1-4) for the current date
|
|
316
|
+
* @returns Quarter number (1-4)
|
|
317
|
+
*/
|
|
318
|
+
getCurrentQuarter(): number;
|
|
319
|
+
/**
|
|
320
|
+
* Returns all quarters for a specified fiscal year
|
|
321
|
+
* @param year Fiscal year (defaults to current fiscal year if not specified)
|
|
322
|
+
* @returns Object containing start and end dates for each quarter of the fiscal year
|
|
323
|
+
*/
|
|
324
|
+
static getQuarters(year?: number): {
|
|
325
|
+
Q1: {
|
|
326
|
+
start: NepaliDate;
|
|
327
|
+
end: NepaliDate;
|
|
328
|
+
};
|
|
329
|
+
Q2: {
|
|
330
|
+
start: NepaliDate;
|
|
331
|
+
end: NepaliDate;
|
|
332
|
+
};
|
|
333
|
+
Q3: {
|
|
334
|
+
start: NepaliDate;
|
|
335
|
+
end: NepaliDate;
|
|
336
|
+
};
|
|
337
|
+
Q4: {
|
|
338
|
+
start: NepaliDate;
|
|
339
|
+
end: NepaliDate;
|
|
340
|
+
};
|
|
341
|
+
};
|
|
342
|
+
/**
|
|
343
|
+
* Returns the current fiscal year based on the current date
|
|
344
|
+
* Nepali fiscal year starts from Shrawan 1st (month 3, day 1)
|
|
345
|
+
* @returns Current fiscal year
|
|
346
|
+
*/
|
|
347
|
+
static getCurrentFiscalYear(): number;
|
|
348
|
+
/**
|
|
349
|
+
* Returns the start and end dates for a specific fiscal year quarter
|
|
350
|
+
* @param quarter Fiscal year quarter number (1-4)
|
|
351
|
+
* @param fiscalYear Fiscal year (defaults to current fiscal year if not specified)
|
|
352
|
+
* @returns Object containing start and end dates for the specified fiscal year quarter
|
|
353
|
+
* @throws Error if quarter is not between 1 and 4
|
|
354
|
+
*/
|
|
355
|
+
static getFiscalYearQuarter(quarter: number, fiscalYear?: number): {
|
|
356
|
+
start: NepaliDate;
|
|
357
|
+
end: NepaliDate;
|
|
358
|
+
};
|
|
359
|
+
/**
|
|
360
|
+
* Returns the current fiscal year quarter number (1-4) for the current date
|
|
361
|
+
* @returns Current fiscal year quarter number (1-4)
|
|
362
|
+
*/
|
|
363
|
+
getCurrentFiscalYearQuarter(): number;
|
|
364
|
+
/**
|
|
365
|
+
* Returns the start and end dates of the current fiscal year quarter
|
|
366
|
+
* @returns Object containing start and end dates of the current fiscal year quarter
|
|
367
|
+
*/
|
|
368
|
+
getCurrentFiscalYearQuarterDates(): {
|
|
369
|
+
start: NepaliDate;
|
|
370
|
+
end: NepaliDate;
|
|
371
|
+
};
|
|
372
|
+
/**
|
|
373
|
+
* Returns all quarters for a specified fiscal year
|
|
374
|
+
* @param fiscalYear Fiscal year (defaults to current fiscal year if not specified)
|
|
375
|
+
* @returns Object containing start and end dates for each quarter of the fiscal year
|
|
376
|
+
*/
|
|
377
|
+
static getFiscalYearQuarters(fiscalYear?: number): {
|
|
378
|
+
Q1: {
|
|
379
|
+
start: NepaliDate;
|
|
380
|
+
end: NepaliDate;
|
|
381
|
+
};
|
|
382
|
+
Q2: {
|
|
383
|
+
start: NepaliDate;
|
|
384
|
+
end: NepaliDate;
|
|
385
|
+
};
|
|
386
|
+
Q3: {
|
|
387
|
+
start: NepaliDate;
|
|
388
|
+
end: NepaliDate;
|
|
389
|
+
};
|
|
390
|
+
Q4: {
|
|
391
|
+
start: NepaliDate;
|
|
392
|
+
end: NepaliDate;
|
|
393
|
+
};
|
|
394
|
+
};
|
|
289
395
|
}
|
package/dist/index.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var v=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var k=Object.prototype.hasOwnProperty;var L=(e,t)=>{for(var a in t)v(e,a,{get:t[a],enumerable:!0})},V=(e,t,a,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of C(t))!k.call(e,s)&&s!==a&&v(e,s,{get:()=>t[s],enumerable:!(r=B(t,s))||r.enumerable});return e};var q=e=>V(v({},"__esModule",{value:!0}),e);var t3={};L(t3,{ADtoBS:()=>F,BStoAD:()=>K,MONTH_EN:()=>c,MONTH_NP:()=>T,MONTH_SHORT_EN:()=>p,MONTH_SHORT_NP:()=>f,NEPALI_DATE_MAP:()=>y,NUMBER_NP:()=>_,NepaliDate:()=>d,WEEK_EN:()=>m,WEEK_NP:()=>N,WEEK_SHORT_EN:()=>D,WEEK_SHORT_NP:()=>w});module.exports=q(t3);var y=[{year:2e3,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2001,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2002,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2003,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2004,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2005,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2006,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2007,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2008,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2009,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2010,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2011,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2012,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2013,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2014,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2015,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2016,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2017,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2018,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2019,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2020,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2021,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2022,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2023,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2024,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2025,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2026,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2027,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2028,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2029,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2030,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2031,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2032,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2033,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2034,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2035,days:[30,32,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2036,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2037,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2038,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2039,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2040,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2041,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2042,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2043,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2044,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2045,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2046,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2047,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2048,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2049,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2050,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2051,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2052,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2053,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2054,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2055,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2056,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2057,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2058,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2059,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2060,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2061,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2062,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2063,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2064,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2065,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2066,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2067,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2068,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2069,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2070,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2071,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2072,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2073,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2074,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2075,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2076,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2077,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2078,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2079,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2080,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2081,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2082,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2083,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2084,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2085,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2086,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2087,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2088,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2089,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2090,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2091,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2092,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2093,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2094,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2095,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2096,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2097,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2098,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2099,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2100,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0}],A=0;y.forEach(e=>{e.totalDays=e.days.reduce((t,a)=>t+a,0),A+=e.totalDays,e.daysTillNow=A});var E=new Date(1943,3,14).getTime(),m=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],D=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],N=["\u0906\u0907\u0924\u092C\u093E\u0930","\u0938\u094B\u092E\u092C\u093E\u0930","\u092E\u0902\u0917\u0932\u092C\u093E\u0930","\u092C\u0941\u0927\u092C\u093E\u0930","\u092C\u093F\u0939\u093F\u092C\u093E\u0930","\u0936\u0941\u0915\u094D\u0930\u092C\u093E\u0930","\u0936\u0928\u093F\u092C\u093E\u0930"],w=["\u0906\u0907\u0924","\u0938\u094B\u092E","\u092E\u0902\u0917\u0932","\u092C\u0941\u0927","\u092C\u093F\u0939\u093F","\u0936\u0941\u0915\u094D\u0930","\u0936\u0928\u093F"],c=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],p=["Bai","Jes","Asa","Shr","Bhd","Asw","Kar","Man","Pou","Mag","Fal","Cha"],T=["\u092C\u0948\u0936\u093E\u0916","\u091C\u0947\u0920","\u0905\u0938\u093E\u0930","\u0936\u094D\u0930\u093E\u0935\u0923","\u092D\u093E\u0926\u094D\u0930","\u0906\u0936\u094D\u0935\u093F\u0928","\u0915\u093E\u0930\u094D\u0924\u093F\u0915","\u092E\u0902\u0938\u093F\u0930","\u092A\u094C\u0937","\u092E\u093E\u0918","\u092B\u093E\u0932\u094D\u0917\u0941\u0923","\u091A\u0948\u0924\u094D\u0930"],f=["\u092C\u0948","\u091C\u0947","\u0905","\u0936\u094D\u0930\u093E","\u092D\u093E","\u0906","\u0915\u093E","\u092E\u0902","\u092A\u094C","\u092E\u093E","\u092B\u093E","\u091A\u0948"],_=["\u0966","\u0967","\u0968","\u0969","\u096A","\u096B","\u096C","\u096D","\u096E","\u096F"];function S(e){return e<10?`0${e}`:`${e}`}function h(e){let t="";for(let a=0;a<e.length;a+=1)t+=_[e.charCodeAt(a)-48];return t}function U(e){return t=>e<=2?String(t.getYear()).substring(2):e===3?String(t.getYear()).substring(1):String(t.getYear())}function j(e){return t=>e<=2?h(String(t.getYear()).substring(2)):h(e===3?String(t.getYear()).substring(1):String(t.getYear()))}function J(e){return t=>e===1?String(t.getMonth()+1):e===2?S(t.getMonth()+1):e===3?p[t.getMonth()]:c[t.getMonth()]}function Q(e){return t=>e===1?h(String(t.getMonth()+1)):e===2?h(S(t.getMonth()+1)):e===3?f[t.getMonth()]:T[t.getMonth()]}function G(e){return t=>e===1?String(t.getDate()):e===2?S(t.getDate()):e===3?D[t.getDay()]:m[t.getDay()]}function X(e){return t=>e===1?h(String(t.getDate())):e===2?h(S(t.getDate())):e===3?w[t.getDay()]:N[t.getDay()]}function R(e){return()=>e}var P={Y:U,y:j,M:J,m:Q,D:G,d:X};function Z(e){return e in P}function z(e){let t=!1,a="",r="",s=0,n=[];for(let o=0;o<e.length;o+=1){let i=e[o];if(i===r){s+=1;continue}if(r!==""&&(n.push(P[r](s)),r="",s=0),i==='"'){t=!t;continue}!Z(i)||t?a+=i:(a&&(n.push(R(a)),a=""),r=i,s=1)}return a?n.push(R(a)):r&&n.push(P[r](s)),n}function Y(e,t){return z(t).map(a=>a(e)).join("")}function W(e){let t=e.split(/[-./]/,3),[a,r=0,s=1]=t.map(o=>{let i=parseInt(o,10);if(Number.isNaN(i))throw new Error("Invalid date");return i});if(a<y[0].year||a>=y[0].year+y.length)throw new Error("Nepal year out of range");if(r<0||r>11)throw new Error("Invalid nepali month must be between 0 - 11");let n=y[a-y[0].year].days[r-1];if(s<1||s>n)throw new Error(`Invalid nepali date must be between 1 - ${n} in ${a} ${r}`);return[a,r-1,s]}var d=class e{timestamp;year;month;day;constructor(...t){if(t.length===0)this.setEnglishDate(new Date);else if(t.length===1){let a=t[0];if(typeof a=="object")if(a instanceof Date)this.setEnglishDate(a);else if(a instanceof e)this.timestamp=a.timestamp,this.year=a.year,this.month=a.month,this.day=a.day;else throw new Error("Invalid date argument");else if(typeof a=="string")this.set(...W(a));else if(typeof a=="number")this.setEnglishDate(new Date(a));else throw new Error("Invalid date argument")}else if(t.length===3)this.set(t[0],t[1],t[2]);else throw new Error("Invalid argument syntax")}setEnglishDate(t){this.timestamp=t;let a=Math.floor((this.timestamp.getTime()-E)/864e5),r=Math.floor(a/366);for(;a>=y[r].daysTillNow;)r+=1;let s=y[r-1]?y[r-1].daysTillNow:0;a-=s;let n=y[r];for(this.year=n.year,this.month=0;a>=n.days[this.month];)this.month+=1,a-=n.days[this.month-1];this.day=a+1}getEnglishDate(){return this.timestamp}parse(t){this.set(...W(t))}getYear(){return this.year}getMonth(){return this.month}getDate(){return this.day}getDay(){return this.timestamp.getDay()}getHours(){return this.timestamp.getHours()}getMinutes(){return this.timestamp.getMinutes()}getSeconds(){return this.timestamp.getSeconds()}getMilliseconds(){return this.timestamp.getMilliseconds()}getTime(){return this.timestamp.getTime()}setYear(t){this.set(t,this.month,this.day)}setMonth(t){this.set(this.year,t,this.day)}setDate(t){this.set(this.year,this.month,t)}set(t,a,r){let s=t+Math.floor(a/12)-y[0].year,n=y[s],o=n.daysTillNow-n.totalDays,i=a%12,u=i<0?12+i:i;for(let b=0;b<u;b+=1)o+=n.days[b];o+=r-1,this.setEnglishDate(new Date(E+o*864e5))}format(t){return Y(this,t)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){let a=new Date(this.timestamp.getTime()+t*864e5);return new e(a)}addMonths(t){let a=this.year,r=this.month+t;a+=Math.floor(r/12),r=r%12,r<0&&(r+=12,a-=1);let s=a-y[0].year;if(s<0||s>=y.length)throw new Error("Resulting date is out of supported range");let n=y[s].days[r],o=Math.min(this.day,n);return new e(a,r,o)}addYears(t){let a=this.year+t;if(a<y[0].year||a>=y[0].year+y.length)throw new Error("Resulting date is out of supported range");let r=a-y[0].year;if(this.month===11&&this.day===29){let s=y[r].days[11];if(s<29)return new e(a,11,s)}return new e(a,this.month,this.day)}static minimum(){return new Date(E)}static maximum(){return new Date(E+y[y.length-1].daysTillNow*864e5)}daysInMonth(){let t=this.year-y[0].year;return y[t].days[this.month]}isLeapYear(){let t=this.year-y[0].year;return y[t].totalDays===366}getWeeksInMonth(){let a=new e(this.year,this.month,1).getDay(),r=this.daysInMonth();return Math.ceil((a+r)/7)}diff(t,a){switch(a){case"day":return Math.floor((this.timestamp.getTime()-t.timestamp.getTime())/864e5);case"month":let r=this.year-t.year,s=this.month-t.month;return r*12+s;case"year":return this.year-t.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){let t=new Date(this.timestamp);return t.setHours(0,0,0,0),new e(t)}endOfDay(){let t=new Date(this.timestamp);return t.setHours(23,59,59,999),new e(t)}startOfMonth(){return new e(this.year,this.month,1)}endOfMonth(){let t=this.daysInMonth();return new e(this.year,this.month,t).endOfDay()}startOfYear(){return new e(this.year,0,1)}endOfYear(){let t=this.year-y[0].year,a=y[t].days[11];return new e(this.year,11,a).endOfDay()}static getMonthName(t,a=!1,r=!1){if(t<0||t>11)throw new Error("Invalid month index, must be between 0-11");let s="";return r?s=a?f[t]:T[t]:s=a?p[t]:c[t],s}static getDayName(t,a=!1,r=!1){if(t<0||t>6)throw new Error("Invalid day index, must be between 0-6");let s="";return r?s=a?w[t]:N[t]:s=a?D[t]:m[t],s}static isValid(t,a,r){try{if(t<y[0].year||t>=y[0].year+y.length||a<0||a>11)return!1;let s=t-y[0].year,n=y[s].days[a];return!(r<1||r>n)}catch{return!1}}isValid(){return e.isValid(this.year,this.month,this.day)}static getCalendarDays(t,a){if(!e.isValid(t,a,1))throw new Error("Invalid year or month");let r={year:0,month:0,days:[]},s={year:0,month:0,days:[]},n={year:0,month:0,days:[]},o=t-y[0].year,u=new e(t,a,1).getDay(),b=y[o].days[a];s.year=t,s.month=a;let M=a-1,g=t,x=a+1,O=t;if(M<0&&(M=11,g--),g>y[0].year&&(r.year=g,r.month=M),g>=y[0].year&&u>0){let l=g-y[0].year,$=y[l].days[M];for(let H=0;H<u;H++)r.days.push($-u+H+1)}for(let l=1;l<=b;l++)s.days.push(l);x>11&&(x=0,O++),O<y[0].year+y.length&&(n.year=O,n.month=x);let I=42-u-s.days.length;if(O<y[0].year+y.length&&I>0)for(let l=1;l<=I;l++)n.days.push(l);return{prevRemainingDays:u,prevMonth:r,currentMonth:s,nextMonth:n,remainingDays:I}}clone(){return new e(this)}isAfter(t){return this.timestamp.getTime()>t.timestamp.getTime()}isBefore(t){return this.timestamp.getTime()<t.timestamp.getTime()}isEqual(t){return this.year===t.year&&this.month===t.month&&this.day===t.day}isSame(t,a){switch(a){case"year":return this.year===t.year;case"month":return this.year===t.year&&this.month===t.month;case"day":return this.isEqual(t);default:throw new Error("Invalid unit for comparison")}}};var F=e=>{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=new Date(e);if(Number.isNaN(t.getTime()))throw new Error(`Invalid date input '${e}'`);try{return new d(t).format("YYYY-MM-DD")}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert AD to BS")}};function K(e){try{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=e?new d(e):new d,a=s=>s<10?`0${s}`:`${s}`,r=t.getEnglishDate();return`${r.getFullYear()}-${a(r.getMonth()+1)}-${a(r.getDate())}`}catch(t){throw console.error("Error During Date Conversion : ",t),new Error("Failed to convert BS to AD")}}0&&(module.exports={ADtoBS,BStoAD,MONTH_EN,MONTH_NP,MONTH_SHORT_EN,MONTH_SHORT_NP,NEPALI_DATE_MAP,NUMBER_NP,NepaliDate,WEEK_EN,WEEK_NP,WEEK_SHORT_EN,WEEK_SHORT_NP});
|
|
1
|
+
"use strict";var Q=Object.defineProperty;var K=Object.getOwnPropertyDescriptor;var $=Object.getOwnPropertyNames;var B=Object.prototype.hasOwnProperty;var k=(e,t)=>{for(var a in t)Q(e,a,{get:t[a],enumerable:!0})},L=(e,t,a,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of $(t))!B.call(e,s)&&s!==a&&Q(e,s,{get:()=>t[s],enumerable:!(r=K(t,s))||r.enumerable});return e};var V=e=>L(Q({},"__esModule",{value:!0}),e);var tt={};k(tt,{ADtoBS:()=>R,BStoAD:()=>W,MONTH_EN:()=>p,MONTH_NP:()=>b,MONTH_SHORT_EN:()=>g,MONTH_SHORT_NP:()=>f,NEPALI_DATE_MAP:()=>n,NUMBER_NP:()=>O,NepaliDate:()=>u,WEEK_EN:()=>m,WEEK_NP:()=>c,WEEK_SHORT_EN:()=>N,WEEK_SHORT_NP:()=>w});module.exports=V(tt);var n=[{year:2e3,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2001,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2002,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2003,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2004,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2005,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2006,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2007,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2008,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2009,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2010,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2011,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2012,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2013,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2014,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2015,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2016,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2017,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2018,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2019,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2020,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2021,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2022,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2023,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2024,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2025,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2026,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2027,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2028,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2029,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2030,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2031,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2032,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2033,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2034,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2035,days:[30,32,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2036,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2037,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2038,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2039,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2040,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2041,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2042,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2043,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2044,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2045,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2046,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2047,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2048,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2049,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2050,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2051,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2052,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2053,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2054,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2055,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2056,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2057,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2058,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2059,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2060,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2061,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2062,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2063,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2064,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2065,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2066,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2067,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2068,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2069,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2070,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2071,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2072,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2073,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2074,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2075,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2076,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2077,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2078,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2079,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2080,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2081,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2082,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2083,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2084,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2085,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2086,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2087,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2088,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2089,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2090,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2091,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2092,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2093,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2094,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2095,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2096,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2097,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2098,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2099,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2100,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0}],P=0;n.forEach(e=>{e.totalDays=e.days.reduce((t,a)=>t+a,0),P+=e.totalDays,e.daysTillNow=P});var E=new Date(1943,3,14).getTime(),m=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],N=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],c=["\u0906\u0907\u0924\u092C\u093E\u0930","\u0938\u094B\u092E\u092C\u093E\u0930","\u092E\u0902\u0917\u0932\u092C\u093E\u0930","\u092C\u0941\u0927\u092C\u093E\u0930","\u092C\u093F\u0939\u093F\u092C\u093E\u0930","\u0936\u0941\u0915\u094D\u0930\u092C\u093E\u0930","\u0936\u0928\u093F\u092C\u093E\u0930"],w=["\u0906\u0907\u0924","\u0938\u094B\u092E","\u092E\u0902\u0917\u0932","\u092C\u0941\u0927","\u092C\u093F\u0939\u093F","\u0936\u0941\u0915\u094D\u0930","\u0936\u0928\u093F"],p=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],g=["Bai","Jes","Asa","Shr","Bhd","Asw","Kar","Man","Pou","Mag","Fal","Cha"],b=["\u092C\u0948\u0936\u093E\u0916","\u091C\u0947\u0920","\u0905\u0938\u093E\u0930","\u0936\u094D\u0930\u093E\u0935\u0923","\u092D\u093E\u0926\u094D\u0930","\u0906\u0936\u094D\u0935\u093F\u0928","\u0915\u093E\u0930\u094D\u0924\u093F\u0915","\u092E\u0902\u0938\u093F\u0930","\u092A\u094C\u0937","\u092E\u093E\u0918","\u092B\u093E\u0932\u094D\u0917\u0941\u0923","\u091A\u0948\u0924\u094D\u0930"],f=["\u092C\u0948","\u091C\u0947","\u0905","\u0936\u094D\u0930\u093E","\u092D\u093E","\u0906","\u0915\u093E","\u092E\u0902","\u092A\u094C","\u092E\u093E","\u092B\u093E","\u091A\u0948"],O=["\u0966","\u0967","\u0968","\u0969","\u096A","\u096B","\u096C","\u096D","\u096E","\u096F"];function S(e){return e<10?`0${e}`:`${e}`}function h(e){let t="";for(let a=0;a<e.length;a+=1)t+=O[e.charCodeAt(a)-48];return t}function U(e){return t=>e<=2?String(t.getYear()).substring(2):e===3?String(t.getYear()).substring(1):String(t.getYear())}function j(e){return t=>e<=2?h(String(t.getYear()).substring(2)):h(e===3?String(t.getYear()).substring(1):String(t.getYear()))}function J(e){return t=>e===1?String(t.getMonth()+1):e===2?S(t.getMonth()+1):e===3?g[t.getMonth()]:p[t.getMonth()]}function G(e){return t=>e===1?h(String(t.getMonth()+1)):e===2?h(S(t.getMonth()+1)):e===3?f[t.getMonth()]:b[t.getMonth()]}function X(e){return t=>e===1?String(t.getDate()):e===2?S(t.getDate()):e===3?N[t.getDay()]:m[t.getDay()]}function Z(e){return t=>e===1?h(String(t.getDate())):e===2?h(S(t.getDate())):e===3?w[t.getDay()]:c[t.getDay()]}function A(e){return()=>e}var v={Y:U,y:j,M:J,m:G,D:X,d:Z};function q(e){return e in v}function z(e){let t=!1,a="",r="",s=0,i=[];for(let o=0;o<e.length;o+=1){let y=e[o];if(y===r){s+=1;continue}if(r!==""&&(i.push(v[r](s)),r="",s=0),y==='"'){t=!t;continue}!q(y)||t?a+=y:(a&&(i.push(A(a)),a=""),r=y,s=1)}return a?i.push(A(a)):r&&i.push(v[r](s)),i}function F(e,t){return z(t).map(a=>a(e)).join("")}function _(e){let t=e.split(/[-./]/,3),[a,r=1,s=1]=t.map(o=>{let y=parseInt(o,10);if(Number.isNaN(y))throw new Error("Invalid date");return y});if(a<n[0].year||a>=n[0].year+n.length)throw new Error("Nepal year out of range");if(r<1||r>12)throw new Error("Invalid nepali month must be between 1 - 12");let i=n[a-n[0].year].days[r-1];if(s<1||s>i)throw new Error(`Invalid nepali date must be between 1 - ${i} in ${a} ${r}`);return[a,r-1,s]}var u=class e{timestamp;year;month;day;constructor(...t){if(t.length===0)this.setEnglishDate(new Date);else if(t.length===1){let a=t[0];if(typeof a=="object")if(a instanceof Date)this.setEnglishDate(a);else if(a instanceof e)this.timestamp=a.timestamp,this.year=a.year,this.month=a.month,this.day=a.day;else throw new Error("Invalid date argument");else if(typeof a=="string")this.set(..._(a));else if(typeof a=="number")this.setEnglishDate(new Date(a));else throw new Error("Invalid date argument")}else if(t.length===3)this.set(t[0],t[1],t[2]);else throw new Error("Invalid argument syntax")}setEnglishDate(t){this.timestamp=t;let a=Math.floor((this.timestamp.getTime()-E)/864e5),r=Math.floor(a/366);for(;a>=n[r].daysTillNow;)r+=1;let s=n[r-1]?n[r-1].daysTillNow:0;a-=s;let i=n[r];for(this.year=i.year,this.month=0;a>=i.days[this.month];)this.month+=1,a-=i.days[this.month-1];this.day=a+1}getEnglishDate(){return this.timestamp}parse(t){this.set(..._(t))}getYear(){return this.year}getMonth(){return this.month}getDate(){return this.day}getDay(){return this.timestamp.getDay()}getHours(){return this.timestamp.getHours()}getMinutes(){return this.timestamp.getMinutes()}getSeconds(){return this.timestamp.getSeconds()}getMilliseconds(){return this.timestamp.getMilliseconds()}getTime(){return this.timestamp.getTime()}setYear(t){this.set(t,this.month,this.day)}setMonth(t){this.set(this.year,t,this.day)}setDate(t){this.set(this.year,this.month,t)}set(t,a,r){let s=t+Math.floor(a/12)-n[0].year,i=n[s],o=i.daysTillNow-i.totalDays,y=a%12,l=y<0?12+y:y;for(let D=0;D<l;D+=1)o+=i.days[D];o+=r-1,this.setEnglishDate(new Date(E+o*864e5))}format(t){return F(this,t)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){let a=new Date(this.timestamp.getTime()+t*864e5);return new e(a)}addMonths(t){let a=this.year,r=this.month+t;a+=Math.floor(r/12),r=r%12,r<0&&(r+=12,a-=1);let s=a-n[0].year;if(s<0||s>=n.length)throw new Error("Resulting date is out of supported range");let i=n[s].days[r],o=Math.min(this.day,i);return new e(a,r,o)}addYears(t){let a=this.year+t;if(a<n[0].year||a>=n[0].year+n.length)throw new Error("Resulting date is out of supported range");let r=a-n[0].year;if(this.month===11&&this.day===29){let s=n[r].days[11];if(s<29)return new e(a,11,s)}return new e(a,this.month,this.day)}static minimum(){return new Date(E)}static maximum(){return new Date(E+n[n.length-1].daysTillNow*864e5)}daysInMonth(){let t=this.year-n[0].year;return n[t].days[this.month]}isLeapYear(){let t=this.year-n[0].year;return n[t].totalDays===366}getWeeksInMonth(){let a=new e(this.year,this.month,1).getDay(),r=this.daysInMonth();return Math.ceil((a+r)/7)}diff(t,a){switch(a){case"day":return Math.floor((this.timestamp.getTime()-t.timestamp.getTime())/864e5);case"month":let r=this.year-t.year,s=this.month-t.month;return r*12+s;case"year":return this.year-t.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){let t=new Date(this.timestamp);return t.setHours(0,0,0,0),new e(t)}endOfDay(){let t=new Date(this.timestamp);return t.setHours(23,59,59,999),new e(t)}startOfWeek(t=0){if(t<0||t>6||!Number.isInteger(t))throw new Error("startOfWeek must be an integer between 0 and 6");let r=(this.getDay()-t+7)%7;return this.clone().startOfDay().addDays(-r)}endOfWeek(t=0){return this.startOfWeek(t).addDays(6).endOfDay()}startOfMonth(){return new e(this.year,this.month,1)}endOfMonth(){let t=this.daysInMonth();return new e(this.year,this.month,t).endOfDay()}startOfYear(){return new e(this.year,0,1)}endOfYear(){let t=this.year-n[0].year,a=n[t].days[11];return new e(this.year,11,a).endOfDay()}static getMonthName(t,a=!1,r=!1){if(t<0||t>11)throw new Error("Invalid month index, must be between 0-11");let s="";return r?s=a?f[t]:b[t]:s=a?g[t]:p[t],s}static getDayName(t,a=!1,r=!1){if(t<0||t>6)throw new Error("Invalid day index, must be between 0-6");let s="";return r?s=a?w[t]:c[t]:s=a?N[t]:m[t],s}static isValid(t,a,r){try{if(t<n[0].year||t>=n[0].year+n.length||a<0||a>11)return!1;let s=t-n[0].year,i=n[s].days[a];return!(r<1||r>i)}catch{return!1}}isValid(){return e.isValid(this.year,this.month,this.day)}static getCalendarDays(t,a){if(!e.isValid(t,a,1))throw new Error("Invalid year or month");let r={year:0,month:0,days:[]},s={year:0,month:0,days:[]},i={year:0,month:0,days:[]},o=t-n[0].year,l=new e(t,a,1).getDay(),D=n[o].days[a];s.year=t,s.month=a;let M=a-1,T=t,I=a+1,Y=t;if(M<0&&(M=11,T--),T>n[0].year&&(r.year=T,r.month=M),T>=n[0].year&&l>0){let d=T-n[0].year,C=n[d].days[M];for(let H=0;H<l;H++)r.days.push(C-l+H+1)}for(let d=1;d<=D;d++)s.days.push(d);I>11&&(I=0,Y++),Y<n[0].year+n.length&&(i.year=Y,i.month=I);let x=42-l-s.days.length;if(Y<n[0].year+n.length&&x>0)for(let d=1;d<=x;d++)i.days.push(d);return{prevRemainingDays:l,prevMonth:r,currentMonth:s,nextMonth:i,remainingDays:x}}clone(){return new e(this)}isAfter(t){return this.timestamp.getTime()>t.timestamp.getTime()}isBefore(t){return this.timestamp.getTime()<t.timestamp.getTime()}isEqual(t){return this.year===t.year&&this.month===t.month&&this.day===t.day}isSame(t,a){switch(a){case"year":return this.year===t.year;case"month":return this.year===t.year&&this.month===t.month;case"day":return this.isEqual(t);default:throw new Error("Invalid unit for comparison")}}static getQuarter(t,a){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");let r=a??new e().getYear(),s=(t-1)*3,i=new e(r,s,1),o=new e(r,s+2,1).endOfMonth();return{start:i,end:o}}getCurrentQuarter(){return Math.floor(this.month/3)+1}static getQuarters(t){let a=t??new e().getYear();return{Q1:e.getQuarter(1,a),Q2:e.getQuarter(2,a),Q3:e.getQuarter(3,a),Q4:e.getQuarter(4,a)}}static getCurrentFiscalYear(){let t=new e,a=t.getYear();return t.getMonth()<3?a-1:a}static getFiscalYearQuarter(t,a){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");let r=a??e.getCurrentFiscalYear(),s=r,i=(t-1)*3+3;t===4&&(s=r+1,i=0),i>11&&(s++,i-=12);let o=i+2,y=s;o>11&&(y++,o-=12);let l=new e(s,i,1),D=new e(y,o,1).endOfMonth();return{start:l,end:D}}getCurrentFiscalYearQuarter(){let t=this.getMonth();return t>=3&&t<=5?1:t>=6&&t<=8?2:t>=9&&t<=11?3:4}getCurrentFiscalYearQuarterDates(){let t=this.getCurrentFiscalYearQuarter(),a=e.getCurrentFiscalYear();return e.getFiscalYearQuarter(t,a)}static getFiscalYearQuarters(t){let a=t??e.getCurrentFiscalYear();return{Q1:e.getFiscalYearQuarter(1,a),Q2:e.getFiscalYearQuarter(2,a),Q3:e.getFiscalYearQuarter(3,a),Q4:e.getFiscalYearQuarter(4,a)}}};var R=e=>{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=new Date(e);if(Number.isNaN(t.getTime()))throw new Error(`Invalid date input '${e}'`);try{return new u(t).format("YYYY-MM-DD")}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert AD to BS")}};function W(e){try{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=e?new u(e):new u,a=s=>s<10?`0${s}`:`${s}`,r=t.getEnglishDate();return`${r.getFullYear()}-${a(r.getMonth()+1)}-${a(r.getDate())}`}catch(t){throw console.error("Error During Date Conversion : ",t),new Error("Failed to convert BS to AD")}}0&&(module.exports={ADtoBS,BStoAD,MONTH_EN,MONTH_NP,MONTH_SHORT_EN,MONTH_SHORT_NP,NEPALI_DATE_MAP,NUMBER_NP,NepaliDate,WEEK_EN,WEEK_NP,WEEK_SHORT_EN,WEEK_SHORT_NP});
|
package/dist/index.mjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var s=[{year:2e3,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2001,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2002,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2003,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2004,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2005,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2006,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2007,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2008,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2009,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2010,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2011,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2012,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2013,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2014,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2015,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2016,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2017,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2018,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2019,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2020,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2021,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2022,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2023,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2024,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2025,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2026,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2027,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2028,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2029,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2030,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2031,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2032,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2033,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2034,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2035,days:[30,32,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2036,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2037,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2038,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2039,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2040,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2041,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2042,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2043,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2044,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2045,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2046,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2047,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2048,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2049,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2050,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2051,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2052,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2053,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2054,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2055,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2056,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2057,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2058,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2059,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2060,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2061,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2062,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2063,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2064,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2065,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2066,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2067,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2068,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2069,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2070,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2071,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2072,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2073,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2074,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2075,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2076,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2077,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2078,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2079,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2080,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2081,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2082,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2083,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2084,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2085,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2086,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2087,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2088,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2089,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2090,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2091,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2092,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2093,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2094,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2095,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2096,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2097,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2098,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2099,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2100,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0}],Y=0;s.forEach(e=>{e.totalDays=e.days.reduce((t,a)=>t+a,0),Y+=e.totalDays,e.daysTillNow=Y});var N=new Date(1943,3,14).getTime(),w=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],c=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],p=["\u0906\u0907\u0924\u092C\u093E\u0930","\u0938\u094B\u092E\u092C\u093E\u0930","\u092E\u0902\u0917\u0932\u092C\u093E\u0930","\u092C\u0941\u0927\u092C\u093E\u0930","\u092C\u093F\u0939\u093F\u092C\u093E\u0930","\u0936\u0941\u0915\u094D\u0930\u092C\u093E\u0930","\u0936\u0928\u093F\u092C\u093E\u0930"],T=["\u0906\u0907\u0924","\u0938\u094B\u092E","\u092E\u0902\u0917\u0932","\u092C\u0941\u0927","\u092C\u093F\u0939\u093F","\u0936\u0941\u0915\u094D\u0930","\u0936\u0928\u093F"],f=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],b=["Bai","Jes","Asa","Shr","Bhd","Asw","Kar","Man","Pou","Mag","Fal","Cha"],g=["\u092C\u0948\u0936\u093E\u0916","\u091C\u0947\u0920","\u0905\u0938\u093E\u0930","\u0936\u094D\u0930\u093E\u0935\u0923","\u092D\u093E\u0926\u094D\u0930","\u0906\u0936\u094D\u0935\u093F\u0928","\u0915\u093E\u0930\u094D\u0924\u093F\u0915","\u092E\u0902\u0938\u093F\u0930","\u092A\u094C\u0937","\u092E\u093E\u0918","\u092B\u093E\u0932\u094D\u0917\u0941\u0923","\u091A\u0948\u0924\u094D\u0930"],E=["\u092C\u0948","\u091C\u0947","\u0905","\u0936\u094D\u0930\u093E","\u092D\u093E","\u0906","\u0915\u093E","\u092E\u0902","\u092A\u094C","\u092E\u093E","\u092B\u093E","\u091A\u0948"],H=["\u0966","\u0967","\u0968","\u0969","\u096A","\u096B","\u096C","\u096D","\u096E","\u096F"];function _(e){return e<10?`0${e}`:`${e}`}function u(e){let t="";for(let a=0;a<e.length;a+=1)t+=H[e.charCodeAt(a)-48];return t}function F(e){return t=>e<=2?String(t.getYear()).substring(2):e===3?String(t.getYear()).substring(1):String(t.getYear())}function K(e){return t=>e<=2?u(String(t.getYear()).substring(2)):u(e===3?String(t.getYear()).substring(1):String(t.getYear()))}function $(e){return t=>e===1?String(t.getMonth()+1):e===2?_(t.getMonth()+1):e===3?b[t.getMonth()]:f[t.getMonth()]}function B(e){return t=>e===1?u(String(t.getMonth()+1)):e===2?u(_(t.getMonth()+1)):e===3?E[t.getMonth()]:g[t.getMonth()]}function C(e){return t=>e===1?String(t.getDate()):e===2?_(t.getDate()):e===3?c[t.getDay()]:w[t.getDay()]}function k(e){return t=>e===1?u(String(t.getDate())):e===2?u(_(t.getDate())):e===3?T[t.getDay()]:p[t.getDay()]}function A(e){return()=>e}var v={Y:F,y:K,M:$,m:B,D:C,d:k};function L(e){return e in v}function V(e){let t=!1,a="",r="",y=0,n=[];for(let o=0;o<e.length;o+=1){let i=e[o];if(i===r){y+=1;continue}if(r!==""&&(n.push(v[r](y)),r="",y=0),i==='"'){t=!t;continue}!L(i)||t?a+=i:(a&&(n.push(A(a)),a=""),r=i,y=1)}return a?n.push(A(a)):r&&n.push(v[r](y)),n}function P(e,t){return V(t).map(a=>a(e)).join("")}function R(e){let t=e.split(/[-./]/,3),[a,r=0,y=1]=t.map(o=>{let i=parseInt(o,10);if(Number.isNaN(i))throw new Error("Invalid date");return i});if(a<s[0].year||a>=s[0].year+s.length)throw new Error("Nepal year out of range");if(r<0||r>11)throw new Error("Invalid nepali month must be between 0 - 11");let n=s[a-s[0].year].days[r-1];if(y<1||y>n)throw new Error(`Invalid nepali date must be between 1 - ${n} in ${a} ${r}`);return[a,r-1,y]}var h=class e{timestamp;year;month;day;constructor(...t){if(t.length===0)this.setEnglishDate(new Date);else if(t.length===1){let a=t[0];if(typeof a=="object")if(a instanceof Date)this.setEnglishDate(a);else if(a instanceof e)this.timestamp=a.timestamp,this.year=a.year,this.month=a.month,this.day=a.day;else throw new Error("Invalid date argument");else if(typeof a=="string")this.set(...R(a));else if(typeof a=="number")this.setEnglishDate(new Date(a));else throw new Error("Invalid date argument")}else if(t.length===3)this.set(t[0],t[1],t[2]);else throw new Error("Invalid argument syntax")}setEnglishDate(t){this.timestamp=t;let a=Math.floor((this.timestamp.getTime()-N)/864e5),r=Math.floor(a/366);for(;a>=s[r].daysTillNow;)r+=1;let y=s[r-1]?s[r-1].daysTillNow:0;a-=y;let n=s[r];for(this.year=n.year,this.month=0;a>=n.days[this.month];)this.month+=1,a-=n.days[this.month-1];this.day=a+1}getEnglishDate(){return this.timestamp}parse(t){this.set(...R(t))}getYear(){return this.year}getMonth(){return this.month}getDate(){return this.day}getDay(){return this.timestamp.getDay()}getHours(){return this.timestamp.getHours()}getMinutes(){return this.timestamp.getMinutes()}getSeconds(){return this.timestamp.getSeconds()}getMilliseconds(){return this.timestamp.getMilliseconds()}getTime(){return this.timestamp.getTime()}setYear(t){this.set(t,this.month,this.day)}setMonth(t){this.set(this.year,t,this.day)}setDate(t){this.set(this.year,this.month,t)}set(t,a,r){let y=t+Math.floor(a/12)-s[0].year,n=s[y],o=n.daysTillNow-n.totalDays,i=a%12,d=i<0?12+i:i;for(let m=0;m<d;m+=1)o+=n.days[m];o+=r-1,this.setEnglishDate(new Date(N+o*864e5))}format(t){return P(this,t)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){let a=new Date(this.timestamp.getTime()+t*864e5);return new e(a)}addMonths(t){let a=this.year,r=this.month+t;a+=Math.floor(r/12),r=r%12,r<0&&(r+=12,a-=1);let y=a-s[0].year;if(y<0||y>=s.length)throw new Error("Resulting date is out of supported range");let n=s[y].days[r],o=Math.min(this.day,n);return new e(a,r,o)}addYears(t){let a=this.year+t;if(a<s[0].year||a>=s[0].year+s.length)throw new Error("Resulting date is out of supported range");let r=a-s[0].year;if(this.month===11&&this.day===29){let y=s[r].days[11];if(y<29)return new e(a,11,y)}return new e(a,this.month,this.day)}static minimum(){return new Date(N)}static maximum(){return new Date(N+s[s.length-1].daysTillNow*864e5)}daysInMonth(){let t=this.year-s[0].year;return s[t].days[this.month]}isLeapYear(){let t=this.year-s[0].year;return s[t].totalDays===366}getWeeksInMonth(){let a=new e(this.year,this.month,1).getDay(),r=this.daysInMonth();return Math.ceil((a+r)/7)}diff(t,a){switch(a){case"day":return Math.floor((this.timestamp.getTime()-t.timestamp.getTime())/864e5);case"month":let r=this.year-t.year,y=this.month-t.month;return r*12+y;case"year":return this.year-t.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){let t=new Date(this.timestamp);return t.setHours(0,0,0,0),new e(t)}endOfDay(){let t=new Date(this.timestamp);return t.setHours(23,59,59,999),new e(t)}startOfMonth(){return new e(this.year,this.month,1)}endOfMonth(){let t=this.daysInMonth();return new e(this.year,this.month,t).endOfDay()}startOfYear(){return new e(this.year,0,1)}endOfYear(){let t=this.year-s[0].year,a=s[t].days[11];return new e(this.year,11,a).endOfDay()}static getMonthName(t,a=!1,r=!1){if(t<0||t>11)throw new Error("Invalid month index, must be between 0-11");let y="";return r?y=a?E[t]:g[t]:y=a?b[t]:f[t],y}static getDayName(t,a=!1,r=!1){if(t<0||t>6)throw new Error("Invalid day index, must be between 0-6");let y="";return r?y=a?T[t]:p[t]:y=a?c[t]:w[t],y}static isValid(t,a,r){try{if(t<s[0].year||t>=s[0].year+s.length||a<0||a>11)return!1;let y=t-s[0].year,n=s[y].days[a];return!(r<1||r>n)}catch{return!1}}isValid(){return e.isValid(this.year,this.month,this.day)}static getCalendarDays(t,a){if(!e.isValid(t,a,1))throw new Error("Invalid year or month");let r={year:0,month:0,days:[]},y={year:0,month:0,days:[]},n={year:0,month:0,days:[]},o=t-s[0].year,d=new e(t,a,1).getDay(),m=s[o].days[a];y.year=t,y.month=a;let M=a-1,D=t,S=a+1,O=t;if(M<0&&(M=11,D--),D>s[0].year&&(r.year=D,r.month=M),D>=s[0].year&&d>0){let l=D-s[0].year,W=s[l].days[M];for(let I=0;I<d;I++)r.days.push(W-d+I+1)}for(let l=1;l<=m;l++)y.days.push(l);S>11&&(S=0,O++),O<s[0].year+s.length&&(n.year=O,n.month=S);let x=42-d-y.days.length;if(O<s[0].year+s.length&&x>0)for(let l=1;l<=x;l++)n.days.push(l);return{prevRemainingDays:d,prevMonth:r,currentMonth:y,nextMonth:n,remainingDays:x}}clone(){return new e(this)}isAfter(t){return this.timestamp.getTime()>t.timestamp.getTime()}isBefore(t){return this.timestamp.getTime()<t.timestamp.getTime()}isEqual(t){return this.year===t.year&&this.month===t.month&&this.day===t.day}isSame(t,a){switch(a){case"year":return this.year===t.year;case"month":return this.year===t.year&&this.month===t.month;case"day":return this.isEqual(t);default:throw new Error("Invalid unit for comparison")}}};var q=e=>{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=new Date(e);if(Number.isNaN(t.getTime()))throw new Error(`Invalid date input '${e}'`);try{return new h(t).format("YYYY-MM-DD")}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert AD to BS")}};function U(e){try{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=e?new h(e):new h,a=y=>y<10?`0${y}`:`${y}`,r=t.getEnglishDate();return`${r.getFullYear()}-${a(r.getMonth()+1)}-${a(r.getDate())}`}catch(t){throw console.error("Error During Date Conversion : ",t),new Error("Failed to convert BS to AD")}}export{q as ADtoBS,U as BStoAD,f as MONTH_EN,g as MONTH_NP,b as MONTH_SHORT_EN,E as MONTH_SHORT_NP,s as NEPALI_DATE_MAP,H as NUMBER_NP,h as NepaliDate,w as WEEK_EN,p as WEEK_NP,c as WEEK_SHORT_EN,T as WEEK_SHORT_NP};
|
|
1
|
+
var n=[{year:2e3,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2001,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2002,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2003,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2004,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2005,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2006,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2007,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2008,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2009,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2010,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2011,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2012,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2013,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2014,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2015,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2016,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2017,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2018,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2019,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2020,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2021,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2022,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2023,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2024,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2025,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2026,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2027,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2028,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2029,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2030,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2031,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2032,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2033,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2034,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2035,days:[30,32,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2036,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2037,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2038,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2039,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2040,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2041,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2042,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2043,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2044,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2045,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2046,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2047,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2048,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2049,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2050,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2051,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2052,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2053,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2054,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2055,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2056,days:[31,31,32,31,32,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2057,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2058,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2059,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2060,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2061,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2062,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2063,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2064,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2065,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2066,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2067,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2068,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2069,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2070,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2071,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2072,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2073,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2074,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2075,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2076,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2077,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2078,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2079,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2080,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:2081,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2082,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2083,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2084,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2085,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2086,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2087,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2088,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2089,days:[30,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:2090,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2091,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2092,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2093,days:[31,31,31,32,31,31,29,30,30,29,29,31],totalDays:0,daysTillNow:0},{year:2094,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2095,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2096,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:2097,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:2098,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2099,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:2100,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0}],F=0;n.forEach(e=>{e.totalDays=e.days.reduce((t,a)=>t+a,0),F+=e.totalDays,e.daysTillNow=F});var N=new Date(1943,3,14).getTime(),c=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],w=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],p=["\u0906\u0907\u0924\u092C\u093E\u0930","\u0938\u094B\u092E\u092C\u093E\u0930","\u092E\u0902\u0917\u0932\u092C\u093E\u0930","\u092C\u0941\u0927\u092C\u093E\u0930","\u092C\u093F\u0939\u093F\u092C\u093E\u0930","\u0936\u0941\u0915\u094D\u0930\u092C\u093E\u0930","\u0936\u0928\u093F\u092C\u093E\u0930"],g=["\u0906\u0907\u0924","\u0938\u094B\u092E","\u092E\u0902\u0917\u0932","\u092C\u0941\u0927","\u092C\u093F\u0939\u093F","\u0936\u0941\u0915\u094D\u0930","\u0936\u0928\u093F"],b=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],f=["Bai","Jes","Asa","Shr","Bhd","Asw","Kar","Man","Pou","Mag","Fal","Cha"],T=["\u092C\u0948\u0936\u093E\u0916","\u091C\u0947\u0920","\u0905\u0938\u093E\u0930","\u0936\u094D\u0930\u093E\u0935\u0923","\u092D\u093E\u0926\u094D\u0930","\u0906\u0936\u094D\u0935\u093F\u0928","\u0915\u093E\u0930\u094D\u0924\u093F\u0915","\u092E\u0902\u0938\u093F\u0930","\u092A\u094C\u0937","\u092E\u093E\u0918","\u092B\u093E\u0932\u094D\u0917\u0941\u0923","\u091A\u0948\u0924\u094D\u0930"],E=["\u092C\u0948","\u091C\u0947","\u0905","\u0936\u094D\u0930\u093E","\u092D\u093E","\u0906","\u0915\u093E","\u092E\u0902","\u092A\u094C","\u092E\u093E","\u092B\u093E","\u091A\u0948"],H=["\u0966","\u0967","\u0968","\u0969","\u096A","\u096B","\u096C","\u096D","\u096E","\u096F"];function O(e){return e<10?`0${e}`:`${e}`}function D(e){let t="";for(let a=0;a<e.length;a+=1)t+=H[e.charCodeAt(a)-48];return t}function R(e){return t=>e<=2?String(t.getYear()).substring(2):e===3?String(t.getYear()).substring(1):String(t.getYear())}function W(e){return t=>e<=2?D(String(t.getYear()).substring(2)):D(e===3?String(t.getYear()).substring(1):String(t.getYear()))}function C(e){return t=>e===1?String(t.getMonth()+1):e===2?O(t.getMonth()+1):e===3?f[t.getMonth()]:b[t.getMonth()]}function K(e){return t=>e===1?D(String(t.getMonth()+1)):e===2?D(O(t.getMonth()+1)):e===3?E[t.getMonth()]:T[t.getMonth()]}function $(e){return t=>e===1?String(t.getDate()):e===2?O(t.getDate()):e===3?w[t.getDay()]:c[t.getDay()]}function B(e){return t=>e===1?D(String(t.getDate())):e===2?D(O(t.getDate())):e===3?g[t.getDay()]:p[t.getDay()]}function P(e){return()=>e}var Q={Y:R,y:W,M:C,m:K,D:$,d:B};function k(e){return e in Q}function L(e){let t=!1,a="",r="",s=0,i=[];for(let o=0;o<e.length;o+=1){let y=e[o];if(y===r){s+=1;continue}if(r!==""&&(i.push(Q[r](s)),r="",s=0),y==='"'){t=!t;continue}!k(y)||t?a+=y:(a&&(i.push(P(a)),a=""),r=y,s=1)}return a?i.push(P(a)):r&&i.push(Q[r](s)),i}function v(e,t){return L(t).map(a=>a(e)).join("")}function A(e){let t=e.split(/[-./]/,3),[a,r=1,s=1]=t.map(o=>{let y=parseInt(o,10);if(Number.isNaN(y))throw new Error("Invalid date");return y});if(a<n[0].year||a>=n[0].year+n.length)throw new Error("Nepal year out of range");if(r<1||r>12)throw new Error("Invalid nepali month must be between 1 - 12");let i=n[a-n[0].year].days[r-1];if(s<1||s>i)throw new Error(`Invalid nepali date must be between 1 - ${i} in ${a} ${r}`);return[a,r-1,s]}var h=class e{timestamp;year;month;day;constructor(...t){if(t.length===0)this.setEnglishDate(new Date);else if(t.length===1){let a=t[0];if(typeof a=="object")if(a instanceof Date)this.setEnglishDate(a);else if(a instanceof e)this.timestamp=a.timestamp,this.year=a.year,this.month=a.month,this.day=a.day;else throw new Error("Invalid date argument");else if(typeof a=="string")this.set(...A(a));else if(typeof a=="number")this.setEnglishDate(new Date(a));else throw new Error("Invalid date argument")}else if(t.length===3)this.set(t[0],t[1],t[2]);else throw new Error("Invalid argument syntax")}setEnglishDate(t){this.timestamp=t;let a=Math.floor((this.timestamp.getTime()-N)/864e5),r=Math.floor(a/366);for(;a>=n[r].daysTillNow;)r+=1;let s=n[r-1]?n[r-1].daysTillNow:0;a-=s;let i=n[r];for(this.year=i.year,this.month=0;a>=i.days[this.month];)this.month+=1,a-=i.days[this.month-1];this.day=a+1}getEnglishDate(){return this.timestamp}parse(t){this.set(...A(t))}getYear(){return this.year}getMonth(){return this.month}getDate(){return this.day}getDay(){return this.timestamp.getDay()}getHours(){return this.timestamp.getHours()}getMinutes(){return this.timestamp.getMinutes()}getSeconds(){return this.timestamp.getSeconds()}getMilliseconds(){return this.timestamp.getMilliseconds()}getTime(){return this.timestamp.getTime()}setYear(t){this.set(t,this.month,this.day)}setMonth(t){this.set(this.year,t,this.day)}setDate(t){this.set(this.year,this.month,t)}set(t,a,r){let s=t+Math.floor(a/12)-n[0].year,i=n[s],o=i.daysTillNow-i.totalDays,y=a%12,l=y<0?12+y:y;for(let u=0;u<l;u+=1)o+=i.days[u];o+=r-1,this.setEnglishDate(new Date(N+o*864e5))}format(t){return v(this,t)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){let a=new Date(this.timestamp.getTime()+t*864e5);return new e(a)}addMonths(t){let a=this.year,r=this.month+t;a+=Math.floor(r/12),r=r%12,r<0&&(r+=12,a-=1);let s=a-n[0].year;if(s<0||s>=n.length)throw new Error("Resulting date is out of supported range");let i=n[s].days[r],o=Math.min(this.day,i);return new e(a,r,o)}addYears(t){let a=this.year+t;if(a<n[0].year||a>=n[0].year+n.length)throw new Error("Resulting date is out of supported range");let r=a-n[0].year;if(this.month===11&&this.day===29){let s=n[r].days[11];if(s<29)return new e(a,11,s)}return new e(a,this.month,this.day)}static minimum(){return new Date(N)}static maximum(){return new Date(N+n[n.length-1].daysTillNow*864e5)}daysInMonth(){let t=this.year-n[0].year;return n[t].days[this.month]}isLeapYear(){let t=this.year-n[0].year;return n[t].totalDays===366}getWeeksInMonth(){let a=new e(this.year,this.month,1).getDay(),r=this.daysInMonth();return Math.ceil((a+r)/7)}diff(t,a){switch(a){case"day":return Math.floor((this.timestamp.getTime()-t.timestamp.getTime())/864e5);case"month":let r=this.year-t.year,s=this.month-t.month;return r*12+s;case"year":return this.year-t.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){let t=new Date(this.timestamp);return t.setHours(0,0,0,0),new e(t)}endOfDay(){let t=new Date(this.timestamp);return t.setHours(23,59,59,999),new e(t)}startOfWeek(t=0){if(t<0||t>6||!Number.isInteger(t))throw new Error("startOfWeek must be an integer between 0 and 6");let r=(this.getDay()-t+7)%7;return this.clone().startOfDay().addDays(-r)}endOfWeek(t=0){return this.startOfWeek(t).addDays(6).endOfDay()}startOfMonth(){return new e(this.year,this.month,1)}endOfMonth(){let t=this.daysInMonth();return new e(this.year,this.month,t).endOfDay()}startOfYear(){return new e(this.year,0,1)}endOfYear(){let t=this.year-n[0].year,a=n[t].days[11];return new e(this.year,11,a).endOfDay()}static getMonthName(t,a=!1,r=!1){if(t<0||t>11)throw new Error("Invalid month index, must be between 0-11");let s="";return r?s=a?E[t]:T[t]:s=a?f[t]:b[t],s}static getDayName(t,a=!1,r=!1){if(t<0||t>6)throw new Error("Invalid day index, must be between 0-6");let s="";return r?s=a?g[t]:p[t]:s=a?w[t]:c[t],s}static isValid(t,a,r){try{if(t<n[0].year||t>=n[0].year+n.length||a<0||a>11)return!1;let s=t-n[0].year,i=n[s].days[a];return!(r<1||r>i)}catch{return!1}}isValid(){return e.isValid(this.year,this.month,this.day)}static getCalendarDays(t,a){if(!e.isValid(t,a,1))throw new Error("Invalid year or month");let r={year:0,month:0,days:[]},s={year:0,month:0,days:[]},i={year:0,month:0,days:[]},o=t-n[0].year,l=new e(t,a,1).getDay(),u=n[o].days[a];s.year=t,s.month=a;let M=a-1,m=t,S=a+1,Y=t;if(M<0&&(M=11,m--),m>n[0].year&&(r.year=m,r.month=M),m>=n[0].year&&l>0){let d=m-n[0].year,_=n[d].days[M];for(let x=0;x<l;x++)r.days.push(_-l+x+1)}for(let d=1;d<=u;d++)s.days.push(d);S>11&&(S=0,Y++),Y<n[0].year+n.length&&(i.year=Y,i.month=S);let I=42-l-s.days.length;if(Y<n[0].year+n.length&&I>0)for(let d=1;d<=I;d++)i.days.push(d);return{prevRemainingDays:l,prevMonth:r,currentMonth:s,nextMonth:i,remainingDays:I}}clone(){return new e(this)}isAfter(t){return this.timestamp.getTime()>t.timestamp.getTime()}isBefore(t){return this.timestamp.getTime()<t.timestamp.getTime()}isEqual(t){return this.year===t.year&&this.month===t.month&&this.day===t.day}isSame(t,a){switch(a){case"year":return this.year===t.year;case"month":return this.year===t.year&&this.month===t.month;case"day":return this.isEqual(t);default:throw new Error("Invalid unit for comparison")}}static getQuarter(t,a){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");let r=a??new e().getYear(),s=(t-1)*3,i=new e(r,s,1),o=new e(r,s+2,1).endOfMonth();return{start:i,end:o}}getCurrentQuarter(){return Math.floor(this.month/3)+1}static getQuarters(t){let a=t??new e().getYear();return{Q1:e.getQuarter(1,a),Q2:e.getQuarter(2,a),Q3:e.getQuarter(3,a),Q4:e.getQuarter(4,a)}}static getCurrentFiscalYear(){let t=new e,a=t.getYear();return t.getMonth()<3?a-1:a}static getFiscalYearQuarter(t,a){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");let r=a??e.getCurrentFiscalYear(),s=r,i=(t-1)*3+3;t===4&&(s=r+1,i=0),i>11&&(s++,i-=12);let o=i+2,y=s;o>11&&(y++,o-=12);let l=new e(s,i,1),u=new e(y,o,1).endOfMonth();return{start:l,end:u}}getCurrentFiscalYearQuarter(){let t=this.getMonth();return t>=3&&t<=5?1:t>=6&&t<=8?2:t>=9&&t<=11?3:4}getCurrentFiscalYearQuarterDates(){let t=this.getCurrentFiscalYearQuarter(),a=e.getCurrentFiscalYear();return e.getFiscalYearQuarter(t,a)}static getFiscalYearQuarters(t){let a=t??e.getCurrentFiscalYear();return{Q1:e.getFiscalYearQuarter(1,a),Q2:e.getFiscalYearQuarter(2,a),Q3:e.getFiscalYearQuarter(3,a),Q4:e.getFiscalYearQuarter(4,a)}}};var V=e=>{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=new Date(e);if(Number.isNaN(t.getTime()))throw new Error(`Invalid date input '${e}'`);try{return new h(t).format("YYYY-MM-DD")}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert AD to BS")}};function U(e){try{if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");let t=e?new h(e):new h,a=s=>s<10?`0${s}`:`${s}`,r=t.getEnglishDate();return`${r.getFullYear()}-${a(r.getMonth()+1)}-${a(r.getDate())}`}catch(t){throw console.error("Error During Date Conversion : ",t),new Error("Failed to convert BS to AD")}}export{V as ADtoBS,U as BStoAD,b as MONTH_EN,T as MONTH_NP,f as MONTH_SHORT_EN,E as MONTH_SHORT_NP,n as NEPALI_DATE_MAP,H as NUMBER_NP,h as NepaliDate,c as WEEK_EN,p as WEEK_NP,w as WEEK_SHORT_EN,g as WEEK_SHORT_NP};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nepali-date-library",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.1.
|
|
4
|
+
"version": "1.1.2",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist"
|
|
@@ -19,11 +19,28 @@
|
|
|
19
19
|
"scripts": {
|
|
20
20
|
"build": "tsc --emitDeclarationOnly && esbuild src/index.ts --bundle --platform=node --format=cjs --minify --outfile=dist/index.cjs.js && esbuild src/index.ts --bundle --platform=node --format=esm --minify --outfile=dist/index.mjs.js"
|
|
21
21
|
},
|
|
22
|
-
"
|
|
23
|
-
"description": "",
|
|
22
|
+
"description": "A Nepali Date Library for both typescript and javascript",
|
|
24
23
|
"devDependencies": {
|
|
25
24
|
"@types/node": "^22.13.5",
|
|
26
25
|
"esbuild": "^0.25.0",
|
|
27
26
|
"typescript": "^5.7.3"
|
|
28
|
-
}
|
|
27
|
+
},
|
|
28
|
+
"keywords": [
|
|
29
|
+
"nepal",
|
|
30
|
+
"nepali-date-library",
|
|
31
|
+
"nepali",
|
|
32
|
+
"nepali-date",
|
|
33
|
+
"nepali-date-converter",
|
|
34
|
+
"date-converter",
|
|
35
|
+
"ad-bs",
|
|
36
|
+
"ad-to-bs",
|
|
37
|
+
"bs-ad",
|
|
38
|
+
"bikram-sambat",
|
|
39
|
+
"typescript",
|
|
40
|
+
"javascript",
|
|
41
|
+
"BS date",
|
|
42
|
+
"AD to BS",
|
|
43
|
+
"BS to AD",
|
|
44
|
+
"nepali-ad-bs"
|
|
45
|
+
]
|
|
29
46
|
}
|