Добавить пункт в подписку prisma graphql - PullRequest
0 голосов
/ 04 ноября 2019

Я хочу сгенерировать переменные whereput для подписки при создании новой схемы. Текущий код, который генерирует схему:

export const TournamentRoundSubscription = subscriptionField('tournamentRound', {
  type: 'TournamentRoundSubscriptionPayload',
  // where: 'TournamentRoundSubscriptionWhereInput',
  subscribe(root, args, ctx) {
    return ctx.prisma.$subscribe.tournamentRound() as any
  },
  resolve(payload) {
    return payload
  },
})

Несмотря на то, что при этом генерируется опция подписки, он не позволяет использовать оператор where в подписке, например:

 subscription updatedRoundSubscription($id: ID!) {
   tournamentRound(where: { node: { tournament: { id: $id } } }) {

В то время как связь-призматический документ, кажется, позволяет это:

  tournamentRound: {
    type: 'TournamentRoundSubscriptionPayload'
    args: Record<SubscriptionTournamentRoundArgs, core.NexusArgDef<string>>
    description: string
    list: undefined
    nullable: true
    resolve: (
      root: core.RootValue<"Subscription">,
      args: { where?: TournamentRoundSubscriptionWhereInput | null }  ,
      context: core.GetGen<"context">,
      info?: GraphQLResolveInfo
    ) => Promise<prisma.TournamentRoundSubscriptionPayload | null> | prisma.TournamentRoundSubscriptionPayload | null
  }
...