Kyoo/api/src/utils.ts
2025-03-01 23:48:21 +01:00

17 lines
583 B
TypeScript

// remove indent in multi-line comments
export const comment = (str: TemplateStringsArray, ...values: any[]) =>
str
.reduce((acc, str, i) => `${acc}${values[i - 1]}${str}`)
.replace(/(^\s)|(\s+$)/g, "") // first & last whitespaces
.replace(/^[ \t]+/gm, "") // leading spaces
.replace(/([^\n])\n([^\n])/g, "$1 $2") // two lines to space separated line
.replace(/\n{2}/g, "\n"); // keep newline if there's an empty line
export function getYear(date: string) {
return new Date(date).getUTCFullYear();
}
export type Prettify<T> = {
[K in keyof T]: Prettify<T[K]>;
} & {};