UNPKG

uploadcare-widget-tab-effects

Version:

Effects Tab for Uploadcare Widget. Edit images in desktop and mobile browsers.

41 lines (35 loc) 1.04 kB
import getModifiersByCrop from './get-modifiers-by-crop' const getModifiersByEffects = (effects, withCrop = true, withRFM = true) => { let cdnUrlModifiers = '' for (const effect in effects) { if (effects[effect]) { switch (typeof effects[effect]) { case 'boolean': if (!withRFM && !!~['flip', 'mirror'].indexOf(effect)) { break } cdnUrlModifiers += `-/${effect}/` break case 'number': if (!withRFM && effect === 'rotate') { break } cdnUrlModifiers += `-/${effect}/${effects[effect]}/` break case 'object': if (effect === 'crop' && withCrop) { cdnUrlModifiers += getModifiersByCrop(effects[effect]) } break } } } if (cdnUrlModifiers) { cdnUrlModifiers = effects['crop'] && withCrop ? cdnUrlModifiers : `-/preview/${cdnUrlModifiers}` } else { cdnUrlModifiers = '' } return cdnUrlModifiers } export default getModifiersByEffects