UNPKG

@thisisagile/easy

Version:

Straightforward library for building domain-driven microservice architectures

1 lines 1.32 kB
{"version":3,"sources":["../src/utils/Seconds.ts"],"sourcesContent":["import { ifTrue } from './If';\nimport { toList } from '../types/List';\n\nexport const seconds = {\n toDuration: (s: number) => {\n const seconds = s % 60;\n const minutes = Math.floor(s / 60) % 60;\n const hours = Math.floor(s / 3600) % 24;\n const days = Math.floor(s / 86400);\n return { days, hours, minutes, seconds };\n },\n\n toText: (s: number): string => {\n const { days, hours, minutes, seconds: secs } = seconds.toDuration(s);\n return toList(ifTrue(days, `${days}d`), ifTrue(hours, `${hours}h`), ifTrue(minutes, `${minutes}m`), ifTrue(days + hours + minutes === 0, `${secs}s`))\n .mapDefined(s => s)\n .join(' ');\n },\n};\n"],"mappings":";;;;;;AAGO,IAAM,UAAU;AAAA,EACrB,YAAY,CAAC,MAAc;AACzB,UAAMA,WAAU,IAAI;AACpB,UAAM,UAAU,KAAK,MAAM,IAAI,EAAE,IAAI;AACrC,UAAM,QAAQ,KAAK,MAAM,IAAI,IAAI,IAAI;AACrC,UAAM,OAAO,KAAK,MAAM,IAAI,KAAK;AACjC,WAAO,EAAE,MAAM,OAAO,SAAS,SAAAA,SAAQ;AAAA,EACzC;AAAA,EAEA,QAAQ,CAAC,MAAsB;AAC7B,UAAM,EAAE,MAAM,OAAO,SAAS,SAAS,KAAK,IAAI,QAAQ,WAAW,CAAC;AACpE,WAAO,OAAO,OAAO,MAAM,GAAG,IAAI,GAAG,GAAG,OAAO,OAAO,GAAG,KAAK,GAAG,GAAG,OAAO,SAAS,GAAG,OAAO,GAAG,GAAG,OAAO,OAAO,QAAQ,YAAY,GAAG,GAAG,IAAI,GAAG,CAAC,EACjJ,WAAW,CAAAC,OAAKA,EAAC,EACjB,KAAK,GAAG;AAAA,EACb;AACF;","names":["seconds","s"]}