hummingbird-me/kitsu-web

View on GitHub
app/templates/components/groups/tickets/ticket-list.hbs

Summary

Maintainability
Test Coverage
<div class="card">
  <div class="group-result-header">
    <span class="result-filter-wrapper">
      {{search-input
        update=(action updateQueryParam "query")
        placeholder=(t "groups.tickets.search")
        icon=true}}
    </span>

    <span class="result-sort-wrapper">
      {{#bootstrap/bs-dropdown as |dropdown|}}
        {{#dropdown.button type="button--dark-outline" class="button--small"}}
          {{t (concat "groups.tickets.filter." filter)}}
        {{/dropdown.button}}
        {{#dropdown.menu}}
          {{#each filterOptions as |_filter|}}
            {{#dropdown.menu-item onClick=(action updateQueryParam "filter" _filter)}}
              {{t (concat "groups.tickets.filter." _filter)}}
              {{#if (eq filter _filter)}}
                <span class="dropdown-checkmark">
                  {{svg-jar "checkmark"}}
                </span>
              {{/if}}
            {{/dropdown.menu-item}}
          {{/each}}
        {{/dropdown.menu}}
      {{/bootstrap/bs-dropdown}}
    </span>
  </div>

  <ul class="ticket-list">
    {{#if getTicketsTask.isRunning}}
      <div class="text-xs-center m-t-1 m-b-1">
        {{loading-spinner size="large"}}
      </div>
    {{else if tickets}}
      {{#infinite-pagination onPagination=(action "onPagination")}}
        {{#each tickets as |ticket|}}
          {{groups/tickets/ticket-list-item
            isPersonalTicket=isPersonalTicket
            ticket=ticket
            tagName="li"}}
        {{/each}}
      {{/infinite-pagination}}
    {{else}}
      <div class="text-xs-center m-t-1 m-b-1">
        {{#if isPersonalTicket}}
          {{t "groups.tickets.helper"}}
        {{else}}
          {{t "groups.tickets.empty"}}
        {{/if}}
      </div>
    {{/if}}
  </ul>
</div>