function getMediaItem()

in public/src/js/utils/draggable-element.js [6:37]


function getMediaItem(dataTransfer) {
    var mediaItem = grid().getCropFromEvent({dataTransfer});

    if (mediaItem) {
        const id = mediaItem.id;
        mediaItem = _.chain(mediaItem.assets)
            .filter(function(asset) { return deepGet(asset, '.dimensions.width') <= 1000; })
            .sortBy(function(asset) { return deepGet(asset, '.dimensions.width') * -1; })
            .first()
            .value();

        if (mediaItem) {
            mediaItem.origin = grid().getGridUrlFromEvent({dataTransfer});
            mediaItem.crop = id;
            mediaItem.dataTransfer = dataTransfer;
        }

        if (!mediaItem) {
            throw new Error('Sorry, a suitable crop size does not exist for this image');
        }

    } else if (dataTransfer && dataTransfer.getData) {
        var url = dataTransfer.getData('Url');
        if (url && grid().excractMediaId(url)) {
            mediaItem = {
                dataTransfer: dataTransfer,
                origin: url
            };
        }
    }
    return mediaItem;
}