From 20d4319744ef0104f537239cae28cc1679bd676c Mon Sep 17 00:00:00 2001 From: Jose Farias Date: Mon, 18 Nov 2024 11:45:29 -0600 Subject: [PATCH] Pass params directly into filter chip helper --- app/helpers/filters_helper.rb | 4 ++-- app/views/bubbles/_filters.html.erb | 18 ++++++++++-------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/app/helpers/filters_helper.rb b/app/helpers/filters_helper.rb index e16c63c69..bc41459e5 100644 --- a/app/helpers/filters_helper.rb +++ b/app/helpers/filters_helper.rb @@ -1,6 +1,6 @@ module FiltersHelper - def filter_chip_tag(text, name:, value:, filter:) - link_to bubbles_path(**filter.params_without(name, value)), class: "btn txt-small btn--remove" do + def filter_chip_tag(text, **) + link_to bubbles_path(**), class: "btn txt-small btn--remove" do concat tag.span(text) concat image_tag("close.svg", aria: { hidden: true }, size: 24) end diff --git a/app/views/bubbles/_filters.html.erb b/app/views/bubbles/_filters.html.erb index 6e9d6592f..1c8faed21 100644 --- a/app/views/bubbles/_filters.html.erb +++ b/app/views/bubbles/_filters.html.erb @@ -11,30 +11,32 @@
- <%= filter_chip_tag filter.indexed_by.humanize, name: :indexed_by, value: filter.indexed_by, filter: filter unless filter.default_indexed_by? %> + <%= filter_chip_tag filter.indexed_by.humanize, **filter.params_without(:indexed_by, filter.indexed_by) unless filter.default_indexed_by? %> <% filter.tags.each do |tag| %> - <%= filter_chip_tag tag.hashtag, name: :tag_ids, value: tag.id, filter: filter %> + <%= filter_chip_tag tag.hashtag, **filter.params_without(:tag_ids, tag.id) %> <% end %> <% filter.assignees.each do |assignee| %> - <%= filter_chip_tag "for #{assignee.name}", name: :assignee_ids, value: assignee.id, filter: filter %> + <%= filter_chip_tag "for #{assignee.name}", **filter.params_without(:assignee_ids, assignee.id) %> <% end %> <% if filter.assignments.present? %> - <%= filter_chip_tag filter.assignments.humanize, name: :assignments, value: filter.assignments, filter: filter %> + <%= filter_chip_tag filter.assignments.humanize, **filter.params_without(:assignments, filter.assignments) %> <% end %> <% filter.assigners.each do |assigner| %> - <%= filter_chip_tag "by #{assigner.name}", name: :assigner_ids, value: assigner.id, filter: filter %> + <%= filter_chip_tag "by #{assigner.name}", **filter.params_without(:assigner_ids, assigner.id) %> <% end %> - <% filter.buckets.each do |bucket| %> - <%= filter_chip_tag "in #{bucket.name}", name: :bucket_ids, value: bucket.id, filter: filter %> + <% if filter.buckets.many? %> + <% filter.buckets.each do |bucket| %> + <%= filter_chip_tag "in #{bucket.name}", **filter.params_without(:bucket_ids, bucket.id) %> + <% end %> <% end %> <% filter.terms.each do |term| %> - <%= filter_chip_tag %Q("#{term}"), name: :terms, value: term, filter: filter %> + <%= filter_chip_tag %Q("#{term}"), **filter.params_without(:terms, term) %> <% end %>