UNPKG

@engine2/efa-utils

Version:

Library for EFA Apps utility functions

56 lines (41 loc) 1.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = calcTripTime; 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")); var _addDays = _interopRequireDefault(require("date-fns/addDays")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function calcTripTime(takeOffTime, landingTime) { var tt = (0, _parse.default)(takeOffTime, 'HHmm', new Date()); var lt = (0, _parse.default)(landingTime, 'HHmm', new Date()); var ttValid = (0, _isValid.default)(tt); var ltValid = (0, _isValid.default)(lt); var addZero = function addZero(value) { return value < 10 ? "0".concat(value) : String(value); }; if (ttValid && ltValid) { var isReferenceBefore = (0, _isBefore.default)(tt, lt); if (isReferenceBefore) { var dur = (0, _intervalToDuration.default)({ start: tt, end: lt }); return "".concat(addZero(Number(dur.hours))).concat(addZero(Number(dur.minutes))); } else { var lt2 = (0, _addDays.default)(lt, 1); var _dur = (0, _intervalToDuration.default)({ start: tt, end: lt2 }); return "".concat(addZero(Number(_dur.hours))).concat(addZero(Number(_dur.minutes))); } } else { return null; } } module.exports = exports.default;