UNPKG

react-beautiful-dnd

Version:

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

27 lines (25 loc) 808 B
// @flow import memoizeOne from 'memoize-one'; import { toDraggableList } from './dimension-structures'; import type { DraggableDimension, DroppableDimension, DraggableDimensionMap, } from '../types'; export default memoizeOne( ( droppable: DroppableDimension, draggables: DraggableDimensionMap, ): DraggableDimension[] => toDraggableList(draggables) .filter( (draggable: DraggableDimension): boolean => droppable.descriptor.id === draggable.descriptor.droppableId, ) // Dimensions are not guarenteed to be ordered in the same order as keys // So we need to sort them so they are in the correct order .sort( (a: DraggableDimension, b: DraggableDimension): number => a.descriptor.index - b.descriptor.index, ), );