(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;})));