holidays-jp 2.0.0 → 2.0.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.
@@ -1,10 +1,10 @@
1
- export declare type HolidayInfo = {
1
+ export type HolidayInfo = {
2
2
  date: string;
3
3
  endDate: Date;
4
4
  name: string;
5
5
  startDate: Date;
6
6
  };
7
- export declare type HolidayMap = {
7
+ export type HolidayMap = {
8
8
  [key: string]: {
9
9
  [key: string]: {
10
10
  [key: string]: HolidayInfo;
@@ -21,12 +21,14 @@ export declare const holidayMap: HolidayMap;
21
21
  /**
22
22
  * get holiday info
23
23
  *
24
- * @param date
24
+ * @param date - target date
25
+ * @returns return holiday info if date is holiday, otherwise return null
25
26
  */
26
27
  export declare function getHolidayInfo(date: Date): HolidayInfo | null;
27
28
  /**
28
29
  * return true if date is holiday
29
30
  *
30
- * @param date
31
+ * @param date - target date
32
+ * @returns return true if date is holiday
31
33
  */
32
34
  export declare function isHoliday(date: Date): boolean;
package/dist/cjs/index.js CHANGED
@@ -2,15 +2,22 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isHoliday = exports.getHolidayInfo = exports.holidayMap = exports.holidays = void 0;
4
4
  const japanese_public_holidays_1 = require("japanese-public-holidays");
5
- const toString = Object.prototype.toString;
6
5
  // NOTE: JST is UTC+9:00
7
- const jstOffset = 1000 * 60 * 60 * 9;
6
+ const jstOffsetHour = 1000 * 60 * 60 * 9;
8
7
  // NOTE: find backward is faster than find forward maybe
9
8
  exports.holidays = japanese_public_holidays_1.holidays.reverse().map(function (holiday) {
10
9
  const { date, name } = holiday;
11
- const [year, month, day] = date.split('-').map((num) => parseInt(num, 10));
12
- const startDate = new Date(Date.UTC(year, month - 1, day, 0, 0, 0, 0) - jstOffset);
13
- const endDate = new Date(Date.UTC(year, month - 1, day + 1, 0, 0, 0, 0) - jstOffset - 1);
10
+ const [year, month, day] = date.split('-').map(Number);
11
+ if (year === undefined || month === undefined || day === undefined) {
12
+ return {
13
+ date,
14
+ endDate: new Date(''),
15
+ name,
16
+ startDate: new Date('')
17
+ };
18
+ }
19
+ const startDate = new Date(Date.UTC(year, month - 1, day, 0, 0, 0, 0) - jstOffsetHour);
20
+ const endDate = new Date(Date.UTC(year, month - 1, day + 1, 0, 0, 0, 0) - jstOffsetHour - 1);
14
21
  return {
15
22
  date,
16
23
  endDate,
@@ -21,48 +28,70 @@ exports.holidays = japanese_public_holidays_1.holidays.reverse().map(function (h
21
28
  exports.holidayMap = exports.holidays.reduce(function (result, holiday) {
22
29
  const { date } = holiday;
23
30
  const [year, month, day] = date.split('-');
24
- if (!result[year]) {
25
- result[year] = {};
31
+ if (year === undefined || month === undefined || day === undefined) {
32
+ return result;
26
33
  }
27
- if (!result[year][month]) {
28
- result[year][month] = {};
29
- }
30
- result[year][month][day] = holiday;
34
+ const yearObject = ensureKey(result, year);
35
+ const monthObject = ensureKey(yearObject, month);
36
+ monthObject[day] = holiday;
31
37
  return result;
32
38
  }, {});
33
39
  /**
34
40
  * get holiday info
35
41
  *
36
- * @param date
42
+ * @param date - target date
43
+ * @returns return holiday info if date is holiday, otherwise return null
37
44
  */
38
45
  function getHolidayInfo(date) {
39
- if (toString.call(date) !== '[object Date]') {
46
+ if (!isDate(date)) {
40
47
  throw new TypeError('date must be a Date: ' + date);
41
48
  }
42
- const jstDate = new Date(date.getTime() + jstOffset);
49
+ const jstDate = new Date(date.getTime() + jstOffsetHour);
43
50
  const m = jstDate.getUTCMonth() + 1;
44
51
  const d = jstDate.getUTCDate();
45
52
  const year = String(jstDate.getUTCFullYear());
46
53
  const month = m < 10 ? `0${m}` : String(m);
47
54
  const day = d < 10 ? `0${d}` : String(d);
48
- if (exports.holidayMap[year] &&
49
- exports.holidayMap[year][month] &&
50
- exports.holidayMap[year][month][day]) {
51
- return exports.holidayMap[year][month][day];
52
- }
53
- return null;
55
+ const yearObject = ensureKey(exports.holidayMap, year);
56
+ const monthObject = ensureKey(yearObject, month);
57
+ const result = monthObject[day];
58
+ return result === undefined ? null : result;
54
59
  }
55
60
  exports.getHolidayInfo = getHolidayInfo;
56
61
  /**
57
62
  * return true if date is holiday
58
63
  *
59
- * @param date
64
+ * @param date - target date
65
+ * @returns return true if date is holiday
60
66
  */
61
67
  function isHoliday(date) {
62
- if (toString.call(date) !== '[object Date]') {
68
+ if (!isDate(date)) {
63
69
  throw new TypeError('date must be a Date: ' + date);
64
70
  }
65
71
  return getHolidayInfo(date) !== null;
66
72
  }
67
73
  exports.isHoliday = isHoliday;
74
+ /** cache of Object.prototype.toString */
75
+ const toString = Object.prototype.toString;
76
+ /**
77
+ * return true if date is Date instance
78
+ *
79
+ * @param value - target value
80
+ * @returns return true if value is date
81
+ */
82
+ function isDate(value) {
83
+ return toString.call(value) === '[object Date]';
84
+ }
85
+ /**
86
+ * for TS2532
87
+ *
88
+ * @param object - target object
89
+ * @returns object
90
+ */
91
+ function ensureKey(object, key) {
92
+ if (!object[key]) {
93
+ object[key] = {};
94
+ }
95
+ return object[key];
96
+ }
68
97
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- export declare type HolidayInfo = {
1
+ export type HolidayInfo = {
2
2
  date: string;
3
3
  endDate: Date;
4
4
  name: string;
5
5
  startDate: Date;
6
6
  };
7
- export declare type HolidayMap = {
7
+ export type HolidayMap = {
8
8
  [key: string]: {
9
9
  [key: string]: {
10
10
  [key: string]: HolidayInfo;
@@ -21,12 +21,14 @@ export declare const holidayMap: HolidayMap;
21
21
  /**
22
22
  * get holiday info
23
23
  *
24
- * @param date
24
+ * @param date - target date
25
+ * @returns return holiday info if date is holiday, otherwise return null
25
26
  */
26
27
  export declare function getHolidayInfo(date: Date): HolidayInfo | null;
27
28
  /**
28
29
  * return true if date is holiday
29
30
  *
30
- * @param date
31
+ * @param date - target date
32
+ * @returns return true if date is holiday
31
33
  */
32
34
  export declare function isHoliday(date: Date): boolean;
package/dist/esm/index.js CHANGED
@@ -1,13 +1,20 @@
1
1
  import { holidays as baseHolidays } from 'japanese-public-holidays';
2
- const toString = Object.prototype.toString;
3
2
  // NOTE: JST is UTC+9:00
4
- const jstOffset = 1000 * 60 * 60 * 9;
3
+ const jstOffsetHour = 1000 * 60 * 60 * 9;
5
4
  // NOTE: find backward is faster than find forward maybe
6
5
  export const holidays = baseHolidays.reverse().map(function (holiday) {
7
6
  const { date, name } = holiday;
8
- const [year, month, day] = date.split('-').map((num) => parseInt(num, 10));
9
- const startDate = new Date(Date.UTC(year, month - 1, day, 0, 0, 0, 0) - jstOffset);
10
- const endDate = new Date(Date.UTC(year, month - 1, day + 1, 0, 0, 0, 0) - jstOffset - 1);
7
+ const [year, month, day] = date.split('-').map(Number);
8
+ if (year === undefined || month === undefined || day === undefined) {
9
+ return {
10
+ date,
11
+ endDate: new Date(''),
12
+ name,
13
+ startDate: new Date('')
14
+ };
15
+ }
16
+ const startDate = new Date(Date.UTC(year, month - 1, day, 0, 0, 0, 0) - jstOffsetHour);
17
+ const endDate = new Date(Date.UTC(year, month - 1, day + 1, 0, 0, 0, 0) - jstOffsetHour - 1);
11
18
  return {
12
19
  date,
13
20
  endDate,
@@ -18,46 +25,68 @@ export const holidays = baseHolidays.reverse().map(function (holiday) {
18
25
  export const holidayMap = holidays.reduce(function (result, holiday) {
19
26
  const { date } = holiday;
20
27
  const [year, month, day] = date.split('-');
21
- if (!result[year]) {
22
- result[year] = {};
28
+ if (year === undefined || month === undefined || day === undefined) {
29
+ return result;
23
30
  }
24
- if (!result[year][month]) {
25
- result[year][month] = {};
26
- }
27
- result[year][month][day] = holiday;
31
+ const yearObject = ensureKey(result, year);
32
+ const monthObject = ensureKey(yearObject, month);
33
+ monthObject[day] = holiday;
28
34
  return result;
29
35
  }, {});
30
36
  /**
31
37
  * get holiday info
32
38
  *
33
- * @param date
39
+ * @param date - target date
40
+ * @returns return holiday info if date is holiday, otherwise return null
34
41
  */
35
42
  export function getHolidayInfo(date) {
36
- if (toString.call(date) !== '[object Date]') {
43
+ if (!isDate(date)) {
37
44
  throw new TypeError('date must be a Date: ' + date);
38
45
  }
39
- const jstDate = new Date(date.getTime() + jstOffset);
46
+ const jstDate = new Date(date.getTime() + jstOffsetHour);
40
47
  const m = jstDate.getUTCMonth() + 1;
41
48
  const d = jstDate.getUTCDate();
42
49
  const year = String(jstDate.getUTCFullYear());
43
50
  const month = m < 10 ? `0${m}` : String(m);
44
51
  const day = d < 10 ? `0${d}` : String(d);
45
- if (holidayMap[year] &&
46
- holidayMap[year][month] &&
47
- holidayMap[year][month][day]) {
48
- return holidayMap[year][month][day];
49
- }
50
- return null;
52
+ const yearObject = ensureKey(holidayMap, year);
53
+ const monthObject = ensureKey(yearObject, month);
54
+ const result = monthObject[day];
55
+ return result === undefined ? null : result;
51
56
  }
52
57
  /**
53
58
  * return true if date is holiday
54
59
  *
55
- * @param date
60
+ * @param date - target date
61
+ * @returns return true if date is holiday
56
62
  */
57
63
  export function isHoliday(date) {
58
- if (toString.call(date) !== '[object Date]') {
64
+ if (!isDate(date)) {
59
65
  throw new TypeError('date must be a Date: ' + date);
60
66
  }
61
67
  return getHolidayInfo(date) !== null;
62
68
  }
69
+ /** cache of Object.prototype.toString */
70
+ const toString = Object.prototype.toString;
71
+ /**
72
+ * return true if date is Date instance
73
+ *
74
+ * @param value - target value
75
+ * @returns return true if value is date
76
+ */
77
+ function isDate(value) {
78
+ return toString.call(value) === '[object Date]';
79
+ }
80
+ /**
81
+ * for TS2532
82
+ *
83
+ * @param object - target object
84
+ * @returns object
85
+ */
86
+ function ensureKey(object, key) {
87
+ if (!object[key]) {
88
+ object[key] = {};
89
+ }
90
+ return object[key];
91
+ }
63
92
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAiBpE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;AAE3C,wBAAwB;AACxB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAErC,wDAAwD;AACxD,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,UAAU,OAAO;IAClE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAE/B,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAE3E,MAAM,SAAS,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CACvD,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,IAAI,CACtB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAC/D,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,SAAS;KACV,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAe,QAAQ,CAAC,MAAM,CAAC,UACpD,MAAkB,EAClB,OAAO;IAEP,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACzB,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QACjB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;KACnB;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;QACxB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;KAC1B;IAED,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;IAEnC,OAAO,MAAM,CAAC;AAChB,CAAC,EACD,EAAE,CAAC,CAAC;AAEJ;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,IAAU;IACvC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,eAAe,EAAE;QAC3C,MAAM,IAAI,SAAS,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;KACrD;IAED,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAC;IAErD,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IACpC,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAE/B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAEzC,IACE,UAAU,CAAC,IAAI,CAAC;QAChB,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;QACvB,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAC5B;QACA,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;KACrC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,IAAU;IAClC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,eAAe,EAAE;QAC3C,MAAM,IAAI,SAAS,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;KACrD;IAED,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -22,13 +22,15 @@ declare module "index" {
22
22
  /**
23
23
  * get holiday info
24
24
  *
25
- * @param date
25
+ * @param date - target date
26
+ * @returns return holiday info if date is holiday, otherwise return null
26
27
  */
27
28
  export function getHolidayInfo(date: Date): HolidayInfo | null;
28
29
  /**
29
30
  * return true if date is holiday
30
31
  *
31
- * @param date
32
+ * @param date - target date
33
+ * @returns return true if date is holiday
32
34
  */
33
35
  export function isHoliday(date: Date): boolean;
34
36
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "holidays-jp",
3
3
  "description": "get Japanese public holidays",
4
- "version": "2.0.0",
4
+ "version": "2.0.2",
5
5
  "author": "sasa+1 <sasaplus1@gmail.com>",
6
6
  "bin": {
7
7
  "holiday": "bin/holidays-jp.js",
@@ -11,17 +11,17 @@
11
11
  "japanese-public-holidays": "^3.0.6"
12
12
  },
13
13
  "devDependencies": {
14
- "@tsconfig/recommended": "^1.0.1",
14
+ "@tsconfig/strictest": "^2.0.1",
15
15
  "@types/node": "^18.0.0",
16
- "@typescript-eslint/eslint-plugin": "^5.0.0",
17
- "@typescript-eslint/parser": "^5.0.0",
16
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
17
+ "@typescript-eslint/parser": "^6.0.0",
18
18
  "eslint": "^8.0.0",
19
19
  "eslint-config-prettier": "^8.0.0",
20
20
  "eslint-plugin-node": "^11.0.0",
21
21
  "eslint-plugin-tsdoc": "^0.2.17",
22
22
  "npm-run-all": "^4.1.5",
23
- "prettier": "^2.2.1",
24
- "typescript": "^4.0.0"
23
+ "prettier": "^3.0.0",
24
+ "typescript": "^5.0.0"
25
25
  },
26
26
  "engines": {
27
27
  "node": ">=8.3"
@@ -29,7 +29,8 @@
29
29
  "exports": {
30
30
  ".": {
31
31
  "import": "./dist/esm/index.js",
32
- "require": "./dist/cjs/index.js"
32
+ "require": "./dist/cjs/index.js",
33
+ "types": "./dist/index.d.ts"
33
34
  }
34
35
  },
35
36
  "files": [