Socket
Socket
Sign inDemoInstall

date-fns

Package Overview
Dependencies
0
Maintainers
3
Versions
200
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.16.0 to 0.17.0

index.js

11

bower.json
{
"name": "date-fns",
"version": "0.16.0",
"version": "0.17.0",
"homepage": "https://github.com/kossnocorp/date-fns",
"authors": [
"Sasha Koss <kossnocorp@gmail.com>"
],
"authors": ["Sasha Koss <kossnocorp@gmail.com>"],
"description": "Date helpers",
"main": "dist/date_fns.js",
"license": "MIT",
"ignore": [
"src",
"node_modules"
]
"ignore": ["src", "node_modules"]
}
# Changelog
## v0.17.0 (29 Sep 2015)
* Additions:
- `differenceInDays`
- `getTimeSinceMidnight`
* Improvements:
- `setISOWeek` now keeps time from original date
- Reuse `getDaysInMonth` inside of `addMonths`
- Complete UMD package (for Bower)
* Bug fixes:
- Fix a lot of bugs appearing when date is modifying into other time zone
(e.g., when adding months and original date is in DST but new date is not)
- Prevent instances of Date to lose milliseconds value when passed to
`parse` in IE10
## v0.16.0 (1 Sep 2015)

@@ -4,0 +19,0 @@

@@ -6,3 +6,3 @@ var path = require('path')

entry: {
'date_fns': './src/date_fns.js'
'date_fns': './index.js'
},

@@ -9,0 +9,0 @@ output: process.env.NODE_ENV == 'test' ? {path: '/'} : {

{
"name": "date-fns",
"version": "0.16.0",
"version": "0.17.0",
"author": "Sasha Koss <kossnocorp@gmail.com>",

@@ -12,4 +12,7 @@ "description": "Date helpers",

"devDependencies": {
"babel": "^5.8.23",
"babel-eslint": "^4.1.3",
"eslint": "1.2.1",
"eslint-config-toptal": "0.1.0",
"js-beautify": "^1.5.10",
"karma": "^0.13.9",

@@ -27,4 +30,8 @@ "karma-chai-sinon": "^0.1.3",

"lint": "eslint .",
"test-tz": "env TEST_TZ=true ./scripts/tz_test.sh"
"test-single-run": "./scripts/test_single_run.sh",
"test-tz": "env TEST_TZ=true ./scripts/test_tz.sh",
"test-tz-extended": "env TEST_TZ=true ./scripts/test_tz_extended.sh",
"generate-index": "babel-node ./scripts/generate_index",
"sync-versions": "babel-node ./scripts/sync_versions"
}
}

@@ -50,2 +50,3 @@ # date-fns

* [`subMilliseconds`](./src/sub_milliseconds.js) - subtracts milliseconds from passed date.
* [`getTimeSinceMidnight`](./src/get_time_since_midnight.js) - returns time since midnight in milliseconds.

@@ -98,2 +99,3 @@ ### Seconds helpers

* [`eachDay`](./src/each_day.js) - returns array of dates within specified range.
* [`differenceInDays`](./src/difference_in_days.js) - returns number of days between dates.

@@ -100,0 +102,0 @@ ### Week helpers

@@ -24,8 +24,3 @@ var setISOWeek = require('../set_iso_week')

})
it('sets hours and minutes to the start of the day', function() {
var result = setISOWeek(new Date(2015, 0, 1, 20, 0), 1)
expect(result).to.be.eql(new Date(2015, 0, 1, 0, 0, 0))
})
})
var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')

@@ -11,9 +12,5 @@ /**

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
date.setDate(date.getDate() + amount)
/**
* add additional 5 hours to get next day,
* because of possible troubles with daylight savings dates
*/
date = new Date(date.setTime(date.getTime() + 5 * 60 * 60 * 1000))
date = new Date(date.setHours(0, 0, 0, 0))
date.setHours(0, 0, 0, time)
return date

@@ -20,0 +17,0 @@ }

var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')
var getDaysInMonth = require('./get_days_in_month')

@@ -11,7 +13,8 @@ /**

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
var desiredMonth = date.getMonth() + amount
var daysInDesiredMonth = new Date(Date.UTC(date.getFullYear(), desiredMonth + 1, 0)).getUTCDate()
var daysInMonth = getDaysInMonth(new Date(date.getFullYear(), desiredMonth, 1))
date.setDate(Math.min(daysInDesiredMonth, date.getDate()))
date.setMonth(desiredMonth)
date.setMonth(desiredMonth, Math.min(daysInMonth, date.getDate()))
date.setHours(0, 0, 0, time)
return date

@@ -18,0 +21,0 @@ }

var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')

@@ -11,3 +12,5 @@ /**

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
date.setFullYear(date.getFullYear() + amount)
date.setHours(0, 0, 0, time)
return date

@@ -14,0 +17,0 @@ }

@@ -1,3 +0,2 @@

var startOfDay = require('./start_of_day')
var startOfYear = require('./start_of_year')
var getDayOfYear = require('./get_day_of_year')
var parse = require('./parse')

@@ -47,5 +46,3 @@

'DDD': function() {
var diffWithStartOfYear
= startOfDay(this).getTime() - startOfYear(this).getTime()
return Math.floor(diffWithStartOfYear / NUMBER_OF_MS_IN_DAY) + 1
return getDayOfYear(this)
},

@@ -52,0 +49,0 @@ 'DDDD': function() {

var parse = require('./parse')
var startOfYear = require('./start_of_year')
var differenceInDays = require('./difference_in_days')
var MILLISECONDS_IN_DAY = 86400000
/**

@@ -13,4 +12,4 @@ * Returns day of year of passed date.

var date = parse(dirtyDate)
var diff = date.valueOf() - startOfYear(date).valueOf()
var dayOfYear = Math.floor(diff / MILLISECONDS_IN_DAY) + 1
var diff = differenceInDays(date, startOfYear(date))
var dayOfYear = diff + 1
return dayOfYear

@@ -17,0 +16,0 @@ }

var parse = require('./parse')
var startOfDay = require('./start_of_day')
var startOfISOYear = require('./start_of_iso_year')

@@ -20,3 +21,3 @@

var date = parse(dirtyDate)
var diff = date.getTime() - startOfISOYear(date).getTime()
var diff = startOfDay(date).getTime() - startOfISOYear(date).getTime()
return Math.floor(diff / MILLISECONDS_IN_WEEK) + 1

@@ -23,0 +24,0 @@ }

@@ -15,3 +15,3 @@ var startOfISOYear = require('./start_of_iso_year')

var diff = nextYear.valueOf() - thisYear.valueOf()
return diff / MILLISECONDS_IN_WEEK
return Math.round(diff / MILLISECONDS_IN_WEEK)
}

@@ -18,0 +18,0 @@

@@ -36,3 +36,6 @@ var MILLISECONDS_IN_HOUR = 3600000

var parse = function(dateStr) {
if (typeof dateStr !== 'string') {
if (dateStr instanceof Date) {
// Prevent dates to lose milliseconds when passed to new Date() in IE10
return new Date(dateStr.getTime())
} else if (typeof dateStr !== 'string') {
return new Date(dateStr)

@@ -46,13 +49,18 @@ }

if (date) {
var time = 0
var offset
if (dateStrings.time) {
var time = parseTime(dateStrings.time)
date.setMilliseconds(date.getMilliseconds() + time)
time = parseTime(dateStrings.time)
}
if (dateStrings.timezone) {
var offset = parseTimezone(dateStrings.timezone)
date.setMinutes(date.getMinutes() - date.getTimezoneOffset() - offset)
offset = parseTimezone(dateStrings.timezone)
} else {
// get offset accurate to hour in timezones that change offset
offset = new Date(date + time).getTimezoneOffset()
offset = new Date(date + time + offset * MILLISECONDS_IN_MINUTE).getTimezoneOffset()
}
return date
return new Date(date + time + offset * MILLISECONDS_IN_MINUTE)
} else {

@@ -95,3 +103,3 @@ return new Date(dateStr)

var year = parseInt(token[1], 10)
return new Date(year, 0, 1)
return Date.UTC(year, 0, 1)

@@ -102,3 +110,3 @@ // YYYY-MM

var month = parseInt(token[2], 10) - 1
return new Date(year, month, 1)
return Date.UTC(year, month, 1)

@@ -109,3 +117,3 @@ // YYYY-DDD or YYYYDDD

var dayOfYear = parseInt(token[2], 10)
return new Date(year, 0, dayOfYear)
return Date.UTC(year, 0, dayOfYear)

@@ -117,3 +125,3 @@ // YYYY-MM-DD or YYYYMMDD

var day = parseInt(token[3], 10)
return new Date(year, month, day)
return Date.UTC(year, month, day)

@@ -180,3 +188,3 @@ // YYYY-Www or YYYYWww

var absoluteOffset = parseInt(token[2], 10) * 60
offset = (token[1] == '+') ? absoluteOffset : -absoluteOffset
offset = (token[1] == '+') ? - absoluteOffset : absoluteOffset

@@ -186,3 +194,3 @@ // ±hh:mm or ±hhmm

var absoluteOffset = parseInt(token[2], 10) * 60 + parseInt(token[3], 10)
offset = (token[1] == '+') ? absoluteOffset : -absoluteOffset
offset = (token[1] == '+') ? - absoluteOffset : absoluteOffset
}

@@ -196,6 +204,6 @@

day = day || 0
var date = new Date(isoYear, 0, 4)
var diff = week * 7 + day + 1 - date.getDay()
date.setDate(date.getDate() + diff)
return date
var date = new Date(Date.UTC(isoYear, 0, 4))
var diff = week * 7 + day + 1 - date.getUTCDay()
date.setUTCDate(date.getUTCDate() + diff)
return date.getTime()
}

@@ -202,0 +210,0 @@

var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')

@@ -11,3 +12,5 @@ /**

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
date.setDate(dayOfMonth)
date.setHours(0, 0, 0, time)
return date

@@ -14,0 +17,0 @@ }

var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')

@@ -11,4 +12,6 @@ /**

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
date.setMonth(0)
date.setDate(dayOfYear)
date.setHours(0, 0, 0, time)
return date

@@ -15,0 +18,0 @@ }

var parse = require('./parse')
var getISOWeek = require('./get_iso_week')
var startOfDay = require('./start_of_day')
var getTimeSinceMidnight = require('./get_time_since_midnight')
var MILLISECONDS_IN_WEEK = 604800000
/**

@@ -18,5 +16,7 @@ * Sets ISO week to given date, saving weekday number.

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
var diff = getISOWeek(date) - isoWeek
date.setTime(date.getTime() - diff * MILLISECONDS_IN_WEEK)
return startOfDay(date)
date.setDate(date.getDate() - diff * 7)
date.setHours(0, 0, 0, time)
return date
}

@@ -23,0 +23,0 @@

var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')
var startOfISOYear = require('./start_of_iso_year')
var differenceInDays = require('./difference_in_days')
var MILLISECONDS_IN_DAY = 86400000
/**

@@ -16,5 +20,9 @@ * Sets ISO week-numbering year to given date,

var date = parse(dirtyDate)
var startOfThisYear = startOfISOYear(date)
var diff = date.getTime() - startOfThisYear.getTime()
date.setTime(startOfISOYear(new Date(isoYear, 0, 4)).getTime() + diff)
var time = getTimeSinceMidnight(date)
var diff = differenceInDays(date, startOfISOYear(date))
date = startOfISOYear(new Date(isoYear, 0, 4))
date.setDate(date.getDate() + diff)
date.setHours(0, 0, 0, time)
return date

@@ -21,0 +29,0 @@ }

var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')
var getDaysInMonth = require('./get_days_in_month')

@@ -12,2 +13,3 @@

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
var year = date.getFullYear()

@@ -17,2 +19,3 @@ var day = date.getDate()

date.setMonth(monthIndex, Math.min(day, daysInMonth))
date.setHours(0, 0, 0, time)
return date

@@ -19,0 +22,0 @@ }

var parse = require('./parse')
var getTimeSinceMidnight = require('./get_time_since_midnight')

@@ -11,3 +12,5 @@ /**

var date = parse(dirtyDate)
var time = getTimeSinceMidnight(date)
date.setFullYear(fullYear)
date.setHours(0, 0, 0, time)
return date

@@ -14,0 +17,0 @@ }

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc