decidim-proposals 0.29.1 → 0.29.3

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.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/proposals/highlighted_proposals_for_component/show.erb +0 -12
  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/import_proposals.rb +7 -65
  6. data/app/controllers/concerns/decidim/proposals/admin/filterable.rb +1 -1
  7. data/app/controllers/decidim/proposals/admin/proposal_answers_controller.rb +7 -0
  8. data/app/controllers/decidim/proposals/admin/proposals_imports_controller.rb +2 -2
  9. data/app/controllers/decidim/proposals/proposals_controller.rb +4 -8
  10. data/app/controllers/decidim/proposals/versions_controller.rb +1 -1
  11. data/app/forms/decidim/proposals/admin/proposal_answer_form.rb +3 -18
  12. data/app/forms/decidim/proposals/admin/proposal_form.rb +1 -1
  13. data/app/forms/decidim/proposals/admin/proposals_import_form.rb +6 -9
  14. data/app/forms/decidim/proposals/admin/valuation_assignment_form.rb +4 -1
  15. data/app/helpers/decidim/proposals/admin/proposal_bulk_actions_helper.rb +1 -1
  16. data/app/helpers/decidim/proposals/application_helper.rb +1 -0
  17. data/app/helpers/decidim/proposals/map_helper.rb +1 -1
  18. data/app/helpers/decidim/proposals/proposals_helper.rb +1 -3
  19. data/app/jobs/decidim/proposals/admin/import_proposals_job.rb +91 -0
  20. data/app/mailers/decidim/proposals/admin/import_proposals_mailer.rb +30 -0
  21. data/app/models/decidim/proposals/collaborative_draft.rb +2 -3
  22. data/app/models/decidim/proposals/proposal.rb +2 -11
  23. data/app/packs/stylesheets/decidim/proposals/proposals.scss +1 -5
  24. data/app/permissions/decidim/proposals/permissions.rb +4 -3
  25. data/app/services/decidim/proposals/collaborative_draft_diff_renderer.rb +22 -0
  26. data/app/services/decidim/proposals/diff_renderer.rb +2 -0
  27. data/app/services/decidim/proposals/proposal_builder.rb +2 -1
  28. data/app/views/decidim/proposals/admin/import_proposals_mailer/notify_failure.html.erb +1 -0
  29. data/app/views/decidim/proposals/admin/import_proposals_mailer/notify_success.html.erb +2 -0
  30. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +1 -1
  31. data/app/views/decidim/proposals/admin/proposals/index.html.erb +2 -2
  32. data/app/views/decidim/proposals/admin/proposals/show.html.erb +4 -4
  33. data/app/views/decidim/proposals/admin/proposals_imports/new.html.erb +2 -2
  34. data/app/views/decidim/proposals/proposals/_proposals.html.erb +1 -1
  35. data/app/views/decidim/proposals/proposals/index.html.erb +9 -2
  36. data/app/views/decidim/proposals/proposals/index.js.erb +12 -0
  37. data/app/views/decidim/proposals/proposals/show.html.erb +1 -1
  38. data/config/locales/ar.yml +8 -6
  39. data/config/locales/bg.yml +5 -12
  40. data/config/locales/bn-BD.yml +1 -0
  41. data/config/locales/bs-BA.yml +98 -0
  42. data/config/locales/ca-IT.yml +945 -0
  43. data/config/locales/ca.yml +27 -12
  44. data/config/locales/cs.yml +33 -8
  45. data/config/locales/de.yml +27 -12
  46. data/config/locales/el.yml +5 -9
  47. data/config/locales/en.yml +18 -3
  48. data/config/locales/es-MX.yml +29 -14
  49. data/config/locales/es-PY.yml +24 -9
  50. data/config/locales/es.yml +32 -17
  51. data/config/locales/eu.yml +185 -163
  52. data/config/locales/fi-plain.yml +25 -10
  53. data/config/locales/fi.yml +42 -27
  54. data/config/locales/fr-CA.yml +20 -10
  55. data/config/locales/fr.yml +19 -9
  56. data/config/locales/ga-IE.yml +2 -1
  57. data/config/locales/gl.yml +5 -6
  58. data/config/locales/he-IL.yml +7 -0
  59. data/config/locales/hu.yml +4 -9
  60. data/config/locales/id-ID.yml +12 -5
  61. data/config/locales/is-IS.yml +5 -7
  62. data/config/locales/it.yml +31 -11
  63. data/config/locales/ja.yml +22 -8
  64. data/config/locales/lt.yml +3 -8
  65. data/config/locales/lv.yml +7 -4
  66. data/config/locales/nl.yml +11 -9
  67. data/config/locales/no.yml +3 -6
  68. data/config/locales/pl.yml +2 -9
  69. data/config/locales/pt-BR.yml +3 -8
  70. data/config/locales/pt.yml +4 -6
  71. data/config/locales/ro-RO.yml +25 -11
  72. data/config/locales/ru.yml +5 -7
  73. data/config/locales/sk.yml +8 -5
  74. data/config/locales/sl.yml +0 -4
  75. data/config/locales/sr-CS.yml +0 -2
  76. data/config/locales/sv.yml +11 -8
  77. data/config/locales/tr-TR.yml +7 -9
  78. data/config/locales/uk.yml +6 -8
  79. data/config/locales/zh-CN.yml +3 -5
  80. data/config/locales/zh-TW.yml +5 -9
  81. data/db/migrate/20240110203504_create_default_proposal_states.rb +3 -2
  82. data/decidim-proposals.gemspec +1 -1
  83. data/lib/decidim/api/proposal_type.rb +13 -0
  84. data/lib/decidim/api/proposals_type.rb +1 -3
  85. data/lib/decidim/proposals/proposal_serializer.rb +7 -4
  86. data/lib/decidim/proposals/test/factories.rb +6 -5
  87. data/lib/decidim/proposals/version.rb +1 -1
  88. data/lib/tasks/proposals/upgrade/decidim_proposals_upgrade_tasks.rake +22 -0
  89. metadata +29 -21
@@ -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:
@@ -240,9 +238,11 @@ zh-CN:
240
238
  description: 建议数
241
239
  object: 提议
242
240
  title: 建议
241
+ votes:
242
+ title: 所得票数
243
243
  participatory_spaces:
244
244
  highlighted_proposals:
245
- see_all: 查看所有建议 (%{count})
245
+ see_all: 查看所有建议
246
246
  proposals:
247
247
  actions:
248
248
  answer_proposal: 答复建议
@@ -309,7 +309,6 @@ zh-CN:
309
309
  index:
310
310
  actions: 行动
311
311
  assign_to_valuator: 分配给值器
312
- assign_to_valuator_button: 分配
313
312
  cancel: 取消
314
313
  change_category: 更改类别
315
314
  change_scope: 更改范围
@@ -323,7 +322,6 @@ zh-CN:
323
322
  split_button: 拆分
324
323
  title: 建议
325
324
  unassign_from_valuator: 取消分配给值
326
- unassign_from_valuator_button: 取消分配
327
325
  update: 更新
328
326
  update_scope_button: 更新范围
329
327
  new:
@@ -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:
@@ -305,9 +303,11 @@ zh-TW:
305
303
  description: 提案總數
306
304
  object: 提案
307
305
  title: 提案
306
+ votes:
307
+ title: 投票
308
308
  participatory_spaces:
309
309
  highlighted_proposals:
310
- see_all: 檢視所有提案 (%{count})
310
+ see_all: 檢視所有提案
311
311
  proposals:
312
312
  actions:
313
313
  answer_proposal: 回覆提案
@@ -417,7 +417,6 @@ zh-TW:
417
417
  index:
418
418
  actions: 操作
419
419
  assign_to_valuator: 分配給評估人員
420
- assign_to_valuator_button: 指派
421
420
  cancel: 取消
422
421
  change_category: 變更類別
423
422
  change_scope: 變更範圍
@@ -431,7 +430,6 @@ zh-TW:
431
430
  split_button: 拆分
432
431
  title: 提案
433
432
  unassign_from_valuator: 取消分派給評估者
434
- unassign_from_valuator_button: 取消分配
435
433
  update: 更新
436
434
  update_scope_button: 更新範圍
437
435
  new:
@@ -468,7 +466,6 @@ zh-TW:
468
466
  proposals_imports:
469
467
  create:
470
468
  invalid: 匯入提案時發生問題.
471
- success: "%{number} 個提案成功匯入."
472
469
  new:
473
470
  create: 匯入提案
474
471
  no_components: 這個參與空間中沒有其他的提案元件可以匯入提案。
@@ -627,7 +624,7 @@ zh-TW:
627
624
  models:
628
625
  proposal:
629
626
  fields:
630
- category: 分類
627
+ category: 類別
631
628
  comments: 評論
632
629
  id: ID
633
630
  notes: 備註
@@ -686,7 +683,6 @@ zh-TW:
686
683
  text_banner: 您正在查看由其作者撤回的提案列表。%{go_back_link}。
687
684
  new:
688
685
  send: 繼續
689
- title: 創建你的提案
690
686
  orders:
691
687
  label: '依順序排序提案:'
692
688
  most_commented: 最多評論
@@ -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.1"
7
+ "0.29.3"
8
8
  end
9
9
  end
10
10
  end
@@ -15,6 +15,28 @@ namespace :decidim_proposals do
15
15
  end
16
16
  end
17
17
 
18
+ desc "Fix proposal states created by import from other component bug"
19
+ task fix_state: :environment do
20
+ states_ids_for_reset = []
21
+ Decidim::Proposals::Proposal.unscoped.includes(:proposal_state).where.not(decidim_proposals_proposal_state_id: nil).find_each(batch_size: 100) do |proposal|
22
+ next if proposal.decidim_component_id == proposal.proposal_state.decidim_component_id
23
+
24
+ states_ids_for_reset.push(proposal.proposal_state.id)
25
+ new_state = Decidim::Proposals::ProposalState.where(component: proposal.component, token: proposal.proposal_state.token).first
26
+ if new_state.present?
27
+ states_ids_for_reset.push(new_state.id)
28
+ proposal.update_columns(decidim_proposals_proposal_state_id: new_state.id) # rubocop:disable Rails/SkipsModelValidations
29
+ else
30
+ # if the state is not found on the proposal component, the state is custom and should be removed
31
+ proposal.update_columns(decidim_proposals_proposal_state_id: nil) # rubocop:disable Rails/SkipsModelValidations
32
+ end
33
+ end
34
+ states_ids_for_reset.uniq.each do |state_id|
35
+ Decidim::Proposals::ProposalState.reset_counters(state_id, :proposals)
36
+ end
37
+ puts "FINISHED"
38
+ end
39
+
18
40
  desc "Removes all proposal valuator records of which the role assignment does not exists"
19
41
  task remove_valuator_orphan_records: :environment do
20
42
  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.1
4
+ version: 0.29.3
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-10-02 00:00:00.000000000 Z
13
+ date: 2025-04-29 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.1
21
+ version: 0.29.3
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.1
28
+ version: 0.29.3
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.1
35
+ version: 0.29.3
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.1
42
+ version: 0.29.3
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.1
83
+ version: 0.29.3
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.1
90
+ version: 0.29.3
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.1
97
+ version: 0.29.3
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.1
104
+ version: 0.29.3
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.1
111
+ version: 0.29.3
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.1
118
+ version: 0.29.3
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.1
125
+ version: 0.29.3
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.1
132
+ version: 0.29.3
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.1
139
+ version: 0.29.3
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.1
146
+ version: 0.29.3
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.1
153
+ version: 0.29.3
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.1
160
+ version: 0.29.3
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.1
167
+ version: 0.29.3
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.1
174
+ version: 0.29.3
175
175
  description: A proposals component for decidim's participatory spaces.
176
176
  email:
177
177
  - josepjaume@gmail.com
@@ -322,9 +322,11 @@ files:
322
322
  - app/helpers/decidim/proposals/proposal_votes_helper.rb
323
323
  - app/helpers/decidim/proposals/proposal_wizard_helper.rb
324
324
  - app/helpers/decidim/proposals/proposals_helper.rb
325
+ - app/jobs/decidim/proposals/admin/import_proposals_job.rb
325
326
  - app/jobs/decidim/proposals/hide_all_created_by_author_job.rb
326
327
  - app/jobs/decidim/proposals/notify_proposals_mentioned_job.rb
327
328
  - app/jobs/decidim/proposals/settings_change_job.rb
329
+ - app/mailers/decidim/proposals/admin/import_proposals_mailer.rb
328
330
  - app/models/decidim/proposals/application_record.rb
329
331
  - app/models/decidim/proposals/collaborative_draft.rb
330
332
  - app/models/decidim/proposals/collaborative_draft_collaborator_request.rb
@@ -371,10 +373,13 @@ files:
371
373
  - app/queries/decidim/proposals/metrics/proposal_participants_metric_measure.rb
372
374
  - app/queries/decidim/proposals/metrics/proposals_metric_manage.rb
373
375
  - app/queries/decidim/proposals/metrics/votes_metric_manage.rb
376
+ - app/services/decidim/proposals/collaborative_draft_diff_renderer.rb
374
377
  - app/services/decidim/proposals/diff_renderer.rb
375
378
  - app/services/decidim/proposals/proposal_builder.rb
376
379
  - app/services/decidim/proposals/proposal_search.rb
377
380
  - app/validators/proposal_length_validator.rb
381
+ - app/views/decidim/proposals/admin/import_proposals_mailer/notify_failure.html.erb
382
+ - app/views/decidim/proposals/admin/import_proposals_mailer/notify_success.html.erb
378
383
  - app/views/decidim/proposals/admin/imports/_proposals_fields.html.erb
379
384
  - app/views/decidim/proposals/admin/participatory_texts/_article-preview.html.erb
380
385
  - app/views/decidim/proposals/admin/participatory_texts/_bulk-actions.html.erb
@@ -454,6 +459,9 @@ files:
454
459
  - config/locales/ar.yml
455
460
  - config/locales/bg-BG.yml
456
461
  - config/locales/bg.yml
462
+ - config/locales/bn-BD.yml
463
+ - config/locales/bs-BA.yml
464
+ - config/locales/ca-IT.yml
457
465
  - config/locales/ca.yml
458
466
  - config/locales/cs-CZ.yml
459
467
  - config/locales/cs.yml
@@ -626,7 +634,7 @@ files:
626
634
  - lib/tasks/proposals/upgrade/decidim_proposals_upgrade_tasks.rake
627
635
  homepage: https://decidim.org
628
636
  licenses:
629
- - AGPL-3.0
637
+ - AGPL-3.0-or-later
630
638
  metadata:
631
639
  bug_tracker_uri: https://github.com/decidim/decidim/issues
632
640
  documentation_uri: https://docs.decidim.org/