decidim-participatory_processes 0.9.3 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/commands/decidim/participatory_processes/admin/activate_participatory_process_step.rb +34 -4
- data/app/commands/decidim/participatory_processes/admin/create_participatory_process.rb +25 -0
- data/app/commands/decidim/participatory_processes/admin/create_participatory_process_admin.rb +36 -5
- data/app/commands/decidim/participatory_processes/admin/create_participatory_process_step.rb +3 -1
- data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_admin.rb +53 -0
- data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_step.rb +16 -5
- data/app/commands/decidim/participatory_processes/admin/publish_participatory_process.rb +9 -3
- data/app/commands/decidim/participatory_processes/admin/unpublish_participatory_process.rb +9 -3
- data/app/commands/decidim/participatory_processes/admin/update_participatory_process.rb +7 -1
- data/app/commands/decidim/participatory_processes/admin/update_participatory_process_admin.rb +12 -1
- data/app/commands/decidim/participatory_processes/admin/update_participatory_process_step.rb +23 -7
- data/app/controllers/decidim/participatory_processes/admin/participatory_process_attachment_collections_controller.rb +27 -0
- data/app/controllers/decidim/participatory_processes/admin/participatory_process_publications_controller.rb +2 -2
- data/app/controllers/decidim/participatory_processes/admin/participatory_process_step_activations_controller.rb +1 -1
- data/app/controllers/decidim/participatory_processes/admin/participatory_process_steps_controller.rb +1 -1
- data/app/controllers/decidim/participatory_processes/admin/participatory_process_user_roles_controller.rb +6 -4
- data/app/controllers/decidim/participatory_processes/application_controller.rb +11 -0
- data/app/controllers/decidim/participatory_processes/participatory_process_groups_controller.rb +1 -1
- data/app/controllers/decidim/participatory_processes/participatory_process_steps_controller.rb +1 -1
- data/app/controllers/decidim/participatory_processes/participatory_processes_controller.rb +4 -3
- data/app/helpers/decidim/participatory_processes/application_helper.rb +23 -0
- data/app/models/decidim/participatory_process.rb +8 -0
- data/app/models/decidim/participatory_process_step.rb +9 -0
- data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_presenter.rb +56 -0
- data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_user_role_presenter.rb +53 -0
- data/app/presenters/decidim/participatory_processes/admin_log/step_presenter.rb +40 -0
- data/app/presenters/decidim/participatory_processes/admin_log/value_types/role_presenter.rb +22 -0
- data/app/types/decidim/participatory_processes/participatory_process_step_type.rb +25 -0
- data/app/types/decidim/participatory_processes/participatory_process_type.rb +15 -0
- data/app/views/decidim/participatory_processes/participatory_process_groups/show.html.erb +1 -0
- data/app/views/decidim/participatory_processes/participatory_processes/show.html.erb +2 -0
- data/app/views/layouts/decidim/admin/participatory_process.html.erb +15 -3
- data/config/locales/ca.yml +31 -0
- data/config/locales/en.yml +31 -0
- data/config/locales/es.yml +32 -1
- data/config/locales/eu.yml +31 -0
- data/config/locales/fi.yml +31 -0
- data/config/locales/fr.yml +47 -16
- data/config/locales/gl.yml +31 -0
- data/config/locales/it.yml +31 -0
- data/config/locales/nl.yml +31 -0
- data/config/locales/pl.yml +31 -5
- data/config/locales/pt-BR.yml +31 -0
- data/config/locales/pt.yml +31 -0
- data/config/locales/sv.yml +31 -0
- data/config/locales/uk.yml +9 -5
- data/db/migrate/20170220110740_remove_steps_short_description.rb +1 -1
- data/db/migrate/20171215081244_add_weight_to_attachments.rb +7 -0
- data/db/migrate/20171215141722_add_attachment_collection_to_attachments.rb +9 -0
- data/db/migrate/20180125102537_add_reference_to_processes.rb +7 -0
- data/lib/decidim/participatory_processes.rb +4 -0
- data/lib/decidim/participatory_processes/admin_engine.rb +1 -0
- data/lib/decidim/participatory_processes/participatory_space.rb +16 -0
- data/lib/decidim/participatory_processes/test/factories.rb +6 -0
- data/lib/decidim/participatory_processes/version.rb +1 -1
- metadata +22 -10
- data/app/commands/decidim/participatory_processes/admin/deactivate_participatory_process_step.rb +0 -40
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
module Admin
|
6
|
+
# Controller that allows managing all the attachment collections for
|
7
|
+
# a participatory process.
|
8
|
+
#
|
9
|
+
class ParticipatoryProcessAttachmentCollectionsController < Decidim::Admin::ApplicationController
|
10
|
+
include Decidim::Admin::Concerns::HasAttachmentCollections
|
11
|
+
include Concerns::ParticipatoryProcessAdmin
|
12
|
+
|
13
|
+
def after_destroy_path
|
14
|
+
participatory_process_attachment_collections_path(current_participatory_process)
|
15
|
+
end
|
16
|
+
|
17
|
+
def collection_for
|
18
|
+
current_participatory_process
|
19
|
+
end
|
20
|
+
|
21
|
+
def authorization_object
|
22
|
+
@attachment_collection || AttachmentCollection
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -11,7 +11,7 @@ module Decidim
|
|
11
11
|
def create
|
12
12
|
authorize! :publish, current_participatory_process
|
13
13
|
|
14
|
-
PublishParticipatoryProcess.call(current_participatory_process) do
|
14
|
+
PublishParticipatoryProcess.call(current_participatory_process, current_user) do
|
15
15
|
on(:ok) do
|
16
16
|
flash[:notice] = I18n.t("participatory_process_publications.create.success", scope: "decidim.admin")
|
17
17
|
end
|
@@ -27,7 +27,7 @@ module Decidim
|
|
27
27
|
def destroy
|
28
28
|
authorize! :publish, current_participatory_process
|
29
29
|
|
30
|
-
UnpublishParticipatoryProcess.call(current_participatory_process) do
|
30
|
+
UnpublishParticipatoryProcess.call(current_participatory_process, current_user) do
|
31
31
|
on(:ok) do
|
32
32
|
flash[:notice] = I18n.t("participatory_process_publications.destroy.success", scope: "decidim.admin")
|
33
33
|
end
|
@@ -11,7 +11,7 @@ module Decidim
|
|
11
11
|
def create
|
12
12
|
authorize! :activate, process_step
|
13
13
|
|
14
|
-
ActivateParticipatoryProcessStep.call(process_step) do
|
14
|
+
ActivateParticipatoryProcessStep.call(process_step, current_user) do
|
15
15
|
on(:ok) do
|
16
16
|
flash[:notice] = I18n.t("participatory_process_step_activations.create.success", scope: "decidim.admin")
|
17
17
|
end
|
data/app/controllers/decidim/participatory_processes/admin/participatory_process_steps_controller.rb
CHANGED
@@ -67,7 +67,7 @@ module Decidim
|
|
67
67
|
@participatory_process_step = collection.find(params[:id])
|
68
68
|
authorize! :destroy, @participatory_process_step
|
69
69
|
|
70
|
-
DestroyParticipatoryProcessStep.call(@participatory_process_step) do
|
70
|
+
DestroyParticipatoryProcessStep.call(@participatory_process_step, current_user) do
|
71
71
|
on(:ok) do
|
72
72
|
flash[:notice] = I18n.t("participatory_process_steps.destroy.success", scope: "decidim.admin")
|
73
73
|
redirect_to participatory_process_steps_path(current_participatory_process)
|
@@ -61,11 +61,13 @@ module Decidim
|
|
61
61
|
def destroy
|
62
62
|
@participatory_process_user_role = collection.find(params[:id])
|
63
63
|
authorize! :destroy, @participatory_process_user_role
|
64
|
-
@participatory_process_user_role.destroy!
|
65
64
|
|
66
|
-
|
67
|
-
|
68
|
-
|
65
|
+
DestroyParticipatoryProcessAdmin.call(@participatory_process_user_role, current_user) do
|
66
|
+
on(:ok) do
|
67
|
+
flash[:notice] = I18n.t("participatory_process_user_roles.destroy.success", scope: "decidim.admin")
|
68
|
+
redirect_to participatory_process_user_roles_path(current_participatory_process)
|
69
|
+
end
|
70
|
+
end
|
69
71
|
end
|
70
72
|
|
71
73
|
def resend_invitation
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
# This controller is the abstract class from which all other controllers of
|
6
|
+
# this engine inherit.
|
7
|
+
class ApplicationController < Decidim::ApplicationController
|
8
|
+
helper Decidim::ParticipatoryProcesses::ApplicationHelper
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
data/app/controllers/decidim/participatory_processes/participatory_process_groups_controller.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
module Decidim
|
4
4
|
module ParticipatoryProcesses
|
5
|
-
class ParticipatoryProcessGroupsController < Decidim::ApplicationController
|
5
|
+
class ParticipatoryProcessGroupsController < Decidim::ParticipatoryProcesses::ApplicationController
|
6
6
|
helper Decidim::SanitizeHelper
|
7
7
|
helper_method :participatory_processes, :group, :collection
|
8
8
|
|
data/app/controllers/decidim/participatory_processes/participatory_process_steps_controller.rb
CHANGED
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module ParticipatoryProcesses
|
5
5
|
# A controller that holds the logic to show ParticipatoryProcessSteps in a
|
6
6
|
# public layout.
|
7
|
-
class ParticipatoryProcessStepsController < Decidim::ApplicationController
|
7
|
+
class ParticipatoryProcessStepsController < Decidim::ParticipatoryProcesses::ApplicationController
|
8
8
|
include ParticipatorySpaceContext
|
9
9
|
participatory_space_layout only: :index
|
10
10
|
|
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module ParticipatoryProcesses
|
5
5
|
# A controller that holds the logic to show ParticipatoryProcesses in a
|
6
6
|
# public layout.
|
7
|
-
class ParticipatoryProcessesController < Decidim::ApplicationController
|
7
|
+
class ParticipatoryProcessesController < Decidim::ParticipatoryProcesses::ApplicationController
|
8
8
|
include ParticipatorySpaceContext
|
9
9
|
participatory_space_layout only: :show
|
10
10
|
|
@@ -12,6 +12,7 @@ module Decidim
|
|
12
12
|
helper Decidim::IconHelper
|
13
13
|
helper Decidim::WidgetUrlsHelper
|
14
14
|
helper Decidim::SanitizeHelper
|
15
|
+
helper Decidim::ResourceReferenceHelper
|
15
16
|
|
16
17
|
helper ParticipatoryProcessHelper
|
17
18
|
|
@@ -57,11 +58,11 @@ module Decidim
|
|
57
58
|
end
|
58
59
|
|
59
60
|
def promoted_participatory_processes
|
60
|
-
@
|
61
|
+
@promoted_participatory_processes ||= filtered_participatory_processes | PromotedParticipatoryProcesses.new
|
61
62
|
end
|
62
63
|
|
63
64
|
def participatory_process_groups
|
64
|
-
@
|
65
|
+
@participatory_process_groups ||= OrganizationPrioritizedParticipatoryProcessGroups.new(current_organization, filter)
|
65
66
|
end
|
66
67
|
|
67
68
|
def stats
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
# Custom helpers, scoped to the participatory processes engine.
|
6
|
+
#
|
7
|
+
module ApplicationHelper
|
8
|
+
include Decidim::ResourceHelper
|
9
|
+
|
10
|
+
# Public: Renders all hooks registered as `hook_name`.
|
11
|
+
#
|
12
|
+
# Note: We're passing a deep copy of the view context to allow
|
13
|
+
# us to extend it without polluting the original view context
|
14
|
+
#
|
15
|
+
# @param hook_name [Symbol] representing the name of the hook.
|
16
|
+
#
|
17
|
+
# @return [String] an HTML safe String
|
18
|
+
def render_participatory_processes_hook(hook_name)
|
19
|
+
Decidim::ParticipatoryProcesses.view_hooks.render(hook_name, deep_dup)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -8,10 +8,14 @@ module Decidim
|
|
8
8
|
# active.
|
9
9
|
class ParticipatoryProcess < ApplicationRecord
|
10
10
|
include Decidim::HasAttachments
|
11
|
+
include Decidim::HasAttachmentCollections
|
11
12
|
include Decidim::Participable
|
12
13
|
include Decidim::Publicable
|
13
14
|
include Decidim::Scopable
|
14
15
|
include Decidim::Followable
|
16
|
+
include Decidim::HasReference
|
17
|
+
include Decidim::Traceable
|
18
|
+
include Decidim::Loggable
|
15
19
|
|
16
20
|
belongs_to :organization,
|
17
21
|
foreign_key: "decidim_organization_id",
|
@@ -60,6 +64,10 @@ module Decidim
|
|
60
64
|
where(promoted: true)
|
61
65
|
end
|
62
66
|
|
67
|
+
def self.log_presenter_class_for(_log)
|
68
|
+
Decidim::ParticipatoryProcesses::AdminLog::ParticipatoryProcessPresenter
|
69
|
+
end
|
70
|
+
|
63
71
|
def hashtag
|
64
72
|
attributes["hashtag"].to_s.delete("#")
|
65
73
|
end
|
@@ -5,9 +5,14 @@ module Decidim
|
|
5
5
|
# features that will show up in the depending on what step is currently
|
6
6
|
# active.
|
7
7
|
class ParticipatoryProcessStep < ApplicationRecord
|
8
|
+
include Traceable
|
9
|
+
include Loggable
|
10
|
+
|
8
11
|
belongs_to :participatory_process, foreign_key: "decidim_participatory_process_id", class_name: "Decidim::ParticipatoryProcess"
|
9
12
|
has_one :organization, through: :participatory_process
|
10
13
|
|
14
|
+
alias participatory_space participatory_process
|
15
|
+
|
11
16
|
validates :start_date, date: { before: :end_date, allow_blank: true, if: proc { |obj| obj.end_date.present? } }
|
12
17
|
validates :end_date, date: { after: :start_date, allow_blank: true, if: proc { |obj| obj.start_date.present? } }
|
13
18
|
|
@@ -18,6 +23,10 @@ module Decidim
|
|
18
23
|
|
19
24
|
before_create :set_position
|
20
25
|
|
26
|
+
def self.log_presenter_class_for(_log)
|
27
|
+
Decidim::ParticipatoryProcesses::AdminLog::StepPresenter
|
28
|
+
end
|
29
|
+
|
21
30
|
private
|
22
31
|
|
23
32
|
# Internal: Sets the position of the step if it is `nil`. That means that
|
data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_presenter.rb
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
module AdminLog
|
6
|
+
# This class holds the logic to present a `Decidim::ParticipatoryProcess`
|
7
|
+
# for the `AdminLog` log.
|
8
|
+
#
|
9
|
+
# Usage should be automatic and you shouldn't need to call this class
|
10
|
+
# directly, but here's an example:
|
11
|
+
#
|
12
|
+
# action_log = Decidim::ActionLog.last
|
13
|
+
# view_helpers # => this comes from the views
|
14
|
+
# ParticipatoryProcessPresenter.new(action_log, view_helpers).present
|
15
|
+
class ParticipatoryProcessPresenter < Decidim::Log::BasePresenter
|
16
|
+
private
|
17
|
+
|
18
|
+
def diff_fields_mapping
|
19
|
+
{
|
20
|
+
description: :i18n,
|
21
|
+
developer_group: :i18n,
|
22
|
+
hashtag: :string,
|
23
|
+
local_area: :i18n,
|
24
|
+
meta_scope: :i18n,
|
25
|
+
participatory_scope: :i18n,
|
26
|
+
participatory_structure: :i18n,
|
27
|
+
published_at: :date,
|
28
|
+
scopes_enabled: :boolean,
|
29
|
+
short_description: :i18n,
|
30
|
+
slug: :string,
|
31
|
+
subtitle: :i18n,
|
32
|
+
target: :i18n,
|
33
|
+
title: :i18n
|
34
|
+
}
|
35
|
+
end
|
36
|
+
|
37
|
+
def action_string
|
38
|
+
case action
|
39
|
+
when "create", "publish", "unpublish", "update"
|
40
|
+
"decidim.admin_log.participatory_process.#{action}"
|
41
|
+
else
|
42
|
+
super
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
def i18n_labels_scope
|
47
|
+
"activemodel.attributes.participatory_process"
|
48
|
+
end
|
49
|
+
|
50
|
+
def has_diff?
|
51
|
+
action == "unpublish" || super
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
module AdminLog
|
6
|
+
# This class holds the logic to present a `Decidim::ParticipatoryProcessUserRole`
|
7
|
+
# for the `AdminLog` log.
|
8
|
+
#
|
9
|
+
# Usage should be automatic and you shouldn't need to call this class
|
10
|
+
# directly, but here's an example:
|
11
|
+
#
|
12
|
+
# action_log = Decidim::ActionLog.last
|
13
|
+
# view_helpers # => this comes from the views
|
14
|
+
# ParticipatoryProcessUserRolePresenter.new(action_log, view_helpers).present
|
15
|
+
class ParticipatoryProcessUserRolePresenter < Decidim::Log::BasePresenter
|
16
|
+
private
|
17
|
+
|
18
|
+
def diff_fields_mapping
|
19
|
+
{
|
20
|
+
role: "Decidim::ParticipatoryProcesses::AdminLog::ValueTypes::RolePresenter"
|
21
|
+
}
|
22
|
+
end
|
23
|
+
|
24
|
+
def changeset
|
25
|
+
return super unless action.to_s == "delete"
|
26
|
+
|
27
|
+
Decidim::Log::DiffChangesetCalculator.new(
|
28
|
+
{ role: [action_log.version.object["role"], ""] },
|
29
|
+
diff_fields_mapping,
|
30
|
+
i18n_labels_scope
|
31
|
+
).changeset
|
32
|
+
end
|
33
|
+
|
34
|
+
def has_diff?
|
35
|
+
action == "delete" || super
|
36
|
+
end
|
37
|
+
|
38
|
+
def action_string
|
39
|
+
case action
|
40
|
+
when "create", "update", "delete"
|
41
|
+
"decidim.admin_log.participatory_process_user_role.#{action}"
|
42
|
+
else
|
43
|
+
super
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
def i18n_labels_scope
|
48
|
+
"activemodel.attributes.participatory_process_user_role"
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
module AdminLog
|
6
|
+
# This class holds the logic to present a `Decidim::Step`
|
7
|
+
# for the `AdminLog` log.
|
8
|
+
#
|
9
|
+
# Usage should be automatic and you shouldn't need to call this class
|
10
|
+
# directly, but here's an example:
|
11
|
+
#
|
12
|
+
# action_log = Decidim::ActionLog.last
|
13
|
+
# view_helpers # => this comes from the views
|
14
|
+
# StepPresenter.new(action_log, view_helpers).present
|
15
|
+
class StepPresenter < Decidim::Log::BasePresenter
|
16
|
+
private
|
17
|
+
|
18
|
+
def diff_fields_mapping
|
19
|
+
{
|
20
|
+
description: :i18n,
|
21
|
+
title: :i18n
|
22
|
+
}
|
23
|
+
end
|
24
|
+
|
25
|
+
def action_string
|
26
|
+
case action
|
27
|
+
when "activate", "create", "delete", "update"
|
28
|
+
"decidim.admin_log.participatory_process_step.#{action}"
|
29
|
+
else
|
30
|
+
super
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def i18n_labels_scope
|
35
|
+
"activemodel.attributes.participatory_process_step"
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
module AdminLog
|
6
|
+
module ValueTypes
|
7
|
+
# This class presents the given value as a user role. Check
|
8
|
+
# the `DefaultPresenter` for more info on how value
|
9
|
+
# presenters work.
|
10
|
+
class RolePresenter < Decidim::Log::ValueTypes::DefaultPresenter
|
11
|
+
# Public: Presents the value as a user role.
|
12
|
+
#
|
13
|
+
# Returns an HTML-safe String.
|
14
|
+
def present
|
15
|
+
return if value.blank?
|
16
|
+
h.t(value, scope: "decidim.admin.models.participatory_process_user_role.roles", default: value)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
# This type represents a step on a participatory process.
|
6
|
+
ParticipatoryProcessStepType = GraphQL::ObjectType.define do
|
7
|
+
name "ParticipatoryProcessStep"
|
8
|
+
description "A participatory process step"
|
9
|
+
|
10
|
+
field :id, !types.ID, "The unique ID of this step."
|
11
|
+
|
12
|
+
field :participatoryProcess do
|
13
|
+
type !ParticipatoryProcessType
|
14
|
+
description "The participatory process in which this step belongs to."
|
15
|
+
property :participatory_process
|
16
|
+
end
|
17
|
+
|
18
|
+
field :title, !Decidim::Core::TranslatedFieldType, "The title of this step"
|
19
|
+
|
20
|
+
field :startDate, Decidim::Core::DateType, "This step's start date.", property: :start_date
|
21
|
+
|
22
|
+
field :endDate, Decidim::Core::DateType, "This step's end date.", property: :end_date
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module ParticipatoryProcesses
|
5
|
+
# This type represents a ParticipatoryProcess.
|
6
|
+
ParticipatoryProcessType = GraphQL::ObjectType.define do
|
7
|
+
interfaces [Decidim::Core::ParticipatorySpaceInterface]
|
8
|
+
|
9
|
+
name "ParticipatoryProcess"
|
10
|
+
description "A participatory process"
|
11
|
+
|
12
|
+
field :steps, !types[ParticipatoryProcessStepType], "All the steps of this process."
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|