blob: af75115ba5df8515c3d636feb19c49a8a018892f (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 | function camelCaseToKebabCase(str: string): string {
  return str.replace(/[A-Z]/g, (m) => "-" + m.toLowerCase());
}
function prependNonEmpty<T>(
  object: T | null | undefined,
  prefix: string = " ",
): string {
  if (object == null) return "";
  const string = typeof object === "string" ? object : String(object);
  return string.length === 0 ? "" : prefix + string;
}
export const StringUtils = Object.freeze({
  camelCaseToKebabCase,
  prependNonEmpty,
});
function toFileNameString(date: Date, dateOnly?: boolean): string {
  const str = date.toISOString();
  return dateOnly === true
    ? str.slice(0, str.indexOf("T"))
    : str.replaceAll(/:|\./g, "-");
}
export const DateUtils = Object.freeze(
  {
    toFileNameString,
  } as const,
);
 |