@internationalized/date 3.12.0 → 3.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +113 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +45 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +45 -0
- package/dist/index.mjs.map +1 -0
- package/dist/private/CalendarDate.cjs +272 -0
- package/dist/private/CalendarDate.cjs.map +1 -0
- package/dist/private/CalendarDate.js +282 -0
- package/dist/private/CalendarDate.js.map +1 -0
- package/dist/private/CalendarDate.mjs +264 -0
- package/dist/private/CalendarDate.mjs.map +1 -0
- package/dist/{DateFormatter.main.js → private/DateFormatter.cjs} +31 -28
- package/dist/private/DateFormatter.cjs.map +1 -0
- package/dist/{DateFormatter.module.js → private/DateFormatter.js} +27 -24
- package/dist/private/DateFormatter.js.map +1 -0
- package/dist/{DateFormatter.mjs → private/DateFormatter.mjs} +31 -28
- package/dist/private/DateFormatter.mjs.map +1 -0
- package/dist/{BuddhistCalendar.main.js → private/calendars/BuddhistCalendar.cjs} +13 -13
- package/dist/{BuddhistCalendar.main.js.map → private/calendars/BuddhistCalendar.cjs.map} +1 -1
- package/dist/{BuddhistCalendar.module.js → private/calendars/BuddhistCalendar.js} +13 -13
- package/dist/{BuddhistCalendar.module.js.map → private/calendars/BuddhistCalendar.js.map} +1 -1
- package/dist/{BuddhistCalendar.mjs → private/calendars/BuddhistCalendar.mjs} +13 -13
- package/dist/private/calendars/BuddhistCalendar.mjs.map +1 -0
- package/dist/{EthiopicCalendar.main.js → private/calendars/EthiopicCalendar.cjs} +37 -37
- package/dist/private/calendars/EthiopicCalendar.cjs.map +1 -0
- package/dist/{EthiopicCalendar.module.js → private/calendars/EthiopicCalendar.js} +35 -35
- package/dist/private/calendars/EthiopicCalendar.js.map +1 -0
- package/dist/{EthiopicCalendar.mjs → private/calendars/EthiopicCalendar.mjs} +35 -35
- package/dist/private/calendars/EthiopicCalendar.mjs.map +1 -0
- package/dist/{GregorianCalendar.main.js → private/calendars/GregorianCalendar.cjs} +31 -31
- package/dist/private/calendars/GregorianCalendar.cjs.map +1 -0
- package/dist/{GregorianCalendar.module.js → private/calendars/GregorianCalendar.js} +27 -27
- package/dist/private/calendars/GregorianCalendar.js.map +1 -0
- package/dist/{GregorianCalendar.mjs → private/calendars/GregorianCalendar.mjs} +27 -27
- package/dist/private/calendars/GregorianCalendar.mjs.map +1 -0
- package/dist/{HebrewCalendar.main.js → private/calendars/HebrewCalendar.cjs} +44 -44
- package/dist/private/calendars/HebrewCalendar.cjs.map +1 -0
- package/dist/{HebrewCalendar.module.js → private/calendars/HebrewCalendar.js} +44 -44
- package/dist/private/calendars/HebrewCalendar.js.map +1 -0
- package/dist/{HebrewCalendar.mjs → private/calendars/HebrewCalendar.mjs} +44 -44
- package/dist/private/calendars/HebrewCalendar.mjs.map +1 -0
- package/dist/{IndianCalendar.main.js → private/calendars/IndianCalendar.cjs} +20 -20
- package/dist/private/calendars/IndianCalendar.cjs.map +1 -0
- package/dist/{IndianCalendar.module.js → private/calendars/IndianCalendar.js} +20 -20
- package/dist/private/calendars/IndianCalendar.js.map +1 -0
- package/dist/{IndianCalendar.mjs → private/calendars/IndianCalendar.mjs} +20 -20
- package/dist/private/calendars/IndianCalendar.mjs.map +1 -0
- package/dist/private/calendars/IslamicCalendar.cjs +168 -0
- package/dist/private/calendars/IslamicCalendar.cjs.map +1 -0
- package/dist/private/calendars/IslamicCalendar.js +161 -0
- package/dist/private/calendars/IslamicCalendar.js.map +1 -0
- package/dist/private/calendars/IslamicCalendar.mjs +161 -0
- package/dist/private/calendars/IslamicCalendar.mjs.map +1 -0
- package/dist/{JapaneseCalendar.main.js → private/calendars/JapaneseCalendar.cjs} +37 -37
- package/dist/private/calendars/JapaneseCalendar.cjs.map +1 -0
- package/dist/{JapaneseCalendar.module.js → private/calendars/JapaneseCalendar.js} +37 -37
- package/dist/private/calendars/JapaneseCalendar.js.map +1 -0
- package/dist/{JapaneseCalendar.mjs → private/calendars/JapaneseCalendar.mjs} +37 -37
- package/dist/private/calendars/JapaneseCalendar.mjs.map +1 -0
- package/dist/{PersianCalendar.main.js → private/calendars/PersianCalendar.cjs} +13 -13
- package/dist/private/calendars/PersianCalendar.cjs.map +1 -0
- package/dist/{PersianCalendar.module.js → private/calendars/PersianCalendar.js} +13 -13
- package/dist/private/calendars/PersianCalendar.js.map +1 -0
- package/dist/{PersianCalendar.mjs → private/calendars/PersianCalendar.mjs} +13 -13
- package/dist/private/calendars/PersianCalendar.mjs.map +1 -0
- package/dist/{TaiwanCalendar.main.js → private/calendars/TaiwanCalendar.cjs} +20 -20
- package/dist/{TaiwanCalendar.main.js.map → private/calendars/TaiwanCalendar.cjs.map} +1 -1
- package/dist/private/calendars/TaiwanCalendar.js +75 -0
- package/dist/{TaiwanCalendar.module.js.map → private/calendars/TaiwanCalendar.js.map} +1 -1
- package/dist/{TaiwanCalendar.mjs → private/calendars/TaiwanCalendar.mjs} +20 -20
- package/dist/private/calendars/TaiwanCalendar.mjs.map +1 -0
- package/dist/{conversion.main.js → private/conversion.cjs} +85 -85
- package/dist/private/conversion.cjs.map +1 -0
- package/dist/{conversion.module.js → private/conversion.js} +71 -71
- package/dist/private/conversion.js.map +1 -0
- package/dist/{conversion.mjs → private/conversion.mjs} +71 -71
- package/dist/private/conversion.mjs.map +1 -0
- package/dist/private/createCalendar.cjs +69 -0
- package/dist/private/createCalendar.cjs.map +1 -0
- package/dist/private/createCalendar.js +64 -0
- package/dist/private/createCalendar.js.map +1 -0
- package/dist/private/createCalendar.mjs +64 -0
- package/dist/private/createCalendar.mjs.map +1 -0
- package/dist/{manipulation.main.js → private/manipulation.cjs} +106 -109
- package/dist/private/manipulation.cjs.map +1 -0
- package/dist/{manipulation.mjs → private/manipulation.js} +88 -88
- package/dist/private/manipulation.js.map +1 -0
- package/dist/{manipulation.module.js → private/manipulation.mjs} +93 -96
- package/dist/private/manipulation.mjs.map +1 -0
- package/dist/private/queries.cjs +359 -0
- package/dist/private/queries.cjs.map +1 -0
- package/dist/private/queries.js +326 -0
- package/dist/private/queries.js.map +1 -0
- package/dist/private/queries.mjs +324 -0
- package/dist/private/queries.mjs.map +1 -0
- package/dist/private/string.cjs +181 -0
- package/dist/private/string.cjs.map +1 -0
- package/dist/{string.mjs → private/string.js} +64 -64
- package/dist/private/string.js.map +1 -0
- package/dist/private/string.mjs +166 -0
- package/dist/private/string.mjs.map +1 -0
- package/dist/{utils.main.js → private/utils.cjs} +3 -3
- package/dist/{utils.main.js.map → private/utils.cjs.map} +1 -1
- package/dist/{utils.module.js → private/utils.js} +3 -3
- package/dist/{utils.module.js.map → private/utils.js.map} +1 -1
- package/dist/{utils.mjs → private/utils.mjs} +3 -3
- package/dist/private/utils.mjs.map +1 -0
- package/dist/{weekStartData.main.js → private/weekStartData.cjs} +3 -3
- package/dist/{weekStartData.main.js.map → private/weekStartData.cjs.map} +1 -1
- package/dist/{weekStartData.module.js → private/weekStartData.js} +3 -3
- package/dist/{weekStartData.module.js.map → private/weekStartData.js.map} +1 -1
- package/dist/{weekStartData.mjs → private/weekStartData.mjs} +3 -3
- package/dist/private/weekStartData.mjs.map +1 -0
- package/dist/types/src/CalendarDate.d.ts +207 -0
- package/dist/types/src/DateFormatter.d.ts +24 -0
- package/dist/types/src/calendars/BuddhistCalendar.d.ts +16 -0
- package/dist/types/src/calendars/EthiopicCalendar.d.ts +45 -0
- package/dist/types/src/calendars/GregorianCalendar.d.ts +26 -0
- package/dist/types/src/calendars/HebrewCalendar.d.ts +21 -0
- package/dist/types/src/calendars/IndianCalendar.d.ts +17 -0
- package/dist/types/src/calendars/IslamicCalendar.d.ts +51 -0
- package/dist/types/src/calendars/JapaneseCalendar.d.ts +22 -0
- package/dist/types/src/calendars/PersianCalendar.d.ts +19 -0
- package/dist/types/src/calendars/TaiwanCalendar.d.ts +19 -0
- package/dist/types/src/conversion.d.ts +45 -0
- package/dist/types/src/createCalendar.d.ts +3 -0
- package/dist/types/src/index.d.ts +17 -0
- package/dist/types/src/manipulation.d.ts +25 -0
- package/dist/types/src/queries.d.ts +93 -0
- package/dist/types/src/string.d.ts +36 -0
- package/dist/types/src/types.d.ts +136 -0
- package/dist/types/src/utils.d.ts +4 -0
- package/dist/types/src/weekStartData.d.ts +97 -0
- package/package.json +33 -18
- package/src/CalendarDate.ts +215 -35
- package/src/DateFormatter.ts +36 -16
- package/src/calendars/BuddhistCalendar.ts +1 -6
- package/src/calendars/EthiopicCalendar.ts +6 -5
- package/src/calendars/GregorianCalendar.ts +11 -4
- package/src/calendars/HebrewCalendar.ts +8 -4
- package/src/calendars/IndianCalendar.ts +8 -3
- package/src/calendars/IslamicCalendar.ts +40 -25
- package/src/calendars/JapaneseCalendar.ts +18 -10
- package/src/calendars/PersianCalendar.ts +2 -4
- package/src/calendars/TaiwanCalendar.ts +2 -9
- package/src/conversion.ts +98 -25
- package/src/createCalendar.ts +10 -2
- package/src/index.ts +11 -2
- package/src/manipulation.ts +133 -30
- package/src/queries.ts +57 -15
- package/src/string.ts +52 -25
- package/src/types.ts +73 -51
- package/src/utils.ts +1 -1
- package/dist/CalendarDate.main.js +0 -260
- package/dist/CalendarDate.main.js.map +0 -1
- package/dist/CalendarDate.mjs +0 -252
- package/dist/CalendarDate.module.js +0 -252
- package/dist/CalendarDate.module.js.map +0 -1
- package/dist/DateFormatter.main.js.map +0 -1
- package/dist/DateFormatter.module.js.map +0 -1
- package/dist/EthiopicCalendar.main.js.map +0 -1
- package/dist/EthiopicCalendar.module.js.map +0 -1
- package/dist/GregorianCalendar.main.js.map +0 -1
- package/dist/GregorianCalendar.module.js.map +0 -1
- package/dist/HebrewCalendar.main.js.map +0 -1
- package/dist/HebrewCalendar.module.js.map +0 -1
- package/dist/IndianCalendar.main.js.map +0 -1
- package/dist/IndianCalendar.module.js.map +0 -1
- package/dist/IslamicCalendar.main.js +0 -168
- package/dist/IslamicCalendar.main.js.map +0 -1
- package/dist/IslamicCalendar.mjs +0 -161
- package/dist/IslamicCalendar.module.js +0 -161
- package/dist/IslamicCalendar.module.js.map +0 -1
- package/dist/JapaneseCalendar.main.js.map +0 -1
- package/dist/JapaneseCalendar.module.js.map +0 -1
- package/dist/PersianCalendar.main.js.map +0 -1
- package/dist/PersianCalendar.module.js.map +0 -1
- package/dist/TaiwanCalendar.module.js +0 -75
- package/dist/conversion.main.js.map +0 -1
- package/dist/conversion.module.js.map +0 -1
- package/dist/createCalendar.main.js +0 -69
- package/dist/createCalendar.main.js.map +0 -1
- package/dist/createCalendar.mjs +0 -64
- package/dist/createCalendar.module.js +0 -64
- package/dist/createCalendar.module.js.map +0 -1
- package/dist/import.mjs +0 -45
- package/dist/main.js +0 -113
- package/dist/main.js.map +0 -1
- package/dist/manipulation.main.js.map +0 -1
- package/dist/manipulation.module.js.map +0 -1
- package/dist/module.js +0 -45
- package/dist/module.js.map +0 -1
- package/dist/queries.main.js +0 -361
- package/dist/queries.main.js.map +0 -1
- package/dist/queries.mjs +0 -326
- package/dist/queries.module.js +0 -326
- package/dist/queries.module.js.map +0 -1
- package/dist/string.main.js +0 -190
- package/dist/string.main.js.map +0 -1
- package/dist/string.module.js +0 -175
- package/dist/string.module.js.map +0 -1
- package/dist/types.d.ts +0 -672
- package/dist/types.d.ts.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {CalendarDate as $
|
|
1
|
+
import {CalendarDate as $2aaf608024c21ca1$export$99faa760c7908e4f} from "../CalendarDate.mjs";
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Copyright 2020 Adobe. All rights reserved.
|
|
@@ -13,33 +13,33 @@ import {CalendarDate as $35ea8db9cb2ccb90$export$99faa760c7908e4f} from "./Calen
|
|
|
13
13
|
*/ // Portions of the code in this file are based on code from ICU.
|
|
14
14
|
// Original licensing can be found in the NOTICE file in the root directory of this source tree.
|
|
15
15
|
|
|
16
|
-
const $
|
|
17
|
-
const $
|
|
16
|
+
const $97cfca9efd59523d$var$ETHIOPIC_EPOCH = 1723856;
|
|
17
|
+
const $97cfca9efd59523d$var$COPTIC_EPOCH = 1824665;
|
|
18
18
|
// The delta between Amete Alem 1 and Amete Mihret 1
|
|
19
19
|
// AA 5501 = AM 1
|
|
20
|
-
const $
|
|
21
|
-
function $
|
|
22
|
-
return epoch // difference from Julian epoch to 1,1,1
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
20
|
+
const $97cfca9efd59523d$var$AMETE_MIHRET_DELTA = 5500;
|
|
21
|
+
function $97cfca9efd59523d$var$ceToJulianDay(epoch, year, month, day) {
|
|
22
|
+
return epoch + // difference from Julian epoch to 1,1,1
|
|
23
|
+
365 * year + // number of days from years
|
|
24
|
+
Math.floor(year / 4) + // extra day of leap year
|
|
25
|
+
30 * (month - 1) + // number of days from months (1 based)
|
|
26
|
+
day - 1 // number of days for present month (1 based)
|
|
27
27
|
;
|
|
28
28
|
}
|
|
29
|
-
function $
|
|
29
|
+
function $97cfca9efd59523d$var$julianDayToCE(epoch, jd) {
|
|
30
30
|
let year = Math.floor(4 * (jd - epoch) / 1461);
|
|
31
|
-
let month = 1 + Math.floor((jd - $
|
|
32
|
-
let day = jd + 1 - $
|
|
31
|
+
let month = 1 + Math.floor((jd - $97cfca9efd59523d$var$ceToJulianDay(epoch, year, 1, 1)) / 30);
|
|
32
|
+
let day = jd + 1 - $97cfca9efd59523d$var$ceToJulianDay(epoch, year, month, 1);
|
|
33
33
|
return [
|
|
34
34
|
year,
|
|
35
35
|
month,
|
|
36
36
|
day
|
|
37
37
|
];
|
|
38
38
|
}
|
|
39
|
-
function $
|
|
39
|
+
function $97cfca9efd59523d$var$getLeapDay(year) {
|
|
40
40
|
return Math.floor(year % 4 / 3);
|
|
41
41
|
}
|
|
42
|
-
function $
|
|
42
|
+
function $97cfca9efd59523d$var$getDaysInMonth(year, month) {
|
|
43
43
|
// The Ethiopian and Coptic calendars have 13 months, 12 of 30 days each and
|
|
44
44
|
// an intercalary month at the end of the year of 5 or 6 days, depending whether
|
|
45
45
|
// the year is a leap year or not. The Leap Year follows the same rules as the
|
|
@@ -48,31 +48,31 @@ function $b956b2d7a6cf451f$var$getDaysInMonth(year, month) {
|
|
|
48
48
|
if (month % 13 !== 0) // not intercalary month
|
|
49
49
|
return 30;
|
|
50
50
|
else // intercalary month 5 days + possible leap day
|
|
51
|
-
return $
|
|
51
|
+
return $97cfca9efd59523d$var$getLeapDay(year) + 5;
|
|
52
52
|
}
|
|
53
|
-
class $
|
|
53
|
+
class $97cfca9efd59523d$export$26ba6eab5e20cd7d {
|
|
54
54
|
fromJulianDay(jd) {
|
|
55
|
-
let [year, month, day] = $
|
|
55
|
+
let [year, month, day] = $97cfca9efd59523d$var$julianDayToCE($97cfca9efd59523d$var$ETHIOPIC_EPOCH, jd);
|
|
56
56
|
let era = 'AM';
|
|
57
57
|
if (year <= 0) {
|
|
58
58
|
era = 'AA';
|
|
59
|
-
year += $
|
|
59
|
+
year += $97cfca9efd59523d$var$AMETE_MIHRET_DELTA;
|
|
60
60
|
}
|
|
61
|
-
return new (0, $
|
|
61
|
+
return new (0, $2aaf608024c21ca1$export$99faa760c7908e4f)(this, era, year, month, day);
|
|
62
62
|
}
|
|
63
63
|
toJulianDay(date) {
|
|
64
64
|
let year = date.year;
|
|
65
|
-
if (date.era === 'AA') year -= $
|
|
66
|
-
return $
|
|
65
|
+
if (date.era === 'AA') year -= $97cfca9efd59523d$var$AMETE_MIHRET_DELTA;
|
|
66
|
+
return $97cfca9efd59523d$var$ceToJulianDay($97cfca9efd59523d$var$ETHIOPIC_EPOCH, year, date.month, date.day);
|
|
67
67
|
}
|
|
68
68
|
getDaysInMonth(date) {
|
|
69
|
-
return $
|
|
69
|
+
return $97cfca9efd59523d$var$getDaysInMonth(date.year, date.month);
|
|
70
70
|
}
|
|
71
71
|
getMonthsInYear() {
|
|
72
72
|
return 13;
|
|
73
73
|
}
|
|
74
74
|
getDaysInYear(date) {
|
|
75
|
-
return 365 + $
|
|
75
|
+
return 365 + $97cfca9efd59523d$var$getLeapDay(date.year);
|
|
76
76
|
}
|
|
77
77
|
getMaximumMonthsInYear() {
|
|
78
78
|
return 13;
|
|
@@ -96,11 +96,11 @@ class $b956b2d7a6cf451f$export$26ba6eab5e20cd7d {
|
|
|
96
96
|
this.identifier = 'ethiopic';
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
|
-
class $
|
|
99
|
+
class $97cfca9efd59523d$export$d72e0c37005a4914 extends $97cfca9efd59523d$export$26ba6eab5e20cd7d {
|
|
100
100
|
fromJulianDay(jd) {
|
|
101
|
-
let [year, month, day] = $
|
|
102
|
-
year += $
|
|
103
|
-
return new (0, $
|
|
101
|
+
let [year, month, day] = $97cfca9efd59523d$var$julianDayToCE($97cfca9efd59523d$var$ETHIOPIC_EPOCH, jd);
|
|
102
|
+
year += $97cfca9efd59523d$var$AMETE_MIHRET_DELTA;
|
|
103
|
+
return new (0, $2aaf608024c21ca1$export$99faa760c7908e4f)(this, 'AA', year, month, day);
|
|
104
104
|
}
|
|
105
105
|
getEras() {
|
|
106
106
|
return [
|
|
@@ -116,25 +116,25 @@ class $b956b2d7a6cf451f$export$d72e0c37005a4914 extends $b956b2d7a6cf451f$export
|
|
|
116
116
|
;
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
|
-
class $
|
|
119
|
+
class $97cfca9efd59523d$export$fe6243cbe1a4b7c1 extends $97cfca9efd59523d$export$26ba6eab5e20cd7d {
|
|
120
120
|
fromJulianDay(jd) {
|
|
121
|
-
let [year, month, day] = $
|
|
121
|
+
let [year, month, day] = $97cfca9efd59523d$var$julianDayToCE($97cfca9efd59523d$var$COPTIC_EPOCH, jd);
|
|
122
122
|
let era = 'CE';
|
|
123
123
|
if (year <= 0) {
|
|
124
124
|
era = 'BCE';
|
|
125
125
|
year = 1 - year;
|
|
126
126
|
}
|
|
127
|
-
return new (0, $
|
|
127
|
+
return new (0, $2aaf608024c21ca1$export$99faa760c7908e4f)(this, era, year, month, day);
|
|
128
128
|
}
|
|
129
129
|
toJulianDay(date) {
|
|
130
130
|
let year = date.year;
|
|
131
131
|
if (date.era === 'BCE') year = 1 - year;
|
|
132
|
-
return $
|
|
132
|
+
return $97cfca9efd59523d$var$ceToJulianDay($97cfca9efd59523d$var$COPTIC_EPOCH, year, date.month, date.day);
|
|
133
133
|
}
|
|
134
134
|
getDaysInMonth(date) {
|
|
135
135
|
let year = date.year;
|
|
136
136
|
if (date.era === 'BCE') year = 1 - year;
|
|
137
|
-
return $
|
|
137
|
+
return $97cfca9efd59523d$var$getDaysInMonth(year, date.month);
|
|
138
138
|
}
|
|
139
139
|
isInverseEra(date) {
|
|
140
140
|
return date.era === 'BCE';
|
|
@@ -163,5 +163,5 @@ class $b956b2d7a6cf451f$export$fe6243cbe1a4b7c1 extends $b956b2d7a6cf451f$export
|
|
|
163
163
|
}
|
|
164
164
|
|
|
165
165
|
|
|
166
|
-
export {$
|
|
167
|
-
//# sourceMappingURL=EthiopicCalendar.
|
|
166
|
+
export {$97cfca9efd59523d$export$26ba6eab5e20cd7d as EthiopicCalendar, $97cfca9efd59523d$export$d72e0c37005a4914 as EthiopicAmeteAlemCalendar, $97cfca9efd59523d$export$fe6243cbe1a4b7c1 as CopticCalendar};
|
|
167
|
+
//# sourceMappingURL=EthiopicCalendar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"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","sources":["packages/@internationalized/date/src/calendars/EthiopicCalendar.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\nimport {AnyCalendarDate, Calendar, CalendarIdentifier} from '../types';\nimport {CalendarDate} from '../CalendarDate';\nimport {Mutable} from '../utils';\n\nconst ETHIOPIC_EPOCH = 1723856;\nconst COPTIC_EPOCH = 1824665;\n\n// The delta between Amete Alem 1 and Amete Mihret 1\n// AA 5501 = AM 1\nconst AMETE_MIHRET_DELTA = 5500;\n\nfunction ceToJulianDay(epoch: number, year: number, month: number, day: number): number {\n return (\n epoch + // difference from Julian epoch to 1,1,1\n 365 * year + // number of days from years\n Math.floor(year / 4) + // extra day of leap year\n 30 * (month - 1) + // number of days from months (1 based)\n day -\n 1 // number of days for present month (1 based)\n );\n}\n\nfunction julianDayToCE(epoch: number, jd: number) {\n let year = Math.floor((4 * (jd - epoch)) / 1461);\n let month = 1 + Math.floor((jd - ceToJulianDay(epoch, year, 1, 1)) / 30);\n let day = jd + 1 - ceToJulianDay(epoch, year, month, 1);\n return [year, month, day];\n}\n\nfunction getLeapDay(year: number) {\n return Math.floor((year % 4) / 3);\n}\n\nfunction getDaysInMonth(year: number, month: number) {\n // The Ethiopian and Coptic calendars have 13 months, 12 of 30 days each and\n // an intercalary month at the end of the year of 5 or 6 days, depending whether\n // the year is a leap year or not. The Leap Year follows the same rules as the\n // Julian Calendar so that the extra month always has six days in the year before\n // a Julian Leap Year.\n if (month % 13 !== 0) {\n // not intercalary month\n return 30;\n } else {\n // intercalary month 5 days + possible leap day\n return getLeapDay(year) + 5;\n }\n}\n\n/**\n * The Ethiopic calendar system is the official calendar used in Ethiopia.\n * It includes 12 months of 30 days each, plus 5 or 6 intercalary days depending\n * on whether it is a leap year. Two eras are supported: 'AA' and 'AM'.\n */\nexport class EthiopicCalendar implements Calendar {\n identifier: CalendarIdentifier = 'ethiopic';\n\n fromJulianDay(jd: number): CalendarDate {\n let [year, month, day] = julianDayToCE(ETHIOPIC_EPOCH, jd);\n let era = 'AM';\n if (year <= 0) {\n era = 'AA';\n year += AMETE_MIHRET_DELTA;\n }\n\n return new CalendarDate(this, era, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n let year = date.year;\n if (date.era === 'AA') {\n year -= AMETE_MIHRET_DELTA;\n }\n\n return ceToJulianDay(ETHIOPIC_EPOCH, year, date.month, date.day);\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n return getDaysInMonth(date.year, date.month);\n }\n\n getMonthsInYear(): number {\n return 13;\n }\n\n getDaysInYear(date: AnyCalendarDate): number {\n return 365 + getLeapDay(date.year);\n }\n\n getMaximumMonthsInYear(): number {\n return 13;\n }\n\n getMaximumDaysInMonth(): number {\n return 30;\n }\n\n getYearsInEra(date: AnyCalendarDate): number {\n // 9999-12-31 gregorian is 9992-20-02 ethiopic.\n // Round down to 9991 for the last full year.\n // AA 9999-01-01 ethiopic is 4506-09-30 gregorian.\n return date.era === 'AA' ? 9999 : 9991;\n }\n\n getEras(): string[] {\n return ['AA', 'AM'];\n }\n}\n\n/**\n * The Ethiopic (Amete Alem) calendar is the same as the modern Ethiopic calendar,\n * except years were measured from a different epoch. Only one era is supported: 'AA'.\n */\nexport class EthiopicAmeteAlemCalendar extends EthiopicCalendar {\n identifier: CalendarIdentifier = 'ethioaa'; // also known as 'ethiopic-amete-alem' in ICU\n\n fromJulianDay(jd: number): CalendarDate {\n let [year, month, day] = julianDayToCE(ETHIOPIC_EPOCH, jd);\n year += AMETE_MIHRET_DELTA;\n return new CalendarDate(this, 'AA', year, month, day);\n }\n\n getEras(): string[] {\n return ['AA'];\n }\n\n getYearsInEra(): number {\n // 9999-13-04 ethioaa is the maximum date, which is equivalent to 4506-09-29 gregorian.\n return 9999;\n }\n}\n\n/**\n * The Coptic calendar is similar to the Ethiopic calendar.\n * It includes 12 months of 30 days each, plus 5 or 6 intercalary days depending\n * on whether it is a leap year. Two eras are supported: 'BCE' and 'CE'.\n */\nexport class CopticCalendar extends EthiopicCalendar {\n identifier: CalendarIdentifier = 'coptic';\n\n fromJulianDay(jd: number): CalendarDate {\n let [year, month, day] = julianDayToCE(COPTIC_EPOCH, jd);\n let era = 'CE';\n if (year <= 0) {\n era = 'BCE';\n year = 1 - year;\n }\n\n return new CalendarDate(this, era, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n let year = date.year;\n if (date.era === 'BCE') {\n year = 1 - year;\n }\n\n return ceToJulianDay(COPTIC_EPOCH, year, date.month, date.day);\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n let year = date.year;\n if (date.era === 'BCE') {\n year = 1 - year;\n }\n\n return getDaysInMonth(year, date.month);\n }\n\n isInverseEra(date: AnyCalendarDate): boolean {\n return date.era === 'BCE';\n }\n\n balanceDate(date: Mutable<AnyCalendarDate>): void {\n if (date.year <= 0) {\n date.era = date.era === 'BCE' ? 'CE' : 'BCE';\n date.year = 1 - date.year;\n }\n }\n\n getEras(): string[] {\n return ['BCE', 'CE'];\n }\n\n getYearsInEra(date: AnyCalendarDate): number {\n // 9999-12-30 gregorian is 9716-02-20 coptic.\n // Round down to 9715 for the last full year.\n // BCE 9999-01-01 coptic is BC 9716-06-15 gregorian.\n return date.era === 'BCE' ? 9999 : 9715;\n }\n}\n"],"names":[],"version":3,"file":"EthiopicCalendar.mjs.map"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
var $
|
|
2
|
-
var $
|
|
1
|
+
var $c51b7e0106f45dea$exports = require("../CalendarDate.cjs");
|
|
2
|
+
var $09f945753a699862$exports = require("../utils.cjs");
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
function $parcel$export(e, n, v, s) {
|
|
6
6
|
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
$parcel$export(module.exports, "gregorianToJulianDay", ()
|
|
10
|
-
$parcel$export(module.exports, "getExtendedYear", ()
|
|
11
|
-
$parcel$export(module.exports, "isLeapYear", ()
|
|
12
|
-
$parcel$export(module.exports, "fromExtendedYear", ()
|
|
13
|
-
$parcel$export(module.exports, "GregorianCalendar", ()
|
|
9
|
+
$parcel$export(module.exports, "gregorianToJulianDay", function () { return $05031860ba2f881f$export$f297eb839006d339; });
|
|
10
|
+
$parcel$export(module.exports, "getExtendedYear", function () { return $05031860ba2f881f$export$c36e0ecb2d4fa69d; });
|
|
11
|
+
$parcel$export(module.exports, "isLeapYear", function () { return $05031860ba2f881f$export$553d7fa8e3805fc0; });
|
|
12
|
+
$parcel$export(module.exports, "fromExtendedYear", function () { return $05031860ba2f881f$export$4475b7e617eb123c; });
|
|
13
|
+
$parcel$export(module.exports, "GregorianCalendar", function () { return $05031860ba2f881f$export$80ee6245ec4f29ec; });
|
|
14
14
|
/*
|
|
15
15
|
* Copyright 2020 Adobe. All rights reserved.
|
|
16
16
|
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
@@ -25,22 +25,22 @@ $parcel$export(module.exports, "GregorianCalendar", () => $af14c9812fdceb33$expo
|
|
|
25
25
|
// Original licensing can be found in the NOTICE file in the root directory of this source tree.
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
const $
|
|
29
|
-
function $
|
|
30
|
-
year = $
|
|
28
|
+
const $05031860ba2f881f$var$EPOCH = 1721426; // 001/01/03 Julian C.E.
|
|
29
|
+
function $05031860ba2f881f$export$f297eb839006d339(era, year, month, day) {
|
|
30
|
+
year = $05031860ba2f881f$export$c36e0ecb2d4fa69d(era, year);
|
|
31
31
|
let y1 = year - 1;
|
|
32
32
|
let monthOffset = -2;
|
|
33
33
|
if (month <= 2) monthOffset = 0;
|
|
34
|
-
else if ($
|
|
35
|
-
return $
|
|
34
|
+
else if ($05031860ba2f881f$export$553d7fa8e3805fc0(year)) monthOffset = -1;
|
|
35
|
+
return $05031860ba2f881f$var$EPOCH - 1 + 365 * y1 + Math.floor(y1 / 4) - Math.floor(y1 / 100) + Math.floor(y1 / 400) + Math.floor((367 * month - 362) / 12 + monthOffset + day);
|
|
36
36
|
}
|
|
37
|
-
function $
|
|
37
|
+
function $05031860ba2f881f$export$553d7fa8e3805fc0(year) {
|
|
38
38
|
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
39
39
|
}
|
|
40
|
-
function $
|
|
40
|
+
function $05031860ba2f881f$export$c36e0ecb2d4fa69d(era, year) {
|
|
41
41
|
return era === 'BC' ? 1 - year : year;
|
|
42
42
|
}
|
|
43
|
-
function $
|
|
43
|
+
function $05031860ba2f881f$export$4475b7e617eb123c(year) {
|
|
44
44
|
let era = 'AD';
|
|
45
45
|
if (year <= 0) {
|
|
46
46
|
era = 'BC';
|
|
@@ -51,7 +51,7 @@ function $af14c9812fdceb33$export$4475b7e617eb123c(year) {
|
|
|
51
51
|
year
|
|
52
52
|
];
|
|
53
53
|
}
|
|
54
|
-
const $
|
|
54
|
+
const $05031860ba2f881f$var$daysInMonth = {
|
|
55
55
|
standard: [
|
|
56
56
|
31,
|
|
57
57
|
28,
|
|
@@ -81,39 +81,39 @@ const $af14c9812fdceb33$var$daysInMonth = {
|
|
|
81
81
|
31
|
|
82
82
|
]
|
|
83
83
|
};
|
|
84
|
-
class $
|
|
84
|
+
class $05031860ba2f881f$export$80ee6245ec4f29ec {
|
|
85
85
|
fromJulianDay(jd) {
|
|
86
86
|
let jd0 = jd;
|
|
87
|
-
let depoch = jd0 - $
|
|
87
|
+
let depoch = jd0 - $05031860ba2f881f$var$EPOCH;
|
|
88
88
|
let quadricent = Math.floor(depoch / 146097);
|
|
89
|
-
let dqc = (0, $
|
|
89
|
+
let dqc = (0, $09f945753a699862$exports.mod)(depoch, 146097);
|
|
90
90
|
let cent = Math.floor(dqc / 36524);
|
|
91
|
-
let dcent = (0, $
|
|
91
|
+
let dcent = (0, $09f945753a699862$exports.mod)(dqc, 36524);
|
|
92
92
|
let quad = Math.floor(dcent / 1461);
|
|
93
|
-
let dquad = (0, $
|
|
93
|
+
let dquad = (0, $09f945753a699862$exports.mod)(dcent, 1461);
|
|
94
94
|
let yindex = Math.floor(dquad / 365);
|
|
95
95
|
let extendedYear = quadricent * 400 + cent * 100 + quad * 4 + yindex + (cent !== 4 && yindex !== 4 ? 1 : 0);
|
|
96
|
-
let [era, year] = $
|
|
97
|
-
let yearDay = jd0 - $
|
|
96
|
+
let [era, year] = $05031860ba2f881f$export$4475b7e617eb123c(extendedYear);
|
|
97
|
+
let yearDay = jd0 - $05031860ba2f881f$export$f297eb839006d339(era, year, 1, 1);
|
|
98
98
|
let leapAdj = 2;
|
|
99
|
-
if (jd0 < $
|
|
100
|
-
else if ($
|
|
99
|
+
if (jd0 < $05031860ba2f881f$export$f297eb839006d339(era, year, 3, 1)) leapAdj = 0;
|
|
100
|
+
else if ($05031860ba2f881f$export$553d7fa8e3805fc0(year)) leapAdj = 1;
|
|
101
101
|
let month = Math.floor(((yearDay + leapAdj) * 12 + 373) / 367);
|
|
102
|
-
let day = jd0 - $
|
|
103
|
-
return new (0, $
|
|
102
|
+
let day = jd0 - $05031860ba2f881f$export$f297eb839006d339(era, year, month, 1) + 1;
|
|
103
|
+
return new (0, $c51b7e0106f45dea$exports.CalendarDate)(era, year, month, day);
|
|
104
104
|
}
|
|
105
105
|
toJulianDay(date) {
|
|
106
|
-
return $
|
|
106
|
+
return $05031860ba2f881f$export$f297eb839006d339(date.era, date.year, date.month, date.day);
|
|
107
107
|
}
|
|
108
108
|
getDaysInMonth(date) {
|
|
109
|
-
return $
|
|
109
|
+
return $05031860ba2f881f$var$daysInMonth[$05031860ba2f881f$export$553d7fa8e3805fc0(date.year) ? 'leapyear' : 'standard'][date.month - 1];
|
|
110
110
|
}
|
|
111
111
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
112
112
|
getMonthsInYear(date) {
|
|
113
113
|
return 12;
|
|
114
114
|
}
|
|
115
115
|
getDaysInYear(date) {
|
|
116
|
-
return $
|
|
116
|
+
return $05031860ba2f881f$export$553d7fa8e3805fc0(date.year) ? 366 : 365;
|
|
117
117
|
}
|
|
118
118
|
getMaximumMonthsInYear() {
|
|
119
119
|
return 12;
|
|
@@ -146,4 +146,4 @@ class $af14c9812fdceb33$export$80ee6245ec4f29ec {
|
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
|
|
149
|
-
//# sourceMappingURL=GregorianCalendar.
|
|
149
|
+
//# sourceMappingURL=GregorianCalendar.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"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","sources":["packages/@internationalized/date/src/calendars/GregorianCalendar.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\nimport {AnyCalendarDate, Calendar, CalendarIdentifier} from '../types';\nimport {CalendarDate} from '../CalendarDate';\nimport {mod, Mutable} from '../utils';\n\nconst EPOCH = 1721426; // 001/01/03 Julian C.E.\nexport function gregorianToJulianDay(\n era: string,\n year: number,\n month: number,\n day: number\n): number {\n year = getExtendedYear(era, year);\n\n let y1 = year - 1;\n let monthOffset = -2;\n if (month <= 2) {\n monthOffset = 0;\n } else if (isLeapYear(year)) {\n monthOffset = -1;\n }\n\n return (\n EPOCH -\n 1 +\n 365 * y1 +\n Math.floor(y1 / 4) -\n Math.floor(y1 / 100) +\n Math.floor(y1 / 400) +\n Math.floor((367 * month - 362) / 12 + monthOffset + day)\n );\n}\n\nexport function isLeapYear(year: number): boolean {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}\n\nexport function getExtendedYear(era: string, year: number): number {\n return era === 'BC' ? 1 - year : year;\n}\n\nexport function fromExtendedYear(year: number): [string, number] {\n let era = 'AD';\n if (year <= 0) {\n era = 'BC';\n year = 1 - year;\n }\n\n return [era, year];\n}\n\nconst daysInMonth = {\n standard: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n leapyear: [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\n};\n\n/**\n * The Gregorian calendar is the most commonly used calendar system in the world. It supports two\n * eras: BC, and AD. Years always contain 12 months, and 365 or 366 days depending on whether it is\n * a leap year.\n */\nexport class GregorianCalendar implements Calendar {\n identifier: CalendarIdentifier = 'gregory';\n\n fromJulianDay(jd: number): CalendarDate {\n let jd0 = jd;\n let depoch = jd0 - EPOCH;\n let quadricent = Math.floor(depoch / 146097);\n let dqc = mod(depoch, 146097);\n let cent = Math.floor(dqc / 36524);\n let dcent = mod(dqc, 36524);\n let quad = Math.floor(dcent / 1461);\n let dquad = mod(dcent, 1461);\n let yindex = Math.floor(dquad / 365);\n\n let extendedYear =\n quadricent * 400 + cent * 100 + quad * 4 + yindex + (cent !== 4 && yindex !== 4 ? 1 : 0);\n let [era, year] = fromExtendedYear(extendedYear);\n let yearDay = jd0 - gregorianToJulianDay(era, year, 1, 1);\n let leapAdj = 2;\n if (jd0 < gregorianToJulianDay(era, year, 3, 1)) {\n leapAdj = 0;\n } else if (isLeapYear(year)) {\n leapAdj = 1;\n }\n let month = Math.floor(((yearDay + leapAdj) * 12 + 373) / 367);\n let day = jd0 - gregorianToJulianDay(era, year, month, 1) + 1;\n\n return new CalendarDate(era, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n return gregorianToJulianDay(date.era, date.year, date.month, date.day);\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n return daysInMonth[isLeapYear(date.year) ? 'leapyear' : 'standard'][date.month - 1];\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getMonthsInYear(date: AnyCalendarDate): number {\n return 12;\n }\n\n getDaysInYear(date: AnyCalendarDate): number {\n return isLeapYear(date.year) ? 366 : 365;\n }\n\n getMaximumMonthsInYear(): number {\n return 12;\n }\n\n getMaximumDaysInMonth(): number {\n return 31;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getYearsInEra(date: AnyCalendarDate): number {\n return 9999;\n }\n\n getEras(): string[] {\n return ['BC', 'AD'];\n }\n\n isInverseEra(date: AnyCalendarDate): boolean {\n return date.era === 'BC';\n }\n\n balanceDate(date: Mutable<AnyCalendarDate>): void {\n if (date.year <= 0) {\n date.era = date.era === 'BC' ? 'AD' : 'BC';\n date.year = 1 - date.year;\n }\n }\n}\n"],"names":[],"version":3,"file":"GregorianCalendar.cjs.map"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {CalendarDate as $
|
|
2
|
-
import {mod as $
|
|
1
|
+
import {CalendarDate as $9a4e222e1bd2b190$export$99faa760c7908e4f} from "../CalendarDate.js";
|
|
2
|
+
import {mod as $1797f75f9a4d3bd4$export$842a2cf37af977e1} from "../utils.js";
|
|
3
3
|
|
|
4
4
|
/*
|
|
5
5
|
* Copyright 2020 Adobe. All rights reserved.
|
|
@@ -15,22 +15,22 @@ import {mod as $2b4dce13dd5a17fa$export$842a2cf37af977e1} from "./utils.module.j
|
|
|
15
15
|
// Original licensing can be found in the NOTICE file in the root directory of this source tree.
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
const $
|
|
19
|
-
function $
|
|
20
|
-
year = $
|
|
18
|
+
const $f25df78da1f6b40f$var$EPOCH = 1721426; // 001/01/03 Julian C.E.
|
|
19
|
+
function $f25df78da1f6b40f$export$f297eb839006d339(era, year, month, day) {
|
|
20
|
+
year = $f25df78da1f6b40f$export$c36e0ecb2d4fa69d(era, year);
|
|
21
21
|
let y1 = year - 1;
|
|
22
22
|
let monthOffset = -2;
|
|
23
23
|
if (month <= 2) monthOffset = 0;
|
|
24
|
-
else if ($
|
|
25
|
-
return $
|
|
24
|
+
else if ($f25df78da1f6b40f$export$553d7fa8e3805fc0(year)) monthOffset = -1;
|
|
25
|
+
return $f25df78da1f6b40f$var$EPOCH - 1 + 365 * y1 + Math.floor(y1 / 4) - Math.floor(y1 / 100) + Math.floor(y1 / 400) + Math.floor((367 * month - 362) / 12 + monthOffset + day);
|
|
26
26
|
}
|
|
27
|
-
function $
|
|
27
|
+
function $f25df78da1f6b40f$export$553d7fa8e3805fc0(year) {
|
|
28
28
|
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
29
29
|
}
|
|
30
|
-
function $
|
|
30
|
+
function $f25df78da1f6b40f$export$c36e0ecb2d4fa69d(era, year) {
|
|
31
31
|
return era === 'BC' ? 1 - year : year;
|
|
32
32
|
}
|
|
33
|
-
function $
|
|
33
|
+
function $f25df78da1f6b40f$export$4475b7e617eb123c(year) {
|
|
34
34
|
let era = 'AD';
|
|
35
35
|
if (year <= 0) {
|
|
36
36
|
era = 'BC';
|
|
@@ -41,7 +41,7 @@ function $3b62074eb05584b2$export$4475b7e617eb123c(year) {
|
|
|
41
41
|
year
|
|
42
42
|
];
|
|
43
43
|
}
|
|
44
|
-
const $
|
|
44
|
+
const $f25df78da1f6b40f$var$daysInMonth = {
|
|
45
45
|
standard: [
|
|
46
46
|
31,
|
|
47
47
|
28,
|
|
@@ -71,39 +71,39 @@ const $3b62074eb05584b2$var$daysInMonth = {
|
|
|
71
71
|
31
|
|
72
72
|
]
|
|
73
73
|
};
|
|
74
|
-
class $
|
|
74
|
+
class $f25df78da1f6b40f$export$80ee6245ec4f29ec {
|
|
75
75
|
fromJulianDay(jd) {
|
|
76
76
|
let jd0 = jd;
|
|
77
|
-
let depoch = jd0 - $
|
|
77
|
+
let depoch = jd0 - $f25df78da1f6b40f$var$EPOCH;
|
|
78
78
|
let quadricent = Math.floor(depoch / 146097);
|
|
79
|
-
let dqc = (0, $
|
|
79
|
+
let dqc = (0, $1797f75f9a4d3bd4$export$842a2cf37af977e1)(depoch, 146097);
|
|
80
80
|
let cent = Math.floor(dqc / 36524);
|
|
81
|
-
let dcent = (0, $
|
|
81
|
+
let dcent = (0, $1797f75f9a4d3bd4$export$842a2cf37af977e1)(dqc, 36524);
|
|
82
82
|
let quad = Math.floor(dcent / 1461);
|
|
83
|
-
let dquad = (0, $
|
|
83
|
+
let dquad = (0, $1797f75f9a4d3bd4$export$842a2cf37af977e1)(dcent, 1461);
|
|
84
84
|
let yindex = Math.floor(dquad / 365);
|
|
85
85
|
let extendedYear = quadricent * 400 + cent * 100 + quad * 4 + yindex + (cent !== 4 && yindex !== 4 ? 1 : 0);
|
|
86
|
-
let [era, year] = $
|
|
87
|
-
let yearDay = jd0 - $
|
|
86
|
+
let [era, year] = $f25df78da1f6b40f$export$4475b7e617eb123c(extendedYear);
|
|
87
|
+
let yearDay = jd0 - $f25df78da1f6b40f$export$f297eb839006d339(era, year, 1, 1);
|
|
88
88
|
let leapAdj = 2;
|
|
89
|
-
if (jd0 < $
|
|
90
|
-
else if ($
|
|
89
|
+
if (jd0 < $f25df78da1f6b40f$export$f297eb839006d339(era, year, 3, 1)) leapAdj = 0;
|
|
90
|
+
else if ($f25df78da1f6b40f$export$553d7fa8e3805fc0(year)) leapAdj = 1;
|
|
91
91
|
let month = Math.floor(((yearDay + leapAdj) * 12 + 373) / 367);
|
|
92
|
-
let day = jd0 - $
|
|
93
|
-
return new (0, $
|
|
92
|
+
let day = jd0 - $f25df78da1f6b40f$export$f297eb839006d339(era, year, month, 1) + 1;
|
|
93
|
+
return new (0, $9a4e222e1bd2b190$export$99faa760c7908e4f)(era, year, month, day);
|
|
94
94
|
}
|
|
95
95
|
toJulianDay(date) {
|
|
96
|
-
return $
|
|
96
|
+
return $f25df78da1f6b40f$export$f297eb839006d339(date.era, date.year, date.month, date.day);
|
|
97
97
|
}
|
|
98
98
|
getDaysInMonth(date) {
|
|
99
|
-
return $
|
|
99
|
+
return $f25df78da1f6b40f$var$daysInMonth[$f25df78da1f6b40f$export$553d7fa8e3805fc0(date.year) ? 'leapyear' : 'standard'][date.month - 1];
|
|
100
100
|
}
|
|
101
101
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
102
102
|
getMonthsInYear(date) {
|
|
103
103
|
return 12;
|
|
104
104
|
}
|
|
105
105
|
getDaysInYear(date) {
|
|
106
|
-
return $
|
|
106
|
+
return $f25df78da1f6b40f$export$553d7fa8e3805fc0(date.year) ? 366 : 365;
|
|
107
107
|
}
|
|
108
108
|
getMaximumMonthsInYear() {
|
|
109
109
|
return 12;
|
|
@@ -136,5 +136,5 @@ class $3b62074eb05584b2$export$80ee6245ec4f29ec {
|
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
|
|
139
|
-
export {$
|
|
140
|
-
//# sourceMappingURL=GregorianCalendar.
|
|
139
|
+
export {$f25df78da1f6b40f$export$f297eb839006d339 as gregorianToJulianDay, $f25df78da1f6b40f$export$c36e0ecb2d4fa69d as getExtendedYear, $f25df78da1f6b40f$export$553d7fa8e3805fc0 as isLeapYear, $f25df78da1f6b40f$export$4475b7e617eb123c as fromExtendedYear, $f25df78da1f6b40f$export$80ee6245ec4f29ec as GregorianCalendar};
|
|
140
|
+
//# sourceMappingURL=GregorianCalendar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"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","sources":["packages/@internationalized/date/src/calendars/GregorianCalendar.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\nimport {AnyCalendarDate, Calendar, CalendarIdentifier} from '../types';\nimport {CalendarDate} from '../CalendarDate';\nimport {mod, Mutable} from '../utils';\n\nconst EPOCH = 1721426; // 001/01/03 Julian C.E.\nexport function gregorianToJulianDay(\n era: string,\n year: number,\n month: number,\n day: number\n): number {\n year = getExtendedYear(era, year);\n\n let y1 = year - 1;\n let monthOffset = -2;\n if (month <= 2) {\n monthOffset = 0;\n } else if (isLeapYear(year)) {\n monthOffset = -1;\n }\n\n return (\n EPOCH -\n 1 +\n 365 * y1 +\n Math.floor(y1 / 4) -\n Math.floor(y1 / 100) +\n Math.floor(y1 / 400) +\n Math.floor((367 * month - 362) / 12 + monthOffset + day)\n );\n}\n\nexport function isLeapYear(year: number): boolean {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}\n\nexport function getExtendedYear(era: string, year: number): number {\n return era === 'BC' ? 1 - year : year;\n}\n\nexport function fromExtendedYear(year: number): [string, number] {\n let era = 'AD';\n if (year <= 0) {\n era = 'BC';\n year = 1 - year;\n }\n\n return [era, year];\n}\n\nconst daysInMonth = {\n standard: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n leapyear: [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\n};\n\n/**\n * The Gregorian calendar is the most commonly used calendar system in the world. It supports two\n * eras: BC, and AD. Years always contain 12 months, and 365 or 366 days depending on whether it is\n * a leap year.\n */\nexport class GregorianCalendar implements Calendar {\n identifier: CalendarIdentifier = 'gregory';\n\n fromJulianDay(jd: number): CalendarDate {\n let jd0 = jd;\n let depoch = jd0 - EPOCH;\n let quadricent = Math.floor(depoch / 146097);\n let dqc = mod(depoch, 146097);\n let cent = Math.floor(dqc / 36524);\n let dcent = mod(dqc, 36524);\n let quad = Math.floor(dcent / 1461);\n let dquad = mod(dcent, 1461);\n let yindex = Math.floor(dquad / 365);\n\n let extendedYear =\n quadricent * 400 + cent * 100 + quad * 4 + yindex + (cent !== 4 && yindex !== 4 ? 1 : 0);\n let [era, year] = fromExtendedYear(extendedYear);\n let yearDay = jd0 - gregorianToJulianDay(era, year, 1, 1);\n let leapAdj = 2;\n if (jd0 < gregorianToJulianDay(era, year, 3, 1)) {\n leapAdj = 0;\n } else if (isLeapYear(year)) {\n leapAdj = 1;\n }\n let month = Math.floor(((yearDay + leapAdj) * 12 + 373) / 367);\n let day = jd0 - gregorianToJulianDay(era, year, month, 1) + 1;\n\n return new CalendarDate(era, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n return gregorianToJulianDay(date.era, date.year, date.month, date.day);\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n return daysInMonth[isLeapYear(date.year) ? 'leapyear' : 'standard'][date.month - 1];\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getMonthsInYear(date: AnyCalendarDate): number {\n return 12;\n }\n\n getDaysInYear(date: AnyCalendarDate): number {\n return isLeapYear(date.year) ? 366 : 365;\n }\n\n getMaximumMonthsInYear(): number {\n return 12;\n }\n\n getMaximumDaysInMonth(): number {\n return 31;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getYearsInEra(date: AnyCalendarDate): number {\n return 9999;\n }\n\n getEras(): string[] {\n return ['BC', 'AD'];\n }\n\n isInverseEra(date: AnyCalendarDate): boolean {\n return date.era === 'BC';\n }\n\n balanceDate(date: Mutable<AnyCalendarDate>): void {\n if (date.year <= 0) {\n date.era = date.era === 'BC' ? 'AD' : 'BC';\n date.year = 1 - date.year;\n }\n }\n}\n"],"names":[],"version":3,"file":"GregorianCalendar.js.map"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {CalendarDate as $
|
|
2
|
-
import {mod as $
|
|
1
|
+
import {CalendarDate as $2aaf608024c21ca1$export$99faa760c7908e4f} from "../CalendarDate.mjs";
|
|
2
|
+
import {mod as $09ec6a572d60460f$export$842a2cf37af977e1} from "../utils.mjs";
|
|
3
3
|
|
|
4
4
|
/*
|
|
5
5
|
* Copyright 2020 Adobe. All rights reserved.
|
|
@@ -15,22 +15,22 @@ import {mod as $2b4dce13dd5a17fa$export$842a2cf37af977e1} from "./utils.mjs";
|
|
|
15
15
|
// Original licensing can be found in the NOTICE file in the root directory of this source tree.
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
const $
|
|
19
|
-
function $
|
|
20
|
-
year = $
|
|
18
|
+
const $93635573935797de$var$EPOCH = 1721426; // 001/01/03 Julian C.E.
|
|
19
|
+
function $93635573935797de$export$f297eb839006d339(era, year, month, day) {
|
|
20
|
+
year = $93635573935797de$export$c36e0ecb2d4fa69d(era, year);
|
|
21
21
|
let y1 = year - 1;
|
|
22
22
|
let monthOffset = -2;
|
|
23
23
|
if (month <= 2) monthOffset = 0;
|
|
24
|
-
else if ($
|
|
25
|
-
return $
|
|
24
|
+
else if ($93635573935797de$export$553d7fa8e3805fc0(year)) monthOffset = -1;
|
|
25
|
+
return $93635573935797de$var$EPOCH - 1 + 365 * y1 + Math.floor(y1 / 4) - Math.floor(y1 / 100) + Math.floor(y1 / 400) + Math.floor((367 * month - 362) / 12 + monthOffset + day);
|
|
26
26
|
}
|
|
27
|
-
function $
|
|
27
|
+
function $93635573935797de$export$553d7fa8e3805fc0(year) {
|
|
28
28
|
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
29
29
|
}
|
|
30
|
-
function $
|
|
30
|
+
function $93635573935797de$export$c36e0ecb2d4fa69d(era, year) {
|
|
31
31
|
return era === 'BC' ? 1 - year : year;
|
|
32
32
|
}
|
|
33
|
-
function $
|
|
33
|
+
function $93635573935797de$export$4475b7e617eb123c(year) {
|
|
34
34
|
let era = 'AD';
|
|
35
35
|
if (year <= 0) {
|
|
36
36
|
era = 'BC';
|
|
@@ -41,7 +41,7 @@ function $3b62074eb05584b2$export$4475b7e617eb123c(year) {
|
|
|
41
41
|
year
|
|
42
42
|
];
|
|
43
43
|
}
|
|
44
|
-
const $
|
|
44
|
+
const $93635573935797de$var$daysInMonth = {
|
|
45
45
|
standard: [
|
|
46
46
|
31,
|
|
47
47
|
28,
|
|
@@ -71,39 +71,39 @@ const $3b62074eb05584b2$var$daysInMonth = {
|
|
|
71
71
|
31
|
|
72
72
|
]
|
|
73
73
|
};
|
|
74
|
-
class $
|
|
74
|
+
class $93635573935797de$export$80ee6245ec4f29ec {
|
|
75
75
|
fromJulianDay(jd) {
|
|
76
76
|
let jd0 = jd;
|
|
77
|
-
let depoch = jd0 - $
|
|
77
|
+
let depoch = jd0 - $93635573935797de$var$EPOCH;
|
|
78
78
|
let quadricent = Math.floor(depoch / 146097);
|
|
79
|
-
let dqc = (0, $
|
|
79
|
+
let dqc = (0, $09ec6a572d60460f$export$842a2cf37af977e1)(depoch, 146097);
|
|
80
80
|
let cent = Math.floor(dqc / 36524);
|
|
81
|
-
let dcent = (0, $
|
|
81
|
+
let dcent = (0, $09ec6a572d60460f$export$842a2cf37af977e1)(dqc, 36524);
|
|
82
82
|
let quad = Math.floor(dcent / 1461);
|
|
83
|
-
let dquad = (0, $
|
|
83
|
+
let dquad = (0, $09ec6a572d60460f$export$842a2cf37af977e1)(dcent, 1461);
|
|
84
84
|
let yindex = Math.floor(dquad / 365);
|
|
85
85
|
let extendedYear = quadricent * 400 + cent * 100 + quad * 4 + yindex + (cent !== 4 && yindex !== 4 ? 1 : 0);
|
|
86
|
-
let [era, year] = $
|
|
87
|
-
let yearDay = jd0 - $
|
|
86
|
+
let [era, year] = $93635573935797de$export$4475b7e617eb123c(extendedYear);
|
|
87
|
+
let yearDay = jd0 - $93635573935797de$export$f297eb839006d339(era, year, 1, 1);
|
|
88
88
|
let leapAdj = 2;
|
|
89
|
-
if (jd0 < $
|
|
90
|
-
else if ($
|
|
89
|
+
if (jd0 < $93635573935797de$export$f297eb839006d339(era, year, 3, 1)) leapAdj = 0;
|
|
90
|
+
else if ($93635573935797de$export$553d7fa8e3805fc0(year)) leapAdj = 1;
|
|
91
91
|
let month = Math.floor(((yearDay + leapAdj) * 12 + 373) / 367);
|
|
92
|
-
let day = jd0 - $
|
|
93
|
-
return new (0, $
|
|
92
|
+
let day = jd0 - $93635573935797de$export$f297eb839006d339(era, year, month, 1) + 1;
|
|
93
|
+
return new (0, $2aaf608024c21ca1$export$99faa760c7908e4f)(era, year, month, day);
|
|
94
94
|
}
|
|
95
95
|
toJulianDay(date) {
|
|
96
|
-
return $
|
|
96
|
+
return $93635573935797de$export$f297eb839006d339(date.era, date.year, date.month, date.day);
|
|
97
97
|
}
|
|
98
98
|
getDaysInMonth(date) {
|
|
99
|
-
return $
|
|
99
|
+
return $93635573935797de$var$daysInMonth[$93635573935797de$export$553d7fa8e3805fc0(date.year) ? 'leapyear' : 'standard'][date.month - 1];
|
|
100
100
|
}
|
|
101
101
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
102
102
|
getMonthsInYear(date) {
|
|
103
103
|
return 12;
|
|
104
104
|
}
|
|
105
105
|
getDaysInYear(date) {
|
|
106
|
-
return $
|
|
106
|
+
return $93635573935797de$export$553d7fa8e3805fc0(date.year) ? 366 : 365;
|
|
107
107
|
}
|
|
108
108
|
getMaximumMonthsInYear() {
|
|
109
109
|
return 12;
|
|
@@ -136,5 +136,5 @@ class $3b62074eb05584b2$export$80ee6245ec4f29ec {
|
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
|
|
139
|
-
export {$
|
|
140
|
-
//# sourceMappingURL=GregorianCalendar.
|
|
139
|
+
export {$93635573935797de$export$f297eb839006d339 as gregorianToJulianDay, $93635573935797de$export$c36e0ecb2d4fa69d as getExtendedYear, $93635573935797de$export$553d7fa8e3805fc0 as isLeapYear, $93635573935797de$export$4475b7e617eb123c as fromExtendedYear, $93635573935797de$export$80ee6245ec4f29ec as GregorianCalendar};
|
|
140
|
+
//# sourceMappingURL=GregorianCalendar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"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","sources":["packages/@internationalized/date/src/calendars/GregorianCalendar.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\nimport {AnyCalendarDate, Calendar, CalendarIdentifier} from '../types';\nimport {CalendarDate} from '../CalendarDate';\nimport {mod, Mutable} from '../utils';\n\nconst EPOCH = 1721426; // 001/01/03 Julian C.E.\nexport function gregorianToJulianDay(\n era: string,\n year: number,\n month: number,\n day: number\n): number {\n year = getExtendedYear(era, year);\n\n let y1 = year - 1;\n let monthOffset = -2;\n if (month <= 2) {\n monthOffset = 0;\n } else if (isLeapYear(year)) {\n monthOffset = -1;\n }\n\n return (\n EPOCH -\n 1 +\n 365 * y1 +\n Math.floor(y1 / 4) -\n Math.floor(y1 / 100) +\n Math.floor(y1 / 400) +\n Math.floor((367 * month - 362) / 12 + monthOffset + day)\n );\n}\n\nexport function isLeapYear(year: number): boolean {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}\n\nexport function getExtendedYear(era: string, year: number): number {\n return era === 'BC' ? 1 - year : year;\n}\n\nexport function fromExtendedYear(year: number): [string, number] {\n let era = 'AD';\n if (year <= 0) {\n era = 'BC';\n year = 1 - year;\n }\n\n return [era, year];\n}\n\nconst daysInMonth = {\n standard: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n leapyear: [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\n};\n\n/**\n * The Gregorian calendar is the most commonly used calendar system in the world. It supports two\n * eras: BC, and AD. Years always contain 12 months, and 365 or 366 days depending on whether it is\n * a leap year.\n */\nexport class GregorianCalendar implements Calendar {\n identifier: CalendarIdentifier = 'gregory';\n\n fromJulianDay(jd: number): CalendarDate {\n let jd0 = jd;\n let depoch = jd0 - EPOCH;\n let quadricent = Math.floor(depoch / 146097);\n let dqc = mod(depoch, 146097);\n let cent = Math.floor(dqc / 36524);\n let dcent = mod(dqc, 36524);\n let quad = Math.floor(dcent / 1461);\n let dquad = mod(dcent, 1461);\n let yindex = Math.floor(dquad / 365);\n\n let extendedYear =\n quadricent * 400 + cent * 100 + quad * 4 + yindex + (cent !== 4 && yindex !== 4 ? 1 : 0);\n let [era, year] = fromExtendedYear(extendedYear);\n let yearDay = jd0 - gregorianToJulianDay(era, year, 1, 1);\n let leapAdj = 2;\n if (jd0 < gregorianToJulianDay(era, year, 3, 1)) {\n leapAdj = 0;\n } else if (isLeapYear(year)) {\n leapAdj = 1;\n }\n let month = Math.floor(((yearDay + leapAdj) * 12 + 373) / 367);\n let day = jd0 - gregorianToJulianDay(era, year, month, 1) + 1;\n\n return new CalendarDate(era, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n return gregorianToJulianDay(date.era, date.year, date.month, date.day);\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n return daysInMonth[isLeapYear(date.year) ? 'leapyear' : 'standard'][date.month - 1];\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getMonthsInYear(date: AnyCalendarDate): number {\n return 12;\n }\n\n getDaysInYear(date: AnyCalendarDate): number {\n return isLeapYear(date.year) ? 366 : 365;\n }\n\n getMaximumMonthsInYear(): number {\n return 12;\n }\n\n getMaximumDaysInMonth(): number {\n return 31;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getYearsInEra(date: AnyCalendarDate): number {\n return 9999;\n }\n\n getEras(): string[] {\n return ['BC', 'AD'];\n }\n\n isInverseEra(date: AnyCalendarDate): boolean {\n return date.era === 'BC';\n }\n\n balanceDate(date: Mutable<AnyCalendarDate>): void {\n if (date.year <= 0) {\n date.era = date.era === 'BC' ? 'AD' : 'BC';\n date.year = 1 - date.year;\n }\n }\n}\n"],"names":[],"version":3,"file":"GregorianCalendar.mjs.map"}
|