mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2025-09-17 17:14:18 +02:00
New: Project Aphrodite
This commit is contained in:
11
frontend/src/Utilities/Object/getErrorMessage.js
Normal file
11
frontend/src/Utilities/Object/getErrorMessage.js
Normal file
@@ -0,0 +1,11 @@
|
||||
function getErrorMessage(xhr, fallbackErrorMessage) {
|
||||
if (!xhr || !xhr.responseJSON || !xhr.responseJSON.message) {
|
||||
return fallbackErrorMessage;
|
||||
}
|
||||
|
||||
const message = xhr.responseJSON.message;
|
||||
|
||||
return message || fallbackErrorMessage;
|
||||
}
|
||||
|
||||
export default getErrorMessage;
|
10
frontend/src/Utilities/Object/hasDifferentItems.js
Normal file
10
frontend/src/Utilities/Object/hasDifferentItems.js
Normal file
@@ -0,0 +1,10 @@
|
||||
import _ from 'lodash';
|
||||
|
||||
function hasDifferentItems(prevItems, currentItems, idProp = 'id') {
|
||||
const diff1 = _.differenceBy(prevItems, currentItems, (item) => item[idProp]);
|
||||
const diff2 = _.differenceBy(currentItems, prevItems, (item) => item[idProp]);
|
||||
|
||||
return diff1.length > 0 || diff2.length > 0;
|
||||
}
|
||||
|
||||
export default hasDifferentItems;
|
15
frontend/src/Utilities/Object/selectUniqueIds.js
Normal file
15
frontend/src/Utilities/Object/selectUniqueIds.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import _ from 'lodash';
|
||||
|
||||
function selectUniqueIds(items, idProp) {
|
||||
const ids = _.reduce(items, (result, item) => {
|
||||
if (item[idProp]) {
|
||||
result.push(item[idProp]);
|
||||
}
|
||||
|
||||
return result;
|
||||
}, []);
|
||||
|
||||
return _.uniq(ids);
|
||||
}
|
||||
|
||||
export default selectUniqueIds;
|
Reference in New Issue
Block a user