UNPKG

dot-beat-time

Version:

Convert legacy time to decimal internet time, or beats.

28 lines (22 loc) 754 B
// Math for calculating beats taken from the `beats` rust crate: https://docs.rs/beats function format(beats, long) { var beatsFixed = long ? beats.toFixed(2) : Math.floor(beats).toFixed(0); if (beats < 10) { return "@00".concat(beatsFixed); } else if (beats < 100) { return "@0".concat(beatsFixed); } return "@".concat(beatsFixed); } function wrap(beats) { return beats >= 1000 ? Math.abs(beats - 1000) : beats; } function fromDate(date, long) { var seconds = date.getUTCSeconds() + (date.getUTCMinutes() * 60 + (date.getUTCHours() + 1) * 3600); var beats = Math.round(seconds / 86.4 * 100) / 100; return format(wrap(beats), !!long); } function now(long) { return fromDate(new Date(), long); } export { fromDate, now };