Reformat all project files to use the prettier config file.

This commit is contained in:
Patrick Fic
2024-03-27 15:35:07 -07:00
parent b161530381
commit e1df64d592
873 changed files with 111387 additions and 125473 deletions

View File

@@ -4,79 +4,84 @@ const getLifecycleStatusColor = require("./getLifecycleStatusColor");
const _ = require("lodash");
const calculateStatusDuration = (transitions, statuses) => {
let statusDuration = {};
let totalDuration = 0;
let totalCurrentStatusDuration = null;
let summations = [];
let statusDuration = {};
let totalDuration = 0;
let totalCurrentStatusDuration = null;
let summations = [];
transitions.forEach((transition, index) => {
let duration = transition.duration;
totalDuration += duration;
if (transition.start && !transition.end) {
const startMoment = moment(transition.start);
const nowMoment = moment();
const duration = moment.duration(nowMoment.diff(startMoment));
totalCurrentStatusDuration = {
value: duration.asMilliseconds(),
humanReadable: durationToHumanReadable(duration)
};
}
if (!transition.prev_value) {
statusDuration[transition.value] = {
value: duration,
humanReadable: durationToHumanReadable(moment.duration(duration))
};
} else {
if (statusDuration[transition.value]) {
statusDuration[transition.value].value += duration;
statusDuration[transition.value].humanReadable = durationToHumanReadable(moment.duration(statusDuration[transition.value].value));
} else {
statusDuration[transition.value] = {
value: duration,
humanReadable: durationToHumanReadable(moment.duration(duration))
};
}
}
});
// Calculate the percentage for each status
// Calculate the percentage for each status
let totalPercentage = 0;
const statusKeys = Object.keys(statusDuration);
statusKeys.forEach((status, index) => {
if (index !== statusKeys.length - 1) {
const percentage = (statusDuration[status].value / totalDuration) * 100;
totalPercentage += percentage;
statusDuration[status].percentage = percentage;
} else {
statusDuration[status].percentage = 100 - totalPercentage;
}
});
for (let [status, {value, humanReadable}] of Object.entries(statusDuration)) {
if (status !== 'total') {
summations.push({
status,
value,
humanReadable,
percentage: statusDuration[status].percentage,
color: getLifecycleStatusColor(status),
roundedPercentage: `${Math.round(statusDuration[status].percentage)}%`
});
}
transitions.forEach((transition, index) => {
let duration = transition.duration;
totalDuration += duration;
if (transition.start && !transition.end) {
const startMoment = moment(transition.start);
const nowMoment = moment();
const duration = moment.duration(nowMoment.diff(startMoment));
totalCurrentStatusDuration = {
value: duration.asMilliseconds(),
humanReadable: durationToHumanReadable(duration)
};
}
const humanReadableTotal = durationToHumanReadable(moment.duration(totalDuration));
if (!transition.prev_value) {
statusDuration[transition.value] = {
value: duration,
humanReadable: durationToHumanReadable(moment.duration(duration))
};
} else {
if (statusDuration[transition.value]) {
statusDuration[transition.value].value += duration;
statusDuration[transition.value].humanReadable = durationToHumanReadable(
moment.duration(statusDuration[transition.value].value)
);
} else {
statusDuration[transition.value] = {
value: duration,
humanReadable: durationToHumanReadable(moment.duration(duration))
};
}
}
});
return {
summations: _.isArray(statuses) && !_.isEmpty(statuses) ? summations.sort((a, b) => {
// Calculate the percentage for each status
// Calculate the percentage for each status
let totalPercentage = 0;
const statusKeys = Object.keys(statusDuration);
statusKeys.forEach((status, index) => {
if (index !== statusKeys.length - 1) {
const percentage = (statusDuration[status].value / totalDuration) * 100;
totalPercentage += percentage;
statusDuration[status].percentage = percentage;
} else {
statusDuration[status].percentage = 100 - totalPercentage;
}
});
for (let [status, { value, humanReadable }] of Object.entries(statusDuration)) {
if (status !== "total") {
summations.push({
status,
value,
humanReadable,
percentage: statusDuration[status].percentage,
color: getLifecycleStatusColor(status),
roundedPercentage: `${Math.round(statusDuration[status].percentage)}%`
});
}
}
const humanReadableTotal = durationToHumanReadable(moment.duration(totalDuration));
return {
summations:
_.isArray(statuses) && !_.isEmpty(statuses)
? summations.sort((a, b) => {
return statuses.indexOf(a.status) - statuses.indexOf(b.status);
}) : summations,
totalStatuses: summations.length,
total: totalDuration,
totalCurrentStatusDuration,
humanReadableTotal
};
}
module.exports = calculateStatusDuration;
})
: summations,
totalStatuses: summations.length,
total: totalDuration,
totalCurrentStatusDuration,
humanReadableTotal
};
};
module.exports = calculateStatusDuration;