1
0
Fork 0
mirror of synced 2024-09-02 10:41:09 +12:00
budibase/packages/common/node_modules/date-fns/is_same_week/index.js
2020-04-15 15:23:29 +01:00

41 lines
1.2 KiB
JavaScript

var startOfWeek = require('../start_of_week/index.js')
/**
* @category Week Helpers
* @summary Are the given dates in the same week?
*
* @description
* Are the given dates in the same week?
*
* @param {Date|String|Number} dateLeft - the first date to check
* @param {Date|String|Number} dateRight - the second date to check
* @param {Object} [options] - the object with options
* @param {Number} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)
* @returns {Boolean} the dates are in the same week
*
* @example
* // Are 31 August 2014 and 4 September 2014 in the same week?
* var result = isSameWeek(
* new Date(2014, 7, 31),
* new Date(2014, 8, 4)
* )
* //=> true
*
* @example
* // If week starts with Monday,
* // are 31 August 2014 and 4 September 2014 in the same week?
* var result = isSameWeek(
* new Date(2014, 7, 31),
* new Date(2014, 8, 4),
* {weekStartsOn: 1}
* )
* //=> false
*/
function isSameWeek (dirtyDateLeft, dirtyDateRight, dirtyOptions) {
var dateLeftStartOfWeek = startOfWeek(dirtyDateLeft, dirtyOptions)
var dateRightStartOfWeek = startOfWeek(dirtyDateRight, dirtyOptions)
return dateLeftStartOfWeek.getTime() === dateRightStartOfWeek.getTime()
}
module.exports = isSameWeek