1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- "use strict";
- exports.differenceInCalendarQuarters = differenceInCalendarQuarters;
- var _index = require("./_lib/normalizeDates.cjs");
- var _index2 = require("./getQuarter.cjs");
- /**
- * The {@link differenceInCalendarQuarters} function options.
- */
- /**
- * @name differenceInCalendarQuarters
- * @category Quarter Helpers
- * @summary Get the number of calendar quarters between the given dates.
- *
- * @description
- * Get the number of calendar quarters between the given dates.
- *
- * @param laterDate - The later date
- * @param earlierDate - The earlier date
- * @param options - An object with options
- *
- * @returns The number of calendar quarters
- *
- * @example
- * // How many calendar quarters are between 31 December 2013 and 2 July 2014?
- * const result = differenceInCalendarQuarters(
- * new Date(2014, 6, 2),
- * new Date(2013, 11, 31)
- * )
- * //=> 3
- */
- function differenceInCalendarQuarters(laterDate, earlierDate, options) {
- const [laterDate_, earlierDate_] = (0, _index.normalizeDates)(
- options?.in,
- laterDate,
- earlierDate,
- );
- const yearsDiff = laterDate_.getFullYear() - earlierDate_.getFullYear();
- const quartersDiff =
- (0, _index2.getQuarter)(laterDate_) - (0, _index2.getQuarter)(earlierDate_);
- return yearsDiff * 4 + quartersDiff;
- }
|