Sha256: d7fbb596994b3253d0fe4db8b7a89e2130e97dd890b68c2cd148080565f26c75

Contents?: true

Size: 557 Bytes

Versions: 2

Compression:

Stored size: 557 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module Meetings
    # This interface represents a categorizable object.
    ServicesInterface = GraphQL::InterfaceType.define do
      name "ServicesInterface"
      description "An interface that can be used with services."

      field :services, !types[ServiceType], "The object's services" do
        resolve ->(meeting, _args, _ctx) {
          return [] unless meeting.services.respond_to? :map

          meeting.services.map { |service| OpenStruct.new(service) }
        }
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
decidim-meetings-0.22.0 lib/decidim/api/services_interface.rb
decidim-meetings-0.21.0 lib/decidim/api/services_interface.rb