utils.mjs 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import { padZero } from "../utils/index.mjs";
  2. function parseFormat(format, currentTime) {
  3. const { days } = currentTime;
  4. let { hours, minutes, seconds, milliseconds } = currentTime;
  5. if (format.includes("DD")) {
  6. format = format.replace("DD", padZero(days));
  7. } else {
  8. hours += days * 24;
  9. }
  10. if (format.includes("HH")) {
  11. format = format.replace("HH", padZero(hours));
  12. } else {
  13. minutes += hours * 60;
  14. }
  15. if (format.includes("mm")) {
  16. format = format.replace("mm", padZero(minutes));
  17. } else {
  18. seconds += minutes * 60;
  19. }
  20. if (format.includes("ss")) {
  21. format = format.replace("ss", padZero(seconds));
  22. } else {
  23. milliseconds += seconds * 1e3;
  24. }
  25. if (format.includes("S")) {
  26. const ms = padZero(milliseconds, 3);
  27. if (format.includes("SSS")) {
  28. format = format.replace("SSS", ms);
  29. } else if (format.includes("SS")) {
  30. format = format.replace("SS", ms.slice(0, 2));
  31. } else {
  32. format = format.replace("S", ms.charAt(0));
  33. }
  34. }
  35. return format;
  36. }
  37. export {
  38. parseFormat
  39. };