itty-time
Version:
Smaller and faster than ms.
2 lines (1 loc) • 317 B
JavaScript
;const e=36e5,t=24*e,o={year:315576e5,month:30*t,week:7*t,day:t,hour:e,minute:6e4,second:1e3,m:1};exports.duration=(e,{parts:t=9,join:r=", "}={})=>{let n,s=[];for(let[i,u]of Object.entries(o))e>=u&&t-- >0&&(e-=(n=e/u|0)*u,t||(n+=e/u),1==n&&"m"!=i||(i+="s"),s.push(r?n+" "+i:[i,n]));return r?s.join(r):s};