2025-05-14 21:45:16 +02:00

35 lines
1.2 KiB
TypeScript

import { InputType, ArgsType, Field } from 'type-graphql';
import { GetManyArgs } from '@seed/graphql/Request';
import { CountryBaseSchema } from './country.schema';
import { CountryCodesComponentEnum } from '@seed/services/geolocation/components/countries';
import { TranslatableComponent } from '@src/__components/components';
import { CurrencyCodesComponentEnum } from '../country.components';
@InputType()
export class CountryNewInputSchema extends CountryBaseSchema {
@Field(() => TranslatableComponent)
countryName: TranslatableComponent;
@Field(() => CountryCodesComponentEnum)
countryCode: CountryCodesComponentEnum;
@Field(() => [CurrencyCodesComponentEnum])
currencyCodes: CurrencyCodesComponentEnum[];
}
@InputType()
export class CountryEditInputSchema implements Partial<CountryBaseSchema> {
@Field(() => TranslatableComponent, { nullable: true })
countryName?: TranslatableComponent;
@Field(() => CountryCodesComponentEnum, { nullable: true })
countryCode?: CountryCodesComponentEnum;
@Field(() => [CurrencyCodesComponentEnum], { nullable: true })
currencyCodes?: CurrencyCodesComponentEnum[];
}
@ArgsType()
export class CountryArgsSchema extends GetManyArgs {}