18 lines
523 B
TypeScript
Executable File
18 lines
523 B
TypeScript
Executable File
// eslint-disable-next-line import/no-named-as-default
|
|
import Decimal from "decimal.js";
|
|
import { ValueTransformer } from "typeorm";
|
|
|
|
export class DecimalTransformer implements ValueTransformer {
|
|
to(value: Decimal | null): string | null {
|
|
return value ? value.toString() : "0";
|
|
}
|
|
|
|
from(value: string | null): number {
|
|
return value ? new Decimal(value).toNumber() : new Decimal(0).toNumber();
|
|
}
|
|
}
|
|
|
|
export function decimal(value: Decimal | number | string): number {
|
|
return new Decimal(value).toNumber();
|
|
}
|