import { GetArgs } from '@lib/seed/graphql/Request'; import { LocaleInfo, OrderStatusEnum } from '@services/module-payments/components/components.orders'; import { PaymentStatusEnum } from '@services/module-payments/components/components.payments'; import { AvailableTranslation, BuyerInfoComponent } from '@src/__components/components'; import { ArgsType, Field, InputType, ObjectType } from 'type-graphql'; @ArgsType() export class OrderArgs { @Field(() => OrderStatusEnum, { nullable: true }) orderStatus?: OrderStatusEnum; @Field(() => PaymentStatusEnum, { nullable: true }) paymentStatus?: PaymentStatusEnum; @Field(() => GetArgs, { nullable: true }) pagination?: GetArgs; @Field({ nullable: true }) search?: string; } @ArgsType() export class OrderBusinessArgs { @Field(() => [OrderStatusEnum], { nullable: true }) orderStatus?: OrderStatusEnum[]; @Field(() => GetArgs, { nullable: true }) pagination?: GetArgs; } @ObjectType() @InputType('CheckoutEngineInputI') export class CheckoutEngineInput { @Field(() => BuyerInfoComponent) contactInfo: BuyerInfoComponent; @Field(() => BuyerInfoComponent) billingInfo: BuyerInfoComponent; @Field({ nullable: true }) token?: string; } @InputType() export class OrderEngineNewSchema { @Field(() => LocaleInfo, { nullable: true }) localeInfo?: AvailableTranslation; }