123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- "use strict";
- exports.__esModule = true;
- exports.parseTimeData = parseTimeData;
- exports.parseFormat = parseFormat;
- exports.isSameSecond = isSameSecond;
- var _string = require("../utils/format/string");
- var SECOND = 1000;
- var MINUTE = 60 * SECOND;
- var HOUR = 60 * MINUTE;
- var DAY = 24 * HOUR;
- function parseTimeData(time) {
- var days = Math.floor(time / DAY);
- var hours = Math.floor(time % DAY / HOUR);
- var minutes = Math.floor(time % HOUR / MINUTE);
- var seconds = Math.floor(time % MINUTE / SECOND);
- var milliseconds = Math.floor(time % SECOND);
- return {
- days: days,
- hours: hours,
- minutes: minutes,
- seconds: seconds,
- milliseconds: milliseconds
- };
- }
- function parseFormat(format, timeData) {
- var days = timeData.days;
- var hours = timeData.hours,
- minutes = timeData.minutes,
- seconds = timeData.seconds,
- milliseconds = timeData.milliseconds;
- if (format.indexOf('DD') === -1) {
- hours += days * 24;
- } else {
- format = format.replace('DD', (0, _string.padZero)(days));
- }
- if (format.indexOf('HH') === -1) {
- minutes += hours * 60;
- } else {
- format = format.replace('HH', (0, _string.padZero)(hours));
- }
- if (format.indexOf('mm') === -1) {
- seconds += minutes * 60;
- } else {
- format = format.replace('mm', (0, _string.padZero)(minutes));
- }
- if (format.indexOf('ss') === -1) {
- milliseconds += seconds * 1000;
- } else {
- format = format.replace('ss', (0, _string.padZero)(seconds));
- }
- if (format.indexOf('S') !== -1) {
- var ms = (0, _string.padZero)(milliseconds, 3);
- if (format.indexOf('SSS') !== -1) {
- format = format.replace('SSS', ms);
- } else if (format.indexOf('SS') !== -1) {
- format = format.replace('SS', ms.slice(0, 2));
- } else {
- format = format.replace('S', ms.charAt(0));
- }
- }
- return format;
- }
- function isSameSecond(time1, time2) {
- return Math.floor(time1 / 1000) === Math.floor(time2 / 1000);
- }
|