decidim-accountability 0.20.1 → 0.21.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c260879aefa39f9f2774838ca450a6ef044477726749c5f90701b17f18c20408
4
- data.tar.gz: d6513d8d9fa960dbc37d000e9c0f305eec818b5ce2c7ec41a0f7832575810e33
3
+ metadata.gz: 23e9e9da0373bafcee830512c9e911e0176767832d826719ccae2a52b441f2f2
4
+ data.tar.gz: 6cd880e63873b91f6a0dbdd79e066bbd9e04e9a235aacc895a2cb0bc9f0a483c
5
5
  SHA512:
6
- metadata.gz: eb3109653bf8fd132d35465284976da336a845703bd982de0732cec04d409411e669c38823f79d059bf7b4b6b3b781c8b0b550b8446fa3788b9ec78c869680e0
7
- data.tar.gz: '054871158742e5af12de7338f7e041f324eb45f5a21868e1f991c58f8e5e01f9d746b7c24a77c776380d9103b5a389256e1c9ab3bda4aed1b4217ed717d15694'
6
+ metadata.gz: 04a259f346030214c5963d31cfd3240ecc58cd6c4d0f222b52b4b20a215475043faa6a430370e285e48aba86d8582fbcf7c7b1246af885fb88e76782470a26c7
7
+ data.tar.gz: cd0f61547ca931bf560d0f1a5d9393c1c5548c8d220a86bad841e1ff64a6d07f0a52987919d137af4236dd40a815a723e2ed39dd84d8a99fff0854497be36178
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Accountability
5
+ AccountabilityType = GraphQL::ObjectType.define do
6
+ interfaces [-> { Decidim::Core::ComponentInterface }]
7
+
8
+ name "Accountability"
9
+ description "An accountability component of a participatory space."
10
+
11
+ connection :results, ResultType.connection_type do
12
+ resolve ->(component, _args, _ctx) {
13
+ ResultTypeHelper.base_scope(component).includes(:component)
14
+ }
15
+ end
16
+
17
+ field(:result, ResultType) do
18
+ argument :id, !types.ID
19
+
20
+ resolve ->(component, args, _ctx) {
21
+ ResultTypeHelper.base_scope(component).find_by(id: args[:id])
22
+ }
23
+ end
24
+ end
25
+
26
+ module ResultTypeHelper
27
+ def self.base_scope(component)
28
+ Result.where(component: component)
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Accountability
5
+ ResultType = GraphQL::ObjectType.define do
6
+ interfaces [
7
+ -> { Decidim::Core::ComponentInterface },
8
+ -> { Decidim::Core::CategorizableInterface },
9
+ -> { Decidim::Comments::CommentableInterface },
10
+ -> { Decidim::Core::ScopableInterface }
11
+ ]
12
+
13
+ name "Result"
14
+ description "A result"
15
+
16
+ field :id, !types.ID, "The internal ID for this result"
17
+ field :title, Decidim::Core::TranslatedFieldType, "The title for this result"
18
+ field :description, Decidim::Core::TranslatedFieldType, "The description for this result"
19
+ field :reference, types.String, "The reference for this result"
20
+ field :startDate, Decidim::Core::DateType, "The start date for this result", property: :start_date
21
+ field :endDate, Decidim::Core::DateType, "The end date for this result", property: :end_date
22
+ field :progress, types.Float, "The progress for this result"
23
+ field :createdAt, Decidim::Core::DateTimeType, "When this result was created", property: :created_at
24
+ field :updatedAt, Decidim::Core::DateTimeType, "When this result was updated", property: :updated_at
25
+ field :childrenCount, types.Int, "The number of children results", property: :children_count
26
+ field :weight, !types.Int, "The order of this result"
27
+ field :externalId, types.String, "The external ID for this result", property: :external_id
28
+
29
+ field :children, types[Decidim::Accountability::ResultType], "The childrens results"
30
+ field :parent, Decidim::Accountability::ResultType, "The parent result"
31
+ field :status, Decidim::Accountability::StatusType, "The status for this result"
32
+ field :timelineEntries, types[Decidim::Accountability::TimelineEntryType], "The timeline entries for this result", property: :timeline_entries
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Accountability
5
+ StatusType = GraphQL::ObjectType.define do
6
+ name "Status"
7
+ description "A status"
8
+
9
+ field :id, !types.ID, "The internal ID for this status"
10
+ field :key, types.String, "The key for this status"
11
+ field :name, Decidim::Core::TranslatedFieldType, "The name for this status"
12
+ field :createdAt, Decidim::Core::DateType, "When this status was created", property: :created_at
13
+ field :updatedAt, Decidim::Core::DateType, "When this status was updated", property: :updated_at
14
+ field :description, Decidim::Core::TranslatedFieldType, "The description for this status"
15
+ field :progress, types.Int, "The progress for this status"
16
+
17
+ field :results, types[Decidim::Accountability::ResultType], "The results for this status"
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Accountability
5
+ TimelineEntryType = GraphQL::ObjectType.define do
6
+ name "TimelineEntry"
7
+ description "A Timeline Entry"
8
+
9
+ field :id, !types.ID, "The internal ID for this timeline entry"
10
+ field :entryDate, Decidim::Core::DateType, "The entry date for this timeline entry", property: :entry_date
11
+ field :description, Decidim::Core::TranslatedFieldType, "The description for this timeline entry"
12
+ field :createdAt, Decidim::Core::DateTimeType, "When this timeline entry was created", property: :created_at
13
+ field :updatedAt, Decidim::Core::DateTimeType, "When this timeline entry was updated", property: :updated_at
14
+
15
+ field :result, Decidim::Accountability::ResultType, "The result for this timeline entry"
16
+ end
17
+ end
18
+ end
@@ -0,0 +1 @@
1
+ el:
@@ -8,6 +8,7 @@ Decidim.register_component(:accountability) do |component|
8
8
  component.icon = "decidim/accountability/icon.svg"
9
9
  component.stylesheet = "decidim/accountability/accountability"
10
10
  component.permissions_class_name = "Decidim::Accountability::Permissions"
11
+ component.query_type = "Decidim::Accountability::AccountabilityType"
11
12
 
12
13
  component.on(:before_destroy) do |instance|
13
14
  raise StandardError, "Can't remove this component" if Decidim::Accountability::Result.where(component: instance).any?
@@ -4,7 +4,7 @@ module Decidim
4
4
  # This holds decidim-accountability version.
5
5
  module Accountability
6
6
  def self.version
7
- "0.20.1"
7
+ "0.21.0"
8
8
  end
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim-accountability
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.1
4
+ version: 0.21.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josep Jaume Rey Peroy
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-03-27 00:00:00.000000000 Z
13
+ date: 2020-04-08 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: decidim-comments
@@ -18,28 +18,28 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.20.1
21
+ version: 0.21.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 0.20.1
28
+ version: 0.21.0
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: decidim-core
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - '='
34
34
  - !ruby/object:Gem::Version
35
- version: 0.20.1
35
+ version: 0.21.0
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - '='
41
41
  - !ruby/object:Gem::Version
42
- version: 0.20.1
42
+ version: 0.21.0
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: kaminari
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -74,98 +74,98 @@ dependencies:
74
74
  requirements:
75
75
  - - '='
76
76
  - !ruby/object:Gem::Version
77
- version: 0.20.1
77
+ version: 0.21.0
78
78
  type: :development
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
82
  - - '='
83
83
  - !ruby/object:Gem::Version
84
- version: 0.20.1
84
+ version: 0.21.0
85
85
  - !ruby/object:Gem::Dependency
86
86
  name: decidim-assemblies
87
87
  requirement: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - '='
90
90
  - !ruby/object:Gem::Version
91
- version: 0.20.1
91
+ version: 0.21.0
92
92
  type: :development
93
93
  prerelease: false
94
94
  version_requirements: !ruby/object:Gem::Requirement
95
95
  requirements:
96
96
  - - '='
97
97
  - !ruby/object:Gem::Version
98
- version: 0.20.1
98
+ version: 0.21.0
99
99
  - !ruby/object:Gem::Dependency
100
100
  name: decidim-comments
101
101
  requirement: !ruby/object:Gem::Requirement
102
102
  requirements:
103
103
  - - '='
104
104
  - !ruby/object:Gem::Version
105
- version: 0.20.1
105
+ version: 0.21.0
106
106
  type: :development
107
107
  prerelease: false
108
108
  version_requirements: !ruby/object:Gem::Requirement
109
109
  requirements:
110
110
  - - '='
111
111
  - !ruby/object:Gem::Version
112
- version: 0.20.1
112
+ version: 0.21.0
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: decidim-dev
115
115
  requirement: !ruby/object:Gem::Requirement
116
116
  requirements:
117
117
  - - '='
118
118
  - !ruby/object:Gem::Version
119
- version: 0.20.1
119
+ version: 0.21.0
120
120
  type: :development
121
121
  prerelease: false
122
122
  version_requirements: !ruby/object:Gem::Requirement
123
123
  requirements:
124
124
  - - '='
125
125
  - !ruby/object:Gem::Version
126
- version: 0.20.1
126
+ version: 0.21.0
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: decidim-meetings
129
129
  requirement: !ruby/object:Gem::Requirement
130
130
  requirements:
131
131
  - - '='
132
132
  - !ruby/object:Gem::Version
133
- version: 0.20.1
133
+ version: 0.21.0
134
134
  type: :development
135
135
  prerelease: false
136
136
  version_requirements: !ruby/object:Gem::Requirement
137
137
  requirements:
138
138
  - - '='
139
139
  - !ruby/object:Gem::Version
140
- version: 0.20.1
140
+ version: 0.21.0
141
141
  - !ruby/object:Gem::Dependency
142
142
  name: decidim-participatory_processes
143
143
  requirement: !ruby/object:Gem::Requirement
144
144
  requirements:
145
145
  - - '='
146
146
  - !ruby/object:Gem::Version
147
- version: 0.20.1
147
+ version: 0.21.0
148
148
  type: :development
149
149
  prerelease: false
150
150
  version_requirements: !ruby/object:Gem::Requirement
151
151
  requirements:
152
152
  - - '='
153
153
  - !ruby/object:Gem::Version
154
- version: 0.20.1
154
+ version: 0.21.0
155
155
  - !ruby/object:Gem::Dependency
156
156
  name: decidim-proposals
157
157
  requirement: !ruby/object:Gem::Requirement
158
158
  requirements:
159
159
  - - '='
160
160
  - !ruby/object:Gem::Version
161
- version: 0.20.1
161
+ version: 0.21.0
162
162
  type: :development
163
163
  prerelease: false
164
164
  version_requirements: !ruby/object:Gem::Requirement
165
165
  requirements:
166
166
  - - '='
167
167
  - !ruby/object:Gem::Version
168
- version: 0.20.1
168
+ version: 0.21.0
169
169
  description: An accountability component for decidim's participatory spaces.
170
170
  email:
171
171
  - josepjaume@gmail.com
@@ -228,6 +228,10 @@ files:
228
228
  - app/services/decidim/accountability/result_search.rb
229
229
  - app/services/decidim/accountability/result_stats_calculator.rb
230
230
  - app/services/decidim/accountability/results_calculator.rb
231
+ - app/types/decidim/accountability/accountability_type.rb
232
+ - app/types/decidim/accountability/result_type.rb
233
+ - app/types/decidim/accountability/status_type.rb
234
+ - app/types/decidim/accountability/timeline_entry_type.rb
231
235
  - app/views/decidim/accountability/admin/results/_form.html.erb
232
236
  - app/views/decidim/accountability/admin/results/_proposals.html.erb
233
237
  - app/views/decidim/accountability/admin/results/edit.html.erb
@@ -273,6 +277,7 @@ files:
273
277
  - config/locales/cs.yml
274
278
  - config/locales/de.yml
275
279
  - config/locales/el-GR.yml
280
+ - config/locales/el.yml
276
281
  - config/locales/en.yml
277
282
  - config/locales/eo-UY.yml
278
283
  - config/locales/es-MX.yml