Sha256: 2dbaea2a55032b2b7ef782e5f06ed397a39cced16f721668f7ae4158fd1684e1

Contents?: true

Size: 878 Bytes

Versions: 28

Compression:

Stored size: 878 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module Proposals
    ProposalsType = GraphQL::ObjectType.define do
      interfaces [-> { Decidim::Core::ComponentInterface }]

      name "Proposals"
      description "A proposals component of a participatory space."

      connection :proposals, ProposalType.connection_type do
        resolve ->(component, _args, _ctx) {
                  ProposalsTypeHelper.base_scope(component).includes(:component)
                }
      end

      field(:proposal, ProposalType) do
        argument :id, !types.ID

        resolve ->(component, args, _ctx) {
          ProposalsTypeHelper.base_scope(component).find_by(id: args[:id])
        }
      end
    end

    module ProposalsTypeHelper
      def self.base_scope(component)
        Proposal
          .where(component: component)
          .published
      end
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
decidim-proposals-0.20.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.20.0 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.19.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.18.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.19.0 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.17.2 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.18.0 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.17.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.16.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.17.0 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.16.0 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.15.2 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.15.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.15.0 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.14.4 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.14.3 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.14.2 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.14.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.13.1 app/types/decidim/proposals/proposals_type.rb
decidim-proposals-0.12.2 app/types/decidim/proposals/proposals_type.rb