@wesantal/santali-calendar 1.0.2 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants/festivals.d.ts.map +1 -1
- package/dist/constants/festivals.js.map +1 -1
- package/dist/constants/months.js +2 -2
- package/dist/constants/moon.d.ts +4 -0
- package/dist/constants/moon.d.ts.map +1 -0
- package/dist/constants/moon.js +21 -0
- package/dist/constants/moon.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +49 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/astronomy.d.ts +5 -0
- package/dist/utils/astronomy.d.ts.map +1 -0
- package/dist/utils/astronomy.js +23 -0
- package/dist/utils/astronomy.js.map +1 -0
- package/dist/utils/calendar.d.ts +1 -0
- package/dist/utils/calendar.d.ts.map +1 -1
- package/dist/utils/calendar.js +16 -11
- package/dist/utils/calendar.js.map +1 -1
- package/dist/utils/moon-date.d.ts +24 -0
- package/dist/utils/moon-date.d.ts.map +1 -0
- package/dist/utils/moon-date.js +31 -0
- package/dist/utils/moon-date.js.map +1 -0
- package/dist/utils/moon-phase.d.ts +50 -0
- package/dist/utils/moon-phase.d.ts.map +1 -0
- package/dist/utils/moon-phase.js +128 -0
- package/dist/utils/moon-phase.js.map +1 -0
- package/package.json +59 -58
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"festivals.d.ts","sourceRoot":"","sources":["../../src/constants/festivals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,eAAO,MAAM,SAAS,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"festivals.d.ts","sourceRoot":"","sources":["../../src/constants/festivals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,eAAO,MAAM,SAAS,EAAE,eAAe,EA+BtC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"festivals.js","sourceRoot":"","sources":["../../src/constants/festivals.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAsB;IAC1C;QACE,EAAE,EAAE,8BAA8B;QAClC,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,sDAAsD;QACnE,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,UAAU;KACjB;
|
|
1
|
+
{"version":3,"file":"festivals.js","sourceRoot":"","sources":["../../src/constants/festivals.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAsB;IAC1C;QACE,EAAE,EAAE,8BAA8B;QAClC,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,sDAAsD;QACnE,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,WAAW;QACxB,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,WAAW;KAClB;IAED;QACE,EAAE,EAAE,yCAAyC;QAC7C,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,qDAAqD;QAClE,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,WAAW;KAClB;IAED;QACE,EAAE,EAAE,0CAA0C;QAC9C,IAAI,EAAE,mCAAmC;QACzC,WAAW,EAAE,0CAA0C;QACvD,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,UAAU;KACjB;CACF,CAAC"}
|
package/dist/constants/months.js
CHANGED
|
@@ -20,7 +20,7 @@ export const months = [
|
|
|
20
20
|
english: "Baisak",
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
|
-
days:
|
|
23
|
+
days: 29,
|
|
24
24
|
name: "ᱡᱷᱮᱸᱴ",
|
|
25
25
|
english: "Jhent",
|
|
26
26
|
},
|
|
@@ -55,7 +55,7 @@ export const months = [
|
|
|
55
55
|
english: "Aghan",
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
|
-
days:
|
|
58
|
+
days: 30,
|
|
59
59
|
name: "ᱯᱩᱥ",
|
|
60
60
|
english: "Pus",
|
|
61
61
|
},
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moon.d.ts","sourceRoot":"","sources":["../../src/constants/moon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEjE,eAAO,MAAM,gBAAgB,EAAE,aAAa,EASlC,CAAC;AAEX,eAAO,MAAM,gBAAgB,EAAE,aAAa,EASlC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const MOON_PHASE_NAMES = [
|
|
2
|
+
"New Moon",
|
|
3
|
+
"Waxing Crescent",
|
|
4
|
+
"First Quarter",
|
|
5
|
+
"Waxing Gibbous",
|
|
6
|
+
"Full Moon",
|
|
7
|
+
"Waning Gibbous",
|
|
8
|
+
"Last Quarter",
|
|
9
|
+
"Waning Crescent",
|
|
10
|
+
];
|
|
11
|
+
export const MOON_PHASE_ICONS = [
|
|
12
|
+
"🌑",
|
|
13
|
+
"🌒",
|
|
14
|
+
"🌓",
|
|
15
|
+
"🌔",
|
|
16
|
+
"🌕",
|
|
17
|
+
"🌖",
|
|
18
|
+
"🌗",
|
|
19
|
+
"🌘",
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=moon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moon.js","sourceRoot":"","sources":["../../src/constants/moon.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,UAAU;IACV,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,WAAW;IACX,gBAAgB;IAChB,cAAc;IACd,iBAAiB;CACT,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;CACI,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,9 @@ export * from "./constants/festivals.js";
|
|
|
2
2
|
export * from "./constants/months.js";
|
|
3
3
|
export * from "./constants/week-days.js";
|
|
4
4
|
export * from "./types/index.js";
|
|
5
|
+
export * from "./utils/astronomy.js";
|
|
5
6
|
export * from "./utils/calendar.js";
|
|
6
7
|
export * from "./utils/leap-year.js";
|
|
8
|
+
export * from "./utils/moon-phase.js";
|
|
7
9
|
export * from "./utils/numeral.js";
|
|
8
10
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,9 @@ export * from "./constants/festivals.js";
|
|
|
2
2
|
export * from "./constants/months.js";
|
|
3
3
|
export * from "./constants/week-days.js";
|
|
4
4
|
export * from "./types/index.js";
|
|
5
|
+
export * from "./utils/astronomy.js";
|
|
5
6
|
export * from "./utils/calendar.js";
|
|
6
7
|
export * from "./utils/leap-year.js";
|
|
8
|
+
export * from "./utils/moon-phase.js";
|
|
7
9
|
export * from "./utils/numeral.js";
|
|
8
10
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import { MoonIllumination } from "suncalc";
|
|
2
|
+
export type DateTime = Date | string | number;
|
|
1
3
|
export type WeekDay = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday";
|
|
4
|
+
export type SantaliWeekDay = "ᱥᱤᱸᱜᱤ" | "ᱚᱛᱮ" | "ᱵᱟᱞᱮ" | "ᱥᱟᱹᱜᱩᱱ" | "ᱥᱟᱹᱨᱫᱤ" | "ᱡᱟᱹᱨᱩᱢ" | "ᱧᱩᱦᱩᱢ";
|
|
2
5
|
export interface SantaliWeek {
|
|
3
|
-
name:
|
|
6
|
+
name: SantaliWeekDay;
|
|
4
7
|
english: string;
|
|
5
8
|
}
|
|
6
9
|
export interface SantaliFestival {
|
|
@@ -40,6 +43,7 @@ export interface SantaliCalendarDay {
|
|
|
40
43
|
isToday: boolean;
|
|
41
44
|
weekDay: WeekDay;
|
|
42
45
|
isCurrentMonth: boolean;
|
|
46
|
+
santaliWeekDay: SantaliWeekDay;
|
|
43
47
|
}
|
|
44
48
|
export type SantaliCalendarDayCell = SantaliCalendarDay | null;
|
|
45
49
|
export interface SantaliCalendarMonth {
|
|
@@ -49,6 +53,8 @@ export interface SantaliCalendarMonth {
|
|
|
49
53
|
totalDays: number;
|
|
50
54
|
startDate: string;
|
|
51
55
|
description?: string;
|
|
56
|
+
newMoonPhase: MoonPhase;
|
|
57
|
+
fullMoonPhase: MoonPhase;
|
|
52
58
|
days: SantaliCalendarDayCell[];
|
|
53
59
|
}
|
|
54
60
|
export interface SantaliCalendarYear {
|
|
@@ -58,4 +64,46 @@ export interface SantaliCalendarYear {
|
|
|
58
64
|
currentMonthIndex: number;
|
|
59
65
|
months: SantaliCalendarMonth[];
|
|
60
66
|
}
|
|
67
|
+
export type MoonPhaseIcon = "🌑" | "🌒" | "🌓" | "🌔" | "🌕" | "🌖" | "🌗" | "🌘";
|
|
68
|
+
export type MoonPhaseName = "New Moon" | "Waxing Crescent" | "First Quarter" | "Waxing Gibbous" | "Full Moon" | "Waning Gibbous" | "Last Quarter" | "Waning Crescent";
|
|
69
|
+
export interface MoonPhase {
|
|
70
|
+
date: string;
|
|
71
|
+
icon: MoonPhaseIcon;
|
|
72
|
+
name: MoonPhaseName;
|
|
73
|
+
description: string;
|
|
74
|
+
illumination: MoonIllumination;
|
|
75
|
+
}
|
|
76
|
+
export type LunarQuarterType = "NEW_MOON" | "FIRST_QUARTER" | "FULL_MOON" | "LAST_QUARTER";
|
|
77
|
+
export interface LunarQuarter {
|
|
78
|
+
type: LunarQuarterType;
|
|
79
|
+
/**
|
|
80
|
+
* Astronomy Engine quarter number.
|
|
81
|
+
*
|
|
82
|
+
* 0 = New Moon
|
|
83
|
+
* 1 = First Quarter
|
|
84
|
+
* 2 = Full Moon
|
|
85
|
+
* 3 = Last Quarter
|
|
86
|
+
*/
|
|
87
|
+
quarter: number;
|
|
88
|
+
/**
|
|
89
|
+
* Exact astronomical UTC time.
|
|
90
|
+
*/
|
|
91
|
+
date: Date;
|
|
92
|
+
/**
|
|
93
|
+
* ISO UTC date-time.
|
|
94
|
+
*/
|
|
95
|
+
dateTime: string;
|
|
96
|
+
/**
|
|
97
|
+
* Calendar date in YYYY-MM-DD.
|
|
98
|
+
*/
|
|
99
|
+
dateString: string;
|
|
100
|
+
name: string;
|
|
101
|
+
icon: string;
|
|
102
|
+
}
|
|
103
|
+
export interface LunarEvents {
|
|
104
|
+
newMoon?: LunarQuarter;
|
|
105
|
+
firstQuarter?: LunarQuarter;
|
|
106
|
+
fullMoon?: LunarQuarter;
|
|
107
|
+
lastQuarter?: LunarQuarter;
|
|
108
|
+
}
|
|
61
109
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GACf,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,WAAW,GACX,UAAU,GACV,QAAQ,GACR,UAAU,CAAC;AAEf,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DateTime, MoonPhase, MoonPhaseName } from "../types/index.js";
|
|
2
|
+
export declare function searchMoonPhase(name: MoonPhaseName, date: DateTime, totalDays: number): MoonPhase;
|
|
3
|
+
export declare function getNextNewMoon(date?: DateTime): MoonPhase;
|
|
4
|
+
export declare function getNextFullMoon(date?: DateTime): MoonPhase;
|
|
5
|
+
//# sourceMappingURL=astronomy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"astronomy.d.ts","sourceRoot":"","sources":["../../src/utils/astronomy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvE,wBAAgB,eAAe,CAC7B,IAAI,EAAE,aAAa,EACnB,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,MAAM,GAChB,SAAS,CAeX;AAED,wBAAgB,cAAc,CAAC,IAAI,GAAE,QAAqB,aAEzD;AAED,wBAAgB,eAAe,CAAC,IAAI,GAAE,QAAqB,aAE1D"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { addDays } from "date-fns";
|
|
2
|
+
import { getMoonPhase } from "./moon-phase.js";
|
|
3
|
+
export function searchMoonPhase(name, date, totalDays) {
|
|
4
|
+
let moonPhase = undefined;
|
|
5
|
+
let searchedDays = 0;
|
|
6
|
+
while (searchedDays !== totalDays || !moonPhase) {
|
|
7
|
+
const startDate = addDays(date, searchedDays);
|
|
8
|
+
const currentMoonPhase = getMoonPhase(startDate);
|
|
9
|
+
if (currentMoonPhase.name === name) {
|
|
10
|
+
moonPhase = currentMoonPhase;
|
|
11
|
+
break;
|
|
12
|
+
}
|
|
13
|
+
searchedDays++;
|
|
14
|
+
}
|
|
15
|
+
return moonPhase;
|
|
16
|
+
}
|
|
17
|
+
export function getNextNewMoon(date = new Date()) {
|
|
18
|
+
return searchMoonPhase("New Moon", date, 40);
|
|
19
|
+
}
|
|
20
|
+
export function getNextFullMoon(date = new Date()) {
|
|
21
|
+
return searchMoonPhase("Full Moon", date, 40);
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=astronomy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"astronomy.js","sourceRoot":"","sources":["../../src/utils/astronomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,UAAU,eAAe,CAC7B,IAAmB,EACnB,IAAc,EACd,SAAiB;IAEjB,IAAI,SAAS,GAA0B,SAAS,CAAC;IACjD,IAAI,YAAY,GAAW,CAAC,CAAC;IAE7B,OAAO,YAAY,KAAK,SAAS,IAAI,CAAC,SAAS,EAAE,CAAC;QAChD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,MAAM,gBAAgB,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,gBAAgB,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACnC,SAAS,GAAG,gBAAgB,CAAC;YAC7B,MAAM;QACR,CAAC;QACD,YAAY,EAAE,CAAC;IACjB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAiB,IAAI,IAAI,EAAE;IACxD,OAAO,eAAe,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAiB,IAAI,IAAI,EAAE;IACzD,OAAO,eAAe,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;AAChD,CAAC"}
|
package/dist/utils/calendar.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SantaliCalendarMonth, SantaliCalendarYear, SantaliMonth, TodaySantaliDate } from "../types/index.js";
|
|
2
|
+
export declare function formatToDateString(date: Date | string): string;
|
|
2
3
|
export declare function buildNormalMonth(month: SantaliMonth, previousMonth?: SantaliMonth, nextMonth?: SantaliMonth): SantaliCalendarMonth;
|
|
3
4
|
export declare function formatDateShort(iso: string): string;
|
|
4
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/utils/calendar.ts"],"names":[],"mappings":"AAUA,OAAO,EAGL,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,
|
|
1
|
+
{"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/utils/calendar.ts"],"names":[],"mappings":"AAUA,OAAO,EAGL,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EAEZ,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;AAiB3B,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAE9D;AAkBD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,YAAY,EACnB,aAAa,CAAC,EAAE,YAAY,EAC5B,SAAS,CAAC,EAAE,YAAY,GACvB,oBAAoB,CAwDtB;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMnD;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAOrC;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,UAAU,SAAO,EACjB,UAAU,GAAE,MAAyB,GACpC,MAAM,CAkBR;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,YAAY,EAAE,CAmChB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,CAuC7D;AAMD;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,oBAAoB,CAetB;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,gBAAgB,CAkE7D;AAMD;;GAEG;AACH,wBAAgB,QAAQ,IAAI,gBAAgB,CAE3C"}
|
package/dist/utils/calendar.js
CHANGED
|
@@ -1,18 +1,27 @@
|
|
|
1
1
|
import { addDays, differenceInDays, formatDate, getDay, isToday, toDate, } from "date-fns";
|
|
2
2
|
import { months } from "../constants/months.js";
|
|
3
|
-
import { weekDays } from "../constants/week-days.js";
|
|
3
|
+
import { santaliWeeks, weekDays } from "../constants/week-days.js";
|
|
4
|
+
import { getNextFullMoon, getNextNewMoon } from "./astronomy.js";
|
|
4
5
|
import { isLeapYear, METONIC_CYCLE_START, YEAR_ANCHOR_DATE, } from "./leap-year.js";
|
|
5
6
|
import { toOlChikiNumeral } from "./numeral.js";
|
|
6
7
|
function getWeekDay(date) {
|
|
7
8
|
return weekDays[date.getDay()];
|
|
8
9
|
}
|
|
10
|
+
function getSantaliWeekDay(date) {
|
|
11
|
+
return santaliWeeks[date.getDay()]?.name;
|
|
12
|
+
}
|
|
13
|
+
export function formatToDateString(date) {
|
|
14
|
+
return formatDate(date, "yyyy-MM-dd");
|
|
15
|
+
}
|
|
9
16
|
function createCalendarDay(day, date, isCurrentMonth) {
|
|
10
17
|
return {
|
|
11
18
|
day: toOlChikiNumeral(day),
|
|
12
|
-
date:
|
|
19
|
+
date: formatToDateString(date),
|
|
13
20
|
isCurrentMonth,
|
|
14
|
-
weekDay: getWeekDay(date),
|
|
15
21
|
isToday: isToday(date),
|
|
22
|
+
weekDay: getWeekDay(date),
|
|
23
|
+
// moonPhase: getMoonPhase(date),
|
|
24
|
+
santaliWeekDay: getSantaliWeekDay(date),
|
|
16
25
|
};
|
|
17
26
|
}
|
|
18
27
|
export function buildNormalMonth(month, previousMonth, nextMonth) {
|
|
@@ -27,13 +36,7 @@ export function buildNormalMonth(month, previousMonth, nextMonth) {
|
|
|
27
36
|
const firstPreviousDay = previousMonth.days - startDow + 1;
|
|
28
37
|
for (let day = firstPreviousDay; day <= previousMonth.days; day++) {
|
|
29
38
|
const currentDate = addDays(previousStart, day - 1);
|
|
30
|
-
cells.push(
|
|
31
|
-
day: toOlChikiNumeral(day),
|
|
32
|
-
isToday: false,
|
|
33
|
-
isCurrentMonth: false,
|
|
34
|
-
weekDay: getWeekDay(currentDate),
|
|
35
|
-
date: formatDate(currentDate, "yyyy-MM-dd"),
|
|
36
|
-
});
|
|
39
|
+
cells.push(createCalendarDay(day, currentDate, false));
|
|
37
40
|
}
|
|
38
41
|
}
|
|
39
42
|
else {
|
|
@@ -66,6 +69,8 @@ export function buildNormalMonth(month, previousMonth, nextMonth) {
|
|
|
66
69
|
...month,
|
|
67
70
|
days: cells,
|
|
68
71
|
totalDays: month.days,
|
|
72
|
+
newMoonPhase: getNextNewMoon(month.startDate),
|
|
73
|
+
fullMoonPhase: getNextFullMoon(month.startDate),
|
|
69
74
|
};
|
|
70
75
|
}
|
|
71
76
|
export function formatDateShort(iso) {
|
|
@@ -186,8 +191,8 @@ export function buildMonths(year, yearStartDate) {
|
|
|
186
191
|
days: sarchaDays,
|
|
187
192
|
name: "ᱥᱟᱨᱪᱟ",
|
|
188
193
|
english: "Sarcha",
|
|
189
|
-
startDate: startDate.toISOString(),
|
|
190
194
|
endDate: endDate.toISOString(),
|
|
195
|
+
startDate: startDate.toISOString(),
|
|
191
196
|
});
|
|
192
197
|
}
|
|
193
198
|
return yearMonths;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../src/utils/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,OAAO,EACP,MAAM,GACP,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../src/utils/calendar.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the IST noon for a given date
|
|
3
|
+
* @param year The year
|
|
4
|
+
* @param month The month
|
|
5
|
+
* @param day The day
|
|
6
|
+
* @returns The IST noon date
|
|
7
|
+
*/
|
|
8
|
+
export declare function getISTNoon(year: number, month: number, day: number): Date;
|
|
9
|
+
/**
|
|
10
|
+
* Santali calendar lunar observation cutoff.
|
|
11
|
+
*
|
|
12
|
+
* The traditional calendar day/month decision is evaluated at
|
|
13
|
+
* 17:00 IST (5:00 PM Indian Standard Time).
|
|
14
|
+
*
|
|
15
|
+
* IST = UTC +05:30
|
|
16
|
+
* 17:00 IST = 11:30 UTC
|
|
17
|
+
*
|
|
18
|
+
* @param year Gregorian year
|
|
19
|
+
* @param month JavaScript month index (0-11)
|
|
20
|
+
* @param day Gregorian day of month
|
|
21
|
+
* @returns Date representing 17:00 IST
|
|
22
|
+
*/
|
|
23
|
+
export declare function getISTCutoff(year: number, month: number, day: number): Date;
|
|
24
|
+
//# sourceMappingURL=moon-date.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moon-date.d.ts","sourceRoot":"","sources":["../../src/utils/moon-date.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAIzE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAG3E"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the IST noon for a given date
|
|
3
|
+
* @param year The year
|
|
4
|
+
* @param month The month
|
|
5
|
+
* @param day The day
|
|
6
|
+
* @returns The IST noon date
|
|
7
|
+
*/
|
|
8
|
+
export function getISTNoon(year, month, day) {
|
|
9
|
+
// IST = UTC + 5:30
|
|
10
|
+
// 12:00 PM IST = 06:30 AM UTC
|
|
11
|
+
return new Date(Date.UTC(year, month, day, 6, 30, 0, 0));
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Santali calendar lunar observation cutoff.
|
|
15
|
+
*
|
|
16
|
+
* The traditional calendar day/month decision is evaluated at
|
|
17
|
+
* 17:00 IST (5:00 PM Indian Standard Time).
|
|
18
|
+
*
|
|
19
|
+
* IST = UTC +05:30
|
|
20
|
+
* 17:00 IST = 11:30 UTC
|
|
21
|
+
*
|
|
22
|
+
* @param year Gregorian year
|
|
23
|
+
* @param month JavaScript month index (0-11)
|
|
24
|
+
* @param day Gregorian day of month
|
|
25
|
+
* @returns Date representing 17:00 IST
|
|
26
|
+
*/
|
|
27
|
+
export function getISTCutoff(year, month, day) {
|
|
28
|
+
// 17:00 IST = 11:30 UTC
|
|
29
|
+
return new Date(Date.UTC(year, month, day, 11, 30, 0, 0));
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=moon-date.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moon-date.js","sourceRoot":"","sources":["../../src/utils/moon-date.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW;IACjE,mBAAmB;IACnB,8BAA8B;IAC9B,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW;IACnE,wBAAwB;IACxB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as SunCalc from "suncalc";
|
|
2
|
+
import { DateTime, MoonPhase, MoonPhaseIcon, MoonPhaseName } from "../types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Get the moon phase index for a given phase
|
|
5
|
+
* @param phase The moon phase
|
|
6
|
+
* @returns The moon phase index
|
|
7
|
+
*/
|
|
8
|
+
export declare function getMoonPhaseIndex(phase: number): number;
|
|
9
|
+
/**
|
|
10
|
+
* Get the moon phase name for a given illumination
|
|
11
|
+
* @param illumination The moon illumination
|
|
12
|
+
* @returns The moon phase name
|
|
13
|
+
*/
|
|
14
|
+
export declare function getMoonPhaseName(illumination: SunCalc.MoonIllumination): MoonPhaseName;
|
|
15
|
+
/**
|
|
16
|
+
* Get the moon phase icon for a given illumination
|
|
17
|
+
* @param illumination The moon illumination
|
|
18
|
+
* @returns The moon phase icon
|
|
19
|
+
*/
|
|
20
|
+
export declare function getMoonPhaseIcon(illumination: SunCalc.MoonIllumination): MoonPhaseIcon;
|
|
21
|
+
/**
|
|
22
|
+
* Get the moon phase description for a given illumination
|
|
23
|
+
* @param illumination The moon illumination
|
|
24
|
+
* @returns The moon phase description
|
|
25
|
+
*/
|
|
26
|
+
export declare function getMoonPhaseDescription(illumination: SunCalc.MoonIllumination): string;
|
|
27
|
+
/**
|
|
28
|
+
* Get the moon phase for a given date
|
|
29
|
+
* @param date The date to get the moon phase for
|
|
30
|
+
* @returns The moon phase
|
|
31
|
+
*/
|
|
32
|
+
export declare function getMoonPhase(date: Date): MoonPhase;
|
|
33
|
+
/**
|
|
34
|
+
* Get sunrise and sunset times for a given date and location
|
|
35
|
+
* @param date The date to get sunrise and sunset times for
|
|
36
|
+
* @param latitude The latitude of the location
|
|
37
|
+
* @param longitude The longitude of the location
|
|
38
|
+
* @returns The sunrise and sunset times
|
|
39
|
+
*/
|
|
40
|
+
export declare function getSunriseAndSunset(date: Date, latitude: number, longitude: number): SunCalc.SunTimes;
|
|
41
|
+
/**
|
|
42
|
+
* Get moon times for a given date and location
|
|
43
|
+
* @param date The date to get moon times for
|
|
44
|
+
* @param latitude The latitude of the location
|
|
45
|
+
* @param longitude The longitude of the location
|
|
46
|
+
* @returns The moon times
|
|
47
|
+
*/
|
|
48
|
+
export declare function getMoonTimes(date: Date, latitude: number, longitude: number): SunCalc.MoonTimes;
|
|
49
|
+
export declare function getLunarPhases(startDate: DateTime, endDate: DateTime): Map<string, MoonPhase>;
|
|
50
|
+
//# sourceMappingURL=moon-phase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moon-phase.d.ts","sourceRoot":"","sources":["../../src/utils/moon-phase.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EACL,QAAQ,EACR,SAAS,EACT,aAAa,EACb,aAAa,EACd,MAAM,mBAAmB,CAAC;AAI3B;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,OAAO,CAAC,gBAAgB,GACrC,aAAa,CAUf;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,OAAO,CAAC,gBAAgB,GACrC,aAAa,CAUf;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,OAAO,CAAC,gBAAgB,GACrC,MAAM,CAUR;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAgBlD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAElB;AAED;;;;;;GAMG;AAEH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,SAAS,CAEnB;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,0BASpE"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { addDays, differenceInDays } from "date-fns";
|
|
2
|
+
import * as SunCalc from "suncalc";
|
|
3
|
+
import { formatToDateString } from "./calendar.js";
|
|
4
|
+
import { getISTCutoff } from "./moon-date.js";
|
|
5
|
+
/**
|
|
6
|
+
* Get the moon phase index for a given phase
|
|
7
|
+
* @param phase The moon phase
|
|
8
|
+
* @returns The moon phase index
|
|
9
|
+
*/
|
|
10
|
+
export function getMoonPhaseIndex(phase) {
|
|
11
|
+
return Math.round(phase * 8) % 8;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Get the moon phase name for a given illumination
|
|
15
|
+
* @param illumination The moon illumination
|
|
16
|
+
* @returns The moon phase name
|
|
17
|
+
*/
|
|
18
|
+
export function getMoonPhaseName(illumination) {
|
|
19
|
+
const phase = illumination.phase;
|
|
20
|
+
if (phase < 0.03)
|
|
21
|
+
return "New Moon";
|
|
22
|
+
if (phase < 0.22)
|
|
23
|
+
return "Waxing Crescent";
|
|
24
|
+
if (phase < 0.28)
|
|
25
|
+
return "First Quarter";
|
|
26
|
+
if (phase < 0.47)
|
|
27
|
+
return "Waxing Gibbous";
|
|
28
|
+
if (phase < 0.53)
|
|
29
|
+
return "Full Moon";
|
|
30
|
+
if (phase < 0.72)
|
|
31
|
+
return "Waning Gibbous";
|
|
32
|
+
if (phase < 0.78)
|
|
33
|
+
return "Last Quarter";
|
|
34
|
+
return "Waning Crescent";
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Get the moon phase icon for a given illumination
|
|
38
|
+
* @param illumination The moon illumination
|
|
39
|
+
* @returns The moon phase icon
|
|
40
|
+
*/
|
|
41
|
+
export function getMoonPhaseIcon(illumination) {
|
|
42
|
+
const phase = illumination.phase;
|
|
43
|
+
if (phase < 0.03)
|
|
44
|
+
return "🌑";
|
|
45
|
+
if (phase < 0.22)
|
|
46
|
+
return "🌒";
|
|
47
|
+
if (phase < 0.28)
|
|
48
|
+
return "🌓";
|
|
49
|
+
if (phase < 0.47)
|
|
50
|
+
return "🌔";
|
|
51
|
+
if (phase < 0.53)
|
|
52
|
+
return "🌕";
|
|
53
|
+
if (phase < 0.72)
|
|
54
|
+
return "🌖";
|
|
55
|
+
if (phase < 0.78)
|
|
56
|
+
return "🌗";
|
|
57
|
+
return "🌘";
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Get the moon phase description for a given illumination
|
|
61
|
+
* @param illumination The moon illumination
|
|
62
|
+
* @returns The moon phase description
|
|
63
|
+
*/
|
|
64
|
+
export function getMoonPhaseDescription(illumination) {
|
|
65
|
+
const phase = illumination.phase;
|
|
66
|
+
if (phase < 0.03)
|
|
67
|
+
return "The moon is not visible";
|
|
68
|
+
if (phase < 0.22)
|
|
69
|
+
return "The moon is waxing crescent";
|
|
70
|
+
if (phase < 0.28)
|
|
71
|
+
return "The moon is first quarter";
|
|
72
|
+
if (phase < 0.47)
|
|
73
|
+
return "The moon is waxing gibbous";
|
|
74
|
+
if (phase < 0.53)
|
|
75
|
+
return "The moon is full";
|
|
76
|
+
if (phase < 0.72)
|
|
77
|
+
return "The moon is waning gibbous";
|
|
78
|
+
if (phase < 0.78)
|
|
79
|
+
return "The moon is last quarter";
|
|
80
|
+
return "The moon is waning crescent";
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get the moon phase for a given date
|
|
84
|
+
* @param date The date to get the moon phase for
|
|
85
|
+
* @returns The moon phase
|
|
86
|
+
*/
|
|
87
|
+
export function getMoonPhase(date) {
|
|
88
|
+
const cutoffDate = getISTCutoff(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate());
|
|
89
|
+
const illumination = SunCalc.getMoonIllumination(cutoffDate);
|
|
90
|
+
return {
|
|
91
|
+
date: formatToDateString(cutoffDate),
|
|
92
|
+
name: getMoonPhaseName(illumination),
|
|
93
|
+
icon: getMoonPhaseIcon(illumination),
|
|
94
|
+
description: getMoonPhaseDescription(illumination),
|
|
95
|
+
illumination,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get sunrise and sunset times for a given date and location
|
|
100
|
+
* @param date The date to get sunrise and sunset times for
|
|
101
|
+
* @param latitude The latitude of the location
|
|
102
|
+
* @param longitude The longitude of the location
|
|
103
|
+
* @returns The sunrise and sunset times
|
|
104
|
+
*/
|
|
105
|
+
export function getSunriseAndSunset(date, latitude, longitude) {
|
|
106
|
+
return SunCalc.getTimes(date, latitude, longitude);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Get moon times for a given date and location
|
|
110
|
+
* @param date The date to get moon times for
|
|
111
|
+
* @param latitude The latitude of the location
|
|
112
|
+
* @param longitude The longitude of the location
|
|
113
|
+
* @returns The moon times
|
|
114
|
+
*/
|
|
115
|
+
export function getMoonTimes(date, latitude, longitude) {
|
|
116
|
+
return SunCalc.getMoonTimes(date, latitude, longitude);
|
|
117
|
+
}
|
|
118
|
+
export function getLunarPhases(startDate, endDate) {
|
|
119
|
+
const lunarEventMap = new Map();
|
|
120
|
+
const days = differenceInDays(endDate, startDate);
|
|
121
|
+
for (let i = 0; i < days; i++) {
|
|
122
|
+
const date = addDays(startDate, i);
|
|
123
|
+
const moonPhase = getMoonPhase(date);
|
|
124
|
+
lunarEventMap.set(formatToDateString(date), moonPhase);
|
|
125
|
+
}
|
|
126
|
+
return lunarEventMap;
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=moon-phase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moon-phase.js","sourceRoot":"","sources":["../../src/utils/moon-phase.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,58 +1,59 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@wesantal/santali-calendar",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "A framework-independent Santali Calendar data and utility package for JavaScript and TypeScript applications.",
|
|
5
|
-
"private": false,
|
|
6
|
-
"type": "module",
|
|
7
|
-
"main": "dist/index.js",
|
|
8
|
-
"module": "dist/index.js",
|
|
9
|
-
"types": "dist/index.d.ts",
|
|
10
|
-
"exports": {
|
|
11
|
-
".": {
|
|
12
|
-
"types": "./dist/index.d.ts",
|
|
13
|
-
"import": "./dist/index.js",
|
|
14
|
-
"require": "./dist/index.cjs"
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
"files": [
|
|
18
|
-
"dist",
|
|
19
|
-
"README.md",
|
|
20
|
-
"LICENSE"
|
|
21
|
-
],
|
|
22
|
-
"scripts": {
|
|
23
|
-
"build": "tsc --project tsconfig.build.json",
|
|
24
|
-
"test": "vitest run",
|
|
25
|
-
"test:watch": "vitest",
|
|
26
|
-
"lint": "tsc --noEmit",
|
|
27
|
-
"clean": "rimraf dist"
|
|
28
|
-
},
|
|
29
|
-
"keywords": [
|
|
30
|
-
"santali",
|
|
31
|
-
"calendar",
|
|
32
|
-
"santali-calendar",
|
|
33
|
-
"adivasi",
|
|
34
|
-
"tribal",
|
|
35
|
-
"indigenous",
|
|
36
|
-
"india",
|
|
37
|
-
"jharkhand"
|
|
38
|
-
],
|
|
39
|
-
"author": {
|
|
40
|
-
"name": "WeSantal",
|
|
41
|
-
"email": "official.wesantal@gmail.com",
|
|
42
|
-
"url": "https://wesantal.org"
|
|
43
|
-
},
|
|
44
|
-
"license": "MIT",
|
|
45
|
-
"publishConfig": {
|
|
46
|
-
"access": "public"
|
|
47
|
-
},
|
|
48
|
-
"engines": {
|
|
49
|
-
"node": ">=18"
|
|
50
|
-
},
|
|
51
|
-
"devDependencies": {
|
|
52
|
-
"typescript": "~6.0.3",
|
|
53
|
-
"vitest": "^3.2.4"
|
|
54
|
-
},
|
|
55
|
-
"dependencies": {
|
|
56
|
-
"date-fns": "^4.4.0"
|
|
57
|
-
|
|
58
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@wesantal/santali-calendar",
|
|
3
|
+
"version": "1.0.3",
|
|
4
|
+
"description": "A framework-independent Santali Calendar data and utility package for JavaScript and TypeScript applications.",
|
|
5
|
+
"private": false,
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "dist/index.js",
|
|
8
|
+
"module": "dist/index.js",
|
|
9
|
+
"types": "dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js",
|
|
14
|
+
"require": "./dist/index.cjs"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist",
|
|
19
|
+
"README.md",
|
|
20
|
+
"LICENSE"
|
|
21
|
+
],
|
|
22
|
+
"scripts": {
|
|
23
|
+
"build": "tsc --project tsconfig.build.json",
|
|
24
|
+
"test": "vitest run",
|
|
25
|
+
"test:watch": "vitest",
|
|
26
|
+
"lint": "tsc --noEmit",
|
|
27
|
+
"clean": "rimraf dist"
|
|
28
|
+
},
|
|
29
|
+
"keywords": [
|
|
30
|
+
"santali",
|
|
31
|
+
"calendar",
|
|
32
|
+
"santali-calendar",
|
|
33
|
+
"adivasi",
|
|
34
|
+
"tribal",
|
|
35
|
+
"indigenous",
|
|
36
|
+
"india",
|
|
37
|
+
"jharkhand"
|
|
38
|
+
],
|
|
39
|
+
"author": {
|
|
40
|
+
"name": "WeSantal",
|
|
41
|
+
"email": "official.wesantal@gmail.com",
|
|
42
|
+
"url": "https://wesantal.org"
|
|
43
|
+
},
|
|
44
|
+
"license": "MIT",
|
|
45
|
+
"publishConfig": {
|
|
46
|
+
"access": "public"
|
|
47
|
+
},
|
|
48
|
+
"engines": {
|
|
49
|
+
"node": ">=18"
|
|
50
|
+
},
|
|
51
|
+
"devDependencies": {
|
|
52
|
+
"typescript": "~6.0.3",
|
|
53
|
+
"vitest": "^3.2.4"
|
|
54
|
+
},
|
|
55
|
+
"dependencies": {
|
|
56
|
+
"date-fns": "^4.4.0",
|
|
57
|
+
"suncalc": "^2.0.2"
|
|
58
|
+
}
|
|
59
|
+
}
|