(function(global,factory){typeof exports==='object'&&typeof module!=='undefined'?module.exports=factory():typeof define==='function'&&define.amd?define(factory):(global.retinajs=factory())}(this,(function(){'use strict';var hasWindow=typeof window!=='undefined';var environment=Math.round(hasWindow?window.devicePixelRatio||1:1);var srcReplace=/(\.[A-z]{3,4}\/?(\?.*)?)$/;var inlineReplace=/url\(('|")?([^)'"]+)('|")?\)/i;var selector='[data-rjs]';var processedAttr='data-rjs-processed';function arrayify(object){return Array.prototype.slice.call(object)} function chooseCap(cap){var numericCap=parseInt(cap,10);if(environment2&&arguments[2]!==undefined?arguments[2]:1;var cap=chooseCap(rjs);if(src&&cap>1){var newSrc=src.replace(srcReplace,'@'+cap+'x$1');setSourceIfAvailable(image,newSrc)}} function manualSwapImage(image,src,hdsrc){if(environment>1){setSourceIfAvailable(image,hdsrc)}} function getImages(images){if(!images){return typeof document!=='undefined'?arrayify(document.querySelectorAll(selector)):[]}else{return typeof images.forEach==='function'?images:arrayify(images)}} function cleanBgImg(img){return img.style.backgroundImage.replace(inlineReplace,'$2')} function retina(images){getImages(images).forEach(function(img){if(!img.getAttribute(processedAttr)){var isImg=img.nodeName.toLowerCase()==='img';var src=isImg?img.getAttribute('src'):cleanBgImg(img);var rjs=img.getAttribute('data-rjs');var rjsIsNumber=!isNaN(parseInt(rjs,10));if(rjs===null){return} if(rjsIsNumber){dynamicSwapImage(img,src,rjs)}else{manualSwapImage(img,src,rjs)}}})} if(hasWindow){window.addEventListener('load',function(){retina()});window.retinajs=retina} return retina})))