import Component from '@ember/component'; import { get } from '@ember/object'; export default Component.extend({ // TODO: Could potentially do this on attr change actions: { sortChecksByImportance: function(a, b) { const statusA = get(a, 'Status'); const statusB = get(b, 'Status'); switch (statusA) { case 'passing': // a = passing // unless b is also passing then a is less important return statusB === 'passing' ? 0 : 1; case 'critical': // a = critical // unless b is also critical then a is more important return statusB === 'critical' ? 0 : -1; case 'warning': // a = warning switch (statusB) { // b is passing so a is more important case 'passing': return -1; // b is critical so a is less important case 'critical': return 1; // a and b are both warning, therefore equal default: return 0; } } return 0; }, }, });