diff --git a/app/helpers/filters_helper.rb b/app/helpers/filters_helper.rb
index 5d512218d..08fb73b16 100644
--- a/app/helpers/filters_helper.rb
+++ b/app/helpers/filters_helper.rb
@@ -40,7 +40,7 @@ module FiltersHelper
end
def any_filters?(filter)
- filter.tags.any? || filter.assignees.any? || filter.creators.any? ||
+ filter.tags.any? || filter.assignees.any? || filter.creators.any? || filter.closers.any? ||
filter.stages.any? || filter.terms.any? || filter.card_ids&.any? ||
filter.assignment_status.unassigned? || !filter.indexed_by.latest?
end
diff --git a/app/views/filters/_closers.html.erb b/app/views/filters/_closers.html.erb
new file mode 100644
index 000000000..a1d701d82
--- /dev/null
+++ b/app/views/filters/_closers.html.erb
@@ -0,0 +1,62 @@
+<% if filter.closers.any? || @expand_all %>
+
+
+
+ <%= tag.dialog class: "margin-block-start-half popup panel flex-column align-start gap-half fill-white shadow txt-small", data: {
+ action: "turbo:before-cache@document->dialog#close keydown->navigable-list#navigate filter:changed->navigable-list#reset toggle->filter#filter",
+ aria: { label: "Closed by…", aria_description: "Closed by…" },
+ controller: "filter navigable-list",
+ dialog_target: "dialog",
+ navigable_list_focus_on_selection_value: false,
+ navigable_list_actionable_items_value: true } do %>
+
+
+ <% if User.active.many? %>
+ <%= text_field_tag :search, nil, placeholder: "Filter…", class: "input input--transparent txt-small", autofocus: true,
+ type: "search", autocorrect: "off", autocomplete: "off", data: { "1p-ignore": "true", filter_target: "input", action: "input->filter#filter" } %>
+ <% end %>
+
+
+ <% end %>
+
+<% end %>
diff --git a/app/views/filters/_settings.html.erb b/app/views/filters/_settings.html.erb
index 4cfef6ec3..d3170bd7d 100644
--- a/app/views/filters/_settings.html.erb
+++ b/app/views/filters/_settings.html.erb
@@ -18,6 +18,7 @@
<%= render "filters/tags", filter: filter %>
<%= render "filters/assignees", filter: filter %>
<%= render "filters/creators", filter: filter %>
+ <%= render "filters/closers", filter: filter %>
<%= render "filters/time_window", filter: filter, name: :creation, label: "Created" %>
<%= render "filters/time_window", filter: filter, name: :closure, label: "Closed" %>
<%# FIXME LATER: this needs to be able to allow selection of unique stages across all active workflows %>
@@ -43,7 +44,7 @@
<% end %>
<% end %>
- <%= link_to cards_path(filter.as_params.except(:assignee_ids, :assignment_status, :card_ids, :creator_ids, :stage_ids, :tag_ids, :terms, :indexed_by, :creation, :closure)), class: "btn btn--remove txt-x-small" do %>
+ <%= link_to cards_path(filter.as_params.except(:assignee_ids, :assignment_status, :card_ids, :creator_ids, :closer_ids, :stage_ids, :tag_ids, :terms, :indexed_by, :creation, :closure)), class: "btn btn--remove txt-x-small" do %>
<%= icon_tag "close" %>
Clear all
<% end %>