Module: Decidim::Core::ParticipatorySpaceInterface

Includes:
Api::Types::BaseInterface
Defined in:
decidim-core/lib/decidim/api/interfaces/participatory_space_interface.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.resolve_type(obj, _ctx) ⇒ Object



42
43
44
# File 'decidim-core/lib/decidim/api/interfaces/participatory_space_interface.rb', line 42

def self.resolve_type(obj, _ctx)
  obj.manifest.query_type.constantize
end

Instance Method Details

#components(filter: {}, order: {}) ⇒ Object



30
31
32
# File 'decidim-core/lib/decidim/api/interfaces/participatory_space_interface.rb', line 30

def components(filter: {}, order: {})
  ComponentList.new.call(object, { filter:, order: }, context)
end

#manifestObject



26
27
28
# File 'decidim-core/lib/decidim/api/interfaces/participatory_space_interface.rb', line 26

def manifest
  ParticipatorySpaceManifestPresenter.new(object.manifest, object.organization)
end

#statsObject



34
35
36
37
38
39
40
# File 'decidim-core/lib/decidim/api/interfaces/participatory_space_interface.rb', line 34

def stats
  return if object.respond_to?(:show_statistics) && !object.show_statistics

  Decidim::ParticipatoryProcesses::ParticipatoryProcessStatsPresenter.new(participatory_process: object).collection.map do |stat|
    [object.organization, stat]
  end
end

#typeObject



22
23
24
# File 'decidim-core/lib/decidim/api/interfaces/participatory_space_interface.rb', line 22

def type
  object.class.name
end