@hyunbinseo/holidays-kr 3.2027.0 → 4.2026.0

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.js CHANGED
@@ -1,283 +1,33 @@
1
- //#region \0rolldown/runtime.js
2
- var __defProp = Object.defineProperty;
3
- var __exportAll = (all, no_symbols) => {
4
- let target = {};
5
- for (var name in all) __defProp(target, name, {
6
- get: all[name],
7
- enumerable: true
8
- });
9
- if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
10
- return target;
11
- };
12
- //#endregion
13
- //#region src/holidays/2018.ts
14
- const y2018 = {
15
- "2018-01-01": ["1월 1일"],
16
- "2018-02-15": ["설날 전날"],
17
- "2018-02-16": ["설날"],
18
- "2018-02-17": ["설날 다음 날"],
19
- "2018-03-01": ["3ㆍ1절"],
20
- "2018-05-05": ["어린이날"],
21
- "2018-05-07": ["대체공휴일(어린이날)"],
22
- "2018-05-22": ["부처님 오신 날"],
23
- "2018-06-06": ["현충일"],
24
- "2018-06-13": ["전국동시지방선거"],
25
- "2018-08-15": ["광복절"],
26
- "2018-09-23": ["추석 전날"],
27
- "2018-09-24": ["추석"],
28
- "2018-09-25": ["추석 다음 날"],
29
- "2018-09-26": ["대체공휴일(추석)"],
30
- "2018-10-03": ["개천절"],
31
- "2018-10-09": ["한글날"],
32
- "2018-12-25": ["기독탄신일"]
33
- };
34
- //#endregion
35
- //#region src/holidays/2019.ts
36
- const y2019 = {
37
- "2019-01-01": ["1월 1일"],
38
- "2019-02-04": ["설날 전날"],
39
- "2019-02-05": ["설날"],
40
- "2019-02-06": ["설날 다음 날"],
41
- "2019-03-01": ["3ㆍ1절"],
42
- "2019-05-05": ["어린이날"],
43
- "2019-05-06": ["대체공휴일(어린이날)"],
44
- "2019-05-12": ["부처님 오신 날"],
45
- "2019-06-06": ["현충일"],
46
- "2019-08-15": ["광복절"],
47
- "2019-09-12": ["추석 전날"],
48
- "2019-09-13": ["추석"],
49
- "2019-09-14": ["추석 다음 날"],
50
- "2019-10-03": ["개천절"],
51
- "2019-10-09": ["한글날"],
52
- "2019-12-25": ["기독탄신일"]
53
- };
54
- //#endregion
55
- //#region src/holidays/2020.ts
56
- const y2020 = {
57
- "2020-01-01": ["1월 1일"],
58
- "2020-01-24": ["설날 전날"],
59
- "2020-01-25": ["설날"],
60
- "2020-01-26": ["설날 다음 날"],
61
- "2020-01-27": ["대체공휴일(설날)"],
62
- "2020-03-01": ["3ㆍ1절"],
63
- "2020-04-15": ["제21대 국회의원선거"],
64
- "2020-04-30": ["부처님 오신 날"],
65
- "2020-05-05": ["어린이날"],
66
- "2020-06-06": ["현충일"],
67
- "2020-08-15": ["광복절"],
68
- "2020-08-17": ["임시공휴일"],
69
- "2020-09-30": ["추석 전날"],
70
- "2020-10-01": ["추석"],
71
- "2020-10-02": ["추석 다음 날"],
72
- "2020-10-03": ["개천절"],
73
- "2020-10-09": ["한글날"],
74
- "2020-12-25": ["기독탄신일"]
75
- };
76
- //#endregion
77
- //#region src/holidays/2021.ts
78
- const y2021 = {
79
- "2021-01-01": ["1월 1일"],
80
- "2021-02-11": ["설날 전날"],
81
- "2021-02-12": ["설날"],
82
- "2021-02-13": ["설날 다음 날"],
83
- "2021-03-01": ["3ㆍ1절"],
84
- "2021-05-05": ["어린이날"],
85
- "2021-05-19": ["부처님 오신 날"],
86
- "2021-06-06": ["현충일"],
87
- "2021-08-15": ["광복절"],
88
- "2021-08-16": ["대체공휴일(광복절)"],
89
- "2021-09-20": ["추석 전날"],
90
- "2021-09-21": ["추석"],
91
- "2021-09-22": ["추석 다음 날"],
92
- "2021-10-03": ["개천절"],
93
- "2021-10-04": ["대체공휴일(개천절)"],
94
- "2021-10-09": ["한글날"],
95
- "2021-10-11": ["대체공휴일(한글날)"],
96
- "2021-12-25": ["기독탄신일"]
97
- };
98
- //#endregion
99
- //#region src/holidays/2022.ts
100
- const y2022 = {
101
- "2022-01-01": ["1월 1일"],
102
- "2022-01-31": ["설날 전날"],
103
- "2022-02-01": ["설날"],
104
- "2022-02-02": ["설날 다음 날"],
105
- "2022-03-01": ["3ㆍ1절"],
106
- "2022-03-09": ["대통령선거"],
107
- "2022-05-05": ["어린이날"],
108
- "2022-05-08": ["부처님 오신 날"],
109
- "2022-06-01": ["전국동시지방선거"],
110
- "2022-06-06": ["현충일"],
111
- "2022-08-15": ["광복절"],
112
- "2022-09-09": ["추석 전날"],
113
- "2022-09-10": ["추석"],
114
- "2022-09-11": ["추석 다음 날"],
115
- "2022-09-12": ["대체공휴일(추석)"],
116
- "2022-10-03": ["개천절"],
117
- "2022-10-09": ["한글날"],
118
- "2022-10-10": ["대체공휴일(한글날)"],
119
- "2022-12-25": ["기독탄신일"]
120
- };
121
- //#endregion
122
- //#region src/holidays/2023.ts
123
- const y2023 = {
124
- "2023-01-01": ["1월 1일"],
125
- "2023-01-21": ["설날 전날"],
126
- "2023-01-22": ["설날"],
127
- "2023-01-23": ["설날 다음 날"],
128
- "2023-01-24": ["대체공휴일(설날)"],
129
- "2023-03-01": ["3ㆍ1절"],
130
- "2023-05-05": ["어린이날"],
131
- "2023-05-27": ["부처님 오신 날"],
132
- "2023-05-29": ["대체공휴일(부처님 오신 날)"],
133
- "2023-06-06": ["현충일"],
134
- "2023-08-15": ["광복절"],
135
- "2023-09-28": ["추석 전날"],
136
- "2023-09-29": ["추석"],
137
- "2023-09-30": ["추석 다음 날"],
138
- "2023-10-02": ["임시공휴일"],
139
- "2023-10-03": ["개천절"],
140
- "2023-10-09": ["한글날"],
141
- "2023-12-25": ["기독탄신일"]
142
- };
143
- //#endregion
144
- //#region src/holidays/2024.ts
145
- const y2024 = {
146
- "2024-01-01": ["1월 1일"],
147
- "2024-02-09": ["설날 전날"],
148
- "2024-02-10": ["설날"],
149
- "2024-02-11": ["설날 다음 날"],
150
- "2024-02-12": ["대체공휴일(설날)"],
151
- "2024-03-01": ["3ㆍ1절"],
152
- "2024-04-10": ["제22대국회의원선거"],
153
- "2024-05-05": ["어린이날"],
154
- "2024-05-06": ["대체공휴일(어린이날)"],
155
- "2024-05-15": ["부처님 오신 날"],
156
- "2024-06-06": ["현충일"],
157
- "2024-08-15": ["광복절"],
158
- "2024-09-16": ["추석 전날"],
159
- "2024-09-17": ["추석"],
160
- "2024-09-18": ["추석 다음 날"],
161
- "2024-10-01": ["임시공휴일"],
162
- "2024-10-03": ["개천절"],
163
- "2024-10-09": ["한글날"],
164
- "2024-12-25": ["기독탄신일"]
165
- };
166
- //#endregion
167
- //#region src/holidays/2025.ts
168
- const y2025 = {
169
- "2025-01-01": ["1월 1일"],
170
- "2025-01-27": ["임시공휴일"],
171
- "2025-01-28": ["설날 전날"],
172
- "2025-01-29": ["설날"],
173
- "2025-01-30": ["설날 다음 날"],
174
- "2025-03-01": ["3ㆍ1절"],
175
- "2025-03-03": ["대체공휴일(3ㆍ1절)"],
176
- "2025-05-05": ["어린이날", "부처님 오신 날"],
177
- "2025-05-06": ["대체공휴일(부처님 오신 날)"],
178
- "2025-06-03": ["임시공휴일(대통령선거)"],
179
- "2025-06-06": ["현충일"],
180
- "2025-08-15": ["광복절"],
181
- "2025-10-03": ["개천절"],
182
- "2025-10-05": ["추석 전날"],
183
- "2025-10-06": ["추석"],
184
- "2025-10-07": ["추석 다음 날"],
185
- "2025-10-08": ["대체공휴일(추석)"],
186
- "2025-10-09": ["한글날"],
187
- "2025-12-25": ["기독탄신일"]
188
- };
189
- //#endregion
190
- //#region src/holidays/2026.ts
191
- const y2026 = {
192
- "2026-01-01": ["1월 1일"],
193
- "2026-02-16": ["설날 전날"],
194
- "2026-02-17": ["설날"],
195
- "2026-02-18": ["설날 다음 날"],
196
- "2026-03-01": ["3ㆍ1절"],
197
- "2026-03-02": ["대체공휴일(3ㆍ1절)"],
198
- "2026-05-01": ["노동절"],
199
- "2026-05-05": ["어린이날"],
200
- "2026-05-24": ["부처님 오신 날"],
201
- "2026-05-25": ["대체공휴일(부처님 오신 날)"],
202
- "2026-06-03": ["전국동시지방선거"],
203
- "2026-06-06": ["현충일"],
204
- "2026-07-17": ["제헌절"],
205
- "2026-08-15": ["광복절"],
206
- "2026-08-17": ["대체공휴일(광복절)"],
207
- "2026-09-24": ["추석 전날"],
208
- "2026-09-25": ["추석"],
209
- "2026-09-26": ["추석 다음 날"],
210
- "2026-10-03": ["개천절"],
211
- "2026-10-05": ["대체공휴일(개천절)"],
212
- "2026-10-09": ["한글날"],
213
- "2026-12-25": ["기독탄신일"]
214
- };
215
- //#endregion
216
- //#region src/holidays/2027.ts
217
- const y2027 = {
218
- "2027-01-01": ["1월 1일"],
219
- "2027-02-06": ["설날 전날"],
220
- "2027-02-07": ["설날"],
221
- "2027-02-08": ["설날 다음 날"],
222
- "2027-02-09": ["대체공휴일(설날)"],
223
- "2027-03-01": ["3ㆍ1절"],
224
- "2027-05-01": ["노동절"],
225
- "2027-05-03": ["대체공휴일(노동절)"],
226
- "2027-05-05": ["어린이날"],
227
- "2027-05-13": ["부처님 오신 날"],
228
- "2027-06-06": ["현충일"],
229
- "2027-07-17": ["제헌절"],
230
- "2027-07-19": ["대체공휴일(제헌절)"],
231
- "2027-08-15": ["광복절"],
232
- "2027-08-16": ["대체공휴일(광복절)"],
233
- "2027-09-14": ["추석 전날"],
234
- "2027-09-15": ["추석"],
235
- "2027-09-16": ["추석 다음 날"],
236
- "2027-10-03": ["개천절"],
237
- "2027-10-04": ["대체공휴일(개천절)"],
238
- "2027-10-09": ["한글날"],
239
- "2027-10-11": ["대체공휴일(한글날)"],
240
- "2027-12-25": ["기독탄신일"],
241
- "2027-12-27": ["대체공휴일(기독탄신일)"]
242
- };
243
- //#endregion
244
- //#region src/holidays.ts
245
- var holidays_exports = /* @__PURE__ */ __exportAll({
246
- y2018: () => y2018,
247
- y2019: () => y2019,
248
- y2020: () => y2020,
249
- y2021: () => y2021,
250
- y2022: () => y2022,
251
- y2023: () => y2023,
252
- y2024: () => y2024,
253
- y2025: () => y2025,
254
- y2026: () => y2026,
255
- y2027: () => y2027
256
- });
257
- //#endregion
258
- //#region src/holidays.latest.ts
259
- var holidays_latest_exports = /* @__PURE__ */ __exportAll({
260
- y2026: () => y2026,
261
- y2027: () => y2027
262
- });
263
- //#endregion
264
- //#region src/index.ts
1
+ import { n as y2018 } from "./2018-C5AwMa7y.js";
2
+ import { n as y2019 } from "./2019-CsvcRi6c.js";
3
+ import { n as y2020 } from "./2020-Do-jf8yU.js";
4
+ import { n as y2021 } from "./2021-kMgaJFlk.js";
5
+ import { n as y2022 } from "./2022-JrHXz0nq.js";
6
+ import { n as y2023 } from "./2023-B1YUK2Tb.js";
7
+ import { n as y2024 } from "./2024-Bc6AOiCH.js";
8
+ import { n as y2025 } from "./2025-DhUTK95M.js";
9
+ import { n as y2026 } from "./2026-94COvbcH.js";
10
+ //#region src/holidays/utils.ts
265
11
  const KST_OFFSET = 540 * 6e4;
266
- const createFn = (presets) => (date) => {
12
+ const modules = /* @__PURE__ */ Object.assign({
13
+ "./2018.ts": () => import("./2018-C5AwMa7y.js").then((n) => n.t).then((m) => m["default"]),
14
+ "./2019.ts": () => import("./2019-CsvcRi6c.js").then((n) => n.t).then((m) => m["default"]),
15
+ "./2020.ts": () => import("./2020-Do-jf8yU.js").then((n) => n.t).then((m) => m["default"]),
16
+ "./2021.ts": () => import("./2021-kMgaJFlk.js").then((n) => n.t).then((m) => m["default"]),
17
+ "./2022.ts": () => import("./2022-JrHXz0nq.js").then((n) => n.t).then((m) => m["default"]),
18
+ "./2023.ts": () => import("./2023-B1YUK2Tb.js").then((n) => n.t).then((m) => m["default"]),
19
+ "./2024.ts": () => import("./2024-Bc6AOiCH.js").then((n) => n.t).then((m) => m["default"]),
20
+ "./2025.ts": () => import("./2025-DhUTK95M.js").then((n) => n.t).then((m) => m["default"]),
21
+ "./2026.ts": () => import("./2026-94COvbcH.js").then((n) => n.t).then((m) => m["default"])
22
+ });
23
+ const getHolidayNames = async (date) => {
267
24
  if (!(date instanceof Date)) throw new TypeError(`${date} is not a Date`);
268
25
  const yyyy_mm_dd = new Date(date.valueOf() + KST_OFFSET).toISOString().slice(0, 10);
269
26
  const yyyy = yyyy_mm_dd.slice(0, 4);
270
- const preset = presets[`y${yyyy}`];
271
- if (!preset) throw new RangeError(`Missing holiday preset for year ${yyyy}.`);
272
- return preset[yyyy_mm_dd] ?? null;
27
+ const loader = modules[`./${yyyy}.ts`];
28
+ if (!loader) throw new RangeError(`No preset for year ${yyyy}.`);
29
+ return (await loader())[yyyy_mm_dd] ?? null;
273
30
  };
274
- const getHolidayNames = createFn(holidays_latest_exports);
275
- const getHolidayNamesE = createFn(holidays_exports);
276
- const isHoliday = (date) => !!getHolidayNames(date);
277
- const isHolidayE = (date) => !!getHolidayNamesE(date);
278
- {
279
- const yyyy = new Date(Date.now() + KST_OFFSET).getUTCFullYear();
280
- if (!(`y${yyyy}` in holidays_latest_exports)) console.warn(`Missing holiday preset for year ${yyyy}. Please update the package.`);
281
- }
31
+ const isHoliday = async (date) => !!await getHolidayNames(date);
282
32
  //#endregion
283
- export { getHolidayNames, getHolidayNamesE, isHoliday, isHolidayE, y2018, y2019, y2020, y2021, y2022, y2023, y2024, y2025, y2026, y2027 };
33
+ export { getHolidayNames, isHoliday, y2018, y2019, y2020, y2021, y2022, y2023, y2024, y2025, y2026 };
@@ -0,0 +1,13 @@
1
+ //#region \0rolldown/runtime.js
2
+ var __defProp = Object.defineProperty;
3
+ var __exportAll = (all, no_symbols) => {
4
+ let target = {};
5
+ for (var name in all) __defProp(target, name, {
6
+ get: all[name],
7
+ enumerable: true
8
+ });
9
+ if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
10
+ return target;
11
+ };
12
+ //#endregion
13
+ export { __exportAll as t };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyunbinseo/holidays-kr",
3
- "version": "3.2027.0",
3
+ "version": "4.2026.0",
4
4
  "description": "South Korea's national holidays, based on the official gazette",
5
5
  "keywords": [
6
6
  "Korean",
@@ -23,37 +23,32 @@
23
23
  "dist"
24
24
  ],
25
25
  "type": "module",
26
- "main": "./dist/index.cjs",
27
- "module": "./dist/index.js",
28
- "types": "./dist/index.d.cts",
29
26
  "exports": {
30
- ".": {
31
- "import": "./dist/index.js",
32
- "require": "./dist/index.cjs"
33
- },
27
+ ".": "./dist/index.js",
34
28
  "./package.json": "./package.json"
35
29
  },
36
30
  "devDependencies": {
37
- "@arethetypeswrong/core": "^0.18.4",
38
- "@types/node": "^24.13.2",
39
- "oxfmt": "^0.56.0",
40
- "oxlint": "^1.71.0",
41
- "publint": "^0.3.21",
42
- "tsdown": "^0.22.3",
43
- "typescript": "^5.9.3",
44
- "valibot": "^1.4.1"
31
+ "@arethetypeswrong/core": "^0.18.2",
32
+ "@types/node": "^24.12.2",
33
+ "oxfmt": "^0.44.0",
34
+ "oxlint": "^1.59.0",
35
+ "publint": "^0.3.18",
36
+ "tsdown": "^0.21.7",
37
+ "typescript": "^6.0.2",
38
+ "vitest": "^4.1.2"
45
39
  },
46
40
  "engines": {
47
41
  "node": ">=18"
48
42
  },
49
43
  "scripts": {
50
- "preversion": "node --test",
44
+ "preversion": "vitest run",
51
45
  "version": "node cli/write.ts && git add -A public",
52
46
  "postversion": "git push && git push --tags && node cli/postversion.ts",
53
47
  "check": "tsc --noEmit",
54
48
  "fmt": "oxfmt",
55
49
  "fmt:check": "oxfmt --check",
56
50
  "lint": "oxlint",
57
- "lint:fix": "oxlint --fix"
51
+ "lint:fix": "oxlint --fix",
52
+ "test": "vitest"
58
53
  }
59
54
  }
package/dist/index.cjs DELETED
@@ -1,297 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region \0rolldown/runtime.js
3
- var __defProp = Object.defineProperty;
4
- var __exportAll = (all, no_symbols) => {
5
- let target = {};
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: true
9
- });
10
- if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
11
- return target;
12
- };
13
- //#endregion
14
- //#region src/holidays/2018.ts
15
- const y2018 = {
16
- "2018-01-01": ["1월 1일"],
17
- "2018-02-15": ["설날 전날"],
18
- "2018-02-16": ["설날"],
19
- "2018-02-17": ["설날 다음 날"],
20
- "2018-03-01": ["3ㆍ1절"],
21
- "2018-05-05": ["어린이날"],
22
- "2018-05-07": ["대체공휴일(어린이날)"],
23
- "2018-05-22": ["부처님 오신 날"],
24
- "2018-06-06": ["현충일"],
25
- "2018-06-13": ["전국동시지방선거"],
26
- "2018-08-15": ["광복절"],
27
- "2018-09-23": ["추석 전날"],
28
- "2018-09-24": ["추석"],
29
- "2018-09-25": ["추석 다음 날"],
30
- "2018-09-26": ["대체공휴일(추석)"],
31
- "2018-10-03": ["개천절"],
32
- "2018-10-09": ["한글날"],
33
- "2018-12-25": ["기독탄신일"]
34
- };
35
- //#endregion
36
- //#region src/holidays/2019.ts
37
- const y2019 = {
38
- "2019-01-01": ["1월 1일"],
39
- "2019-02-04": ["설날 전날"],
40
- "2019-02-05": ["설날"],
41
- "2019-02-06": ["설날 다음 날"],
42
- "2019-03-01": ["3ㆍ1절"],
43
- "2019-05-05": ["어린이날"],
44
- "2019-05-06": ["대체공휴일(어린이날)"],
45
- "2019-05-12": ["부처님 오신 날"],
46
- "2019-06-06": ["현충일"],
47
- "2019-08-15": ["광복절"],
48
- "2019-09-12": ["추석 전날"],
49
- "2019-09-13": ["추석"],
50
- "2019-09-14": ["추석 다음 날"],
51
- "2019-10-03": ["개천절"],
52
- "2019-10-09": ["한글날"],
53
- "2019-12-25": ["기독탄신일"]
54
- };
55
- //#endregion
56
- //#region src/holidays/2020.ts
57
- const y2020 = {
58
- "2020-01-01": ["1월 1일"],
59
- "2020-01-24": ["설날 전날"],
60
- "2020-01-25": ["설날"],
61
- "2020-01-26": ["설날 다음 날"],
62
- "2020-01-27": ["대체공휴일(설날)"],
63
- "2020-03-01": ["3ㆍ1절"],
64
- "2020-04-15": ["제21대 국회의원선거"],
65
- "2020-04-30": ["부처님 오신 날"],
66
- "2020-05-05": ["어린이날"],
67
- "2020-06-06": ["현충일"],
68
- "2020-08-15": ["광복절"],
69
- "2020-08-17": ["임시공휴일"],
70
- "2020-09-30": ["추석 전날"],
71
- "2020-10-01": ["추석"],
72
- "2020-10-02": ["추석 다음 날"],
73
- "2020-10-03": ["개천절"],
74
- "2020-10-09": ["한글날"],
75
- "2020-12-25": ["기독탄신일"]
76
- };
77
- //#endregion
78
- //#region src/holidays/2021.ts
79
- const y2021 = {
80
- "2021-01-01": ["1월 1일"],
81
- "2021-02-11": ["설날 전날"],
82
- "2021-02-12": ["설날"],
83
- "2021-02-13": ["설날 다음 날"],
84
- "2021-03-01": ["3ㆍ1절"],
85
- "2021-05-05": ["어린이날"],
86
- "2021-05-19": ["부처님 오신 날"],
87
- "2021-06-06": ["현충일"],
88
- "2021-08-15": ["광복절"],
89
- "2021-08-16": ["대체공휴일(광복절)"],
90
- "2021-09-20": ["추석 전날"],
91
- "2021-09-21": ["추석"],
92
- "2021-09-22": ["추석 다음 날"],
93
- "2021-10-03": ["개천절"],
94
- "2021-10-04": ["대체공휴일(개천절)"],
95
- "2021-10-09": ["한글날"],
96
- "2021-10-11": ["대체공휴일(한글날)"],
97
- "2021-12-25": ["기독탄신일"]
98
- };
99
- //#endregion
100
- //#region src/holidays/2022.ts
101
- const y2022 = {
102
- "2022-01-01": ["1월 1일"],
103
- "2022-01-31": ["설날 전날"],
104
- "2022-02-01": ["설날"],
105
- "2022-02-02": ["설날 다음 날"],
106
- "2022-03-01": ["3ㆍ1절"],
107
- "2022-03-09": ["대통령선거"],
108
- "2022-05-05": ["어린이날"],
109
- "2022-05-08": ["부처님 오신 날"],
110
- "2022-06-01": ["전국동시지방선거"],
111
- "2022-06-06": ["현충일"],
112
- "2022-08-15": ["광복절"],
113
- "2022-09-09": ["추석 전날"],
114
- "2022-09-10": ["추석"],
115
- "2022-09-11": ["추석 다음 날"],
116
- "2022-09-12": ["대체공휴일(추석)"],
117
- "2022-10-03": ["개천절"],
118
- "2022-10-09": ["한글날"],
119
- "2022-10-10": ["대체공휴일(한글날)"],
120
- "2022-12-25": ["기독탄신일"]
121
- };
122
- //#endregion
123
- //#region src/holidays/2023.ts
124
- const y2023 = {
125
- "2023-01-01": ["1월 1일"],
126
- "2023-01-21": ["설날 전날"],
127
- "2023-01-22": ["설날"],
128
- "2023-01-23": ["설날 다음 날"],
129
- "2023-01-24": ["대체공휴일(설날)"],
130
- "2023-03-01": ["3ㆍ1절"],
131
- "2023-05-05": ["어린이날"],
132
- "2023-05-27": ["부처님 오신 날"],
133
- "2023-05-29": ["대체공휴일(부처님 오신 날)"],
134
- "2023-06-06": ["현충일"],
135
- "2023-08-15": ["광복절"],
136
- "2023-09-28": ["추석 전날"],
137
- "2023-09-29": ["추석"],
138
- "2023-09-30": ["추석 다음 날"],
139
- "2023-10-02": ["임시공휴일"],
140
- "2023-10-03": ["개천절"],
141
- "2023-10-09": ["한글날"],
142
- "2023-12-25": ["기독탄신일"]
143
- };
144
- //#endregion
145
- //#region src/holidays/2024.ts
146
- const y2024 = {
147
- "2024-01-01": ["1월 1일"],
148
- "2024-02-09": ["설날 전날"],
149
- "2024-02-10": ["설날"],
150
- "2024-02-11": ["설날 다음 날"],
151
- "2024-02-12": ["대체공휴일(설날)"],
152
- "2024-03-01": ["3ㆍ1절"],
153
- "2024-04-10": ["제22대국회의원선거"],
154
- "2024-05-05": ["어린이날"],
155
- "2024-05-06": ["대체공휴일(어린이날)"],
156
- "2024-05-15": ["부처님 오신 날"],
157
- "2024-06-06": ["현충일"],
158
- "2024-08-15": ["광복절"],
159
- "2024-09-16": ["추석 전날"],
160
- "2024-09-17": ["추석"],
161
- "2024-09-18": ["추석 다음 날"],
162
- "2024-10-01": ["임시공휴일"],
163
- "2024-10-03": ["개천절"],
164
- "2024-10-09": ["한글날"],
165
- "2024-12-25": ["기독탄신일"]
166
- };
167
- //#endregion
168
- //#region src/holidays/2025.ts
169
- const y2025 = {
170
- "2025-01-01": ["1월 1일"],
171
- "2025-01-27": ["임시공휴일"],
172
- "2025-01-28": ["설날 전날"],
173
- "2025-01-29": ["설날"],
174
- "2025-01-30": ["설날 다음 날"],
175
- "2025-03-01": ["3ㆍ1절"],
176
- "2025-03-03": ["대체공휴일(3ㆍ1절)"],
177
- "2025-05-05": ["어린이날", "부처님 오신 날"],
178
- "2025-05-06": ["대체공휴일(부처님 오신 날)"],
179
- "2025-06-03": ["임시공휴일(대통령선거)"],
180
- "2025-06-06": ["현충일"],
181
- "2025-08-15": ["광복절"],
182
- "2025-10-03": ["개천절"],
183
- "2025-10-05": ["추석 전날"],
184
- "2025-10-06": ["추석"],
185
- "2025-10-07": ["추석 다음 날"],
186
- "2025-10-08": ["대체공휴일(추석)"],
187
- "2025-10-09": ["한글날"],
188
- "2025-12-25": ["기독탄신일"]
189
- };
190
- //#endregion
191
- //#region src/holidays/2026.ts
192
- const y2026 = {
193
- "2026-01-01": ["1월 1일"],
194
- "2026-02-16": ["설날 전날"],
195
- "2026-02-17": ["설날"],
196
- "2026-02-18": ["설날 다음 날"],
197
- "2026-03-01": ["3ㆍ1절"],
198
- "2026-03-02": ["대체공휴일(3ㆍ1절)"],
199
- "2026-05-01": ["노동절"],
200
- "2026-05-05": ["어린이날"],
201
- "2026-05-24": ["부처님 오신 날"],
202
- "2026-05-25": ["대체공휴일(부처님 오신 날)"],
203
- "2026-06-03": ["전국동시지방선거"],
204
- "2026-06-06": ["현충일"],
205
- "2026-07-17": ["제헌절"],
206
- "2026-08-15": ["광복절"],
207
- "2026-08-17": ["대체공휴일(광복절)"],
208
- "2026-09-24": ["추석 전날"],
209
- "2026-09-25": ["추석"],
210
- "2026-09-26": ["추석 다음 날"],
211
- "2026-10-03": ["개천절"],
212
- "2026-10-05": ["대체공휴일(개천절)"],
213
- "2026-10-09": ["한글날"],
214
- "2026-12-25": ["기독탄신일"]
215
- };
216
- //#endregion
217
- //#region src/holidays/2027.ts
218
- const y2027 = {
219
- "2027-01-01": ["1월 1일"],
220
- "2027-02-06": ["설날 전날"],
221
- "2027-02-07": ["설날"],
222
- "2027-02-08": ["설날 다음 날"],
223
- "2027-02-09": ["대체공휴일(설날)"],
224
- "2027-03-01": ["3ㆍ1절"],
225
- "2027-05-01": ["노동절"],
226
- "2027-05-03": ["대체공휴일(노동절)"],
227
- "2027-05-05": ["어린이날"],
228
- "2027-05-13": ["부처님 오신 날"],
229
- "2027-06-06": ["현충일"],
230
- "2027-07-17": ["제헌절"],
231
- "2027-07-19": ["대체공휴일(제헌절)"],
232
- "2027-08-15": ["광복절"],
233
- "2027-08-16": ["대체공휴일(광복절)"],
234
- "2027-09-14": ["추석 전날"],
235
- "2027-09-15": ["추석"],
236
- "2027-09-16": ["추석 다음 날"],
237
- "2027-10-03": ["개천절"],
238
- "2027-10-04": ["대체공휴일(개천절)"],
239
- "2027-10-09": ["한글날"],
240
- "2027-10-11": ["대체공휴일(한글날)"],
241
- "2027-12-25": ["기독탄신일"],
242
- "2027-12-27": ["대체공휴일(기독탄신일)"]
243
- };
244
- //#endregion
245
- //#region src/holidays.ts
246
- var holidays_exports = /* @__PURE__ */ __exportAll({
247
- y2018: () => y2018,
248
- y2019: () => y2019,
249
- y2020: () => y2020,
250
- y2021: () => y2021,
251
- y2022: () => y2022,
252
- y2023: () => y2023,
253
- y2024: () => y2024,
254
- y2025: () => y2025,
255
- y2026: () => y2026,
256
- y2027: () => y2027
257
- });
258
- //#endregion
259
- //#region src/holidays.latest.ts
260
- var holidays_latest_exports = /* @__PURE__ */ __exportAll({
261
- y2026: () => y2026,
262
- y2027: () => y2027
263
- });
264
- //#endregion
265
- //#region src/index.ts
266
- const KST_OFFSET = 540 * 6e4;
267
- const createFn = (presets) => (date) => {
268
- if (!(date instanceof Date)) throw new TypeError(`${date} is not a Date`);
269
- const yyyy_mm_dd = new Date(date.valueOf() + KST_OFFSET).toISOString().slice(0, 10);
270
- const yyyy = yyyy_mm_dd.slice(0, 4);
271
- const preset = presets[`y${yyyy}`];
272
- if (!preset) throw new RangeError(`Missing holiday preset for year ${yyyy}.`);
273
- return preset[yyyy_mm_dd] ?? null;
274
- };
275
- const getHolidayNames = createFn(holidays_latest_exports);
276
- const getHolidayNamesE = createFn(holidays_exports);
277
- const isHoliday = (date) => !!getHolidayNames(date);
278
- const isHolidayE = (date) => !!getHolidayNamesE(date);
279
- {
280
- const yyyy = new Date(Date.now() + KST_OFFSET).getUTCFullYear();
281
- if (!(`y${yyyy}` in holidays_latest_exports)) console.warn(`Missing holiday preset for year ${yyyy}. Please update the package.`);
282
- }
283
- //#endregion
284
- exports.getHolidayNames = getHolidayNames;
285
- exports.getHolidayNamesE = getHolidayNamesE;
286
- exports.isHoliday = isHoliday;
287
- exports.isHolidayE = isHolidayE;
288
- exports.y2018 = y2018;
289
- exports.y2019 = y2019;
290
- exports.y2020 = y2020;
291
- exports.y2021 = y2021;
292
- exports.y2022 = y2022;
293
- exports.y2023 = y2023;
294
- exports.y2024 = y2024;
295
- exports.y2025 = y2025;
296
- exports.y2026 = y2026;
297
- exports.y2027 = y2027;