LibreChat/api/lib/utils/reduceHits.js
2023-03-16 21:20:40 -04:00

26 lines
No EOL
507 B
JavaScript

const mergeSort = require('./mergeSort');
function reduceHits(hits) {
const counts = {};
for (const hit of hits) {
if (!counts[hit.conversationId]) {
counts[hit.conversationId] = 1;
} else {
counts[hit.conversationId]++;
}
}
const result = [];
for (const [conversationId, count] of Object.entries(counts)) {
result.push({
conversationId,
count
});
}
return mergeSort(result, (a, b) => b.count - a.count);
}
module.exports = reduceHits;