UNPKG

date-fns-jalali

Version:

Modern JavaScript date utility library for jalali calendar

37 lines (35 loc) 1.27 kB
"use strict"; exports.endOfDecade = endOfDecade; var _index = require("./toDate.js"); var _index2 = require("./_core/getFullYear.js"); var _index3 = require("./_core/setFullYear.js"); /** * @name endOfDecade * @category Decade Helpers * @summary Return the end of a decade for the given date. * * @description * Return the end of a decade for the given date. * * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). * * @param date - The original date * * @returns The end of a decade * * @example * // The end of a decade for 12 May 1984 00:00:00: * const result = endOfDecade(new Date(1984, 4, 12, 00, 00, 00)) * //=> Dec 31 1989 23:59:59.999 */ function endOfDecade(date) { // TODO: Switch to more technical definition in of decades that start with 1 // end with 0. I.e. 2001-2010 instead of current 2000-2009. It's a breaking // change, so it can only be done in 4.0. const _date = (0, _index.toDate)(date); const year = (0, _index2.getFullYear)(_date); const decade = 9 + Math.floor(year / 10) * 10; (0, _index3.setFullYear)(_date, decade + 1, 0, 0); _date.setHours(23, 59, 59, 999); return _date; }