'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

var normalizeDates = require('./_lib/normalizeDates.cjs');
var startOfDay = require('./startOfDay.cjs');

/**
 * The {@link isSameDay} function options.
 */

/**
 * @name isSameDay
 * @category Day Helpers
 * @summary Are the given dates in the same day (and year and month)?
 *
 * @description
 * Are the given dates in the same day (and year and month)?
 *
 * @param laterDate - The first date to check
 * @param earlierDate - The second date to check
 * @param options - An object with options
 *
 * @returns The dates are in the same day (and year and month)
 *
 * @example
 * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?
 * const result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))
 * //=> true
 *
 * @example
 * // Are 4 September and 4 October in the same day?
 * const result = isSameDay(new Date(2014, 8, 4), new Date(2014, 9, 4))
 * //=> false
 *
 * @example
 * // Are 4 September, 2014 and 4 September, 2015 in the same day?
 * const result = isSameDay(new Date(2014, 8, 4), new Date(2015, 8, 4))
 * //=> false
 */
function isSameDay(laterDate, earlierDate, options) {
  const [dateLeft_, dateRight_] = normalizeDates.normalizeDates(
    options?.in,
    laterDate,
    earlierDate,
  );
  return +startOfDay.startOfDay(dateLeft_) === +startOfDay.startOfDay(dateRight_);
}

exports.default = isSameDay;
exports.isSameDay = isSameDay;
//# sourceMappingURL=isSameDay.cjs.map
