@itsmworkbench/utils
Version:
The usual utility functions
26 lines (25 loc) • 863 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.calculateSinceDate = exports.DateTimeService = void 0;
const DateTimeService = () => Date.now();
exports.DateTimeService = DateTimeService;
const calculateSinceDate = (timeService) => (relativeTime) => {
const now = new Date(timeService());
const value = parseInt(relativeTime.slice(0, -1));
const unit = relativeTime.slice(-1);
switch (unit) {
case 'd':
now.setDate(now.getDate() - value);
break;
case 'h':
now.setHours(now.getHours() - value);
break;
case 'm':
now.setMinutes(now.getMinutes() - value);
break;
default:
throw new Error(`Unsupported time unit: ${unit}`);
}
return now;
};
exports.calculateSinceDate = calculateSinceDate;
;