Files
socialhose-php/frontend/app/common/Normalize.js
T
2022-12-09 08:36:26 -06:00

28 lines
526 B
JavaScript

export const normalize = function (arr, entityCallback) {
let ids = []
let entities = {}
arr.forEach((item, i) => {
if (item.id) {
ids.push(item.id)
if (entityCallback) {
entities[item.id] = entityCallback(item, item.id)
}
else {
entities[item.id] = item
}
} else {
ids.push(i.toString())
if (entityCallback) {
entities[i] = entityCallback(item, i)
}
else {
entities[i] = item
}
}
})
return {ids, entities}
}