diff --git a/packages/nestjs/package.json b/packages/nestjs/package.json index 16709da..2286dc4 100644 --- a/packages/nestjs/package.json +++ b/packages/nestjs/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/nestjs", - "version": "0.0.6", + "version": "0.0.8", "description": "The set of utilities for Nest.js", "homepage": "https://github.com/OasisDEX/common#readme", "main": "lib/src/index.js", diff --git a/packages/nestjs/src/database/database.columns.ts b/packages/nestjs/src/database/database.columns.ts new file mode 100644 index 0000000..2ed5bf3 --- /dev/null +++ b/packages/nestjs/src/database/database.columns.ts @@ -0,0 +1,35 @@ +/* eslint-disable func-style */ +import { Column } from 'typeorm'; +import { ColumnCommonOptions } from 'typeorm/decorator/options/ColumnCommonOptions'; +import { ColumnNumericOptions } from 'typeorm/decorator/options/ColumnNumericOptions'; +import { ColumnWithLengthOptions } from 'typeorm/decorator/options/ColumnWithLengthOptions'; +import { DatabaseTransformer } from './database.transformer'; + +export const Address = ( + options?: ColumnCommonOptions & ColumnWithLengthOptions, +): PropertyDecorator => + Column('char', { + length: 42, + transformer: DatabaseTransformer.lowercase, + ...options, + }); + +export const TransactionHash = ( + options?: ColumnCommonOptions & ColumnWithLengthOptions, +): PropertyDecorator => + Column('char', { length: 66, transformer: DatabaseTransformer.lowercase, ...options }); + +export const BigNumberIntColumn = ( + options?: ColumnCommonOptions & ColumnNumericOptions, +): PropertyDecorator => + Column('decimal', { + transformer: DatabaseTransformer.bignumber, + precision: 38, + scale: 0, + ...options, + }); + +export const BigNumberDecimalColumn = ( + options?: ColumnCommonOptions & ColumnNumericOptions, +): PropertyDecorator => + Column('decimal', { transformer: DatabaseTransformer.bignumber, ...options }); diff --git a/packages/nestjs/src/database/index.ts b/packages/nestjs/src/database/index.ts index d55b631..09e88da 100644 --- a/packages/nestjs/src/database/index.ts +++ b/packages/nestjs/src/database/index.ts @@ -1 +1,2 @@ export * from './database.transformer'; +export * from './database.columns';