kor-lunar 1.0.2 → 1.1.1
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 +58 -3
- package/dist/kor-lunar.esm.js +24 -0
- package/dist/kor-lunar.esm.js.map +1 -1
- package/dist/kor-lunar.js +24 -0
- package/dist/kor-lunar.js.map +1 -1
- package/dist/kor-lunar.min.js +1 -1
- package/dist/lunar-data.d.ts +3 -0
- package/dist/solar-data.d.ts +3 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,10 +1,65 @@
|
|
|
1
1
|
# kor-lunar
|
|
2
2
|
|
|
3
|
-
한국천문연구원(KASI)
|
|
3
|
+
이 라이브러리는 학습용으로 제작되었으며, 한국천문연구원(KASI)의 음력·양력 데이터를 기반으로 한 자바스크립트 라이브러리입니다. 오프라인 환경에서도 사용할 수 있도록 구현되었습니다.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
> **⚠️ 주의:** 데이터는 2016년 이후로 갱신되지 않아 최신 변경 사항이 반영되지 않을 수 있습니다. 중요한 작업에는 아래 [한국천문연구원 공식 API](#출처-및-참고-자료)를 사용하시기 바랍니다.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
## 특징
|
|
8
|
+
|
|
9
|
+
- 음력 ↔ 양력 변환 지원
|
|
10
|
+
- 윤달 처리 가능 (`isLeapMonth` 옵션)
|
|
11
|
+
- 오프라인 환경에서도 사용 가능
|
|
12
|
+
|
|
13
|
+
## 지원 날짜 범위
|
|
14
|
+
|
|
15
|
+
- **toLunar**: `양력 → 음력` 날짜 범위 1890년 1월 21일 ~ 2050년 1월 22일
|
|
16
|
+
- **toSolar**: `음력 → 양력` 날짜 범위 1890년 1월 1일 ~ 2049년 12월 29일
|
|
17
|
+
|
|
18
|
+
_범위를 벗어난 날짜가 입력될 경우 `RangeError`가 발생하며, 오류 메시지에 입력한 날짜 정보가 포함됩니다._
|
|
19
|
+
|
|
20
|
+
## 설치
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install kor-lunar
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## 사용법
|
|
27
|
+
|
|
28
|
+
### 모듈 불러오기
|
|
29
|
+
|
|
30
|
+
```js
|
|
31
|
+
import korLunar from "kor-lunar";
|
|
32
|
+
// 또는
|
|
33
|
+
const korLunar = require("kor-lunar");
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### 브라우저 CDN
|
|
37
|
+
|
|
38
|
+
```html
|
|
39
|
+
<script src="https://cdn.jsdelivr.net/npm/kor-lunar/dist/kor-lunar.min.js"></script>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## 예제
|
|
43
|
+
|
|
44
|
+
```js
|
|
45
|
+
import korLunar from "kor-lunar";
|
|
46
|
+
|
|
47
|
+
// 양력 → 음력 (isLeapMonth: false = 평달, true = 윤달)
|
|
48
|
+
console.log(korLunar.toLunar(2025, 6, 25));
|
|
49
|
+
// { year: 2025, month: 6, day: 1, isLeapMonth: false }
|
|
50
|
+
console.log(korLunar.toLunar(2025, 7, 25));
|
|
51
|
+
// { year: 2025, month: 6, day: 1, isLeapMonth: true }
|
|
52
|
+
|
|
53
|
+
// 음력 → 양력
|
|
54
|
+
console.log(korLunar.toSolar(2025, 6, 1, false));
|
|
55
|
+
// { year: 2025, month: 6, day: 25 }
|
|
56
|
+
console.log(korLunar.toSolar(2025, 6, 1, true));
|
|
57
|
+
// { year: 2025, month: 7, day: 25 }
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## 라이선스
|
|
61
|
+
|
|
62
|
+
[MIT](LICENSE)
|
|
8
63
|
|
|
9
64
|
## 출처 및 참고 자료
|
|
10
65
|
|
package/dist/kor-lunar.esm.js
CHANGED
|
@@ -31,12 +31,18 @@ var LUN_TABLE = [
|
|
|
31
31
|
var BASE_YEAR$1 = 1890;
|
|
32
32
|
var BASE_MONTH$1 = 1;
|
|
33
33
|
var BASE_DAY$1 = 1;
|
|
34
|
+
var BASE_VALUE$1 = BASE_YEAR$1 * 10000 + BASE_MONTH$1 * 100 + BASE_DAY$1;
|
|
34
35
|
var MAX_YEAR$1 = 2049;
|
|
35
36
|
var MAX_MONTH$1 = 12;
|
|
36
37
|
var MAX_DAY$1 = 29;
|
|
38
|
+
var MAX_VALUE$1 = MAX_YEAR$1 * 10000 + MAX_MONTH$1 * 100 + MAX_DAY$1;
|
|
37
39
|
var SMALL_MONTH_DAY = 29;
|
|
38
40
|
var BIG_MONTH_DAY = 30;
|
|
39
41
|
var totalDaysBeforeYear$1 = {};
|
|
42
|
+
var checkRangeDate$1 = function (year, month, day) {
|
|
43
|
+
var value = year * 10000 + month * 100 + day;
|
|
44
|
+
return value >= BASE_VALUE$1 && value <= MAX_VALUE$1;
|
|
45
|
+
};
|
|
40
46
|
var getYearData = function (year) {
|
|
41
47
|
return LUN_TABLE[year - BASE_YEAR$1];
|
|
42
48
|
};
|
|
@@ -151,9 +157,12 @@ var LunarData = {
|
|
|
151
157
|
BASE_YEAR: BASE_YEAR$1,
|
|
152
158
|
BASE_MONTH: BASE_MONTH$1,
|
|
153
159
|
BASE_DAY: BASE_DAY$1,
|
|
160
|
+
BASE_VALUE: BASE_VALUE$1,
|
|
154
161
|
MAX_YEAR: MAX_YEAR$1,
|
|
155
162
|
MAX_MONTH: MAX_MONTH$1,
|
|
156
163
|
MAX_DAY: MAX_DAY$1,
|
|
164
|
+
MAX_VALUE: MAX_VALUE$1,
|
|
165
|
+
checkRangeDate: checkRangeDate$1,
|
|
157
166
|
getMonthDays: getMonthDays$1,
|
|
158
167
|
getLeapMonth: getLeapMonth,
|
|
159
168
|
hasLeapMonth: hasLeapMonth,
|
|
@@ -172,10 +181,16 @@ var LEAP_YEAR_DAY = 366;
|
|
|
172
181
|
var BASE_YEAR = 1890;
|
|
173
182
|
var BASE_MONTH = 1;
|
|
174
183
|
var BASE_DAY = 21;
|
|
184
|
+
var BASE_VALUE = BASE_YEAR * 10000 + BASE_MONTH * 100 + BASE_DAY;
|
|
175
185
|
var MAX_YEAR = 2050;
|
|
176
186
|
var MAX_MONTH = 1;
|
|
177
187
|
var MAX_DAY = 22;
|
|
188
|
+
var MAX_VALUE = MAX_YEAR * 10000 + MAX_MONTH * 100 + MAX_DAY;
|
|
178
189
|
var totalDaysBeforeYear = {};
|
|
190
|
+
var checkRangeDate = function (year, month, day) {
|
|
191
|
+
var value = year * 10000 + month * 100 + day;
|
|
192
|
+
return value >= BASE_VALUE && value <= MAX_VALUE;
|
|
193
|
+
};
|
|
179
194
|
var isLeapYear = function (year) {
|
|
180
195
|
return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;
|
|
181
196
|
};
|
|
@@ -214,9 +229,12 @@ var SolarData = {
|
|
|
214
229
|
BASE_YEAR: BASE_YEAR,
|
|
215
230
|
BASE_MONTH: BASE_MONTH,
|
|
216
231
|
BASE_DAY: BASE_DAY,
|
|
232
|
+
BASE_VALUE: BASE_VALUE,
|
|
217
233
|
MAX_YEAR: MAX_YEAR,
|
|
218
234
|
MAX_MONTH: MAX_MONTH,
|
|
219
235
|
MAX_DAY: MAX_DAY,
|
|
236
|
+
MAX_VALUE: MAX_VALUE,
|
|
237
|
+
checkRangeDate: checkRangeDate,
|
|
220
238
|
isLeapYear: isLeapYear,
|
|
221
239
|
getMonthDays: getMonthDays,
|
|
222
240
|
getYearDays: getYearDays,
|
|
@@ -225,6 +243,9 @@ var SolarData = {
|
|
|
225
243
|
|
|
226
244
|
var SOLAR_LUNAR_DAY_DIFF = 20;
|
|
227
245
|
var toLunar = function (solYear, solMonth, solDay) {
|
|
246
|
+
if (!SolarData.checkRangeDate(solYear, solMonth, solDay)) {
|
|
247
|
+
throw new RangeError("\uC9C0\uC6D0\uB418\uC9C0 \uC54A\uB294 \uB0A0\uC9DC\uC785\uB2C8\uB2E4. \uC785\uB825\uD55C \uB0A0\uC9DC: ".concat(solYear, "-").concat(solMonth, "-").concat(solDay));
|
|
248
|
+
}
|
|
228
249
|
var year = LunarData.BASE_YEAR;
|
|
229
250
|
var month = LunarData.BASE_MONTH;
|
|
230
251
|
var day = LunarData.BASE_DAY + SolarData.getTotalDays(solYear, solMonth, solDay) - SOLAR_LUNAR_DAY_DIFF - 1;
|
|
@@ -257,6 +278,9 @@ var toLunar = function (solYear, solMonth, solDay) {
|
|
|
257
278
|
return { year: year, month: month, day: day, isLeapMonth: isLeapMonth };
|
|
258
279
|
};
|
|
259
280
|
var toSolar = function (lunYear, lunMonth, lunDay, isLeapMonth) {
|
|
281
|
+
if (!LunarData.checkRangeDate(lunYear, lunMonth, lunDay)) {
|
|
282
|
+
throw new RangeError("\uC9C0\uC6D0\uB418\uC9C0 \uC54A\uB294 \uB0A0\uC9DC\uC785\uB2C8\uB2E4. \uC785\uB825\uD55C \uB0A0\uC9DC: ".concat(lunYear, "-").concat(lunMonth, "-").concat(lunDay));
|
|
283
|
+
}
|
|
260
284
|
var year = SolarData.BASE_YEAR;
|
|
261
285
|
var month = SolarData.BASE_MONTH;
|
|
262
286
|
var day = SolarData.BASE_DAY + LunarData.getTotalDays(lunYear, lunMonth, lunDay, isLeapMonth) - 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kor-lunar.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"kor-lunar.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/kor-lunar.js
CHANGED
|
@@ -35,12 +35,18 @@ var LUN_TABLE = [
|
|
|
35
35
|
var BASE_YEAR$1 = 1890;
|
|
36
36
|
var BASE_MONTH$1 = 1;
|
|
37
37
|
var BASE_DAY$1 = 1;
|
|
38
|
+
var BASE_VALUE$1 = BASE_YEAR$1 * 10000 + BASE_MONTH$1 * 100 + BASE_DAY$1;
|
|
38
39
|
var MAX_YEAR$1 = 2049;
|
|
39
40
|
var MAX_MONTH$1 = 12;
|
|
40
41
|
var MAX_DAY$1 = 29;
|
|
42
|
+
var MAX_VALUE$1 = MAX_YEAR$1 * 10000 + MAX_MONTH$1 * 100 + MAX_DAY$1;
|
|
41
43
|
var SMALL_MONTH_DAY = 29;
|
|
42
44
|
var BIG_MONTH_DAY = 30;
|
|
43
45
|
var totalDaysBeforeYear$1 = {};
|
|
46
|
+
var checkRangeDate$1 = function (year, month, day) {
|
|
47
|
+
var value = year * 10000 + month * 100 + day;
|
|
48
|
+
return value >= BASE_VALUE$1 && value <= MAX_VALUE$1;
|
|
49
|
+
};
|
|
44
50
|
var getYearData = function (year) {
|
|
45
51
|
return LUN_TABLE[year - BASE_YEAR$1];
|
|
46
52
|
};
|
|
@@ -155,9 +161,12 @@ var LunarData = {
|
|
|
155
161
|
BASE_YEAR: BASE_YEAR$1,
|
|
156
162
|
BASE_MONTH: BASE_MONTH$1,
|
|
157
163
|
BASE_DAY: BASE_DAY$1,
|
|
164
|
+
BASE_VALUE: BASE_VALUE$1,
|
|
158
165
|
MAX_YEAR: MAX_YEAR$1,
|
|
159
166
|
MAX_MONTH: MAX_MONTH$1,
|
|
160
167
|
MAX_DAY: MAX_DAY$1,
|
|
168
|
+
MAX_VALUE: MAX_VALUE$1,
|
|
169
|
+
checkRangeDate: checkRangeDate$1,
|
|
161
170
|
getMonthDays: getMonthDays$1,
|
|
162
171
|
getLeapMonth: getLeapMonth,
|
|
163
172
|
hasLeapMonth: hasLeapMonth,
|
|
@@ -176,10 +185,16 @@ var LEAP_YEAR_DAY = 366;
|
|
|
176
185
|
var BASE_YEAR = 1890;
|
|
177
186
|
var BASE_MONTH = 1;
|
|
178
187
|
var BASE_DAY = 21;
|
|
188
|
+
var BASE_VALUE = BASE_YEAR * 10000 + BASE_MONTH * 100 + BASE_DAY;
|
|
179
189
|
var MAX_YEAR = 2050;
|
|
180
190
|
var MAX_MONTH = 1;
|
|
181
191
|
var MAX_DAY = 22;
|
|
192
|
+
var MAX_VALUE = MAX_YEAR * 10000 + MAX_MONTH * 100 + MAX_DAY;
|
|
182
193
|
var totalDaysBeforeYear = {};
|
|
194
|
+
var checkRangeDate = function (year, month, day) {
|
|
195
|
+
var value = year * 10000 + month * 100 + day;
|
|
196
|
+
return value >= BASE_VALUE && value <= MAX_VALUE;
|
|
197
|
+
};
|
|
183
198
|
var isLeapYear = function (year) {
|
|
184
199
|
return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;
|
|
185
200
|
};
|
|
@@ -218,9 +233,12 @@ var SolarData = {
|
|
|
218
233
|
BASE_YEAR: BASE_YEAR,
|
|
219
234
|
BASE_MONTH: BASE_MONTH,
|
|
220
235
|
BASE_DAY: BASE_DAY,
|
|
236
|
+
BASE_VALUE: BASE_VALUE,
|
|
221
237
|
MAX_YEAR: MAX_YEAR,
|
|
222
238
|
MAX_MONTH: MAX_MONTH,
|
|
223
239
|
MAX_DAY: MAX_DAY,
|
|
240
|
+
MAX_VALUE: MAX_VALUE,
|
|
241
|
+
checkRangeDate: checkRangeDate,
|
|
224
242
|
isLeapYear: isLeapYear,
|
|
225
243
|
getMonthDays: getMonthDays,
|
|
226
244
|
getYearDays: getYearDays,
|
|
@@ -229,6 +247,9 @@ var SolarData = {
|
|
|
229
247
|
|
|
230
248
|
var SOLAR_LUNAR_DAY_DIFF = 20;
|
|
231
249
|
var toLunar = function (solYear, solMonth, solDay) {
|
|
250
|
+
if (!SolarData.checkRangeDate(solYear, solMonth, solDay)) {
|
|
251
|
+
throw new RangeError("\uC9C0\uC6D0\uB418\uC9C0 \uC54A\uB294 \uB0A0\uC9DC\uC785\uB2C8\uB2E4. \uC785\uB825\uD55C \uB0A0\uC9DC: ".concat(solYear, "-").concat(solMonth, "-").concat(solDay));
|
|
252
|
+
}
|
|
232
253
|
var year = LunarData.BASE_YEAR;
|
|
233
254
|
var month = LunarData.BASE_MONTH;
|
|
234
255
|
var day = LunarData.BASE_DAY + SolarData.getTotalDays(solYear, solMonth, solDay) - SOLAR_LUNAR_DAY_DIFF - 1;
|
|
@@ -261,6 +282,9 @@ var toLunar = function (solYear, solMonth, solDay) {
|
|
|
261
282
|
return { year: year, month: month, day: day, isLeapMonth: isLeapMonth };
|
|
262
283
|
};
|
|
263
284
|
var toSolar = function (lunYear, lunMonth, lunDay, isLeapMonth) {
|
|
285
|
+
if (!LunarData.checkRangeDate(lunYear, lunMonth, lunDay)) {
|
|
286
|
+
throw new RangeError("\uC9C0\uC6D0\uB418\uC9C0 \uC54A\uB294 \uB0A0\uC9DC\uC785\uB2C8\uB2E4. \uC785\uB825\uD55C \uB0A0\uC9DC: ".concat(lunYear, "-").concat(lunMonth, "-").concat(lunDay));
|
|
287
|
+
}
|
|
264
288
|
var year = SolarData.BASE_YEAR;
|
|
265
289
|
var month = SolarData.BASE_MONTH;
|
|
266
290
|
var day = SolarData.BASE_DAY + LunarData.getTotalDays(lunYear, lunMonth, lunDay, isLeapMonth) - 1;
|
package/dist/kor-lunar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kor-lunar.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"kor-lunar.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/kor-lunar.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var korLunar=function(r){"use strict";var n=[50342582,46534058,50360036,46403236,46402890,50222421,46533271,46400854,50345309,46533333,50367442,46401362,46534309,50223914,46401099,46533275,50416294,46400874,46533465,50342826,46401362,50359717,46402341,46402123,50354523,46533293,46400874,50341301,46533545,50363858,46402962,46402853,50355501,46401878,46400181,50481885,46401236,46534057,50343626,46403218,50226854,46400807,46533207,50420054,46533338,46401236,50411345,46401353,50428691,46402195,46400811,50423067,46532973,46533482,50417060,46402468,46402377,50343243,46402197,50363051,46400813,46533293,50420394,46534066,46402980,50413217,46402890,50367893,46402198,46400854,50357621,46533333,46401234,50349909,46534309,46403146,50214478,46533275,50363094,46400874,46533465,50355122,46401362,46401317,50350891,46402123,50366891,46400173,46531947,50423209,46534057,46402962,50351509,46402853,50376269,46402134,46400182,50490093,46401236,46534057,50355922,46403218,46402854,50214190,46533207,50366902,46533466,46401236,50354025,46401353,46401171,50350743,46400811,46533211,50342574,46400362,50494933,46402468,46402377,50355539,46402197,46400813,50410797,46533293,50371498,46400978,46534053,50355882,46402890,46402197,50350749,46400854,46533301,50342614,46401234,50358117,46534309,46403146,50222678,46533787,46400858,50345325,46533481,50380626,46401362,46402341,50424587,46402123,46400683,50352827,46531949,46533481,50343338,46402962,50364069,46402853,46402125,50420301,46400182,46532021],t=1890,u={},
|
|
1
|
+
var korLunar=function(r){"use strict";var n=[50342582,46534058,50360036,46403236,46402890,50222421,46533271,46400854,50345309,46533333,50367442,46401362,46534309,50223914,46401099,46533275,50416294,46400874,46533465,50342826,46401362,50359717,46402341,46402123,50354523,46533293,46400874,50341301,46533545,50363858,46402962,46402853,50355501,46401878,46400181,50481885,46401236,46534057,50343626,46403218,50226854,46400807,46533207,50420054,46533338,46401236,50411345,46401353,50428691,46402195,46400811,50423067,46532973,46533482,50417060,46402468,46402377,50343243,46402197,50363051,46400813,46533293,50420394,46534066,46402980,50413217,46402890,50367893,46402198,46400854,50357621,46533333,46401234,50349909,46534309,46403146,50214478,46533275,50363094,46400874,46533465,50355122,46401362,46401317,50350891,46402123,50366891,46400173,46531947,50423209,46534057,46402962,50351509,46402853,50376269,46402134,46400182,50490093,46401236,46534057,50355922,46403218,46402854,50214190,46533207,50366902,46533466,46401236,50354025,46401353,46401171,50350743,46400811,46533211,50342574,46400362,50494933,46402468,46402377,50355539,46402197,46400813,50410797,46533293,50371498,46400978,46534053,50355882,46402890,46402197,50350749,46400854,46533301,50342614,46401234,50358117,46534309,46403146,50222678,46533787,46400858,50345325,46533481,50380626,46401362,46402341,50424587,46402123,46400683,50352827,46531949,46533481,50343338,46402962,50364069,46402853,46402125,50420301,46400182,46532021],t=1890,o=18900101,u=2049,e=20491229,a={},c=function(r){return n[r-t]},f=function(r,n){return 0===(c(r)>>n-1&1)?29:30},i=function(r){return c(r)>>12&15},v=function(r,n){return n===i(r)},d=function(r,n){return v(r,n)?0===(c(r)>>16&1)?29:30:0},h=function(r){return c(r)>>17&511};a[1890]=0;for(var l=1891;l<u;l++)a[l]=a[l-1]+h(l-1);var y=function(r){return a[r]},s=function(r,n,t){for(var o=0,u=1;u<n;u++)o+=f(r,u),u===i(r)&&(o+=d(r,u));var e=i(r);return t&&e===n&&(o+=f(r,n)),o},w=t,L=1,g=1,m=function(r,n,t){var u=1e4*r+100*n+t;return u>=o&&u<=e},p=f,E=i,M=d,R=h,S=function(r,n,t,o){return y(r)+s(r,n,o)+t},_=[31,28,31,30,31,30,31,31,30,31,30,31],b=1890,j=18900121,k=2050,O=20500122,P={},q=function(r){return r%4==0&&r%100!=0||r%400==0},x=function(r,n){return 2==n&&q(r)?29:_[n-1]},z=function(r){return q(r)?366:365};P[1890]=0;for(var A=1891;A<k;A++)P[A]=P[A-1]+z(A-1);var B=b,C=1,D=21,F=function(r,n,t){var o=1e4*r+100*n+t;return o>=j&&o<=O},G=x,H=z,I=function(r,n,t){var o=function(r){return P[r]}(r)+function(r,n){for(var t=0,o=1;o<n;o++)t+=x(r,o);return t}(r,n)+t;return o},J=function(r,n,t){if(!F(r,n,t))throw new RangeError("지원되지 않는 날짜입니다. 입력한 날짜: ".concat(r,"-").concat(n,"-").concat(t));for(var o=w,u=L,e=g+I(r,n,t)-20-1,a=R(o);e>a;)o++,e-=a,a=R(o);for(var c=!1,f=E(o),i=p(o,u);e>i;)e-=i,c=!1,u!==f?(++u>12&&(u=1,o++,f=E(o)),i=p(o,u)):(f=0,i=M(o,u),c=!0);return{year:o,month:u,day:e,isLeapMonth:c}},K=function(r,n,t,o){if(!m(r,n,t))throw new RangeError("지원되지 않는 날짜입니다. 입력한 날짜: ".concat(r,"-").concat(n,"-").concat(t));for(var u=B,e=C,a=D+S(r,n,t,o)-1,c=H(u);a>c;)a-=c,u++,c=H(u);for(var f=G(u,e);a>f;)a-=f,++e>12&&(e=1,u++),f=G(u,e);return{year:u,month:e,day:a}},N={toLunar:J,toSolar:K};return r.default=N,r.toLunar=J,r.toSolar=K,Object.defineProperty(r,"__esModule",{value:!0}),r}({});
|
|
2
2
|
//# sourceMappingURL=kor-lunar.min.js.map
|
package/dist/lunar-data.d.ts
CHANGED
|
@@ -2,9 +2,12 @@ export declare const LunarData: {
|
|
|
2
2
|
BASE_YEAR: number;
|
|
3
3
|
BASE_MONTH: number;
|
|
4
4
|
BASE_DAY: number;
|
|
5
|
+
BASE_VALUE: number;
|
|
5
6
|
MAX_YEAR: number;
|
|
6
7
|
MAX_MONTH: number;
|
|
7
8
|
MAX_DAY: number;
|
|
9
|
+
MAX_VALUE: number;
|
|
10
|
+
checkRangeDate: (year: number, month: number, day: number) => boolean;
|
|
8
11
|
getMonthDays: (year: number, month: number) => number;
|
|
9
12
|
getLeapMonth: (year: number) => number;
|
|
10
13
|
hasLeapMonth: (year: number) => boolean;
|
package/dist/solar-data.d.ts
CHANGED
|
@@ -2,9 +2,12 @@ export declare const SolarData: {
|
|
|
2
2
|
BASE_YEAR: number;
|
|
3
3
|
BASE_MONTH: number;
|
|
4
4
|
BASE_DAY: number;
|
|
5
|
+
BASE_VALUE: number;
|
|
5
6
|
MAX_YEAR: number;
|
|
6
7
|
MAX_MONTH: number;
|
|
7
8
|
MAX_DAY: number;
|
|
9
|
+
MAX_VALUE: number;
|
|
10
|
+
checkRangeDate: (year: number, month: number, day: number) => boolean;
|
|
8
11
|
isLeapYear: (year: number) => boolean;
|
|
9
12
|
getMonthDays: (year: number, month: number) => number;
|
|
10
13
|
getYearDays: (year: number) => number;
|