ra-core
Version:
Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React
20 lines • 735 B
JavaScript
import { getRelatedIds } from "./getRelatedIds.js";
/**
* Helper function for calling the dataProvider.getMany() method,
* and getting a Promise for the records indexed by id in return.
*
* @example
* fetchRelatedRecords(dataProvider)(records, 'post_id', 'posts').then(posts =>
* posts.map(record => ({
* ...record,
* post_title: posts[record.post_id].title,
* }))
* );
*/
export const fetchRelatedRecords = (dataProvider) => (data, field, resource) => dataProvider
.getMany(resource, { ids: getRelatedIds(data, field) })
.then(({ data }) => data.reduce((acc, post) => {
acc[post.id] = post;
return acc;
}, {}));
//# sourceMappingURL=fetchRelatedRecords.js.map