UNPKG

@chayns-components/devalue-slider

Version:
80 lines 2.5 kB
import { Language } from 'chayns-api'; export const addSeconds = (date, seconds) => { const result = new Date(date); result.setSeconds(date.getSeconds() + seconds); return result; }; export const subHours = (date, hours) => { const result = new Date(date); result.setHours(date.getHours() - hours); return result; }; export const differenceInHours = (date1, date2) => { const diffInMilliseconds = date1.getTime() - date2.getTime(); return Math.floor(diffInMilliseconds / (1000 * 60 * 60)); // Millisekunden in Stunden umrechnen }; export const getTimeTillNow = _ref => { let { date, currentDate, language = Language.English } = _ref; const diffInSeconds = Math.floor((currentDate.getTime() - date.getTime()) / 1000); const isPast = diffInSeconds > 0; const units = [{ label: 'year', seconds: 31536000 }, { label: 'month', seconds: 2592000 }, { label: 'day', seconds: 86400 }, { label: 'hour', seconds: 3600 }, { label: 'minute', seconds: 60 }, { label: 'second', seconds: 1 }]; const absDiff = Math.abs(diffInSeconds); const { label, seconds } = units.find(u => absDiff >= u.seconds) || { label: 'second', seconds: 1 }; const count = Math.floor(absDiff / seconds); const formatter = new Intl.RelativeTimeFormat(language, { numeric: 'auto' }); return formatter.format(isPast ? -count : count, label); }; export const intervalToDuration = interval => { const startTime = interval.start.getTime(); const endTime = interval.end.getTime(); const diffInMilliseconds = endTime - startTime; const years = Math.floor(diffInMilliseconds / (1000 * 60 * 60 * 24 * 365.25)); const months = Math.floor(diffInMilliseconds % (1000 * 60 * 60 * 24 * 365.25) / (1000 * 60 * 60 * 24 * 30)); const days = Math.floor(diffInMilliseconds % (1000 * 60 * 60 * 24 * 30) / (1000 * 60 * 60 * 24)); const hours = Math.floor(diffInMilliseconds % (1000 * 60 * 60 * 24) / (1000 * 60 * 60)); const minutes = Math.floor(diffInMilliseconds % (1000 * 60 * 60) / (1000 * 60)); const seconds = Math.floor(diffInMilliseconds % (1000 * 60) / 1000); return { years, months, days, hours, minutes, seconds }; }; export const differenceInMinutes = (date1, date2) => { const diffInMilliseconds = date1.getTime() - date2.getTime(); return Math.floor(diffInMilliseconds / (1000 * 60)); // Millisekunden in Minuten umrechnen }; //# sourceMappingURL=date.js.map