@thisisagile/easy
Version:
Straightforward library for building domain-driven microservice architectures
57 lines (55 loc) • 1.26 kB
JavaScript
import {
asNumber
} from "./chunk-HIM2UTGC.mjs";
import {
choose
} from "./chunk-AVHYDITZ.mjs";
import {
asString
} from "./chunk-NNA77YYC.mjs";
import {
isNumber,
isString
} from "./chunk-AAND4MKF.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-4GK27OOO.mjs.map