gradido/backend/src/graphql/arg/AdminCreateContributionArgs.ts
2023-08-11 10:39:53 +02:00

29 lines
733 B
TypeScript

import { IsEmail, MaxLength, MinLength } from 'class-validator'
import { Decimal } from 'decimal.js-light'
import { ArgsType, Field, InputType } from 'type-graphql'
import { MEMO_MAX_CHARS, MEMO_MIN_CHARS } from '@/graphql/resolver/const/const'
import { isValidDateString } from '@/graphql/validator/DateString'
import { IsPositiveDecimal } from '@/graphql/validator/Decimal'
@InputType()
@ArgsType()
export class AdminCreateContributionArgs {
@Field(() => String)
@IsEmail()
email: string
@Field(() => Decimal)
@IsPositiveDecimal()
amount: Decimal
@Field(() => String)
@MaxLength(MEMO_MAX_CHARS)
@MinLength(MEMO_MIN_CHARS)
memo: string
@Field(() => String)
@isValidDateString()
creationDate: string
}