@date/holidays-us
Advanced tools
Comparing version 0.1.0 to 0.2.0
@@ -0,4 +1,12 @@ | ||
0.2.0 - 2016/06/30 | ||
1. removed "observed" from holidays which don't have them (copy-paste mistake) | ||
2. correct assigning "bank:true" only when the holiday is a weekday | ||
3. separate holiday generator into *public* and *bank* holiday generators | ||
4. provide all by default, add two subfunctions to provide them individually | ||
5. updated testing to match above changes | ||
6. corrected Halloween which was using month 10 instead of 9 (Date's months are -1) | ||
0.1.0 - 2016/06/30 | ||
1. initial working version with tests |
124
lib/index.js
// Generated by CoffeeScript 1.10.0 | ||
var gen, holidays, pushHolidayFromDate; | ||
var Holidays, gen, generateBankHolidays, generatePublicHolidays, holidays, pushHolidayFromDate; | ||
gen = require('@date/generator')(); | ||
holidays = require('@date/holidays')(); | ||
Holidays = require('@date/holidays'); | ||
holidays = Holidays(); | ||
holidays.newYearsDay = function(year) { | ||
@@ -67,3 +69,3 @@ var date; | ||
holidays.halloween = function(year) { | ||
return new Date(year, 10, 31); | ||
return new Date(year, 9, 31); | ||
}; | ||
@@ -117,10 +119,42 @@ | ||
holidays.add(function(year) { | ||
var date, holidayArray, info, observedInfo; | ||
generatePublicHolidays = function(year) { | ||
var date, holidayArray, info; | ||
holidayArray = []; | ||
date = holidays.valentinesDay(year); | ||
info = { | ||
name: 'Valentine\'s Day', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
date = holidays.mothersDay(year); | ||
info = { | ||
name: 'Mother\'s Day', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
date = holidays.fathersDay(year); | ||
info = { | ||
name: 'Father\'s Day', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
date = holidays.halloween(year); | ||
info = { | ||
name: 'Halloween', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
return holidayArray; | ||
}; | ||
generateBankHolidays = function(year) { | ||
var date, holidayArray, info, observedInfo, ref, ref1, ref2, ref3; | ||
holidayArray = []; | ||
date = holidays.newYearsDay(year); | ||
info = { | ||
name: 'New Year\'s Day', | ||
bank: true | ||
name: 'New Year\'s Day' | ||
}; | ||
if ((0 < (ref = date.getDay()) && ref < 6)) { | ||
info.bank = true; | ||
} | ||
observedInfo = { | ||
@@ -131,8 +165,2 @@ name: 'New Year\'s Day (Observed)', | ||
pushHolidayFromDate(holidayArray, date, info, observedInfo); | ||
date = holidays.valentinesDay(year); | ||
info = { | ||
name: 'Valentine\'s Day', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
date = holidays.martinLutherKingDay(year); | ||
@@ -149,12 +177,2 @@ info = { | ||
}; | ||
observedInfo = { | ||
name: 'President\'s Day (Observed)', | ||
bank: true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info, observedInfo); | ||
date = holidays.mothersDay(year); | ||
info = { | ||
name: 'Mother\'s Day', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
@@ -166,18 +184,10 @@ date = holidays.memorialDay(year); | ||
}; | ||
observedInfo = { | ||
name: 'Memorial Day (Observed)', | ||
bank: true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info, observedInfo); | ||
date = holidays.fathersDay(year); | ||
info = { | ||
name: 'Father\'s Day', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
date = holidays.independenceDay(year); | ||
info = { | ||
name: 'Independence Day', | ||
bank: true | ||
name: 'Independence Day' | ||
}; | ||
if ((0 < (ref1 = date.getDay()) && ref1 < 6)) { | ||
info.bank = true; | ||
} | ||
observedInfo = { | ||
@@ -193,7 +203,3 @@ name: 'Independence Day (Observed)', | ||
}; | ||
observedInfo = { | ||
name: 'Labor Day (Observed)', | ||
bank: true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info, observedInfo); | ||
pushHolidayFromDate(holidayArray, date, info); | ||
date = holidays.columbusDay(year); | ||
@@ -204,12 +210,2 @@ info = { | ||
}; | ||
observedInfo = { | ||
name: 'Columbus Day (Observed)', | ||
bank: true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info, observedInfo); | ||
date = holidays.halloween(year); | ||
info = { | ||
name: 'Halloween', | ||
"public": true | ||
}; | ||
pushHolidayFromDate(holidayArray, date, info); | ||
@@ -220,3 +216,3 @@ date = holidays.veteransDay(year); | ||
}; | ||
if (date.getDay() !== 6) { | ||
if ((0 < (ref2 = date.getDay()) && ref2 < 6)) { | ||
info.bank = true; | ||
@@ -237,5 +233,7 @@ } | ||
info = { | ||
name: 'Christmas Day', | ||
bank: true | ||
name: 'Christmas Day' | ||
}; | ||
if ((0 < (ref3 = date.getDay()) && ref3 < 6)) { | ||
info.bank = true; | ||
} | ||
observedInfo = { | ||
@@ -247,4 +245,22 @@ name: 'Christmas Day (Observed)', | ||
return holidayArray; | ||
}); | ||
}; | ||
holidays.add(generateBankHolidays); | ||
holidays.add(generatePublicHolidays); | ||
module.exports = holidays; | ||
module.exports.bank = function() { | ||
var bankHolidays; | ||
bankHolidays = Holidays(); | ||
bankHolidays.add(generateBankHolidays); | ||
return bankHolidays; | ||
}; | ||
module.exports["public"] = function() { | ||
var publicHolidays; | ||
publicHolidays = Holidays(); | ||
publicHolidays.add(generatePublicHolidays); | ||
return publicHolidays; | ||
}; |
{ | ||
"name": "@date/holidays-us", | ||
"version": "0.1.0", | ||
"version": "0.2.0", | ||
"description": "USA bank and (some) public holidays", | ||
@@ -5,0 +5,0 @@ "main": "lib", |
@@ -18,4 +18,4 @@ # @date/holidays-us | ||
```javascript | ||
// get Holidays instance with both public and bank holidays | ||
var holidays = require('@date/holidays-us') | ||
@@ -42,2 +42,35 @@ | ||
## Only Bank Holidays | ||
```javascript | ||
// this has only the bank holidays, not the 'public' ones | ||
var holidays = require('@date/holidays-us').bank() | ||
// returns false, Valentine's isn't a bank holiday | ||
holidays.isHoliday(new Date(2016, 1, 14)) | ||
// returns true, New Year's is a bank holiday | ||
holidays.isHoliday(new Date(2016, 0, 1)) | ||
``` | ||
## Only Public Holidays | ||
```javascript | ||
// this has only the non-bank holidays | ||
var holidays = require('@date/holidays-us').public() | ||
// returns true, Valentine's is a public holiday | ||
holidays.isHoliday(new Date(2016, 1, 14)) | ||
// returns false, because New Year's is a bank holiday | ||
holidays.isHoliday(new Date(2016, 0, 1)) | ||
// NOTE: technically, I suppose the bank holidays are also | ||
// public holidays, but, if you want both, use the default | ||
// instance which has both | ||
``` | ||
## API: Generators | ||
@@ -51,3 +84,2 @@ | ||
4. presidentsDay() | ||
5. easter() | ||
6. mothersDay() | ||
@@ -54,0 +86,0 @@ 7. memorialDay() |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
12105
231
112
1