UNPKG

@polyv/utils

Version:

Utility functions of Polyv frontend development.

1 lines 984 B
"use strict";function ensureDate(e){return"object"!=typeof e&&(e=new Date(e)),e}function formatDate(e,t){var r={Y:(e=ensureDate(e)).getFullYear(),M:e.getMonth()+1,D:e.getDate(),h:e.getHours(),m:e.getMinutes(),s:e.getSeconds()};return t.replace(/([YMDhms])\1*/g,(function(e){var t=r[e[0]].toString(),n=e.length;return n>t.length&&(t=new Array(n-t.length+1).join("0")+t),t}))}function formatSeconds(e,t){if(void 0===t&&(t={segments:2,digits:2}),e=Number(e),isNaN(e)||e<0)throw new Error('"secs" must be a positive integer');var r=2;"auto"===t.segments&&e>=3600?r=3:"number"==typeof t.segments&&-1!==[2,3].indexOf(t.segments)&&(r=t.segments);var n=0|(t.digits||2);n=Math.max(1,n);var o=new Array(n+1).join("0"),s=[60,1];return 3===r&&s.unshift(3600),s.map((function(t){var r=Math.floor(e/t),s=r.toString().length;return e%=t,(o+r).slice(-Math.max(s,n))})).join(":")}Object.defineProperty(exports,"__esModule",{value:!0}),exports.formatDate=formatDate,exports.formatSeconds=formatSeconds;