isSameDay.cjs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. "use strict";
  2. exports.isSameDay = isSameDay;
  3. var _index = require("./_lib/normalizeDates.cjs");
  4. var _index2 = require("./startOfDay.cjs");
  5. /**
  6. * The {@link isSameDay} function options.
  7. */
  8. /**
  9. * @name isSameDay
  10. * @category Day Helpers
  11. * @summary Are the given dates in the same day (and year and month)?
  12. *
  13. * @description
  14. * Are the given dates in the same day (and year and month)?
  15. *
  16. * @param laterDate - The first date to check
  17. * @param earlierDate - The second date to check
  18. * @param options - An object with options
  19. *
  20. * @returns The dates are in the same day (and year and month)
  21. *
  22. * @example
  23. * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?
  24. * const result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))
  25. * //=> true
  26. *
  27. * @example
  28. * // Are 4 September and 4 October in the same day?
  29. * const result = isSameDay(new Date(2014, 8, 4), new Date(2014, 9, 4))
  30. * //=> false
  31. *
  32. * @example
  33. * // Are 4 September, 2014 and 4 September, 2015 in the same day?
  34. * const result = isSameDay(new Date(2014, 8, 4), new Date(2015, 8, 4))
  35. * //=> false
  36. */
  37. function isSameDay(laterDate, earlierDate, options) {
  38. const [dateLeft_, dateRight_] = (0, _index.normalizeDates)(
  39. options?.in,
  40. laterDate,
  41. earlierDate,
  42. );
  43. return (
  44. +(0, _index2.startOfDay)(dateLeft_) === +(0, _index2.startOfDay)(dateRight_)
  45. );
  46. }