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