n8n/packages/cli/src/databases/utils/transformers.ts
Iván Ovejero 3ee384fd87
test: Fix failing tests on MySQL for Public API (#3520)
*  Generalize transformer

*  Use transformer

* 🧪 Fix expectations
2022-06-23 10:59:23 -07:00

21 lines
682 B
TypeScript

import { ValueTransformer } from 'typeorm';
export const idStringifier = {
from: (value: number): string | number => (typeof value === 'number' ? value.toString() : value),
to: (value: string): number | string => (typeof value === 'string' ? Number(value) : value),
};
export const lowerCaser = {
from: (value: string): string => value,
to: (value: string): string => (typeof value === 'string' ? value.toLowerCase() : value),
};
/**
* Unmarshal JSON as JS object.
*/
export const objectRetriever: ValueTransformer = {
to: (value: object): object => value,
from: (value: string | object): object =>
typeof value === 'string' ? (JSON.parse(value) as object) : value,
};