UNPKG

@thisisagile/easy

Version:

Straightforward library for building domain-driven microservice architectures

57 lines (55 loc) 1.26 kB
import { asNumber } from "./chunk-3FE4R6I2.mjs"; import { choose } from "./chunk-XAIHCZT4.mjs"; import { asString } from "./chunk-BDA5LB4S.mjs"; import { isNumber, isString } from "./chunk-DEJ7A5PY.mjs"; // src/types/CacheAge.ts var ageNumber = (s) => asNumber(s.replace(/[a-z]/g, "")); var cacheAge = { toMilliseconds: (ca) => choose(asString(ca)).case( (c) => c.endsWith("ms"), (c) => ageNumber(c) ).case( (c) => c.endsWith("s"), (c) => ageNumber(c) * 1e3 ).case( (c) => c.endsWith("m"), (c) => ageNumber(c) * 60 * 1e3 ).case( (c) => c.endsWith("h"), (c) => ageNumber(c) * 3600 * 1e3 ).case( (c) => c.endsWith("d"), (c) => ageNumber(c) * 24 * 3600 * 1e3 ).else(ca), toSeconds: (ca) => choose(asString(ca)).case( (c) => c.endsWith("ms"), (c) => ageNumber(c) / 1e3 ).case( (c) => c.endsWith("s"), (c) => ageNumber(c) ).case( (c) => c.endsWith("m"), (c) => ageNumber(c) * 60 ).case( (c) => c.endsWith("h"), (c) => ageNumber(c) * 3600 ).case( (c) => c.endsWith("d"), (c) => ageNumber(c) * 24 * 3600 ).else(ca) }; var isCacheAge = (ca) => isString(ca) || isNumber(ca); export { cacheAge, isCacheAge }; //# sourceMappingURL=chunk-XQY3WWRY.mjs.map