UNPKG

react-beautiful-dnd

Version:

Beautiful, accessible drag and drop for lists with React.js

17 lines (14 loc) 548 B
// @flow import memoizeOne from 'memoize-one'; import type { DraggableId, Displacement } from '../types'; export type DisplacementMap = { [key: DraggableId]: Displacement }; // shared map creation // it saves needing to loop over the list in every component // a really important optimisation for big lists export default memoizeOne( (displaced: Displacement[]): DisplacementMap => displaced.reduce((map: DisplacementMap, displacement: Displacement) => { map[displacement.draggableId] = displacement; return map; }, {}), );