# frozen_string_literal: true class Mutations::CreatePokemon < Mutations::BaseMutation graphql_name 'CreatePokemon' argument :pokedex_number, Int, required: true argument :nickname, String, required: false field :pokemon, Types::PokemonType, null: true field :errors, [String], null: false def resolve(nickname: nil, pokedex_number:) pkmn = Pokemon.new(nickname: nickname, pokedex_number: pokedex_number) if pkmn.save { pokemon: pkmn, errors: [], } else { pokemon: nil, errors: pkmn.errors.full_messages, } end end end