"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = isSameSecond; var _index = _interopRequireDefault(require("../startOfSecond/index.js")); var _index2 = _interopRequireDefault(require("../_lib/requiredArgs/index.js")); /** * @name isSameSecond * @category Second Helpers * @summary Are the given dates in the same second (and hour and day)? * * @description * Are the given dates in the same second (and hour and day)? * * @param {Date|Number} dateLeft - the first date to check * @param {Date|Number} dateRight - the second date to check * @returns {Boolean} the dates are in the same second (and hour and day) * @throws {TypeError} 2 arguments required * * @example * // Are 4 September 2014 06:30:15.000 and 4 September 2014 06:30.15.500 in the same second? * const result = isSameSecond( * new Date(2014, 8, 4, 6, 30, 15), * new Date(2014, 8, 4, 6, 30, 15, 500) * ) * //=> true * * @example * // Are 4 September 2014 06:00:15.000 and 4 September 2014 06:01.15.000 in the same second? * const result = isSameSecond( * new Date(2014, 8, 4, 6, 0, 15), * new Date(2014, 8, 4, 6, 1, 15) * ) * //=> false * * @example * // Are 4 September 2014 06:00:15.000 and 5 September 2014 06:00.15.000 in the same second? * const result = isSameSecond( * new Date(2014, 8, 4, 6, 0, 15), * new Date(2014, 8, 5, 6, 0, 15) * ) * //=> false */ function isSameSecond(dirtyDateLeft, dirtyDateRight) { (0, _index2.default)(2, arguments); var dateLeftStartOfSecond = (0, _index.default)(dirtyDateLeft); var dateRightStartOfSecond = (0, _index.default)(dirtyDateRight); return dateLeftStartOfSecond.getTime() === dateRightStartOfSecond.getTime(); } module.exports = exports.default;