/* eslint-disable @typescript-eslint/no-explicit-any */ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */ import { Resolver, Query, Args, Ctx, Authorized } from 'type-graphql' import CONFIG from '../../config' import { GdtEntryList } from '../models/GdtEntryList' import { GdtTransactionSessionIdInput } from '../inputs/GdtInputs' import { apiGet } from '../../apis/HttpRequest' import { User as dbUser } from '../../typeorm/entity/User' @Resolver() export class GdtResolver { @Authorized() @Query(() => GdtEntryList) // eslint-disable-next-line @typescript-eslint/no-explicit-any async listGDTEntries( @Args() { currentPage = 1, pageSize = 5, order = 'DESC' }: GdtTransactionSessionIdInput, @Ctx() context: any, ): Promise { // load user const userEntity = await dbUser.findByPubkeyHex(context.pubKey) const resultGDT = await apiGet( `${CONFIG.GDT_API_URL}/GdtEntries/listPerEmailApi/${userEntity.email}/${currentPage}/${pageSize}/${order}`, ) if (!resultGDT.success) { throw new Error(resultGDT.data) } return new GdtEntryList(resultGDT.data) } }