airline.rb 671 Bytes
module Queries
  class Airline < Base
    def define_fields
      field :airline, Types::Airline do
        description 'Get Airline'
        argument :id, types.Int
        resolve ->(obj, args, ctx) do
          ::Airline.find_by(id: args.id)
        end
      end
      field :airlines, Types::PaginatedCollection do
        description 'Get Airlines'
        argument :q, types.String
        argument :page, types.Int
        argument :per, types.Int
        argument :sort, types.String
        argument :includeInactive, types.Boolean
        resolve ->(obj, args, ctx) do
          Services::Airline::Search.run(args, ctx)
        end
      end
    end
  end
end