github.com/manicqin/nomad@v0.9.5/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 });