UNPKG

@tsdotnet/date-time

Version:

[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](https://github.com/tsdotnet/date-time/blob/master/LICENSE) ![npm-publish](https://github.com/tsdotnet/date-time/workflows/npm-publish/badge.svg) [![npm version](htt

72 lines (70 loc) 2.48 kB
/*! * @author electricessence / https://github.com/electricessence/ * Originally based upon .NET source but with many additions and improvements. * @license MIT */ var TimeUnit; (function (TimeUnit) { let UnitType; (function (UnitType) { UnitType[UnitType["Ticks"] = 0] = "Ticks"; UnitType[UnitType["Milliseconds"] = 1] = "Milliseconds"; UnitType[UnitType["Seconds"] = 2] = "Seconds"; UnitType[UnitType["Minutes"] = 3] = "Minutes"; UnitType[UnitType["Hours"] = 4] = "Hours"; UnitType[UnitType["Days"] = 5] = "Days"; })(UnitType = TimeUnit.UnitType || (TimeUnit.UnitType = {})); function toMilliseconds(value, units) { switch (units) { case UnitType.Days: value *= 24; case UnitType.Hours: value *= 60; case UnitType.Minutes: value *= 60; case UnitType.Seconds: value *= 1000; case UnitType.Milliseconds: return value; case UnitType.Ticks: return value / 10000; default: throw new Error('Invalid TimeUnit.'); } } TimeUnit.toMilliseconds = toMilliseconds; function fromMilliseconds(ms, units) { switch (units) { case UnitType.Days: return ms / 86400000; case UnitType.Hours: return ms / 3600000; case UnitType.Minutes: return ms / 60000; case UnitType.Seconds: return ms / 1000; case UnitType.Milliseconds: return ms; case UnitType.Ticks: return ms * 10000; default: throw new Error('Invalid TimeUnit.'); } } TimeUnit.fromMilliseconds = fromMilliseconds; function from(quantity, toUnits) { return quantity && fromMilliseconds(quantity.getTotalMilliseconds(), toUnits); } TimeUnit.from = from; function assertValid(unit) { if (isNaN(unit) || unit > UnitType.Days || unit < UnitType.Ticks || Math.floor(unit) !== unit) throw new Error('Invalid TimeUnit.'); return true; } TimeUnit.assertValid = assertValid; })(TimeUnit || (TimeUnit = {})); Object.freeze(TimeUnit.UnitType); Object.freeze(TimeUnit); var TimeUnit$1 = TimeUnit; export { TimeUnit, TimeUnit$1 as default }; //# sourceMappingURL=TimeUnit.js.map