nepali-date-library 1.1.7 → 1.1.9

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/ReadMe.md CHANGED
@@ -33,10 +33,6 @@ console.log(today.toString()); // 2081/10/15
33
33
  const bsDate = ADtoBS('2025-02-22'); // "2081-10-10"
34
34
  const adDate = BStoAD('2081-10-14'); // "2025-02-26"
35
35
 
36
- // Convert with custom formats
37
- const customBS = ADtoBS('22/02/2025', 'DD/MM/YYYY', 'YYYY.MM.DD'); // "2081.10.10"
38
- const customAD = BStoAD('10.10.2081', 'DD.MM.YYYY', 'MM-DD-YYYY'); // "10-10-2025"
39
-
40
36
  // Format dates
41
37
  const formatted = today.format('MMMM DD, YYYY'); // "Magh 15, 2081"
42
38
  const nepali = today.format('mmmm dd, yyyy'); // "माघ १५, २०८१"
@@ -61,63 +57,35 @@ import {
61
57
 
62
58
  ### Date Conversion Utilities
63
59
 
64
- #### `ADtoBS(adDate: string, inputFormat?: string, outputFormat?: string): string`
60
+ #### `ADtoBS(adDate: string): string`
65
61
 
66
62
  Converts an Anno Domini (AD) date to a Bikram Sambat (BS) date with custom format support.
67
63
 
68
64
  **Parameters:**
69
65
  - `adDate` - The AD date string
70
- - `inputFormat` - The input date format pattern (default: "YYYY-MM-DD")
71
- - `outputFormat` - The output date format pattern (default: "YYYY-MM-DD")
72
66
 
73
67
  **Returns:** The corresponding BS date in the specified output format
74
68
 
75
69
  **Supported Input/Output Formats:**
76
- - `YYYY-MM-DD`, `YYYY/MM/DD`, `YYYY.MM.DD`
77
- - `DD-MM-YYYY`, `DD/MM/YYYY`, `DD.MM.YYYY`
78
- - `MM-DD-YYYY`, `MM/DD/YYYY`, `MM.DD.YYYY`
79
- - `DD MM YYYY`, `YYYY MM DD`
70
+ - `YYYY-MM-DD`, `YYYY/MM/DD`
80
71
 
81
72
  ```typescript
82
73
  // Default format conversion
83
74
  const bsDate = ADtoBS('2025-02-22'); // "2081-10-10"
84
-
85
- // Custom input format
86
- const bsDate2 = ADtoBS('22/02/2025', 'DD/MM/YYYY'); // "2081-10-10"
87
-
88
- // Custom input and output formats
89
- const bsDate3 = ADtoBS('22.02.2025', 'DD.MM.YYYY', 'YYYY/MM/DD'); // "2081/10/10"
90
-
91
- // US format to Nepali format
92
- const bsDate4 = ADtoBS('02-22-2025', 'MM-DD-YYYY', 'DD.MM.YYYY'); // "10.10.2081"
93
75
  ```
94
76
 
95
- #### `BStoAD(bsDate: string, inputFormat?: string, outputFormat?: string): string`
77
+ #### `BStoAD(bsDate: string): string`
96
78
 
97
79
  Converts a Bikram Sambat (BS) date to an Anno Domini (AD) date with custom format support.
98
80
 
99
81
  **Parameters:**
100
82
  - `bsDate` - The BS date string (supports both English and Nepali numerals)
101
- - `inputFormat` - The input date format pattern (default: "YYYY-MM-DD")
102
- - `outputFormat` - The output date format pattern (default: "YYYY-MM-DD")
103
83
 
104
84
  **Returns:** The corresponding AD date in the specified output format
105
85
 
106
86
  ```typescript
107
87
  // Default format conversion
108
88
  const adDate = BStoAD('2081-10-14'); // "2025-02-26"
109
-
110
- // Custom input format
111
- const adDate2 = BStoAD('14/10/2081', 'DD/MM/YYYY'); // "2025-02-26"
112
-
113
- // Custom input and output formats
114
- const adDate3 = BStoAD('14.10.2081', 'DD.MM.YYYY', 'MM/DD/YYYY'); // "02/26/2025"
115
-
116
- // Nepali numerals support
117
- const adDate4 = BStoAD('२०८१-१०-१४'); // "2025-02-26"
118
-
119
- // Mixed format conversion
120
- const adDate5 = BStoAD('10 14 2081', 'MM DD YYYY', 'DD-MM-YYYY'); // "26-02-2025"
121
89
  ```
122
90
 
123
91
  ### NepaliDate Class
@@ -406,70 +374,6 @@ NepaliDate.maximum(); // Latest supported date
406
374
  const copy = date.clone(); // Deep copy of NepaliDate
407
375
  ```
408
376
 
409
- ## Advanced Format Examples
410
-
411
- ### Multi-Format Date Conversion
412
-
413
- ```typescript
414
- import { ADtoBS, BStoAD } from 'nepali-date-library';
415
-
416
- // Converting from various AD formats to BS
417
- const europeanToBS = ADtoBS('22/02/2025', 'DD/MM/YYYY'); // "2081-10-10"
418
- const americanToBS = ADtoBS('02-22-2025', 'MM-DD-YYYY'); // "2081-10-10"
419
- const dotFormatToBS = ADtoBS('2025.02.22', 'YYYY.MM.DD'); // "2081-10-10"
420
- const spaceFormatToBS = ADtoBS('22 02 2025', 'DD MM YYYY'); // "2081-10-10"
421
-
422
- // Converting with custom output formats
423
- const customOutput1 = ADtoBS('2025-02-22', 'YYYY-MM-DD', 'DD/MM/YYYY'); // "10/10/2081"
424
- const customOutput2 = ADtoBS('22/02/2025', 'DD/MM/YYYY', 'YYYY.MM.DD'); // "2081.10.10"
425
-
426
- // Converting from various BS formats to AD
427
- const bsSlashToAD = BStoAD('10/10/2081', 'DD/MM/YYYY'); // "2025-02-22"
428
- const bsDotToAD = BStoAD('2081.10.10', 'YYYY.MM.DD'); // "2025-02-22"
429
- const bsSpaceToAD = BStoAD('10 10 2081', 'DD MM YYYY'); // "2025-02-22"
430
-
431
- // Converting with custom AD output formats
432
- const adCustom1 = BStoAD('2081-10-10', 'YYYY-MM-DD', 'MM/DD/YYYY'); // "02/22/2025"
433
- const adCustom2 = BStoAD('10/10/2081', 'DD/MM/YYYY', 'DD.MM.YYYY'); // "22.02.2025"
434
- ```
435
-
436
- ### Handling Different Date Sources
437
-
438
- ```typescript
439
- // API data conversion utility
440
- function convertAPIDate(dateStr: string, sourceFormat: string, targetCalendar: 'AD' | 'BS', targetFormat: string = 'YYYY-MM-DD') {
441
- try {
442
- if (targetCalendar === 'BS') {
443
- return ADtoBS(dateStr, sourceFormat, targetFormat);
444
- } else {
445
- return BStoAD(dateStr, sourceFormat, targetFormat);
446
- }
447
- } catch (error) {
448
- throw new Error(`Date conversion failed: ${error.message}`);
449
- }
450
- }
451
-
452
- // Usage examples
453
- const dbDate = convertAPIDate('2025/02/22', 'YYYY/MM/DD', 'BS', 'DD-MM-YYYY'); // "10-10-2081"
454
- const userInput = convertAPIDate('22.10.2081', 'DD.MM.YYYY', 'AD', 'MM/DD/YYYY'); // "02/26/2025"
455
- const csvDate = convertAPIDate('02 22 2025', 'MM DD YYYY', 'BS', 'YYYY/MM/DD'); // "2081/10/10"
456
- ```
457
-
458
- ### Nepali Numeral Support
459
-
460
- The library automatically handles Nepali numerals in input:
461
-
462
- ```typescript
463
- // Both of these work identically
464
- const withEnglishNumerals = BStoAD('2081-10-14');
465
- const withNepaliNumerals = BStoAD('२०८१-१०-१४');
466
-
467
- // Mixed numerals are also supported
468
- const mixedNumerals = BStoAD('२०८१-10-१४');
469
-
470
- // All produce the same result: "2025-02-26"
471
- ```
472
-
473
377
  ### Constants
474
378
 
475
379
  #### Calendar Data
@@ -547,30 +451,6 @@ console.log(nextMonth.format('YYYY-MM-DD')); // "2081-11-15"
547
451
  console.log(nextYear.format('YYYY-MM-DD')); // "2082-10-15"
548
452
  ```
549
453
 
550
- ### Working with Different Date Formats
551
-
552
- ```typescript
553
- import { ADtoBS, BStoAD } from 'nepali-date-library';
554
-
555
- // Database integration - handle various formats
556
- function handleDatabaseDate(dateStr: string, sourceFormat: string): string {
557
- // Convert to standard BS format for storage
558
- return ADtoBS(dateStr, sourceFormat, 'YYYY-MM-DD');
559
- }
560
-
561
- // User interface - display in user's preferred format
562
- function displayUserDate(bsDate: string, userPreference: string): string {
563
- return BStoAD(bsDate, 'YYYY-MM-DD', userPreference);
564
- }
565
-
566
- // Examples
567
- const dbDate1 = handleDatabaseDate('22/02/2025', 'DD/MM/YYYY'); // "2081-10-10"
568
- const dbDate2 = handleDatabaseDate('02.22.2025', 'MM.DD.YYYY'); // "2081-10-10"
569
-
570
- const userDate1 = displayUserDate('2081-10-10', 'DD/MM/YYYY'); // "22/02/2025"
571
- const userDate2 = displayUserDate('2081-10-10', 'MM-DD-YYYY'); // "02-22-2025"
572
- ```
573
-
574
454
  ### Working with Localized Names
575
455
 
576
456
  ```typescript
@@ -1,16 +1,12 @@
1
1
  /**
2
- * Converts a Anno Domini (AD) date to an Bikram Sambat(BS) Date with custom format support.
3
- * @param {string} adDate - The Anno Domini (AD) date string.
4
- * @param {string} [inputFormat="YYYY-MM-DD"] - The input date format pattern.
5
- * @param {string} [outputFormat="YYYY-MM-DD"] - The output date format pattern.
6
- * @returns {string} - The corresponding Bikram Sambat(BS) date in the specified output format.
2
+ * Converts a Anno Domini (AD) date to an Bikram Sambat(BS) Date.
3
+ * @param {string} adDate - The Anno Domini (AD) date in "YYYY-MM-DD" format.
4
+ * @returns {string} - The corresponding Bikram Sambat(BS) date in "YYYY-MM-DD" format.
7
5
  */
8
- export declare const ADtoBS: (adDate: string, inputFormat?: string, outputFormat?: string) => string;
6
+ export declare const ADtoBS: (adDate: string) => string;
9
7
  /**
10
- * Converts a Bikram Sambat(BS) to an Anno Domini (AD) Date with custom format support.
11
- * @param {string} bsDate - The Bikram Sambat(BS) date string.
12
- * @param {string} [inputFormat="YYYY-MM-DD"] - The input date format pattern.
13
- * @param {string} [outputFormat="YYYY-MM-DD"] - The output date format pattern.
14
- * @returns {string} - The corresponding Anno Domini (AD) date in the specified output format.
8
+ * Converts a Bikram Sambat(BS) to an Anno Domini (AD) Date.
9
+ * @param bsDate - The Bikram Sambat(BS) date in "YYYY-MM-DD" format.
10
+ * @returns {string} - The corresponding Anno Domini (AD) date in "YYYY-MM-DD" format.
15
11
  */
16
- export declare function BStoAD(bsDate: string, inputFormat?: string, outputFormat?: string): string;
12
+ export declare function BStoAD(bsDate: string): string;
package/dist/index.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(a,t)=>{for(var e in t)__defProp(a,e,{get:t[e],enumerable:!0})},__copyProps=(a,t,e,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of __getOwnPropNames(t))__hasOwnProp.call(a,s)||s===e||__defProp(a,s,{get:()=>t[s],enumerable:!(r=__getOwnPropDesc(t,s))||r.enumerable});return a},__toCommonJS=a=>__copyProps(__defProp({},"__esModule",{value:!0}),a),index_exports={};__export(index_exports,{ADtoBS:()=>ADtoBS,BStoAD:()=>BStoAD,MONTH_EN:()=>MONTH_EN,MONTH_NP:()=>MONTH_NP,MONTH_SHORT_EN:()=>MONTH_SHORT_EN,MONTH_SHORT_NP:()=>MONTH_SHORT_NP,NEPALI_DATE_MAP:()=>NEPALI_DATE_MAP,NUMBER_NP:()=>NUMBER_NP,NepaliDate:()=>NepaliDate,WEEK_EN:()=>WEEK_EN,WEEK_NP:()=>WEEK_NP,WEEK_SHORT_EN:()=>WEEK_SHORT_EN,WEEK_SHORT_NP:()=>WEEK_SHORT_NP}),module.exports=__toCommonJS(index_exports);var NEPALI_DATE_MAP=[{year:1976,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1977,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1978,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1979,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1980,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1981,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1982,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1983,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1984,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1985,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1986,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1987,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1988,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1989,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1990,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1991,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1992,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1993,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1994,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1995,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1996,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1997,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1998,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1999,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{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,32,31,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,31,32,31,31,30,30,30,29,30,30,30],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}],totalDays=0;NEPALI_DATE_MAP.forEach(a=>{a.totalDays=a.days.reduce((a,t)=>a+t,0),totalDays+=a.totalDays,a.daysTillNow=totalDays});var EPOCH=new Date(1919,3,13).getTime(),WEEK_EN=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],WEEK_SHORT_EN=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],WEEK_NP=["आइतबार","सोमबार","मंगलबार","बुधबार","बिहिबार","शुक्रबार","शनिबार"],WEEK_SHORT_NP=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],MONTH_EN=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],MONTH_SHORT_EN=["Bai","Jes","Asa","Shr","Bha","Asw","Kar","Man","Pou","Mag","Fal","Cha"],MONTH_NP=["बैशाख","जेठ","असार","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुण","चैत्र"],MONTH_SHORT_NP=["बै","जे","अस","श्र","भा","आ","का","मं","पौ","मा","फा","चै"],NUMBER_NP=["०","१","२","३","४","५","६","७","८","९"];function pad(a){return a<10?`0${a}`:`${a}`}function npDigit(a){let t="";for(let e=0;e<a.length;e+=1)t+=NUMBER_NP[a.charCodeAt(e)-48];return t}function yearEn(a){return t=>a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear())}function yearNp(a){return t=>npDigit(a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear()))}function monthEn(a){return t=>1===a?String(t.getMonth()+1):2===a?pad(t.getMonth()+1):3===a?MONTH_SHORT_EN[t.getMonth()]:MONTH_EN[t.getMonth()]}function monthNp(a){return t=>1===a?npDigit(String(t.getMonth()+1)):2===a?npDigit(pad(t.getMonth()+1)):3===a?MONTH_SHORT_NP[t.getMonth()]:MONTH_NP[t.getMonth()]}function dateEn(a){return t=>1===a?String(t.getDate()):2===a?pad(t.getDate()):3===a?WEEK_SHORT_EN[t.getDay()]:WEEK_EN[t.getDay()]}function dateNp(a){return t=>1===a?npDigit(String(t.getDate())):2===a?npDigit(pad(t.getDate())):3===a?WEEK_SHORT_NP[t.getDay()]:WEEK_NP[t.getDay()]}function pass(a){return()=>a}var fn={Y:yearEn,y:yearNp,M:monthEn,m:monthNp,D:dateEn,d:dateNp};function isSpecial(a){return a in fn}function tokenize(a){let t=!1,e="",r="",s=0;const y=[];for(let o=0;o<a.length;o+=1){const d=a[o];d!==r?(""!==r&&(y.push(fn[r](s)),r="",s=0),'"'!==d?!isSpecial(d)||t?e+=d:(e&&(y.push(pass(e)),e=""),r=d,s=1):t=!t):s+=1}return e?y.push(pass(e)):r&&y.push(fn[r](s)),y}function format(a,t){return tokenize(t).map(t=>t(a)).join("")}function _parse(a){const t=a.split(/[-./]/,3),[e,r=1,s=1]=t.map(a=>{const t=parseInt(a,10);if(Number.isNaN(t))throw new Error("Invalid date");return t});if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error(`Nepal year out of range. Supported range: ${NEPALI_DATE_MAP[0].year}-${NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length-1}`);if(r<1||r>12)throw new Error("Invalid nepali month must be between 1 - 12");const y=NEPALI_DATE_MAP[e-NEPALI_DATE_MAP[0].year].days[r-1];if(s<1||s>y)throw new Error(`Invalid nepali date must be between 1 - ${y} in ${e} ${r}`);return[e,r-1,s]}var NepaliDate=class a{constructor(){if(0===arguments.length)this.setEnglishDate(new Date);else if(1===arguments.length){const t=arguments.length<=0?void 0:arguments[0];if("object"==typeof t)if(t instanceof Date)this.setEnglishDate(t);else{if(!(t instanceof a))throw new Error("Invalid date argument");this.timestamp=t.timestamp,this.year=t.year,this.month=t.month,this.day=t.day}else if("string"==typeof t)this.set(..._parse(t));else{if("number"!=typeof t)throw new Error("Invalid date argument");this.setEnglishDate(new Date(t))}}else{if(3!==arguments.length)throw new Error("Invalid argument syntax");this.set(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2])}}setEnglishDate(a){this.timestamp=a;let t=Math.floor((this.timestamp.getTime()-EPOCH)/864e5),e=Math.floor(t/366);for(;t>=NEPALI_DATE_MAP[e].daysTillNow;)e+=1;t-=NEPALI_DATE_MAP[e-1]?NEPALI_DATE_MAP[e-1].daysTillNow:0;const r=NEPALI_DATE_MAP[e];for(this.year=r.year,this.month=0;t>=r.days[this.month];)this.month+=1,t-=r.days[this.month-1];this.day=t+1}getEnglishDate(){return this.timestamp}parse(a){this.set(..._parse(a))}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(a){this.set(a,this.month,this.day)}setMonth(a){this.set(this.year,a,this.day)}setDate(a){this.set(this.year,this.month,a)}set(a,t,e){const r=a+Math.floor(t/12)-NEPALI_DATE_MAP[0].year,s=NEPALI_DATE_MAP[r];let y=s.daysTillNow-s.totalDays;const o=t%12,d=o<0?12+o:o;for(let a=0;a<d;a+=1)y+=s.days[a];y+=e-1,this.setEnglishDate(new Date(EPOCH+864e5*y))}format(a){return format(this,a)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){const e=new Date(this.timestamp.getTime()+864e5*t);return new a(e)}addMonths(t){let e=this.year,r=this.month+t;e+=Math.floor(r/12),r%=12,r<0&&(r+=12,e-=1);const s=e-NEPALI_DATE_MAP[0].year;if(s<0||s>=NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const y=NEPALI_DATE_MAP[s].days[r],o=Math.min(this.day,y);return new a(e,r,o)}addYears(t){const e=this.year+t;if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const r=e-NEPALI_DATE_MAP[0].year;if(11===this.month&&29===this.day){const t=NEPALI_DATE_MAP[r].days[11];if(t<29)return new a(e,11,t)}return new a(e,this.month,this.day)}static minimum(){return new Date(EPOCH)}static maximum(){return new Date(EPOCH+864e5*NEPALI_DATE_MAP[NEPALI_DATE_MAP.length-1].daysTillNow)}daysInMonth(){const a=this.year-NEPALI_DATE_MAP[0].year;return NEPALI_DATE_MAP[a].days[this.month]}isLeapYear(){const a=this.year-NEPALI_DATE_MAP[0].year;return 366===NEPALI_DATE_MAP[a].totalDays}getWeeksInMonth(){const t=new a(this.year,this.month,1).getDay(),e=this.daysInMonth();return Math.ceil((t+e)/7)}diff(a,t){switch(t){case"day":return Math.floor((this.timestamp.getTime()-a.timestamp.getTime())/864e5);case"month":return 12*(this.year-a.year)+(this.month-a.month);case"year":return this.year-a.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){const t=new Date(this.timestamp);return t.setHours(0,0,0,0),new a(t)}endOfDay(){const t=new Date(this.timestamp);return t.setHours(23,59,59,999),new a(t)}startOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(a<0||a>6||!Number.isInteger(a))throw new Error("startOfWeek must be an integer between 0 and 6");const t=(this.getDay()-a+7)%7;return this.clone().startOfDay().addDays(-t)}endOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.startOfWeek(a).addDays(6).endOfDay()}startOfMonth(){return new a(this.year,this.month,1)}endOfMonth(){const t=this.daysInMonth();return new a(this.year,this.month,t).endOfDay()}startOfYear(){return new a(this.year,0,1)}endOfYear(){const t=this.year-NEPALI_DATE_MAP[0].year,e=NEPALI_DATE_MAP[t].days[11];return new a(this.year,11,e).endOfDay()}static getMonthName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>11)throw new Error("Invalid month index, must be between 0-11");let r="";return r=e?t?MONTH_SHORT_NP[a]:MONTH_NP[a]:t?MONTH_SHORT_EN[a]:MONTH_EN[a],r}static getDayName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>6)throw new Error("Invalid day index, must be between 0-6");let r="";return r=e?t?WEEK_SHORT_NP[a]:WEEK_NP[a]:t?WEEK_SHORT_EN[a]:WEEK_EN[a],r}static isValid(a,t,e){try{if(a<NEPALI_DATE_MAP[0].year||a>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)return!1;if(t<0||t>11)return!1;const r=a-NEPALI_DATE_MAP[0].year,s=NEPALI_DATE_MAP[r].days[t];return!(e<1||e>s)}catch(a){return!1}}isValid(){return a.isValid(this.year,this.month,this.day)}static getCalendarDays(t,e){if(!a.isValid(t,e,1))throw new Error("Invalid year or month");const r={year:0,month:0,days:[]},s={year:0,month:0,days:[]},y={year:0,month:0,days:[]},o=t-NEPALI_DATE_MAP[0].year,d=new a(t,e,1).getDay(),n=NEPALI_DATE_MAP[o].days[e];s.year=t,s.month=e;let l=e-1,i=t,D=e+1,h=t;if(l<0&&(l=11,i--),i>=NEPALI_DATE_MAP[0].year&&(r.year=i,r.month=l),i>=NEPALI_DATE_MAP[0].year&&d>0){const a=i-NEPALI_DATE_MAP[0].year,t=NEPALI_DATE_MAP[a].days[l];for(let a=0;a<d;a++)r.days.push(t-d+a+1)}for(let a=1;a<=n;a++)s.days.push(a);D>11&&(D=0,h++),h<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&(y.year=h,y.month=D);const N=42-d-s.days.length;if(h<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&N>0)for(let a=1;a<=N;a++)y.days.push(a);return{prevRemainingDays:d,prevMonth:r,currentMonth:s,nextMonth:y,remainingDays:N}}clone(){return new a(this)}isAfter(a){return this.timestamp.getTime()>a.timestamp.getTime()}isBefore(a){return this.timestamp.getTime()<a.timestamp.getTime()}isEqual(a){return this.year===a.year&&this.month===a.month&&this.day===a.day}isSame(a,t){switch(t){case"year":return this.year===a.year;case"month":return this.year===a.year&&this.month===a.month;case"day":return this.isEqual(a);default:throw new Error("Invalid unit for comparison")}}static getQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const r=null!=e?e:(new a).getYear(),s=3*(t-1);return{start:new a(r,s,1),end:new a(r,s+2,1).endOfMonth()}}getCurrentQuarter(){return Math.floor(this.month/3)+1}static getQuarters(t){const e=null!=t?t:(new a).getYear();return{Q1:a.getQuarter(1,e),Q2:a.getQuarter(2,e),Q3:a.getQuarter(3,e),Q4:a.getQuarter(4,e)}}static getCurrentFiscalYear(){const t=new a,e=t.getYear();return t.getMonth()<3?e-1:e}static getFiscalYearQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const r=null!=e?e:a.getCurrentFiscalYear();let s=r,y=3*(t-1)+3;4===t&&(s=r+1,y=0),y>11&&(s++,y-=12);let o=y+2,d=s;o>11&&(d++,o-=12);return{start:new a(s,y,1),end:new a(d,o,1).endOfMonth()}}getCurrentFiscalYearQuarter(){const a=this.getMonth();return a>=3&&a<=5?1:a>=6&&a<=8?2:a>=9&&a<=11?3:4}getCurrentFiscalYearQuarterDates(){const t=this.getCurrentFiscalYearQuarter(),e=a.getCurrentFiscalYear();return a.getFiscalYearQuarter(t,e)}static getFiscalYearQuarters(t){const e=null!=t?t:a.getCurrentFiscalYear();return{Q1:a.getFiscalYearQuarter(1,e),Q2:a.getFiscalYearQuarter(2,e),Q3:a.getFiscalYearQuarter(3,e),Q4:a.getFiscalYearQuarter(4,e)}}};function parseADDate(a,t){const e={"YYYY-MM-DD":{regex:/^(\d{4})-(\d{1,2})-(\d{1,2})$/,order:["year","month","day"]},"YYYY/MM/DD":{regex:/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/,order:["year","month","day"]},"YYYY.MM.DD":{regex:/^(\d{4})\.(\d{1,2})\.(\d{1,2})$/,order:["year","month","day"]},"DD-MM-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["day","month","year"]},"DD/MM/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["day","month","year"]},"DD.MM.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["day","month","year"]},"MM-DD-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["month","day","year"]},"MM/DD/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["month","day","year"]},"MM.DD.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["month","day","year"]},"DD MM YYYY":{regex:/^(\d{1,2})\s+(\d{1,2})\s+(\d{4})$/,order:["day","month","year"]},"YYYY MM DD":{regex:/^(\d{4})\s+(\d{1,2})\s+(\d{1,2})$/,order:["year","month","day"]}}[t.replace(/"/g,"")];if(!e)throw new Error(`Unsupported AD date format: "${t}"`);const r=a.match(e.regex);if(!r)throw new Error(`Date string "${a}" does not match format "${t}"`);const s={};e.order.forEach((a,t)=>{s[a]=parseInt(r[t+1],10)});const y=s.year<100?s.year<50?2e3+s.year:1900+s.year:s.year;if(y<1e3||y>9999)throw new Error(`Invalid year: ${y}`);if(s.month<1||s.month>12)throw new Error(`Invalid month: ${s.month}`);if(s.day<1||s.day>31)throw new Error(`Invalid day: ${s.day}`);const o=new Date(y,s.month-1,s.day);if(o.getFullYear()!==y||o.getMonth()!==s.month-1||o.getDate()!==s.day)throw new Error(`Invalid date: ${a}`);return o}var ADtoBS=function(a){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"YYYY-MM-DD",e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"YYYY-MM-DD";try{const r=parseADDate(a,t);return format(new NepaliDate(r),e)}catch(a){throw console.error("Error During Date Conversion:",a),new Error(`Failed to convert AD to BS: ${a instanceof Error?a.message:"Unknown error"}`)}};function parseBSDate(a,t){let e=a;const r={"०":"0","१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9"};for(const[a,t]of Object.entries(r))e=e.replace(new RegExp(a,"g"),t);const s={"YYYY-MM-DD":{regex:/^(\d{4})-(\d{1,2})-(\d{1,2})$/,order:["year","month","day"]},"YYYY/MM/DD":{regex:/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/,order:["year","month","day"]},"YYYY.MM.DD":{regex:/^(\d{4})\.(\d{1,2})\.(\d{1,2})$/,order:["year","month","day"]},"DD-MM-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["day","month","year"]},"DD/MM/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["day","month","year"]},"DD.MM.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["day","month","year"]},"MM-DD-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["month","day","year"]},"MM/DD/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["month","day","year"]},"MM.DD.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["month","day","year"]},"yyyy-mm-dd":{regex:/^(\d{4})-(\d{1,2})-(\d{1,2})$/,order:["year","month","day"]},"yyyy/mm/dd":{regex:/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/,order:["year","month","day"]},"dd-mm-yyyy":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["day","month","year"]},"dd/mm/yyyy":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["day","month","year"]},"mm-dd-yyyy":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["month","day","year"]},"mm/dd/yyyy":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["month","day","year"]},"DD MM YYYY":{regex:/^(\d{1,2})\s+(\d{1,2})\s+(\d{4})$/,order:["day","month","year"]},"YYYY MM DD":{regex:/^(\d{4})\s+(\d{1,2})\s+(\d{1,2})$/,order:["year","month","day"]}},y=s[t.replace(/"/g,"")];if(!y)throw new Error(`Unsupported BS date format: "${t}". Supported formats: ${Object.keys(s).join(", ")}`);const o=e.match(y.regex);if(!o)throw new Error(`Date string "${a}" does not match format "${t}"`);const d={};y.order.forEach((a,t)=>{d[a]=parseInt(o[t+1],10)});const n=d.year<100?d.year<10?2e3+d.year:1900+d.year:d.year;if(n<1970||n>2100)throw new Error(`Invalid BS year: ${n}`);if(d.month<1||d.month>12)throw new Error(`Invalid month: ${d.month}`);if(d.day<1||d.day>32)throw new Error(`Invalid day: ${d.day}`);return{year:n,month:d.month,day:d.day}}function formatADDate(a,t){const e=a=>a<10?`0${a}`:`${a}`;let r=t;return r=r.replace(/YYYY/g,String(a.getFullYear())),r=r.replace(/YY/g,String(a.getFullYear()).substring(2)),r=r.replace(/MM/g,e(a.getMonth()+1)),r=r.replace(/M/g,String(a.getMonth()+1)),r=r.replace(/DD/g,e(a.getDate())),r=r.replace(/D/g,String(a.getDate())),r}function BStoAD(a){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"YYYY-MM-DD",e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"YYYY-MM-DD";try{const{year:r,month:s,day:y}=parseBSDate(a,t),o=new NepaliDate(r,s-1,y).getEnglishDate();if("YYYY-MM-DD"===e){const a=a=>a<10?`0${a}`:`${a}`;return`${o.getFullYear()}-${a(o.getMonth()+1)}-${a(o.getDate())}`}return formatADDate(o,e)}catch(a){throw console.error("Error During Date Conversion:",a),new Error(`Failed to convert BS to AD: ${a instanceof Error?a.message:"Unknown error"}`)}}
1
+ "use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(a,t)=>{for(var e in t)__defProp(a,e,{get:t[e],enumerable:!0})},__copyProps=(a,t,e,s)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of __getOwnPropNames(t))__hasOwnProp.call(a,r)||r===e||__defProp(a,r,{get:()=>t[r],enumerable:!(s=__getOwnPropDesc(t,r))||s.enumerable});return a},__toCommonJS=a=>__copyProps(__defProp({},"__esModule",{value:!0}),a),index_exports={};__export(index_exports,{ADtoBS:()=>ADtoBS,BStoAD:()=>BStoAD,MONTH_EN:()=>MONTH_EN,MONTH_NP:()=>MONTH_NP,MONTH_SHORT_EN:()=>MONTH_SHORT_EN,MONTH_SHORT_NP:()=>MONTH_SHORT_NP,NEPALI_DATE_MAP:()=>NEPALI_DATE_MAP,NUMBER_NP:()=>NUMBER_NP,NepaliDate:()=>NepaliDate,WEEK_EN:()=>WEEK_EN,WEEK_NP:()=>WEEK_NP,WEEK_SHORT_EN:()=>WEEK_SHORT_EN,WEEK_SHORT_NP:()=>WEEK_SHORT_NP}),module.exports=__toCommonJS(index_exports);var NEPALI_DATE_MAP=[{year:1976,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1977,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1978,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1979,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1980,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1981,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1982,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1983,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1984,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1985,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1986,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1987,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1988,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1989,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1990,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1991,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1992,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1993,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1994,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1995,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1996,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1997,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1998,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1999,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{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,32,31,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,31,32,31,31,30,30,30,29,30,30,30],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}],totalDays=0;NEPALI_DATE_MAP.forEach(a=>{a.totalDays=a.days.reduce((a,t)=>a+t,0),totalDays+=a.totalDays,a.daysTillNow=totalDays});var EPOCH=new Date(1919,3,13).getTime(),WEEK_EN=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],WEEK_SHORT_EN=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],WEEK_NP=["आइतबार","सोमबार","मंगलबार","बुधबार","बिहिबार","शुक्रबार","शनिबार"],WEEK_SHORT_NP=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],MONTH_EN=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],MONTH_SHORT_EN=["Bai","Jes","Asa","Shr","Bha","Asw","Kar","Man","Pou","Mag","Fal","Cha"],MONTH_NP=["बैशाख","जेठ","असार","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुण","चैत्र"],MONTH_SHORT_NP=["बै","जे","अस","श्र","भा","आ","का","मं","पौ","मा","फा","चै"],NUMBER_NP=["०","१","२","३","४","५","६","७","८","९"];function pad(a){return a<10?`0${a}`:`${a}`}function npDigit(a){let t="";for(let e=0;e<a.length;e+=1)t+=NUMBER_NP[a.charCodeAt(e)-48];return t}function yearEn(a){return t=>a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear())}function yearNp(a){return t=>npDigit(a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear()))}function monthEn(a){return t=>1===a?String(t.getMonth()+1):2===a?pad(t.getMonth()+1):3===a?MONTH_SHORT_EN[t.getMonth()]:MONTH_EN[t.getMonth()]}function monthNp(a){return t=>1===a?npDigit(String(t.getMonth()+1)):2===a?npDigit(pad(t.getMonth()+1)):3===a?MONTH_SHORT_NP[t.getMonth()]:MONTH_NP[t.getMonth()]}function dateEn(a){return t=>1===a?String(t.getDate()):2===a?pad(t.getDate()):3===a?WEEK_SHORT_EN[t.getDay()]:WEEK_EN[t.getDay()]}function dateNp(a){return t=>1===a?npDigit(String(t.getDate())):2===a?npDigit(pad(t.getDate())):3===a?WEEK_SHORT_NP[t.getDay()]:WEEK_NP[t.getDay()]}function pass(a){return()=>a}var fn={Y:yearEn,y:yearNp,M:monthEn,m:monthNp,D:dateEn,d:dateNp};function isSpecial(a){return a in fn}function tokenize(a){let t=!1,e="",s="",r=0;const y=[];for(let o=0;o<a.length;o+=1){const l=a[o];l!==s?(""!==s&&(y.push(fn[s](r)),s="",r=0),'"'!==l?!isSpecial(l)||t?e+=l:(e&&(y.push(pass(e)),e=""),s=l,r=1):t=!t):r+=1}return e?y.push(pass(e)):s&&y.push(fn[s](r)),y}function format(a,t){return tokenize(t).map(t=>t(a)).join("")}function _parse(a){const t=a.split(/[-./]/,3),[e,s=1,r=1]=t.map(a=>{const t=parseInt(a,10);if(Number.isNaN(t))throw new Error("Invalid date");return t});if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error(`Nepal year out of range. Supported range: ${NEPALI_DATE_MAP[0].year}-${NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length-1}`);if(s<1||s>12)throw new Error("Invalid nepali month must be between 1 - 12");const y=NEPALI_DATE_MAP[e-NEPALI_DATE_MAP[0].year].days[s-1];if(r<1||r>y)throw new Error(`Invalid nepali date must be between 1 - ${y} in ${e} ${s}`);return[e,s-1,r]}var NepaliDate=class a{constructor(){if(0===arguments.length)this.setEnglishDate(new Date);else if(1===arguments.length){const t=arguments.length<=0?void 0:arguments[0];if("object"==typeof t)if(t instanceof Date)this.setEnglishDate(t);else{if(!(t instanceof a))throw new Error("Invalid date argument");this.timestamp=t.timestamp,this.year=t.year,this.month=t.month,this.day=t.day}else if("string"==typeof t)this.set(..._parse(t));else{if("number"!=typeof t)throw new Error("Invalid date argument");this.setEnglishDate(new Date(t))}}else{if(3!==arguments.length)throw new Error("Invalid argument syntax");this.set(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2])}}setEnglishDate(a){this.timestamp=a;let t=Math.floor((this.timestamp.getTime()-EPOCH)/864e5),e=Math.floor(t/366);for(;t>=NEPALI_DATE_MAP[e].daysTillNow;)e+=1;t-=NEPALI_DATE_MAP[e-1]?NEPALI_DATE_MAP[e-1].daysTillNow:0;const s=NEPALI_DATE_MAP[e];for(this.year=s.year,this.month=0;t>=s.days[this.month];)this.month+=1,t-=s.days[this.month-1];this.day=t+1}getEnglishDate(){return this.timestamp}parse(a){this.set(..._parse(a))}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(a){this.set(a,this.month,this.day)}setMonth(a){this.set(this.year,a,this.day)}setDate(a){this.set(this.year,this.month,a)}set(a,t,e){const s=a+Math.floor(t/12)-NEPALI_DATE_MAP[0].year,r=NEPALI_DATE_MAP[s];let y=r.daysTillNow-r.totalDays;const o=t%12,l=o<0?12+o:o;for(let a=0;a<l;a+=1)y+=r.days[a];y+=e-1,this.setEnglishDate(new Date(EPOCH+864e5*y))}format(a){return format(this,a)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){const e=new Date(this.timestamp.getTime()+864e5*t);return new a(e)}addMonths(t){let e=this.year,s=this.month+t;e+=Math.floor(s/12),s%=12,s<0&&(s+=12,e-=1);const r=e-NEPALI_DATE_MAP[0].year;if(r<0||r>=NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const y=NEPALI_DATE_MAP[r].days[s],o=Math.min(this.day,y);return new a(e,s,o)}addYears(t){const e=this.year+t;if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const s=e-NEPALI_DATE_MAP[0].year;if(11===this.month&&29===this.day){const t=NEPALI_DATE_MAP[s].days[11];if(t<29)return new a(e,11,t)}return new a(e,this.month,this.day)}static minimum(){return new Date(EPOCH)}static maximum(){return new Date(EPOCH+864e5*NEPALI_DATE_MAP[NEPALI_DATE_MAP.length-1].daysTillNow)}daysInMonth(){const a=this.year-NEPALI_DATE_MAP[0].year;return NEPALI_DATE_MAP[a].days[this.month]}isLeapYear(){const a=this.year-NEPALI_DATE_MAP[0].year;return 366===NEPALI_DATE_MAP[a].totalDays}getWeeksInMonth(){const t=new a(this.year,this.month,1).getDay(),e=this.daysInMonth();return Math.ceil((t+e)/7)}diff(a,t){switch(t){case"day":return Math.floor((this.timestamp.getTime()-a.timestamp.getTime())/864e5);case"month":return 12*(this.year-a.year)+(this.month-a.month);case"year":return this.year-a.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){const t=new Date(this.timestamp);return t.setHours(0,0,0,0),new a(t)}endOfDay(){const t=new Date(this.timestamp);return t.setHours(23,59,59,999),new a(t)}startOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(a<0||a>6||!Number.isInteger(a))throw new Error("startOfWeek must be an integer between 0 and 6");const t=(this.getDay()-a+7)%7;return this.clone().startOfDay().addDays(-t)}endOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.startOfWeek(a).addDays(6).endOfDay()}startOfMonth(){return new a(this.year,this.month,1)}endOfMonth(){const t=this.daysInMonth();return new a(this.year,this.month,t).endOfDay()}startOfYear(){return new a(this.year,0,1)}endOfYear(){const t=this.year-NEPALI_DATE_MAP[0].year,e=NEPALI_DATE_MAP[t].days[11];return new a(this.year,11,e).endOfDay()}static getMonthName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>11)throw new Error("Invalid month index, must be between 0-11");let s="";return s=e?t?MONTH_SHORT_NP[a]:MONTH_NP[a]:t?MONTH_SHORT_EN[a]:MONTH_EN[a],s}static getDayName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>6)throw new Error("Invalid day index, must be between 0-6");let s="";return s=e?t?WEEK_SHORT_NP[a]:WEEK_NP[a]:t?WEEK_SHORT_EN[a]:WEEK_EN[a],s}static isValid(a,t,e){try{if(a<NEPALI_DATE_MAP[0].year||a>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)return!1;if(t<0||t>11)return!1;const s=a-NEPALI_DATE_MAP[0].year,r=NEPALI_DATE_MAP[s].days[t];return!(e<1||e>r)}catch(a){return!1}}isValid(){return a.isValid(this.year,this.month,this.day)}static getCalendarDays(t,e){if(!a.isValid(t,e,1))throw new Error("Invalid year or month");const s={year:0,month:0,days:[]},r={year:0,month:0,days:[]},y={year:0,month:0,days:[]},o=t-NEPALI_DATE_MAP[0].year,l=new a(t,e,1).getDay(),i=NEPALI_DATE_MAP[o].days[e];r.year=t,r.month=e;let n=e-1,d=t,N=e+1,D=t;if(n<0&&(n=11,d--),d>=NEPALI_DATE_MAP[0].year&&(s.year=d,s.month=n),d>=NEPALI_DATE_MAP[0].year&&l>0){const a=d-NEPALI_DATE_MAP[0].year,t=NEPALI_DATE_MAP[a].days[n];for(let a=0;a<l;a++)s.days.push(t-l+a+1)}for(let a=1;a<=i;a++)r.days.push(a);N>11&&(N=0,D++),D<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&(y.year=D,y.month=N);const h=42-l-r.days.length;if(D<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&h>0)for(let a=1;a<=h;a++)y.days.push(a);return{prevRemainingDays:l,prevMonth:s,currentMonth:r,nextMonth:y,remainingDays:h}}clone(){return new a(this)}isAfter(a){return this.timestamp.getTime()>a.timestamp.getTime()}isBefore(a){return this.timestamp.getTime()<a.timestamp.getTime()}isEqual(a){return this.year===a.year&&this.month===a.month&&this.day===a.day}isSame(a,t){switch(t){case"year":return this.year===a.year;case"month":return this.year===a.year&&this.month===a.month;case"day":return this.isEqual(a);default:throw new Error("Invalid unit for comparison")}}static getQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const s=null!=e?e:(new a).getYear(),r=3*(t-1);return{start:new a(s,r,1),end:new a(s,r+2,1).endOfMonth()}}getCurrentQuarter(){return Math.floor(this.month/3)+1}static getQuarters(t){const e=null!=t?t:(new a).getYear();return{Q1:a.getQuarter(1,e),Q2:a.getQuarter(2,e),Q3:a.getQuarter(3,e),Q4:a.getQuarter(4,e)}}static getCurrentFiscalYear(){const t=new a,e=t.getYear();return t.getMonth()<3?e-1:e}static getFiscalYearQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const s=null!=e?e:a.getCurrentFiscalYear();let r=s,y=3*(t-1)+3;4===t&&(r=s+1,y=0),y>11&&(r++,y-=12);let o=y+2,l=r;o>11&&(l++,o-=12);return{start:new a(r,y,1),end:new a(l,o,1).endOfMonth()}}getCurrentFiscalYearQuarter(){const a=this.getMonth();return a>=3&&a<=5?1:a>=6&&a<=8?2:a>=9&&a<=11?3:4}getCurrentFiscalYearQuarterDates(){const t=this.getCurrentFiscalYearQuarter(),e=a.getCurrentFiscalYear();return a.getFiscalYearQuarter(t,e)}static getFiscalYearQuarters(t){const e=null!=t?t:a.getCurrentFiscalYear();return{Q1:a.getFiscalYearQuarter(1,e),Q2:a.getFiscalYearQuarter(2,e),Q3:a.getFiscalYearQuarter(3,e),Q4:a.getFiscalYearQuarter(4,e)}}},ADtoBS=a=>{if(!/^\d{4}-\d{2}-\d{2}$/.test(a))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");const t=new Date(a);if(Number.isNaN(t.getTime()))throw new Error(`Invalid date input '${a}'`);try{return new NepaliDate(t).format("YYYY-MM-DD")}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert AD to BS")}};function BStoAD(a){try{if(!/^\d{4}-\d{2}-\d{2}$/.test(a))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");const t=a?new NepaliDate(a):new NepaliDate,e=a=>a<10?`0${a}`:`${a}`,s=t.getEnglishDate();return`${s.getFullYear()}-${e(s.getMonth()+1)}-${e(s.getDate())}`}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert BS to AD")}}
package/dist/index.mjs.js CHANGED
@@ -1 +1 @@
1
- var NEPALI_DATE_MAP=[{year:1976,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1977,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1978,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1979,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1980,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1981,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1982,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1983,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1984,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1985,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1986,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1987,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1988,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1989,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1990,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1991,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1992,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1993,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1994,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1995,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1996,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1997,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1998,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1999,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{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,32,31,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,31,32,31,31,30,30,30,29,30,30,30],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}],totalDays=0;NEPALI_DATE_MAP.forEach(a=>{a.totalDays=a.days.reduce((a,t)=>a+t,0),totalDays+=a.totalDays,a.daysTillNow=totalDays});var EPOCH=new Date(1919,3,13).getTime(),WEEK_EN=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],WEEK_SHORT_EN=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],WEEK_NP=["आइतबार","सोमबार","मंगलबार","बुधबार","बिहिबार","शुक्रबार","शनिबार"],WEEK_SHORT_NP=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],MONTH_EN=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],MONTH_SHORT_EN=["Bai","Jes","Asa","Shr","Bha","Asw","Kar","Man","Pou","Mag","Fal","Cha"],MONTH_NP=["बैशाख","जेठ","असार","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुण","चैत्र"],MONTH_SHORT_NP=["बै","जे","अस","श्र","भा","आ","का","मं","पौ","मा","फा","चै"],NUMBER_NP=["०","१","२","३","४","५","६","७","८","९"];function pad(a){return a<10?`0${a}`:`${a}`}function npDigit(a){let t="";for(let e=0;e<a.length;e+=1)t+=NUMBER_NP[a.charCodeAt(e)-48];return t}function yearEn(a){return t=>a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear())}function yearNp(a){return t=>npDigit(a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear()))}function monthEn(a){return t=>1===a?String(t.getMonth()+1):2===a?pad(t.getMonth()+1):3===a?MONTH_SHORT_EN[t.getMonth()]:MONTH_EN[t.getMonth()]}function monthNp(a){return t=>1===a?npDigit(String(t.getMonth()+1)):2===a?npDigit(pad(t.getMonth()+1)):3===a?MONTH_SHORT_NP[t.getMonth()]:MONTH_NP[t.getMonth()]}function dateEn(a){return t=>1===a?String(t.getDate()):2===a?pad(t.getDate()):3===a?WEEK_SHORT_EN[t.getDay()]:WEEK_EN[t.getDay()]}function dateNp(a){return t=>1===a?npDigit(String(t.getDate())):2===a?npDigit(pad(t.getDate())):3===a?WEEK_SHORT_NP[t.getDay()]:WEEK_NP[t.getDay()]}function pass(a){return()=>a}var fn={Y:yearEn,y:yearNp,M:monthEn,m:monthNp,D:dateEn,d:dateNp};function isSpecial(a){return a in fn}function tokenize(a){let t=!1,e="",r="",s=0;const y=[];for(let o=0;o<a.length;o+=1){const d=a[o];d!==r?(""!==r&&(y.push(fn[r](s)),r="",s=0),'"'!==d?!isSpecial(d)||t?e+=d:(e&&(y.push(pass(e)),e=""),r=d,s=1):t=!t):s+=1}return e?y.push(pass(e)):r&&y.push(fn[r](s)),y}function format(a,t){return tokenize(t).map(t=>t(a)).join("")}function _parse(a){const t=a.split(/[-./]/,3),[e,r=1,s=1]=t.map(a=>{const t=parseInt(a,10);if(Number.isNaN(t))throw new Error("Invalid date");return t});if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error(`Nepal year out of range. Supported range: ${NEPALI_DATE_MAP[0].year}-${NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length-1}`);if(r<1||r>12)throw new Error("Invalid nepali month must be between 1 - 12");const y=NEPALI_DATE_MAP[e-NEPALI_DATE_MAP[0].year].days[r-1];if(s<1||s>y)throw new Error(`Invalid nepali date must be between 1 - ${y} in ${e} ${r}`);return[e,r-1,s]}var NepaliDate=class a{constructor(){if(0===arguments.length)this.setEnglishDate(new Date);else if(1===arguments.length){const t=arguments.length<=0?void 0:arguments[0];if("object"==typeof t)if(t instanceof Date)this.setEnglishDate(t);else{if(!(t instanceof a))throw new Error("Invalid date argument");this.timestamp=t.timestamp,this.year=t.year,this.month=t.month,this.day=t.day}else if("string"==typeof t)this.set(..._parse(t));else{if("number"!=typeof t)throw new Error("Invalid date argument");this.setEnglishDate(new Date(t))}}else{if(3!==arguments.length)throw new Error("Invalid argument syntax");this.set(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2])}}setEnglishDate(a){this.timestamp=a;let t=Math.floor((this.timestamp.getTime()-EPOCH)/864e5),e=Math.floor(t/366);for(;t>=NEPALI_DATE_MAP[e].daysTillNow;)e+=1;t-=NEPALI_DATE_MAP[e-1]?NEPALI_DATE_MAP[e-1].daysTillNow:0;const r=NEPALI_DATE_MAP[e];for(this.year=r.year,this.month=0;t>=r.days[this.month];)this.month+=1,t-=r.days[this.month-1];this.day=t+1}getEnglishDate(){return this.timestamp}parse(a){this.set(..._parse(a))}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(a){this.set(a,this.month,this.day)}setMonth(a){this.set(this.year,a,this.day)}setDate(a){this.set(this.year,this.month,a)}set(a,t,e){const r=a+Math.floor(t/12)-NEPALI_DATE_MAP[0].year,s=NEPALI_DATE_MAP[r];let y=s.daysTillNow-s.totalDays;const o=t%12,d=o<0?12+o:o;for(let a=0;a<d;a+=1)y+=s.days[a];y+=e-1,this.setEnglishDate(new Date(EPOCH+864e5*y))}format(a){return format(this,a)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){const e=new Date(this.timestamp.getTime()+864e5*t);return new a(e)}addMonths(t){let e=this.year,r=this.month+t;e+=Math.floor(r/12),r%=12,r<0&&(r+=12,e-=1);const s=e-NEPALI_DATE_MAP[0].year;if(s<0||s>=NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const y=NEPALI_DATE_MAP[s].days[r],o=Math.min(this.day,y);return new a(e,r,o)}addYears(t){const e=this.year+t;if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const r=e-NEPALI_DATE_MAP[0].year;if(11===this.month&&29===this.day){const t=NEPALI_DATE_MAP[r].days[11];if(t<29)return new a(e,11,t)}return new a(e,this.month,this.day)}static minimum(){return new Date(EPOCH)}static maximum(){return new Date(EPOCH+864e5*NEPALI_DATE_MAP[NEPALI_DATE_MAP.length-1].daysTillNow)}daysInMonth(){const a=this.year-NEPALI_DATE_MAP[0].year;return NEPALI_DATE_MAP[a].days[this.month]}isLeapYear(){const a=this.year-NEPALI_DATE_MAP[0].year;return 366===NEPALI_DATE_MAP[a].totalDays}getWeeksInMonth(){const t=new a(this.year,this.month,1).getDay(),e=this.daysInMonth();return Math.ceil((t+e)/7)}diff(a,t){switch(t){case"day":return Math.floor((this.timestamp.getTime()-a.timestamp.getTime())/864e5);case"month":return 12*(this.year-a.year)+(this.month-a.month);case"year":return this.year-a.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){const t=new Date(this.timestamp);return t.setHours(0,0,0,0),new a(t)}endOfDay(){const t=new Date(this.timestamp);return t.setHours(23,59,59,999),new a(t)}startOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(a<0||a>6||!Number.isInteger(a))throw new Error("startOfWeek must be an integer between 0 and 6");const t=(this.getDay()-a+7)%7;return this.clone().startOfDay().addDays(-t)}endOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.startOfWeek(a).addDays(6).endOfDay()}startOfMonth(){return new a(this.year,this.month,1)}endOfMonth(){const t=this.daysInMonth();return new a(this.year,this.month,t).endOfDay()}startOfYear(){return new a(this.year,0,1)}endOfYear(){const t=this.year-NEPALI_DATE_MAP[0].year,e=NEPALI_DATE_MAP[t].days[11];return new a(this.year,11,e).endOfDay()}static getMonthName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>11)throw new Error("Invalid month index, must be between 0-11");let r="";return r=e?t?MONTH_SHORT_NP[a]:MONTH_NP[a]:t?MONTH_SHORT_EN[a]:MONTH_EN[a],r}static getDayName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>6)throw new Error("Invalid day index, must be between 0-6");let r="";return r=e?t?WEEK_SHORT_NP[a]:WEEK_NP[a]:t?WEEK_SHORT_EN[a]:WEEK_EN[a],r}static isValid(a,t,e){try{if(a<NEPALI_DATE_MAP[0].year||a>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)return!1;if(t<0||t>11)return!1;const r=a-NEPALI_DATE_MAP[0].year,s=NEPALI_DATE_MAP[r].days[t];return!(e<1||e>s)}catch(a){return!1}}isValid(){return a.isValid(this.year,this.month,this.day)}static getCalendarDays(t,e){if(!a.isValid(t,e,1))throw new Error("Invalid year or month");const r={year:0,month:0,days:[]},s={year:0,month:0,days:[]},y={year:0,month:0,days:[]},o=t-NEPALI_DATE_MAP[0].year,d=new a(t,e,1).getDay(),l=NEPALI_DATE_MAP[o].days[e];s.year=t,s.month=e;let n=e-1,i=t,D=e+1,h=t;if(n<0&&(n=11,i--),i>=NEPALI_DATE_MAP[0].year&&(r.year=i,r.month=n),i>=NEPALI_DATE_MAP[0].year&&d>0){const a=i-NEPALI_DATE_MAP[0].year,t=NEPALI_DATE_MAP[a].days[n];for(let a=0;a<d;a++)r.days.push(t-d+a+1)}for(let a=1;a<=l;a++)s.days.push(a);D>11&&(D=0,h++),h<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&(y.year=h,y.month=D);const N=42-d-s.days.length;if(h<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&N>0)for(let a=1;a<=N;a++)y.days.push(a);return{prevRemainingDays:d,prevMonth:r,currentMonth:s,nextMonth:y,remainingDays:N}}clone(){return new a(this)}isAfter(a){return this.timestamp.getTime()>a.timestamp.getTime()}isBefore(a){return this.timestamp.getTime()<a.timestamp.getTime()}isEqual(a){return this.year===a.year&&this.month===a.month&&this.day===a.day}isSame(a,t){switch(t){case"year":return this.year===a.year;case"month":return this.year===a.year&&this.month===a.month;case"day":return this.isEqual(a);default:throw new Error("Invalid unit for comparison")}}static getQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const r=null!=e?e:(new a).getYear(),s=3*(t-1);return{start:new a(r,s,1),end:new a(r,s+2,1).endOfMonth()}}getCurrentQuarter(){return Math.floor(this.month/3)+1}static getQuarters(t){const e=null!=t?t:(new a).getYear();return{Q1:a.getQuarter(1,e),Q2:a.getQuarter(2,e),Q3:a.getQuarter(3,e),Q4:a.getQuarter(4,e)}}static getCurrentFiscalYear(){const t=new a,e=t.getYear();return t.getMonth()<3?e-1:e}static getFiscalYearQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const r=null!=e?e:a.getCurrentFiscalYear();let s=r,y=3*(t-1)+3;4===t&&(s=r+1,y=0),y>11&&(s++,y-=12);let o=y+2,d=s;o>11&&(d++,o-=12);return{start:new a(s,y,1),end:new a(d,o,1).endOfMonth()}}getCurrentFiscalYearQuarter(){const a=this.getMonth();return a>=3&&a<=5?1:a>=6&&a<=8?2:a>=9&&a<=11?3:4}getCurrentFiscalYearQuarterDates(){const t=this.getCurrentFiscalYearQuarter(),e=a.getCurrentFiscalYear();return a.getFiscalYearQuarter(t,e)}static getFiscalYearQuarters(t){const e=null!=t?t:a.getCurrentFiscalYear();return{Q1:a.getFiscalYearQuarter(1,e),Q2:a.getFiscalYearQuarter(2,e),Q3:a.getFiscalYearQuarter(3,e),Q4:a.getFiscalYearQuarter(4,e)}}};function parseADDate(a,t){const e={"YYYY-MM-DD":{regex:/^(\d{4})-(\d{1,2})-(\d{1,2})$/,order:["year","month","day"]},"YYYY/MM/DD":{regex:/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/,order:["year","month","day"]},"YYYY.MM.DD":{regex:/^(\d{4})\.(\d{1,2})\.(\d{1,2})$/,order:["year","month","day"]},"DD-MM-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["day","month","year"]},"DD/MM/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["day","month","year"]},"DD.MM.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["day","month","year"]},"MM-DD-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["month","day","year"]},"MM/DD/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["month","day","year"]},"MM.DD.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["month","day","year"]},"DD MM YYYY":{regex:/^(\d{1,2})\s+(\d{1,2})\s+(\d{4})$/,order:["day","month","year"]},"YYYY MM DD":{regex:/^(\d{4})\s+(\d{1,2})\s+(\d{1,2})$/,order:["year","month","day"]}}[t.replace(/"/g,"")];if(!e)throw new Error(`Unsupported AD date format: "${t}"`);const r=a.match(e.regex);if(!r)throw new Error(`Date string "${a}" does not match format "${t}"`);const s={};e.order.forEach((a,t)=>{s[a]=parseInt(r[t+1],10)});const y=s.year<100?s.year<50?2e3+s.year:1900+s.year:s.year;if(y<1e3||y>9999)throw new Error(`Invalid year: ${y}`);if(s.month<1||s.month>12)throw new Error(`Invalid month: ${s.month}`);if(s.day<1||s.day>31)throw new Error(`Invalid day: ${s.day}`);const o=new Date(y,s.month-1,s.day);if(o.getFullYear()!==y||o.getMonth()!==s.month-1||o.getDate()!==s.day)throw new Error(`Invalid date: ${a}`);return o}var ADtoBS=function(a){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"YYYY-MM-DD",e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"YYYY-MM-DD";try{const r=parseADDate(a,t);return format(new NepaliDate(r),e)}catch(a){throw console.error("Error During Date Conversion:",a),new Error(`Failed to convert AD to BS: ${a instanceof Error?a.message:"Unknown error"}`)}};function parseBSDate(a,t){let e=a;const r={"०":"0","१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9"};for(const[a,t]of Object.entries(r))e=e.replace(new RegExp(a,"g"),t);const s={"YYYY-MM-DD":{regex:/^(\d{4})-(\d{1,2})-(\d{1,2})$/,order:["year","month","day"]},"YYYY/MM/DD":{regex:/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/,order:["year","month","day"]},"YYYY.MM.DD":{regex:/^(\d{4})\.(\d{1,2})\.(\d{1,2})$/,order:["year","month","day"]},"DD-MM-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["day","month","year"]},"DD/MM/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["day","month","year"]},"DD.MM.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["day","month","year"]},"MM-DD-YYYY":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["month","day","year"]},"MM/DD/YYYY":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["month","day","year"]},"MM.DD.YYYY":{regex:/^(\d{1,2})\.(\d{1,2})\.(\d{4})$/,order:["month","day","year"]},"yyyy-mm-dd":{regex:/^(\d{4})-(\d{1,2})-(\d{1,2})$/,order:["year","month","day"]},"yyyy/mm/dd":{regex:/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/,order:["year","month","day"]},"dd-mm-yyyy":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["day","month","year"]},"dd/mm/yyyy":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["day","month","year"]},"mm-dd-yyyy":{regex:/^(\d{1,2})-(\d{1,2})-(\d{4})$/,order:["month","day","year"]},"mm/dd/yyyy":{regex:/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,order:["month","day","year"]},"DD MM YYYY":{regex:/^(\d{1,2})\s+(\d{1,2})\s+(\d{4})$/,order:["day","month","year"]},"YYYY MM DD":{regex:/^(\d{4})\s+(\d{1,2})\s+(\d{1,2})$/,order:["year","month","day"]}},y=s[t.replace(/"/g,"")];if(!y)throw new Error(`Unsupported BS date format: "${t}". Supported formats: ${Object.keys(s).join(", ")}`);const o=e.match(y.regex);if(!o)throw new Error(`Date string "${a}" does not match format "${t}"`);const d={};y.order.forEach((a,t)=>{d[a]=parseInt(o[t+1],10)});const l=d.year<100?d.year<10?2e3+d.year:1900+d.year:d.year;if(l<1970||l>2100)throw new Error(`Invalid BS year: ${l}`);if(d.month<1||d.month>12)throw new Error(`Invalid month: ${d.month}`);if(d.day<1||d.day>32)throw new Error(`Invalid day: ${d.day}`);return{year:l,month:d.month,day:d.day}}function formatADDate(a,t){const e=a=>a<10?`0${a}`:`${a}`;let r=t;return r=r.replace(/YYYY/g,String(a.getFullYear())),r=r.replace(/YY/g,String(a.getFullYear()).substring(2)),r=r.replace(/MM/g,e(a.getMonth()+1)),r=r.replace(/M/g,String(a.getMonth()+1)),r=r.replace(/DD/g,e(a.getDate())),r=r.replace(/D/g,String(a.getDate())),r}function BStoAD(a){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"YYYY-MM-DD",e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"YYYY-MM-DD";try{const{year:r,month:s,day:y}=parseBSDate(a,t),o=new NepaliDate(r,s-1,y).getEnglishDate();if("YYYY-MM-DD"===e){const a=a=>a<10?`0${a}`:`${a}`;return`${o.getFullYear()}-${a(o.getMonth()+1)}-${a(o.getDate())}`}return formatADDate(o,e)}catch(a){throw console.error("Error During Date Conversion:",a),new Error(`Failed to convert BS to AD: ${a instanceof Error?a.message:"Unknown error"}`)}}export{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
+ var NEPALI_DATE_MAP=[{year:1976,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1977,days:[30,32,31,32,31,31,29,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1978,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1979,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1980,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1981,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1982,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1983,days:[31,31,32,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1984,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1985,days:[31,31,31,32,31,31,29,30,30,29,30,30],totalDays:0,daysTillNow:0},{year:1986,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1987,days:[31,32,31,32,31,30,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1988,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{year:1989,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1990,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1991,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1992,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1993,days:[31,31,31,32,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1994,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1995,days:[31,32,31,32,31,30,30,30,29,29,30,30],totalDays:0,daysTillNow:0},{year:1996,days:[31,32,31,32,31,30,30,30,29,30,29,31],totalDays:0,daysTillNow:0},{year:1997,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1998,days:[31,31,32,31,31,31,30,29,30,29,30,30],totalDays:0,daysTillNow:0},{year:1999,days:[31,32,31,32,31,30,30,30,29,29,30,31],totalDays:0,daysTillNow:0},{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,32,31,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,31,32,31,31,30,30,30,29,30,30,30],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}],totalDays=0;NEPALI_DATE_MAP.forEach(a=>{a.totalDays=a.days.reduce((a,t)=>a+t,0),totalDays+=a.totalDays,a.daysTillNow=totalDays});var EPOCH=new Date(1919,3,13).getTime(),WEEK_EN=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],WEEK_SHORT_EN=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],WEEK_NP=["आइतबार","सोमबार","मंगलबार","बुधबार","बिहिबार","शुक्रबार","शनिबार"],WEEK_SHORT_NP=["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],MONTH_EN=["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"],MONTH_SHORT_EN=["Bai","Jes","Asa","Shr","Bha","Asw","Kar","Man","Pou","Mag","Fal","Cha"],MONTH_NP=["बैशाख","जेठ","असार","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुण","चैत्र"],MONTH_SHORT_NP=["बै","जे","अस","श्र","भा","आ","का","मं","पौ","मा","फा","चै"],NUMBER_NP=["०","१","२","३","४","५","६","७","८","९"];function pad(a){return a<10?`0${a}`:`${a}`}function npDigit(a){let t="";for(let e=0;e<a.length;e+=1)t+=NUMBER_NP[a.charCodeAt(e)-48];return t}function yearEn(a){return t=>a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear())}function yearNp(a){return t=>npDigit(a<=2?String(t.getYear()).substring(2):3===a?String(t.getYear()).substring(1):String(t.getYear()))}function monthEn(a){return t=>1===a?String(t.getMonth()+1):2===a?pad(t.getMonth()+1):3===a?MONTH_SHORT_EN[t.getMonth()]:MONTH_EN[t.getMonth()]}function monthNp(a){return t=>1===a?npDigit(String(t.getMonth()+1)):2===a?npDigit(pad(t.getMonth()+1)):3===a?MONTH_SHORT_NP[t.getMonth()]:MONTH_NP[t.getMonth()]}function dateEn(a){return t=>1===a?String(t.getDate()):2===a?pad(t.getDate()):3===a?WEEK_SHORT_EN[t.getDay()]:WEEK_EN[t.getDay()]}function dateNp(a){return t=>1===a?npDigit(String(t.getDate())):2===a?npDigit(pad(t.getDate())):3===a?WEEK_SHORT_NP[t.getDay()]:WEEK_NP[t.getDay()]}function pass(a){return()=>a}var fn={Y:yearEn,y:yearNp,M:monthEn,m:monthNp,D:dateEn,d:dateNp};function isSpecial(a){return a in fn}function tokenize(a){let t=!1,e="",s="",y=0;const r=[];for(let l=0;l<a.length;l+=1){const o=a[l];o!==s?(""!==s&&(r.push(fn[s](y)),s="",y=0),'"'!==o?!isSpecial(o)||t?e+=o:(e&&(r.push(pass(e)),e=""),s=o,y=1):t=!t):y+=1}return e?r.push(pass(e)):s&&r.push(fn[s](y)),r}function format(a,t){return tokenize(t).map(t=>t(a)).join("")}function _parse(a){const t=a.split(/[-./]/,3),[e,s=1,y=1]=t.map(a=>{const t=parseInt(a,10);if(Number.isNaN(t))throw new Error("Invalid date");return t});if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error(`Nepal year out of range. Supported range: ${NEPALI_DATE_MAP[0].year}-${NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length-1}`);if(s<1||s>12)throw new Error("Invalid nepali month must be between 1 - 12");const r=NEPALI_DATE_MAP[e-NEPALI_DATE_MAP[0].year].days[s-1];if(y<1||y>r)throw new Error(`Invalid nepali date must be between 1 - ${r} in ${e} ${s}`);return[e,s-1,y]}var NepaliDate=class a{constructor(){if(0===arguments.length)this.setEnglishDate(new Date);else if(1===arguments.length){const t=arguments.length<=0?void 0:arguments[0];if("object"==typeof t)if(t instanceof Date)this.setEnglishDate(t);else{if(!(t instanceof a))throw new Error("Invalid date argument");this.timestamp=t.timestamp,this.year=t.year,this.month=t.month,this.day=t.day}else if("string"==typeof t)this.set(..._parse(t));else{if("number"!=typeof t)throw new Error("Invalid date argument");this.setEnglishDate(new Date(t))}}else{if(3!==arguments.length)throw new Error("Invalid argument syntax");this.set(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2])}}setEnglishDate(a){this.timestamp=a;let t=Math.floor((this.timestamp.getTime()-EPOCH)/864e5),e=Math.floor(t/366);for(;t>=NEPALI_DATE_MAP[e].daysTillNow;)e+=1;t-=NEPALI_DATE_MAP[e-1]?NEPALI_DATE_MAP[e-1].daysTillNow:0;const s=NEPALI_DATE_MAP[e];for(this.year=s.year,this.month=0;t>=s.days[this.month];)this.month+=1,t-=s.days[this.month-1];this.day=t+1}getEnglishDate(){return this.timestamp}parse(a){this.set(..._parse(a))}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(a){this.set(a,this.month,this.day)}setMonth(a){this.set(this.year,a,this.day)}setDate(a){this.set(this.year,this.month,a)}set(a,t,e){const s=a+Math.floor(t/12)-NEPALI_DATE_MAP[0].year,y=NEPALI_DATE_MAP[s];let r=y.daysTillNow-y.totalDays;const l=t%12,o=l<0?12+l:l;for(let a=0;a<o;a+=1)r+=y.days[a];r+=e-1,this.setEnglishDate(new Date(EPOCH+864e5*r))}format(a){return format(this,a)}toString(){return`${this.year}/${this.month+1}/${this.day}`}addDays(t){const e=new Date(this.timestamp.getTime()+864e5*t);return new a(e)}addMonths(t){let e=this.year,s=this.month+t;e+=Math.floor(s/12),s%=12,s<0&&(s+=12,e-=1);const y=e-NEPALI_DATE_MAP[0].year;if(y<0||y>=NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const r=NEPALI_DATE_MAP[y].days[s],l=Math.min(this.day,r);return new a(e,s,l)}addYears(t){const e=this.year+t;if(e<NEPALI_DATE_MAP[0].year||e>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)throw new Error("Resulting date is out of supported range");const s=e-NEPALI_DATE_MAP[0].year;if(11===this.month&&29===this.day){const t=NEPALI_DATE_MAP[s].days[11];if(t<29)return new a(e,11,t)}return new a(e,this.month,this.day)}static minimum(){return new Date(EPOCH)}static maximum(){return new Date(EPOCH+864e5*NEPALI_DATE_MAP[NEPALI_DATE_MAP.length-1].daysTillNow)}daysInMonth(){const a=this.year-NEPALI_DATE_MAP[0].year;return NEPALI_DATE_MAP[a].days[this.month]}isLeapYear(){const a=this.year-NEPALI_DATE_MAP[0].year;return 366===NEPALI_DATE_MAP[a].totalDays}getWeeksInMonth(){const t=new a(this.year,this.month,1).getDay(),e=this.daysInMonth();return Math.ceil((t+e)/7)}diff(a,t){switch(t){case"day":return Math.floor((this.timestamp.getTime()-a.timestamp.getTime())/864e5);case"month":return 12*(this.year-a.year)+(this.month-a.month);case"year":return this.year-a.year;default:throw new Error("Invalid unit for diff calculation")}}startOfDay(){const t=new Date(this.timestamp);return t.setHours(0,0,0,0),new a(t)}endOfDay(){const t=new Date(this.timestamp);return t.setHours(23,59,59,999),new a(t)}startOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(a<0||a>6||!Number.isInteger(a))throw new Error("startOfWeek must be an integer between 0 and 6");const t=(this.getDay()-a+7)%7;return this.clone().startOfDay().addDays(-t)}endOfWeek(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.startOfWeek(a).addDays(6).endOfDay()}startOfMonth(){return new a(this.year,this.month,1)}endOfMonth(){const t=this.daysInMonth();return new a(this.year,this.month,t).endOfDay()}startOfYear(){return new a(this.year,0,1)}endOfYear(){const t=this.year-NEPALI_DATE_MAP[0].year,e=NEPALI_DATE_MAP[t].days[11];return new a(this.year,11,e).endOfDay()}static getMonthName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>11)throw new Error("Invalid month index, must be between 0-11");let s="";return s=e?t?MONTH_SHORT_NP[a]:MONTH_NP[a]:t?MONTH_SHORT_EN[a]:MONTH_EN[a],s}static getDayName(a){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(a<0||a>6)throw new Error("Invalid day index, must be between 0-6");let s="";return s=e?t?WEEK_SHORT_NP[a]:WEEK_NP[a]:t?WEEK_SHORT_EN[a]:WEEK_EN[a],s}static isValid(a,t,e){try{if(a<NEPALI_DATE_MAP[0].year||a>=NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length)return!1;if(t<0||t>11)return!1;const s=a-NEPALI_DATE_MAP[0].year,y=NEPALI_DATE_MAP[s].days[t];return!(e<1||e>y)}catch(a){return!1}}isValid(){return a.isValid(this.year,this.month,this.day)}static getCalendarDays(t,e){if(!a.isValid(t,e,1))throw new Error("Invalid year or month");const s={year:0,month:0,days:[]},y={year:0,month:0,days:[]},r={year:0,month:0,days:[]},l=t-NEPALI_DATE_MAP[0].year,o=new a(t,e,1).getDay(),i=NEPALI_DATE_MAP[l].days[e];y.year=t,y.month=e;let n=e-1,d=t,D=e+1,N=t;if(n<0&&(n=11,d--),d>=NEPALI_DATE_MAP[0].year&&(s.year=d,s.month=n),d>=NEPALI_DATE_MAP[0].year&&o>0){const a=d-NEPALI_DATE_MAP[0].year,t=NEPALI_DATE_MAP[a].days[n];for(let a=0;a<o;a++)s.days.push(t-o+a+1)}for(let a=1;a<=i;a++)y.days.push(a);D>11&&(D=0,N++),N<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&(r.year=N,r.month=D);const h=42-o-y.days.length;if(N<NEPALI_DATE_MAP[0].year+NEPALI_DATE_MAP.length&&h>0)for(let a=1;a<=h;a++)r.days.push(a);return{prevRemainingDays:o,prevMonth:s,currentMonth:y,nextMonth:r,remainingDays:h}}clone(){return new a(this)}isAfter(a){return this.timestamp.getTime()>a.timestamp.getTime()}isBefore(a){return this.timestamp.getTime()<a.timestamp.getTime()}isEqual(a){return this.year===a.year&&this.month===a.month&&this.day===a.day}isSame(a,t){switch(t){case"year":return this.year===a.year;case"month":return this.year===a.year&&this.month===a.month;case"day":return this.isEqual(a);default:throw new Error("Invalid unit for comparison")}}static getQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const s=null!=e?e:(new a).getYear(),y=3*(t-1);return{start:new a(s,y,1),end:new a(s,y+2,1).endOfMonth()}}getCurrentQuarter(){return Math.floor(this.month/3)+1}static getQuarters(t){const e=null!=t?t:(new a).getYear();return{Q1:a.getQuarter(1,e),Q2:a.getQuarter(2,e),Q3:a.getQuarter(3,e),Q4:a.getQuarter(4,e)}}static getCurrentFiscalYear(){const t=new a,e=t.getYear();return t.getMonth()<3?e-1:e}static getFiscalYearQuarter(t,e){if(t<1||t>4||!Number.isInteger(t))throw new Error("Quarter must be an integer between 1 and 4");const s=null!=e?e:a.getCurrentFiscalYear();let y=s,r=3*(t-1)+3;4===t&&(y=s+1,r=0),r>11&&(y++,r-=12);let l=r+2,o=y;l>11&&(o++,l-=12);return{start:new a(y,r,1),end:new a(o,l,1).endOfMonth()}}getCurrentFiscalYearQuarter(){const a=this.getMonth();return a>=3&&a<=5?1:a>=6&&a<=8?2:a>=9&&a<=11?3:4}getCurrentFiscalYearQuarterDates(){const t=this.getCurrentFiscalYearQuarter(),e=a.getCurrentFiscalYear();return a.getFiscalYearQuarter(t,e)}static getFiscalYearQuarters(t){const e=null!=t?t:a.getCurrentFiscalYear();return{Q1:a.getFiscalYearQuarter(1,e),Q2:a.getFiscalYearQuarter(2,e),Q3:a.getFiscalYearQuarter(3,e),Q4:a.getFiscalYearQuarter(4,e)}}},ADtoBS=a=>{if(!/^\d{4}-\d{2}-\d{2}$/.test(a))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");const t=new Date(a);if(Number.isNaN(t.getTime()))throw new Error(`Invalid date input '${a}'`);try{return new NepaliDate(t).format("YYYY-MM-DD")}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert AD to BS")}};function BStoAD(a){try{if(!/^\d{4}-\d{2}-\d{2}$/.test(a))throw new Error("Invalid date format. Expected format: YYYY-MM-DD");const t=a?new NepaliDate(a):new NepaliDate,e=a=>a<10?`0${a}`:`${a}`,s=t.getEnglishDate();return`${s.getFullYear()}-${e(s.getMonth()+1)}-${e(s.getDate())}`}catch(a){throw console.error("Error During Date Conversion : ",a),new Error("Failed to convert BS to AD")}}export{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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nepali-date-library",
3
3
  "private": false,
4
- "version": "1.1.7",
4
+ "version": "1.1.9",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist"