maisonsport-common-ui
Version:
Suite of styled-components to be consumed by the React-Native App and by the Web (via React-Native for Web)
38 lines (27 loc) • 1.42 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getFormattedTimeSent = getFormattedTimeSent;
var _differenceInMinutes = _interopRequireDefault(require("date-fns/differenceInMinutes"));
var _isYesterday = _interopRequireDefault(require("date-fns/isYesterday"));
var _isToday = _interopRequireDefault(require("date-fns/isToday"));
var _format = _interopRequireDefault(require("date-fns/format"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// eslint-disable-next-line import/prefer-default-export
function getFormattedTimeSent(timeSent, t, withTime = false) {
const justNowThreshold = 2;
const currentDateTime = new Date();
const timeSentDate = new Date(timeSent.replace(' ', 'T')); // convert to an accepted format for Date construction
if ((0, _differenceInMinutes.default)(currentDateTime, timeSentDate) > 0 && (0, _differenceInMinutes.default)(currentDateTime, timeSentDate) <= justNowThreshold) {
return t('text.general.time_just_now');
}
if ((0, _isYesterday.default)(timeSentDate)) {
return t('text.general.time_yesterday');
}
if ((0, _isToday.default)(timeSentDate)) {
return (0, _format.default)(timeSentDate, 'HH:mm');
}
return withTime ? (0, _format.default)(timeSentDate, 'dd/MM/yy HH:mm') : (0, _format.default)(timeSentDate, 'dd/MM/yy');
}
//# sourceMappingURL=dateTime.js.map