decidim-proposals 0.29.0 → 0.29.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/proposals/highlighted_proposals_for_component/show.erb +11 -11
  3. data/app/cells/decidim/proposals/proposal_g_cell.rb +21 -0
  4. data/app/cells/decidim/proposals/proposal_l_cell.rb +17 -18
  5. data/app/commands/decidim/proposals/admin/create_proposal.rb +4 -2
  6. data/app/controllers/concerns/decidim/proposals/admin/filterable.rb +1 -1
  7. data/app/controllers/decidim/proposals/proposals_controller.rb +4 -8
  8. data/app/forms/decidim/proposals/admin/proposal_answer_form.rb +3 -3
  9. data/app/forms/decidim/proposals/admin/proposal_form.rb +1 -1
  10. data/app/forms/decidim/proposals/admin/proposals_import_form.rb +6 -9
  11. data/app/forms/decidim/proposals/admin/valuation_assignment_form.rb +4 -1
  12. data/app/helpers/decidim/proposals/admin/proposal_bulk_actions_helper.rb +1 -1
  13. data/app/helpers/decidim/proposals/map_helper.rb +1 -1
  14. data/app/models/decidim/proposals/proposal.rb +2 -6
  15. data/app/packs/stylesheets/decidim/proposals/proposals.scss +1 -5
  16. data/app/permissions/decidim/proposals/permissions.rb +4 -3
  17. data/app/services/decidim/proposals/collaborative_draft_diff_renderer.rb +22 -0
  18. data/app/services/decidim/proposals/diff_renderer.rb +20 -1
  19. data/app/services/decidim/proposals/proposal_builder.rb +1 -1
  20. data/app/views/decidim/proposals/admin/proposals/index.html.erb +2 -2
  21. data/app/views/decidim/proposals/admin/proposals_imports/new.html.erb +2 -2
  22. data/app/views/decidim/proposals/proposals/index.html.erb +1 -1
  23. data/app/views/decidim/proposals/proposals/index.js.erb +12 -0
  24. data/app/views/decidim/proposals/proposals/show.html.erb +2 -2
  25. data/config/locales/ar.yml +1 -3
  26. data/config/locales/bg.yml +5 -7
  27. data/config/locales/bn-BD.yml +1 -0
  28. data/config/locales/bs-BA.yml +100 -0
  29. data/config/locales/ca.yml +6 -5
  30. data/config/locales/cs.yml +43 -5
  31. data/config/locales/de.yml +8 -7
  32. data/config/locales/el.yml +3 -5
  33. data/config/locales/en.yml +1 -0
  34. data/config/locales/es-MX.yml +9 -8
  35. data/config/locales/es-PY.yml +4 -3
  36. data/config/locales/es.yml +9 -8
  37. data/config/locales/eu.yml +94 -86
  38. data/config/locales/fi-plain.yml +8 -7
  39. data/config/locales/fi.yml +25 -24
  40. data/config/locales/fr-CA.yml +5 -6
  41. data/config/locales/fr.yml +4 -5
  42. data/config/locales/gl.yml +3 -6
  43. data/config/locales/he-IL.yml +7 -0
  44. data/config/locales/hu.yml +2 -3
  45. data/config/locales/id-ID.yml +9 -4
  46. data/config/locales/is-IS.yml +0 -7
  47. data/config/locales/it.yml +7 -8
  48. data/config/locales/ja.yml +6 -7
  49. data/config/locales/lt.yml +1 -3
  50. data/config/locales/lv.yml +5 -2
  51. data/config/locales/nl.yml +7 -5
  52. data/config/locales/no.yml +1 -4
  53. data/config/locales/pl.yml +2 -4
  54. data/config/locales/pt-BR.yml +3 -5
  55. data/config/locales/pt.yml +2 -4
  56. data/config/locales/ro-RO.yml +8 -9
  57. data/config/locales/ru.yml +0 -7
  58. data/config/locales/sk.yml +6 -3
  59. data/config/locales/sl.yml +0 -4
  60. data/config/locales/sv.yml +181 -91
  61. data/config/locales/tr-TR.yml +5 -7
  62. data/config/locales/uk.yml +1 -8
  63. data/config/locales/zh-CN.yml +1 -3
  64. data/config/locales/zh-TW.yml +3 -5
  65. data/db/migrate/20240110203504_create_default_proposal_states.rb +3 -2
  66. data/decidim-proposals.gemspec +1 -1
  67. data/lib/decidim/api/proposal_type.rb +13 -0
  68. data/lib/decidim/api/proposals_type.rb +1 -3
  69. data/lib/decidim/proposals/proposal_serializer.rb +7 -4
  70. data/lib/decidim/proposals/test/factories.rb +6 -5
  71. data/lib/decidim/proposals/version.rb +1 -1
  72. data/lib/tasks/proposals/upgrade/decidim_proposals_upgrade_tasks.rake +13 -0
  73. metadata +24 -21
@@ -98,7 +98,7 @@ tr:
98
98
  proposal_state_id_eq:
99
99
  label: Durum
100
100
  scope_id_eq:
101
- label: Kapsam
101
+ label: kapsam
102
102
  state_eq:
103
103
  label: Durum
104
104
  values:
@@ -144,7 +144,7 @@ tr:
144
144
  proposal_wizard_step_1_help_text: Teklif sihirbazı "Oluştur" adımı yardım metni
145
145
  proposal_wizard_step_2_help_text: Teklif "Yayınlama" sihirbazı yardım metni
146
146
  resources_permissions_enabled: Her teklif için işlem izinleri ayarlanabilir
147
- scope_id: Kapsam
147
+ scope_id: kapsam
148
148
  scopes_enabled: Kapsamlar etkinleştirildi
149
149
  threshold_per_proposal: Teklif başına eşik
150
150
  step:
@@ -227,12 +227,10 @@ tr:
227
227
  notification_title: Takip ettiğiniz bir teklifin durumu (%{state}) olarak değiştirimiştir.
228
228
  proposal_update_category:
229
229
  email_intro: 'Bir yönetici "%{resource_title}" teklifinizin kategorisini güncelledi, bu sayfada kontrol edin:'
230
- email_outro: Bu bildirimi, teklifin yazarı olduğunuz için aldınız.
231
230
  email_subject: '%{resource_title} teklif kategorisi güncellendi'
232
231
  notification_title: <a href="%{resource_path}">%{resource_title}</a> teklif kategorisi bir yönetici tarafından güncellendi.
233
232
  proposal_update_scope:
234
233
  email_intro: 'Bir yönetici, "%{resource_title}" teklifinizin kapsamını güncelledi, bu sayfada göz atın:'
235
- email_outro: Bu bildirimi, teklifin yazarı olduğunuz için aldınız.
236
234
  email_subject: '%{resource_title} teklif kapsamı güncellendi'
237
235
  notification_title: <a href="%{resource_path}">%{resource_title} </a> teklif kapsamı bir yönetici tarafından güncellendi.
238
236
  voting_enabled:
@@ -279,7 +277,7 @@ tr:
279
277
  title: Teklifler
280
278
  participatory_spaces:
281
279
  highlighted_proposals:
282
- see_all: Tüm teklifleri görün (%{count})
280
+ see_all: Tüm teklifleri görün
283
281
  proposals:
284
282
  actions:
285
283
  answer_proposal: Cevap önerisi
@@ -490,7 +488,7 @@ tr:
490
488
  open: Aç
491
489
  published: Yayınlandı
492
490
  related_to: İle ilgili
493
- scope: Kapsam
491
+ scope: kapsam
494
492
  search: Arama
495
493
  state: Statü
496
494
  withdrawn: Geri çekildi
@@ -563,7 +561,7 @@ tr:
563
561
  official_proposal: Resmi teklif
564
562
  published_answer: Yayınlanan cevap
565
563
  published_at: Yayınlandı
566
- scope: Kapsam
564
+ scope: kapsam
567
565
  state: Durum
568
566
  title: Başlık
569
567
  valuator: Bilirkişi
@@ -52,7 +52,7 @@ uk:
52
52
  components:
53
53
  proposals:
54
54
  actions:
55
- create: Додати
55
+ create: Внести
56
56
  endorse: Підтримати
57
57
  vote: Голосувати
58
58
  withdraw: Відкликати голос
@@ -102,11 +102,8 @@ uk:
102
102
  email_outro: Ви отримали це сповіщення, тому що ви стежите за "%{participatory_space_title}". Ви можете припинити стежити за ним, перейшовши за наведеним вище посиланням.
103
103
  proposal_update_category:
104
104
  email_intro: 'Адміністратор оновив категорію вашої пропозиції "%{resource_title}", перевірте її:'
105
- email_outro: Ви отримали це сповіщення, оскільки ви є автором цієї пропозиції.
106
105
  email_subject: Категорію пропозиції %{resource_title} було оновлено
107
106
  notification_title: Адміністратор оновив категорію пропозиції <a href="%{resource_path}">%{resource_title}</a>.
108
- proposal_update_scope:
109
- email_outro: Ви отримали це сповіщення, оскільки ви є автором цієї пропозиції.
110
107
  voting_enabled:
111
108
  email_intro: 'Ви можете голосувати щодо пропозицій у %{participatory_space_title}! Почніть брати участь зі сторінки:'
112
109
  email_outro: Ви отримали це сповіщення, тому що ви стежите за %{participatory_space_title}. Ви можете відписатися від цих сповіщень, перейшовши за наведеним вище посиланням.
@@ -136,7 +133,6 @@ uk:
136
133
  title: Приватні примітки
137
134
  proposals:
138
135
  form:
139
- attachment_legend: "(Необов'язково) Додати вкладений файл"
140
136
  select_a_category: Оберіть категорію
141
137
  index:
142
138
  actions: Дії
@@ -180,13 +176,11 @@ uk:
180
176
  models:
181
177
  proposal:
182
178
  fields:
183
- category: Категорія
184
179
  comments: Коментарі
185
180
  id: Псевдонім
186
181
  notes: Примітки
187
182
  official_proposal: Службова пропозиція
188
183
  published_at: 'Оприлюднено:'
189
- scope: Обсяг
190
184
  state: Стан
191
185
  title: Назва
192
186
  votes: Голоси
@@ -230,7 +224,6 @@ uk:
230
224
  title: Оприлюднити свою пропозицію
231
225
  show:
232
226
  answer: Відповісти
233
- edit_proposal: Редагувати пропозицію
234
227
  proposal_accepted_reason: 'Ця пропозиція була прийнята, тому що:'
235
228
  proposal_in_evaluation_reason: Ця пропозиція розглядається
236
229
  proposal_rejected_reason: 'Ця пропозиція була відхилена, оскільки:'
@@ -190,12 +190,10 @@ zh-CN:
190
190
  email_subject: 新提议 "%{resource_title}" 已添加到 %{participatory_space_title}
191
191
  proposal_update_category:
192
192
  email_intro: '管理员更新了您的提议 "%{resource_title}"的类别,在此页面查看:'
193
- email_outro: 您收到此通知是因为您是提案的作者。
194
193
  email_subject: '%{resource_title} 建议类别已更新'
195
194
  notification_title: <a href="%{resource_path}">%{resource_title}</a> 提议类别已被管理员更新。
196
195
  proposal_update_scope:
197
196
  email_intro: '管理员更新了您的提议 "%{resource_title}"的范围,在此页面查看:'
198
- email_outro: 您收到此通知是因为您是提案的作者。
199
197
  email_subject: '%{resource_title} 建议范围已更新'
200
198
  notification_title: <a href="%{resource_path}">%{resource_title}</a> 提议范围已被管理员更新。
201
199
  voting_enabled:
@@ -242,7 +240,7 @@ zh-CN:
242
240
  title: 建议
243
241
  participatory_spaces:
244
242
  highlighted_proposals:
245
- see_all: 查看所有建议 (%{count})
243
+ see_all: 查看所有建议
246
244
  proposals:
247
245
  actions:
248
246
  answer_proposal: 答复建议
@@ -87,7 +87,7 @@ zh-TW:
87
87
  filters:
88
88
  proposals:
89
89
  category_id_eq:
90
- label: 分類
90
+ label: 類別
91
91
  is_emendation_true:
92
92
  label: 類別
93
93
  values:
@@ -254,12 +254,10 @@ zh-TW:
254
254
  notification_title_official: 官方提案 <a href="%{resource_path}">%{resource_title}</a> 已經被添加到 %{participatory_space_title}.
255
255
  proposal_update_category:
256
256
  email_intro: '管理員已更新您的提案 "%{resource_title}" 的分類,請前往此頁面查看:'
257
- email_outro: 您收到此通知是因為您是該提案的作者。
258
257
  email_subject: '「%{resource_title}」提案的分類已更新'
259
258
  notification_title: <a href="%{resource_path}">%{resource_title}</a> 提案類別已由管理員更新。
260
259
  proposal_update_scope:
261
260
  email_intro: '一位管理員已更新您的提案"%{resource_title}" 的範圍,您可以在此頁面檢查:'
262
- email_outro: 您收到此通知是因為您是該提案的作者。
263
261
  email_subject: '%{resource_title} 提案範圍已更新'
264
262
  notification_title: <a href="%{resource_path}">%{resource_title}</a> 提案範圍已由管理員更新。
265
263
  voting_enabled:
@@ -307,7 +305,7 @@ zh-TW:
307
305
  title: 提案
308
306
  participatory_spaces:
309
307
  highlighted_proposals:
310
- see_all: 檢視所有提案 (%{count})
308
+ see_all: 檢視所有提案
311
309
  proposals:
312
310
  actions:
313
311
  answer_proposal: 回覆提案
@@ -627,7 +625,7 @@ zh-TW:
627
625
  models:
628
626
  proposal:
629
627
  fields:
630
- category: 分類
628
+ category: 類別
631
629
  comments: 評論
632
630
  id: ID
633
631
  notes: 備註
@@ -18,12 +18,13 @@ class CreateDefaultProposalStates < ActiveRecord::Migration[6.1]
18
18
  Decidim::Proposals::ProposalState.reset_column_information
19
19
  Decidim::Component.where(manifest_name: "proposals").find_each do |component|
20
20
  admin_user = component.organization.admins.first
21
- Decidim::Proposals.create_default_states!(component, admin_user)
21
+ default_states = Decidim::Proposals.create_default_states!(component, admin_user)
22
22
 
23
23
  CustomProposal.where(decidim_component_id: component.id).find_each do |proposal|
24
24
  next if proposal.old_state == "not_answered"
25
25
 
26
- proposal.update!(proposal_state: Decidim::Proposals::ProposalState.where(component:, token: proposal.old_state).first!)
26
+ token = default_states[proposal.old_state.to_sym][:object]&.token
27
+ proposal.update!(proposal_state: Decidim::Proposals::ProposalState.where(component:, token:).first!)
27
28
  end
28
29
  end
29
30
  end
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
10
10
  s.version = Decidim::Proposals.version
11
11
  s.authors = ["Josep Jaume Rey Peroy", "Marc Riera Casals", "Oriol Gual Oliva"]
12
12
  s.email = ["josepjaume@gmail.com", "mrc2407@gmail.com", "oriolgual@gmail.com"]
13
- s.license = "AGPL-3.0"
13
+ s.license = "AGPL-3.0-or-later"
14
14
  s.homepage = "https://decidim.org"
15
15
  s.metadata = {
16
16
  "bug_tracker_uri" => "https://github.com/decidim/decidim/issues",
@@ -55,6 +55,19 @@ module Decidim
55
55
  current_component = object.component
56
56
  object.proposal_votes_count unless current_component.current_settings.votes_hidden?
57
57
  end
58
+
59
+ def self.authorized?(object, context)
60
+ context[:proposal] = object
61
+
62
+ chain = [
63
+ allowed_to?(:read, :proposal, object, context),
64
+ object.published?
65
+ ].all?
66
+
67
+ super && chain
68
+ rescue Decidim::PermissionAction::PermissionNotSetError
69
+ false
70
+ end
58
71
  end
59
72
  end
60
73
  end
@@ -16,9 +16,7 @@ module Decidim
16
16
  end
17
17
  end
18
18
 
19
- class ProposalsType < Decidim::Api::Types::BaseObject
20
- implements Decidim::Core::ComponentInterface
21
-
19
+ class ProposalsType < Decidim::Core::ComponentType
22
20
  graphql_name "Proposals"
23
21
  description "A proposals component of a participatory space."
24
22
 
@@ -44,7 +44,8 @@ module Decidim
44
44
  reference: proposal.reference,
45
45
  answer: ensure_translatable(proposal.answer),
46
46
  answered_at: proposal.answered_at,
47
- votes: proposal.proposal_votes_count,
47
+ votes: (proposal.proposal_votes_count unless
48
+ proposal.component.current_settings.votes_hidden?),
48
49
  endorsements: {
49
50
  total_count: proposal.endorsements.size,
50
51
  user_endorsements:
@@ -132,7 +133,7 @@ module Decidim
132
133
 
133
134
  def author_url(author)
134
135
  if author.respond_to?(:nickname)
135
- profile_url(author.nickname) # is a Decidim::User or Decidim::UserGroup
136
+ profile_url(author) # is a Decidim::User or Decidim::UserGroup
136
137
  elsif author.respond_to?(:title)
137
138
  meeting_url(author) # is a Decidim::Meetings::Meeting
138
139
  else
@@ -140,8 +141,10 @@ module Decidim
140
141
  end
141
142
  end
142
143
 
143
- def profile_url(nickname)
144
- Decidim::Core::Engine.routes.url_helpers.profile_url(nickname, host:)
144
+ def profile_url(author)
145
+ return "" if author.respond_to?(:deleted?) && author.deleted?
146
+
147
+ Decidim::Core::Engine.routes.url_helpers.profile_url(author.nickname, host:)
145
148
  end
146
149
 
147
150
  def meeting_url(meeting)
@@ -356,7 +356,7 @@ FactoryBot.define do
356
356
  trait :participant_author do
357
357
  after :build do |proposal, evaluator|
358
358
  proposal.coauthorships.clear
359
- user = build(:user, organization: proposal.component.participatory_space.organization, skip_injection: evaluator.skip_injection)
359
+ user = build(:user, :confirmed, organization: proposal.component.participatory_space.organization, skip_injection: evaluator.skip_injection)
360
360
  proposal.coauthorships.build(author: user)
361
361
  end
362
362
  end
@@ -380,8 +380,8 @@ FactoryBot.define do
380
380
  trait :official_meeting do
381
381
  after :build do |proposal, evaluator|
382
382
  proposal.coauthorships.clear
383
- component = build(:meeting_component, participatory_space: proposal.component.participatory_space, skip_injection: evaluator.skip_injection)
384
- proposal.coauthorships.build(author: build(:meeting, component:, skip_injection: evaluator.skip_injection))
383
+ component = build(:meeting_component, :published, participatory_space: proposal.component.participatory_space, skip_injection: evaluator.skip_injection)
384
+ proposal.coauthorships.build(author: build(:meeting, :published, component:, skip_injection: evaluator.skip_injection))
385
385
  end
386
386
  end
387
387
 
@@ -444,7 +444,8 @@ FactoryBot.define do
444
444
  trait :with_endorsements do
445
445
  after :create do |proposal, evaluator|
446
446
  5.times.collect do
447
- create(:endorsement, resource: proposal, author: build(:user, organization: proposal.participatory_space.organization, skip_injection: evaluator.skip_injection),
447
+ create(:endorsement, resource: proposal,
448
+ author: build(:user, :confirmed, organization: proposal.participatory_space.organization, skip_injection: evaluator.skip_injection),
448
449
  skip_injection: evaluator.skip_injection)
449
450
  end
450
451
  end
@@ -489,7 +490,7 @@ FactoryBot.define do
489
490
  end
490
491
  amendable { build(:proposal, skip_injection:) }
491
492
  emendation { build(:proposal, component: amendable.component, skip_injection:) }
492
- amender { build(:user, organization: amendable.component.participatory_space.organization, skip_injection:) }
493
+ amender { build(:user, :confirmed, organization: amendable.component.participatory_space.organization, skip_injection:) }
493
494
  state { Decidim::Amendment::STATES.keys.sample }
494
495
  end
495
496
 
@@ -4,7 +4,7 @@ module Decidim
4
4
  # This holds decidim-proposals version.
5
5
  module Proposals
6
6
  def self.version
7
- "0.29.0"
7
+ "0.29.2"
8
8
  end
9
9
  end
10
10
  end
@@ -2,6 +2,19 @@
2
2
 
3
3
  namespace :decidim_proposals do
4
4
  namespace :upgrade do
5
+ desc "Assigns category to emendations based on amendable category"
6
+ task set_categories: :environment do
7
+ Decidim::Proposals::Proposal.includes(:category).find_each do |proposal|
8
+ next if proposal.category.blank?
9
+ next unless proposal.amendable?
10
+
11
+ proposal.emendations.each do |emendation|
12
+ emendation.category = proposal.category
13
+ emendation.save(validate: false)
14
+ end
15
+ end
16
+ end
17
+
5
18
  desc "Removes all proposal valuator records of which the role assignment does not exists"
6
19
  task remove_valuator_orphan_records: :environment do
7
20
  if Decidim.module_installed?("participatory_processes")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim-proposals
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.29.0
4
+ version: 0.29.2
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: 2024-09-10 00:00:00.000000000 Z
13
+ date: 2025-02-12 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.29.0
21
+ version: 0.29.2
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.29.0
28
+ version: 0.29.2
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.29.0
35
+ version: 0.29.2
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.29.0
42
+ version: 0.29.2
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: doc2text
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -80,98 +80,98 @@ dependencies:
80
80
  requirements:
81
81
  - - '='
82
82
  - !ruby/object:Gem::Version
83
- version: 0.29.0
83
+ version: 0.29.2
84
84
  type: :development
85
85
  prerelease: false
86
86
  version_requirements: !ruby/object:Gem::Requirement
87
87
  requirements:
88
88
  - - '='
89
89
  - !ruby/object:Gem::Version
90
- version: 0.29.0
90
+ version: 0.29.2
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: decidim-assemblies
93
93
  requirement: !ruby/object:Gem::Requirement
94
94
  requirements:
95
95
  - - '='
96
96
  - !ruby/object:Gem::Version
97
- version: 0.29.0
97
+ version: 0.29.2
98
98
  type: :development
99
99
  prerelease: false
100
100
  version_requirements: !ruby/object:Gem::Requirement
101
101
  requirements:
102
102
  - - '='
103
103
  - !ruby/object:Gem::Version
104
- version: 0.29.0
104
+ version: 0.29.2
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: decidim-budgets
107
107
  requirement: !ruby/object:Gem::Requirement
108
108
  requirements:
109
109
  - - '='
110
110
  - !ruby/object:Gem::Version
111
- version: 0.29.0
111
+ version: 0.29.2
112
112
  type: :development
113
113
  prerelease: false
114
114
  version_requirements: !ruby/object:Gem::Requirement
115
115
  requirements:
116
116
  - - '='
117
117
  - !ruby/object:Gem::Version
118
- version: 0.29.0
118
+ version: 0.29.2
119
119
  - !ruby/object:Gem::Dependency
120
120
  name: decidim-conference
121
121
  requirement: !ruby/object:Gem::Requirement
122
122
  requirements:
123
123
  - - '='
124
124
  - !ruby/object:Gem::Version
125
- version: 0.29.0
125
+ version: 0.29.2
126
126
  type: :development
127
127
  prerelease: false
128
128
  version_requirements: !ruby/object:Gem::Requirement
129
129
  requirements:
130
130
  - - '='
131
131
  - !ruby/object:Gem::Version
132
- version: 0.29.0
132
+ version: 0.29.2
133
133
  - !ruby/object:Gem::Dependency
134
134
  name: decidim-dev
135
135
  requirement: !ruby/object:Gem::Requirement
136
136
  requirements:
137
137
  - - '='
138
138
  - !ruby/object:Gem::Version
139
- version: 0.29.0
139
+ version: 0.29.2
140
140
  type: :development
141
141
  prerelease: false
142
142
  version_requirements: !ruby/object:Gem::Requirement
143
143
  requirements:
144
144
  - - '='
145
145
  - !ruby/object:Gem::Version
146
- version: 0.29.0
146
+ version: 0.29.2
147
147
  - !ruby/object:Gem::Dependency
148
148
  name: decidim-meetings
149
149
  requirement: !ruby/object:Gem::Requirement
150
150
  requirements:
151
151
  - - '='
152
152
  - !ruby/object:Gem::Version
153
- version: 0.29.0
153
+ version: 0.29.2
154
154
  type: :development
155
155
  prerelease: false
156
156
  version_requirements: !ruby/object:Gem::Requirement
157
157
  requirements:
158
158
  - - '='
159
159
  - !ruby/object:Gem::Version
160
- version: 0.29.0
160
+ version: 0.29.2
161
161
  - !ruby/object:Gem::Dependency
162
162
  name: decidim-participatory_processes
163
163
  requirement: !ruby/object:Gem::Requirement
164
164
  requirements:
165
165
  - - '='
166
166
  - !ruby/object:Gem::Version
167
- version: 0.29.0
167
+ version: 0.29.2
168
168
  type: :development
169
169
  prerelease: false
170
170
  version_requirements: !ruby/object:Gem::Requirement
171
171
  requirements:
172
172
  - - '='
173
173
  - !ruby/object:Gem::Version
174
- version: 0.29.0
174
+ version: 0.29.2
175
175
  description: A proposals component for decidim's participatory spaces.
176
176
  email:
177
177
  - josepjaume@gmail.com
@@ -371,6 +371,7 @@ files:
371
371
  - app/queries/decidim/proposals/metrics/proposal_participants_metric_measure.rb
372
372
  - app/queries/decidim/proposals/metrics/proposals_metric_manage.rb
373
373
  - app/queries/decidim/proposals/metrics/votes_metric_manage.rb
374
+ - app/services/decidim/proposals/collaborative_draft_diff_renderer.rb
374
375
  - app/services/decidim/proposals/diff_renderer.rb
375
376
  - app/services/decidim/proposals/proposal_builder.rb
376
377
  - app/services/decidim/proposals/proposal_search.rb
@@ -454,6 +455,8 @@ files:
454
455
  - config/locales/ar.yml
455
456
  - config/locales/bg-BG.yml
456
457
  - config/locales/bg.yml
458
+ - config/locales/bn-BD.yml
459
+ - config/locales/bs-BA.yml
457
460
  - config/locales/ca.yml
458
461
  - config/locales/cs-CZ.yml
459
462
  - config/locales/cs.yml
@@ -626,7 +629,7 @@ files:
626
629
  - lib/tasks/proposals/upgrade/decidim_proposals_upgrade_tasks.rake
627
630
  homepage: https://decidim.org
628
631
  licenses:
629
- - AGPL-3.0
632
+ - AGPL-3.0-or-later
630
633
  metadata:
631
634
  bug_tracker_uri: https://github.com/decidim/decidim/issues
632
635
  documentation_uri: https://docs.decidim.org/