<%# locals: (form:) %>
<div data-controller="list-filter">
  <div class="relative">
    <input type="search" autocomplete="off" placeholder="Filter tags" data-list-filter-target="input" data-action="input->list-filter#filter" class="block w-full bg-container border border-secondary rounded-md py-2 pl-10 pr-3 focus:ring-gray-500 sm:text-sm">
    <%= icon("search", class: "absolute inset-y-0 left-2 top-1/2 transform -translate-y-1/2") %>
  </div>
  <div class="my-2" id="list" data-list-filter-target="list">
    <% Current.family.tags.alphabetically.each do |tag| %>
      <div class="filterable-item flex items-center gap-2 p-2" data-filter-name="<%= tag.name %>">
        <%= form.check_box :tags,
                           {
                             multiple: true,
                             checked: @q[:tags]&.include?(tag.name),
                             class: "checkbox checkbox--light"
                           },
                           tag.name,
                           nil %>
        <%= form.label :tags, value: tag.name, class: "text-sm text-primary flex items-center gap-2" do %>
          <%= render FilledIconComponent.new(
            variant: :text,
            hex_color: tag.color || Tag::UNCATEGORIZED_COLOR,
            text: tag.name,
            size: "sm",
            rounded: true
          ) %>

          <%= tag.name %>
        <% end %>
      </div>
    <% end %>
  </div>
</div>
