_comuns/src/postgres.ts

32 lines
805 B
TypeScript

/**
* Trata um objeto para ser imput para postgres
* @param entrada
* @returns
*/
export const paraObjetoRegistroPg = (entrada: {
[k: string]: any
}): {
[k: string]: string | boolean | null | undefined | number
} => {
try {
return Object.fromEntries(
Object.entries(entrada).map(([k, v]) => [
k,
v === undefined || v == null
? v
: typeof v == "string" ||
typeof v == "number" ||
typeof v == "boolean"
? v
: JSON.stringify(v, null, 2),
]),
)
} catch (error) {
throw new Error(
`Erro na função paraObjetoRegistroPg: ${(error as Error).message} ${(error as Error).stack}`,
)
}
}
export const pgObjeto = paraObjetoRegistroPg
export const objetoPg = paraObjetoRegistroPg