UNPKG

@engine2/efa-utils

Version:

Library for EFA Apps utility functions

62 lines (49 loc) 1.67 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = calcTimeDiff; var _parse = _interopRequireDefault(require("date-fns/parse")); var _intervalToDuration = _interopRequireDefault(require("date-fns/intervalToDuration")); var _isBefore = _interopRequireDefault(require("date-fns/isBefore")); var _isEqual = _interopRequireDefault(require("date-fns/isEqual")); var _isValid = _interopRequireDefault(require("date-fns/isValid")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function calcTimeDiff(referenceValue, value) { var av = (0, _parse.default)(referenceValue, 'HHmm', new Date()); var cv = (0, _parse.default)(value, 'HHmm', new Date()); var cvValid = (0, _isValid.default)(cv); var avValid = (0, _isValid.default)(av); if (avValid && cvValid) { var equal = (0, _isEqual.default)(av, cv); if (!equal) { var isReferenceBefore = (0, _isBefore.default)(av, cv); if (isReferenceBefore) { var diff = (0, _intervalToDuration.default)({ start: av, end: cv }); return { hours: Number(diff.hours), minutes: Number(diff.minutes), isReferenceBefore: isReferenceBefore }; } else { var _diff = (0, _intervalToDuration.default)({ start: cv, end: av }); return { hours: Number(_diff.hours), minutes: Number(_diff.minutes), isReferenceBefore: isReferenceBefore }; } } else { return null; } } else { return null; } } module.exports = exports.default;