github.com/aminovpavel/nomad@v0.11.8/ui/app/components/job-versions-stream.js (about)

     1  import Component from '@ember/component';
     2  import { computed } from '@ember/object';
     3  import { computed as overridable } from 'ember-overridable-computed';
     4  import moment from 'moment';
     5  
     6  export default Component.extend({
     7    tagName: 'ol',
     8    classNames: ['timeline'],
     9  
    10    versions: overridable(() => []),
    11  
    12    // Passes through to the job-diff component
    13    verbose: true,
    14  
    15    annotatedVersions: computed('versions.[]', function() {
    16      const versions = this.versions
    17        .sortBy('submitTime')
    18        .reverse();
    19      return versions.map((version, index) => {
    20        const meta = {};
    21  
    22        if (index === 0) {
    23          meta.showDate = true;
    24        } else {
    25          const previousVersion = versions.objectAt(index - 1);
    26          const previousStart = moment(previousVersion.get('submitTime')).startOf('day');
    27          const currentStart = moment(version.get('submitTime')).startOf('day');
    28          if (previousStart.diff(currentStart, 'days') > 0) {
    29            meta.showDate = true;
    30          }
    31        }
    32  
    33        return { version, meta };
    34      });
    35    }),
    36  });