hummingbird-me/kitsu-web

View on GitHub
app/templates/components/stream-feed/items/library-entry.hbs

Summary

Maintainability
Test Coverage
{{#if media}}
  <div class="stream-item--media col-xs-4 col-sm-3">
    <a href={{href-to (concat media.modelType ".show") media.slug}} onclick={{action "trackEngagement" "click"}}>
      {{lazy-image src=(image media.posterImage "medium")}}
    </a>
  </div>
  <div class="stream-item--media-timeline col-xs">
    <div class="stream-item--title-block">
      <div class="author-info">
        <a class="author-name" href={{href-to (concat media.modelType ".show") media.slug}} onclick={{action "trackEngagement" "click"}}>
          {{media.computedTitle}}
        </a>
      </div>
    </div>
    <div class="aggregate-wrapper {{if showAll "view-all"}}">
      <span class="hr"></span>
      {{#each groupByTime as |timeGroup|}}
        <div class="aggregate-date-block">
          <div class="aggregate-date">
            <div class="date-wrapper">
              <span class="date-heading">{{timeGroup.calendar}}</span>
              <span>{{timeGroup.date}}</span>
            </div>
          </div>
          {{stream-feed/items/library-entry/activities
            activities=timeGroup.activities
            activityLimit=activityLimit
            feedId=feedId
            media=media
            deleteActivity=deleteActivity
            removeGroup=(action "removeGroup")
            class="aggregate-items"
            tagName="ul"
          }}
        </div>
      {{/each}}

      {{! aggregate button -- only show if we have more groups }}
      {{#if (and hasMoreActivities (not showAll))}}
        {{! TODO @Josh -- Aggregate button }}
        <button class="button" onclick={{action (toggle "modalOpen" this)}}>
          {{t "button.view-all"}}
        </button>
        {{#if modalOpen}}
          {{to-elsewhere named="modal" send=(component "stream-feed/items/library-entry/modal"
            group=group
            feedId=feedId
            positionInFeed=positionInFeed
            deleteActivity=deleteActivity
            removeGroup=(action "removeGroup")
            onClose=(toggle-action "modalOpen" this)
          )}}
        {{/if}}
      {{/if}}
    </div>
  </div>
{{else}}
  <div class="stream-error-wrapper col-sm-12">
    {{t "errors.load"}}
  </div>
{{/if}}