UNPKG

@itsmworkbench/utils

Version:

The usual utility functions

26 lines (25 loc) 863 B
"use strict"; 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;