{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./src/common/ci.utils.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/constants.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/is-crop.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/convert-to-px.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-parent-container-size.js","webpack:///./src/plain/index.js","webpack:///./node_modules/core-js/features/array/find.js","webpack:///./node_modules/core-js/es/array/find.js","webpack:///./node_modules/core-js/modules/es.array.find.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/entry-unbind.js","webpack:///./node_modules/core-js/es/math/trunc.js","webpack:///./node_modules/core-js/modules/es.math.trunc.js","webpack:///./src/plain/ci.service.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-params-from-url.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/determine-container-props.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-width.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-height.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-ratio.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-size-limit.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-img-src.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/is-svg.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/generate-url.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/get-breakpoint.js","webpack:///./node_modules/cloudimage-responsive-utils/dist/utils/is-supported-in-browser.js","webpack:///./src/plain/ci.config.js","webpack:///./src/plain/ci.utils.js","webpack:///./node_modules/throttle-debounce/index.umd.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","it","Math","check","globalThis","window","self","global","this","Function","toObject","hasOwn","fails","exec","error","DESCRIPTORS","definePropertyModule","createPropertyDescriptor","f","IE8_DOM_DEFINE","anObject","toPrimitive","$defineProperty","O","P","Attributes","TypeError","isObject","String","IndexedObject","requireObjectCoercible","createNonEnumerableProperty","setGlobal","store","path","aFunction","variable","undefined","namespace","method","arguments","length","filterImages","images","type","filtered","image","className","includes","push","getCommonImageProps","sizes","getSize","attr","params","getParams","imgNodeRatio","blurHash","isLazyCanceled","preserveSize","imgNodeWidth","imgNodeHeight","resultParams","temp","replace","matchedStr","substring","JSON","parse","e","decodeURI","resultSizes","keys","forEach","getURLWithoutQueryParams","getImageProps","imgSelector","props","imgNodeSRC","getParamsFromURL","isAdaptive","getBackgroundImageProps","bgSelector","minWindowWidth","url","split","element","attribute","getAttribute","addClass","elem","indexOf","getWrapper","parentNode","isLazy","lazyLoading","isUpdate","setSrc","propertyName","lazy","imgSrc","isSVG","dataSrcAttr","setAttribute","setSrcset","urls","map","dpr","join","setBackgroundSrc","resultLink","style","backgroundImage","getFreshCIElements","rootElement","backgroundImages","document","HTMLElement","querySelectorAll","destroyNodeImgSize","imgNode","removeAttribute","DEVICE_PIXEL_RATIO_LIST","getOwnPropertyDescriptor","redefine","copyConstructorProperties","isForced","options","source","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","propertyIsEnumerableModule","toIndexedObject","has","$getOwnPropertyDescriptor","bitmap","configurable","writable","classof","propertyIsEnumerable","toString","slice","input","PREFERRED_STRING","fn","val","valueOf","argument","createElement","a","EXISTS","functionToString","inspectSource","shared","uid","IS_PURE","version","copyright","id","postfix","random","hiddenKeys","names","result","toInteger","min","ceil","floor","isNaN","that","b","apply","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","V8_VERSION","getOwnPropertySymbols","symbol","isCrop","func","convertToPX","size","parseInt","innerWidth","innerHeight","getParentContainerSize","img","getBoundingClientRect","leftPadding","nodeType","getComputedStyle","paddingLeft","rightPadding","paddingRight","CIResponsive","parent","entryUnbind","$","$find","find","addToUnscopables","SKIPS_HOLES","Array","proto","callbackfn","g","$propertyIsEnumerable","NASHORN_BUG","1","V","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","state","unsafe","simple","set","NATIVE_WEAK_MAP","objectHas","sharedKey","WeakMap","wmget","wmhas","wmset","metadata","facade","STATE","getterFor","TYPE","test","ownKeys","getOwnPropertyDescriptorModule","getBuiltIn","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","concat","internalObjectKeys","getOwnPropertyNames","toLength","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","index","max","integer","replacement","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_OUT","NO_HOLES","specificCreate","boundFunction","filter","some","every","findIndex","filterOut","isArray","SPECIES","wellKnownSymbol","originalArray","C","constructor","arg","match","userAgent","process","versions","v8","iterator","UNSCOPABLES","ArrayPrototype","activeXDocument","defineProperties","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","close","parentWindow","NullProtoObjectViaActiveX","display","appendChild","src","contentWindow","open","F","Properties","objectKeys","CONSTRUCTOR","METHOD","trunc","config","getInitialConfigPlain","init","addEventListener","loadBackgroundImage","debounce","onUpdateDimensions","windowScreenBecomesBigger","getBasicInfo","cloudimageUrl","cloudimageSrcset","onImageLoad","initImageClasses","processOnlyWidth","onload","isImage","baseURL","presets","devicePixelRatioList","processURL","processQueryString","imgProps","getImgSRC","isSupportedInBrowser","getBreakpoint","containerProps","determineContainerProps","service","methods","generateURLbyDPR","devicePixelRatio","generateURL","processImage","processBackgroundImage","queryIndex","processParams","_isCrop","_getWidth3","_getHeight","_getRatio","_constants","_getSizeLimit","enumerableOnly","symbols","sym","_objectSpread","_defineProperty","getOwnPropertyDescriptors","obj","_slicedToArray","arr","_arrayWithHoles","_arr","_n","_d","_e","_s","_i","next","done","err","_iterableToArrayLimit","minLen","_arrayLikeToArray","from","_unsupportedIterableToArray","_nonIterableRest","len","arr2","ratio","_props$config","crop","exactSize","limitFactor","_getWidth2","getWidth","width","isLimit","height","getHeight","getRatio","widthWithDPR","heightWithDRP","getSizeLimit","_convertToPx","_getParentContainerSize","_props$imgNodeWidth","_props$params","_ignoreNodeImgSize","ignoreNodeImgSize","ignoreStyleImgSize","imageSizeAttributes","detectImageNodeCSS","sizeParamsWidth","w","paramsWidth","imgNodeWidthPX","imageWidth","getImageWidth","imageContainerWidth","resultWidth","imageStyleWidth","imageCSSWidth","getImageNodeCSS","preDisplayValue","getImageHeight","_props$imgNode","_props$imgNodeHeight","sizeParamsHeight","h","paramsRatio","paramsHeight","imgNodeHeightPX","imageHeight","imageContainerHeight","imageStyleHeight","_ref","ignoreNodeRatio","_isSvg","relativeURLPath","isRelativeUrlPath","location","protocol","relativeToAbsolutePath","base","relative","root","stack","getBaseURL","parts","pop","shift","extractBaseURLFromString","origin","baseURI","pathArray","host","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","_props$devicePixelRat","token","doNotReplaceURL","customDomain","getQueryString","_processParamsExceptS2","processParamsExceptSizeRelated","restParams","_processParamsExceptS3","widthFromParam","heightFromParam","widthQ","heightQ","restParamsQ","encodeURIComponent","query","_toConsumableArray","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","getAdaptiveSize","reverse","item","matchMedia","media","matches","normalizeSize","_params$w","_params$h","_params$r","_params$src","percent","parseFloat","_percent","isBlurHash","support","ImageData","Uint8ClampedArray","Element","baseUrl","saveNodeImgRatio","xs","sm","md","lg","xl","event","bgContainer","bg","optimizedImage","Image","initImageBackgroundClasses","throttle","delay","noTrailing","callback","debounceMode","timeoutID","cancelled","lastExec","clearExistingTimeout","clearTimeout","wrapper","_len","arguments_","_key","elapsed","Date","now","clear","setTimeout","cancel","atBegin","factory"],"mappings":"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","file":"js-cloudimage-responsive.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 40);\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","var toObject = require('../internals/to-object');\n\nvar hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty.call(toObject(it), key);\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","module.exports = {};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","import { getParamsFromURL } from 'cloudimage-responsive-utils/dist/utils/get-params-from-url';\n\n\nexport const filterImages = (images, type) => {\n const filtered = [];\n\n for (let i = 0; i < images.length; i++) {\n const image = images[i];\n const isProcessed = image.className.includes(type);\n\n if (!isProcessed) {\n filtered.push(image);\n }\n }\n\n return filtered;\n};\n\nconst getCommonImageProps = (image) => ({\n sizes: getSize(attr(image, 'ci-sizes') || attr(image, 'data-ci-size') || {}) || undefined,\n params: getParams(attr(image, 'ci-params') || attr(image, 'data-ci-params') || {}),\n imgNodeRatio: attr(image, 'ci-ratio') || attr(image, 'data-ci-ratio') || undefined,\n blurHash: attr(image, 'ci-blur-hash') || attr(image, 'data-ci-blur-hash') || undefined,\n isLazyCanceled: (attr(image, 'ci-not-lazy') !== null || attr(image, 'data-ci-not-lazy') !== null) || undefined,\n preserveSize: (attr(image, 'ci-preserve-size') !== null || attr(image, 'data-preserve-size') !== null) || undefined,\n imgNodeWidth: attr(image, 'width'),\n imgNodeHeight: attr(image, 'height')\n});\n\nexport const getParams = (params) => {\n let resultParams = undefined;\n\n try {\n let temp = params.replace(/(\\w+:)|(\\w+ :)/g, function (matchedStr) {\n return '\"' + matchedStr.substring(0, matchedStr.length - 1) + '\":';\n });\n\n resultParams = JSON.parse(temp);\n } catch (e) {}\n\n if (!resultParams) {\n try {\n resultParams = JSON.parse('{\"' + decodeURI(params.replace(/&/g, \"\\\",\\\"\").replace(/=/g, \"\\\":\\\"\")) + '\"}');\n } catch (e) {}\n }\n\n return resultParams;\n}\n\nconst getSize = (sizes) => {\n let resultSizes = null;\n\n try {\n // add quotes around params\n let temp = sizes.replace(/(\\w+:)|(\\w+ :)/g, function (matchedStr) {\n if(matchedStr === 'https:' || matchedStr === 'http:'){\n return matchedStr\n }else {\n return '\"' + matchedStr.substring(0, matchedStr.length - 1) + '\":';\n }\n });\n // change single quotes to double quotes\n temp = temp.replace(/'/g, '\"').replace(/-\"width\":/g, '-width:');\n resultSizes = JSON.parse(temp);\n } catch (e) {}\n\n if (resultSizes) {\n Object.keys(resultSizes).forEach(key => {\n if (typeof resultSizes[key] === 'string') {\n try {\n resultSizes[key] = JSON.parse('{\"' + decodeURI(resultSizes[key].replace(/&/g, \"\\\",\\\"\").replace(/=/g, \"\\\":\\\"\")) + '\"}');\n } catch (e) {}\n }\n });\n }\n\n return resultSizes;\n}\n\nexport const getImageProps = (image, imgSelector) => {\n const props = {\n ...getCommonImageProps(image),\n imgNodeSRC: attr(image, imgSelector) || undefined\n };\n const params = {\n ...getParamsFromURL(props.imgNodeSRC || ''),\n ...props.params\n };\n\n return {\n ...props,\n params,\n isAdaptive: !!props.sizes,\n imgNodeSRC: getURLWithoutQueryParams(props.imgNodeSRC)\n };\n};\n\nexport const getBackgroundImageProps = (image, bgSelector) => {\n const props = {\n ...getCommonImageProps(image),\n imgNodeSRC: attr(image, bgSelector)|| undefined,\n minWindowWidth: attr(image, 'ci-min-window-width') || attr(image, 'data-min-window-width') || undefined\n };\n const params = {\n ...getParamsFromURL(props.imgNodeSRC || ''),\n ...props.params\n };\n\n return {\n ...props,\n params,\n isAdaptive: !!props.sizes,\n imgNodeSRC: getURLWithoutQueryParams(props.imgNodeSRC)\n };\n};\n\nconst getURLWithoutQueryParams = (url = '') => url.split('?')[0];\n\nconst attr = (element, attribute) => element.getAttribute(attribute);\n\nexport const addClass = (elem, className) => {\n if (!(elem.className.indexOf(className) > -1)) {\n elem.className += ' ' + className;\n }\n};\n\nexport const getWrapper = (image) => {\n if ((image.parentNode.className || '').indexOf('ci-image-wrapper') > -1) {\n return image.parentNode;\n } else if ((image.parentNode.parentNode.className || '').indexOf('ci-image-wrapper') > -1) {\n return image.parentNode.parentNode;\n }\n};\n\nexport const isLazy = (lazyLoading, isLazyCanceled, isUpdate) => {\n if ((isLazyCanceled && lazyLoading) || isUpdate) {\n lazyLoading = false;\n }\n\n return lazyLoading;\n};\n\nexport const setSrc = (image, url, propertyName, lazy, imgSrc, isSVG, dataSrcAttr) => {\n image.setAttribute(\n lazy ? (propertyName ? propertyName : 'data-src') : (dataSrcAttr ? dataSrcAttr : 'src'),\n isSVG ? imgSrc : url\n );\n};\n\nexport const setSrcset = (image, urls, propertyName, lazy, imgSrc, isSVG, dataSrcAttr) => {\n if (isSVG) return;\n\n image.setAttribute(\n lazy ? (propertyName ? propertyName : 'data-srcset') : (dataSrcAttr ? dataSrcAttr : 'srcset'),\n urls.map(({ dpr, url }) => `${url} ${dpr}x`).join(', ')\n );\n};\n\nexport const setBackgroundSrc = (image, url, lazy, imgSrc, isSVG, dataSrcAttr) => {\n const resultLink = isSVG ? imgSrc : url;\n\n if (lazy) {\n image.setAttribute((dataSrcAttr ? dataSrcAttr : 'data-bg'), resultLink);\n } else {\n image.style.backgroundImage = `url('${resultLink}')`\n }\n};\n\nexport const getFreshCIElements = (isUpdate, rootElement, imgSelector, bgSelector) => {\n let images, backgroundImages;\n\n if (rootElement !== document && !(rootElement instanceof HTMLElement)) {\n throw new TypeError('rootElement should be an HTMLElement');\n }\n\n if (isUpdate) {\n images = rootElement.querySelectorAll(`img[${imgSelector}]`);\n backgroundImages = rootElement.querySelectorAll(`[${bgSelector}]`);\n } else {\n images = filterImages(rootElement.querySelectorAll(`img[${imgSelector}]`), 'ci-image');\n backgroundImages = filterImages(rootElement.querySelectorAll(`[${bgSelector}]`), 'ci-bg');\n }\n\n return [images, backgroundImages];\n};\n\nexport const destroyNodeImgSize = imgNode => {\n imgNode.removeAttribute(\"height\");\n imgNode.removeAttribute(\"width\");\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.DEVICE_PIXEL_RATIO_LIST = void 0;\nvar DEVICE_PIXEL_RATIO_LIST = [1, 1.5, 2, 3, 4];\nexports.DEVICE_PIXEL_RATIO_LIST = DEVICE_PIXEL_RATIO_LIST;","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- requied for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.15.2',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n});\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.es/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n if (NATIVE_SYMBOL && has(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n }\n } return WellKnownSymbolsStore[name];\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isCrop = void 0;\n\nvar isCrop = function isCrop(func) {\n return ['crop', 'fit', 'bound', 'cover'].indexOf(func) !== -1;\n};\n\nexports.isCrop = isCrop;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.convertToPX = void 0;\n\nvar convertToPX = function convertToPX() {\n var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n size = size.toString();\n\n if (size.indexOf('px') > -1) {\n return parseInt(size);\n } else if (size.indexOf('%') > -1) {\n // todo calculate container width * %\n // todo could be the potenial problem when the plugin set 100% width and on update it can calculate wrong value\n return null;\n } else if (size.indexOf('vw') > -1) {\n return window.innerWidth * parseInt(size) / 100;\n } else if (size.indexOf('vh') > -1) {\n return window.innerHeight * parseInt(size) / 100;\n }\n\n return parseInt(size) || null;\n};\n\nexports.convertToPX = convertToPX;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getParentContainerSize = void 0;\n\nvar getParentContainerSize = function getParentContainerSize(img) {\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'width';\n var parentNode = null;\n var size = 0;\n\n do {\n parentNode = parentNode && parentNode.parentNode || img.parentNode;\n size = typeof parentNode.getBoundingClientRect === 'function' ? parentNode.getBoundingClientRect()[type] : window.innerWidth;\n } while (parentNode && !size);\n\n var leftPadding = size && parentNode && parentNode.nodeType === 1 ? parseInt(window.getComputedStyle(parentNode).paddingLeft) : 0;\n var rightPadding = size && parentNode && parentNode.nodeType === 1 ? parseInt(window.getComputedStyle(parentNode).paddingRight) : 0;\n return size + (size ? -leftPadding - rightPadding : 0);\n};\n\nexports.getParentContainerSize = getParentContainerSize;","import 'core-js/features/array/find';\nimport 'core-js/es/math/trunc';\nimport CIResponsive from './ci.service';\n\n\nwindow.CIResponsive = CIResponsive;","var parent = require('../../es/array/find');\n\nmodule.exports = parent;\n","require('../../modules/es.array.find');\nvar entryUnbind = require('../../internals/entry-unbind');\n\nmodule.exports = entryUnbind('Array', 'find');\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var state;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) {\n createNonEnumerableProperty(value, 'name', key);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n if (wmhas.call(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (objectHas(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","module.exports = false;\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_OUT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push.call(target, value); // filterOut\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterOut` method\n // https://github.com/tc39/proposal-array-filtering\n filterOut: createMethod(7)\n};\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] < 4 ? 1 : match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject -- old IE */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\n\nvar call = Function.call;\n\nmodule.exports = function (CONSTRUCTOR, METHOD, length) {\n return bind(call, global[CONSTRUCTOR].prototype[METHOD], length);\n};\n","require('../../modules/es.math.trunc');\nvar path = require('../../internals/path');\n\nmodule.exports = path.Math.trunc;\n","var $ = require('../internals/export');\n\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n$({ target: 'Math', stat: true }, {\n trunc: function trunc(it) {\n return (it > 0 ? floor : ceil)(it);\n }\n});\n","import {\n addClass,\n destroyNodeImgSize,\n getBackgroundImageProps,\n getFreshCIElements,\n getImageProps,\n isLazy,\n setBackgroundSrc,\n setSrc,\n setSrcset\n} from '../common/ci.utils';\nimport { determineContainerProps } from 'cloudimage-responsive-utils/dist/utils/determine-container-props';\nimport { getImgSRC } from 'cloudimage-responsive-utils/dist/utils/get-img-src';\nimport { generateURL } from 'cloudimage-responsive-utils/dist/utils/generate-url';\nimport { getBreakpoint } from 'cloudimage-responsive-utils/dist/utils/get-breakpoint';\nimport { isSupportedInBrowser } from 'cloudimage-responsive-utils/dist/utils/is-supported-in-browser';\nimport { getInitialConfigPlain } from './ci.config';\nimport { initImageClasses, loadBackgroundImage } from './ci.utils';\nimport { debounce } from 'throttle-debounce';\n\n\nexport default class CIResponsive {\n constructor(config) {\n this.config = getInitialConfigPlain(config);\n\n if (this.config.init) this.init();\n\n this.innerWidth = window.innerWidth;\n }\n\n init() {\n document.addEventListener('lazybeforeunveil', loadBackgroundImage);\n window.addEventListener('resize', debounce(100, this.onUpdateDimensions.bind(this)));\n\n this.process();\n }\n\n onUpdateDimensions() {\n this.process(true);\n\n if (this.innerWidth < window.innerWidth) {\n this.innerWidth = window.innerWidth;\n }\n }\n\n process(isUpdate, rootElement = document) {\n const { imgSelector, bgSelector } = this.config;\n const windowScreenBecomesBigger = this.innerWidth < window.innerWidth;\n let [images, backgroundImages] = getFreshCIElements(isUpdate, rootElement, imgSelector, bgSelector);\n\n if (images.length > -1) {\n images.forEach(imgNode => {\n this.getBasicInfo(imgNode, isUpdate, windowScreenBecomesBigger, 'image');\n });\n }\n\n if (backgroundImages.length > -1) {\n backgroundImages.forEach(imgNode => {\n this.getBasicInfo(imgNode, isUpdate, windowScreenBecomesBigger, 'background');\n });\n }\n }\n\n getBasicInfo = (imgNode, isUpdate, windowScreenBecomesBigger, type) => {\n const isImage = type === 'image';\n const { config } = this;\n const {\n baseURL, lazyLoading, presets, devicePixelRatioList, imgSelector, bgSelector, processURL, processQueryString\n } = config;\n const imgProps = isImage ?\n getImageProps(imgNode, imgSelector) : getBackgroundImageProps(imgNode, bgSelector);\n const { params, imgNodeSRC, isLazyCanceled, sizes, isAdaptive, preserveSize, minWindowWidth } = imgProps;\n\n if (!imgNodeSRC) return;\n\n const [src, isSVG] = getImgSRC(imgNodeSRC, baseURL);\n const lazy = isLazy(lazyLoading, isLazyCanceled, isUpdate);\n let size;\n\n if (!isSupportedInBrowser(true)) {\n if (isImage) {\n imgNode.src = src;\n } else {\n imgNode.style.backgroundImage = 'url(' + src + ')';\n }\n\n return;\n }\n\n if (window.innerWidth < minWindowWidth && !isImage) {\n imgNode.style.backgroundImage = 'none';\n return;\n }\n\n if (isAdaptive) {\n size = getBreakpoint(sizes, presets);\n } else {\n if (isUpdate && !windowScreenBecomesBigger) return;\n }\n\n const containerProps = determineContainerProps({ ...imgProps, size, imgNode, config });\n const service = {\n props: { imgNode, imgProps, config },\n methods: {}\n };\n const generateURLbyDPR = devicePixelRatio =>\n generateURL({ src, params, config, containerProps, devicePixelRatio, processURL, processQueryString, service });\n const cloudimageUrl = generateURLbyDPR();\n const cloudimageSrcset = devicePixelRatioList.map(dpr => ({ dpr: dpr.toString(), url: generateURLbyDPR(dpr) }));\n const props = { imgNode, isUpdate, imgProps, lazy, containerProps, isSVG, cloudimageUrl, src, preserveSize };\n\n if (isImage) {\n this.processImage({ ...props, cloudimageUrl: generateURLbyDPR(1), cloudimageSrcset });\n } else {\n this.processBackgroundImage(props);\n }\n }\n\n processImage(props) {\n const { imgNode, isUpdate, lazy, isSVG, cloudimageUrl, src, cloudimageSrcset } = props;\n const { config } = this;\n const { dataSrcAttr, onImageLoad } = config;\n\n if (!isUpdate) {\n initImageClasses({ imgNode, lazy });\n }\n\n if (config.destroyNodeImgSize) {\n destroyNodeImgSize(imgNode);\n }\n\n if (config.processOnlyWidth) {\n imgNode.removeAttribute(\"height\");\n }\n\n imgNode.onload = () => {\n if (onImageLoad && typeof onImageLoad === 'function') {\n onImageLoad(imgNode);\n }\n addClass(imgNode, 'ci-image-loaded');\n };\n\n setSrcset(imgNode, cloudimageSrcset, 'data-srcset', lazy, src, isSVG, dataSrcAttr);\n setSrc(imgNode, cloudimageUrl, 'data-src', lazy, src, isSVG, dataSrcAttr);\n }\n\n processBackgroundImage(props) {\n const { imgNode, isUpdate, lazy, isSVG, cloudimageUrl, src } = props;\n const { config } = this;\n const { dataSrcAttr } = config;\n\n if (!isUpdate) {\n imgNode.className = `${imgNode.className}${lazy ? ' lazyload' : ''}`;\n }\n\n setBackgroundSrc(imgNode, cloudimageUrl, lazy, src, isSVG, dataSrcAttr);\n }\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getParamsFromURL = void 0;\n\nvar getParamsFromURL = function getParamsFromURL(url) {\n var queryIndex = url.indexOf('?');\n if (queryIndex === -1) return;\n return processParams(url.slice(queryIndex + 1));\n};\n\nexports.getParamsFromURL = getParamsFromURL;\n\nvar processParams = function processParams(params) {\n var resultParams = undefined;\n\n try {\n var temp = params.replace(/(\\w+:)|(\\w+ :)/g, function (matchedStr) {\n return '\"' + matchedStr.substring(0, matchedStr.length - 1) + '\":';\n });\n resultParams = JSON.parse(temp);\n } catch (e) {}\n\n if (!resultParams) {\n try {\n resultParams = JSON.parse('{\"' + decodeURI(params.replace(/&/g, \"\\\",\\\"\").replace(/=/g, \"\\\":\\\"\")) + '\"}');\n } catch (e) {}\n }\n\n return resultParams;\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.determineContainerProps = void 0;\n\nvar _isCrop = require(\"./is-crop\");\n\nvar _getWidth3 = require(\"./get-width\");\n\nvar _getHeight = require(\"./get-height\");\n\nvar _getRatio = require(\"./get-ratio\");\n\nvar _constants = require(\"../constants\");\n\nvar _getSizeLimit = require(\"./get-size-limit\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar determineContainerProps = function determineContainerProps(props) {\n var imgNode = props.imgNode,\n _props$config = props.config,\n config = _props$config === void 0 ? {} : _props$config,\n imgNodeWidth = props.imgNodeWidth,\n imgNodeHeight = props.imgNodeHeight,\n imgNodeRatio = props.imgNodeRatio,\n params = props.params,\n size = props.size;\n var ratio = null;\n var crop = (0, _isCrop.isCrop)(params.func || config.params.func);\n var exactSize = config.exactSize,\n limitFactor = config.limitFactor;\n\n var _getWidth = (0, _getWidth3.getWidth)({\n imgNode: imgNode,\n config: config,\n exactSize: exactSize,\n imgNodeWidth: imgNodeWidth,\n params: _objectSpread(_objectSpread({}, config.params), params),\n size: size\n }),\n _getWidth2 = _slicedToArray(_getWidth, 2),\n width = _getWidth2[0],\n isLimit = _getWidth2[1];\n\n var height = (0, _getHeight.getHeight)({\n imgNode: imgNode,\n config: config,\n exactSize: exactSize,\n imgNodeHeight: imgNodeHeight,\n imgNodeWidth: imgNodeWidth,\n imgNodeRatio: imgNodeRatio,\n params: _objectSpread(_objectSpread({}, config.params), params),\n size: size,\n width: width\n });\n ratio = (0, _getRatio.getRatio)({\n imgNodeRatio: imgNodeRatio,\n width: width,\n height: height,\n size: size,\n config: config,\n imgNodeWidth: imgNodeWidth,\n imgNodeHeight: imgNodeHeight\n });\n\n var sizes = _constants.DEVICE_PIXEL_RATIO_LIST.map(function (dpr) {\n var widthWithDPR, heightWithDRP;\n widthWithDPR = width && width * dpr;\n widthWithDPR = crop ? widthWithDPR : isLimit ? (0, _getSizeLimit.getSizeLimit)(widthWithDPR, exactSize, limitFactor) : widthWithDPR;\n heightWithDRP = height && height * dpr;\n\n if (!heightWithDRP && widthWithDPR && ratio) {\n heightWithDRP = Math.floor(widthWithDPR / ratio);\n }\n\n if (!widthWithDPR && heightWithDRP && ratio) {\n widthWithDPR = Math.floor(heightWithDRP * ratio);\n }\n\n return {\n width: widthWithDPR,\n height: heightWithDRP,\n ratio: ratio\n };\n });\n\n return {\n sizes: sizes,\n ratio: ratio,\n width: width,\n height: height\n };\n};\n\nexports.determineContainerProps = determineContainerProps;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getWidth = void 0;\n\nvar _convertToPx = require(\"../utils/convert-to-px\");\n\nvar _getParentContainerSize = require(\"../utils/get-parent-container-size\");\n\n/**\n * Get width for an image.\n *\n * Priority:\n * 1. image node param width\n * 2. image node image width\n * 3. image node inline styling\n * 4. parent node of image computed style width (up to body tag)\n *\n * @param {HTMLImageElement} props.imgNode - image node\n * @param {Number} props.imgNodeWidth - width of image node\n * @param {String} props.params - params of image node\n * @return {Array} [with, isLimit]\n */\nvar getWidth = function getWidth(props) {\n var imgNode = props.imgNode,\n _props$imgNodeWidth = props.imgNodeWidth,\n imgNodeWidth = _props$imgNodeWidth === void 0 ? null : _props$imgNodeWidth,\n _props$params = props.params,\n params = _props$params === void 0 ? {} : _props$params,\n size = props.size,\n config = props.config;\n var _ignoreNodeImgSize = config.ignoreNodeImgSize,\n ignoreStyleImgSize = config.ignoreStyleImgSize,\n imageSizeAttributes = config.imageSizeAttributes,\n detectImageNodeCSS = config.detectImageNodeCSS;\n var ignoreNodeImgSize = typeof _ignoreNodeImgSize !== 'undefined' ? _ignoreNodeImgSize : imageSizeAttributes !== 'use';\n var sizeParamsWidth = size && size.params && (size.params.w || size.params.width);\n var paramsWidth = params.width || params.w;\n var imgNodeWidthPX = !ignoreNodeImgSize && imgNodeWidth && (0, _convertToPx.convertToPX)(imgNodeWidth);\n var imageWidth = !ignoreStyleImgSize && getImageWidth(imgNode, detectImageNodeCSS);\n var imageContainerWidth = !imageWidth && parseInt((0, _getParentContainerSize.getParentContainerSize)(imgNode), 10);\n var resultWidth = imageWidth || imageContainerWidth;\n\n if (size && size.params) {\n if (size.params.r) {\n if (params.width || params.w) {\n return [paramsWidth];\n }\n\n if (!ignoreNodeImgSize && imgNodeWidth) {\n return [imgNodeWidthPX];\n }\n\n return [resultWidth];\n }\n\n return [sizeParamsWidth];\n }\n\n if (paramsWidth) {\n return [paramsWidth];\n }\n\n if (!ignoreNodeImgSize && imgNodeWidth) {\n return [imgNodeWidthPX];\n }\n\n return [resultWidth, true];\n};\n/**\n * Get width for an image.\n *\n *\n * @param {HTMLImageElement} img - image node\n * @param {Boolean} detectImageNodeCSS - detect width of image node\n * @return {Number} width of image container\n */\n\n\nexports.getWidth = getWidth;\n\nvar getImageWidth = function getImageWidth(img, detectImageNodeCSS) {\n var isImageStyleWidthInPX = img && img.style && img.style.width && !(img.style.width.indexOf('%') !== -1);\n var imageStyleWidth = isImageStyleWidthInPX && img.style.width;\n var imageWidth = imageStyleWidth && (0, _convertToPx.convertToPX)(imageStyleWidth);\n var imageCSSWidth = detectImageNodeCSS && getImageNodeCSS(img);\n return detectImageNodeCSS && imageCSSWidth ? imageCSSWidth : imageWidth && parseInt(imageWidth, 10);\n};\n\nvar getImageNodeCSS = function getImageNodeCSS(img) {\n var width;\n var preDisplayValue = img.style.display;\n img.style.display = 'inline-block';\n width = img.getBoundingClientRect().width;\n img.style.display = preDisplayValue;\n return width;\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getImageHeight = exports.getHeight = void 0;\n\nvar _convertToPx = require(\"../utils/convert-to-px\");\n\nvar _getParentContainerSize = require(\"../utils/get-parent-container-size\");\n\nvar _isCrop = require(\"../utils/is-crop\");\n\n/**\n * Get height for an image.\n *\n * Priority:\n * 1. image node param height\n * 2. image node image height\n * 3. image node inline styling\n * 4. parent node of image computed style height (up to body tag)\n *\n * @param {HTMLImageElement} props.imgNode - image node\n * @param {Object} props.config - plugin config\n * @param {Boolean} props.exactSize - a flag to use exact width/height params\n * @param {Number} props.imgNodeHeight - height of image node\n * @param {String} props.params - params of image node\n * @return {Number} height limit\n */\nvar getHeight = function getHeight(props) {\n var _props$imgNode = props.imgNode,\n imgNode = _props$imgNode === void 0 ? null : _props$imgNode,\n _props$config = props.config,\n config = _props$config === void 0 ? {} : _props$config,\n _props$imgNodeHeight = props.imgNodeHeight,\n imgNodeHeight = _props$imgNodeHeight === void 0 ? null : _props$imgNodeHeight,\n _props$params = props.params,\n params = _props$params === void 0 ? {} : _props$params,\n size = props.size,\n width = props.width;\n var _ignoreNodeImgSize = config.ignoreNodeImgSize,\n ignoreStyleImgSize = config.ignoreStyleImgSize,\n imageSizeAttributes = config.imageSizeAttributes;\n var ignoreNodeImgSize = typeof _ignoreNodeImgSize !== 'undefined' ? _ignoreNodeImgSize : imageSizeAttributes !== 'use';\n var crop = (0, _isCrop.isCrop)(params.func || config.params.func);\n var sizeParamsHeight = size && size.params && (size.params.h || size.params.height);\n var paramsRatio = size && size.params && (size.params.ratio || size.params.r);\n var paramsHeight = params.height || params.h;\n var imgNodeHeightPX = !ignoreNodeImgSize && imgNodeHeight && (0, _convertToPx.convertToPX)(imgNodeHeight);\n var imageHeight = !ignoreStyleImgSize && getImageHeight(imgNode);\n var imageContainerHeight = !imageHeight && parseInt((0, _getParentContainerSize.getParentContainerSize)(imgNode, 'height'), 10);\n\n if (size && size.params) {\n if (paramsRatio && width) {\n return width / paramsRatio;\n }\n\n return sizeParamsHeight;\n }\n\n if (paramsHeight) {\n return paramsHeight;\n }\n\n if (!ignoreNodeImgSize && imgNodeHeight) {\n return imgNodeHeightPX;\n }\n\n if (imageHeight) {\n return imageHeight;\n }\n\n if (!crop) {\n return null;\n }\n\n return imageContainerHeight;\n};\n/**\n * Get height for an image.\n *\n *\n * @param {HTMLImageElement} img - image node\n * @return {Number|null} height of image container\n */\n\n\nexports.getHeight = getHeight;\n\nvar getImageHeight = function getImageHeight(img) {\n var isImageStyleHeightInPX = img && img.style && img.style.height && !(img.style.height.indexOf('%') !== -1);\n var imageStyleHeight = isImageStyleHeightInPX && img.style.height;\n var imageHeight = (0, _convertToPx.convertToPX)(imageStyleHeight);\n return imageHeight && parseInt(imageHeight, 10);\n};\n\nexports.getImageHeight = getImageHeight;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRatio = void 0;\n\nvar getRatio = function getRatio(_ref) {\n var imgNodeRatio = _ref.imgNodeRatio,\n width = _ref.width,\n height = _ref.height,\n size = _ref.size,\n config = _ref.config,\n imgNodeWidth = _ref.imgNodeWidth,\n imgNodeHeight = _ref.imgNodeHeight;\n var imageSizeAttributes = config.imageSizeAttributes;\n var ignoreNodeRatio = imageSizeAttributes === 'ignore';\n\n if (size && size.params) {\n if (size.params.r || size.params.ratio) {\n return size.params.r || size.params.ratio;\n } else if ((size.params.w || size.params.width) && (size.params.h || size.params.height)) {\n return (size.params.w || size.params.width) / (size.params.h || size.params.height);\n } else {\n return null;\n }\n }\n\n if (!ignoreNodeRatio && imgNodeWidth && imgNodeHeight) {\n return imgNodeWidth / imgNodeHeight;\n } else if (!ignoreNodeRatio && imgNodeRatio) {\n return imgNodeRatio;\n } else if (width && height) {\n return width / height;\n }\n\n return null;\n};\n\nexports.getRatio = getRatio;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getSizeLimit = void 0;\n\n/**\n * Get size limit for container/image.\n *\n * @param {Number} size - width/height of container/image\n * @param {Boolean} exactSize - a flag to use exact width/height params\n * @param {Number} limitFactor - limit factor\n * @return {Number} size limit\n */\nvar getSizeLimit = function getSizeLimit(size, exactSize, limitFactor) {\n if (exactSize) return Math.ceil(size);\n if (size <= 25) return 25;\n if (size <= 50) return 50;\n return Math.ceil(size / limitFactor) * limitFactor;\n};\n\nexports.getSizeLimit = getSizeLimit;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getImgSRC = void 0;\n\nvar _isSvg = require(\"../utils/is-svg\");\n\nvar getImgSRC = function getImgSRC(src) {\n var baseURL = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var relativeURLPath = isRelativeUrlPath(src);\n\n if (src.indexOf('//') === 0) {\n src = window.location.protocol + src;\n }\n\n if (relativeURLPath) {\n src = relativeToAbsolutePath(baseURL, src);\n }\n\n return [src, (0, _isSvg.isSVG)(src)];\n};\n\nexports.getImgSRC = getImgSRC;\n\nvar relativeToAbsolutePath = function relativeToAbsolutePath(base, relative) {\n var root = relative[0] === '/';\n var resultBaseURL = getBaseURL(root, base);\n var stack = resultBaseURL.split('/');\n var parts = relative.split('/');\n stack.pop(); // remove current file name (or empty string)\n // (omit if 'base' is the current folder without trailing slash)\n\n if (root) {\n parts.shift();\n }\n\n for (var i = 0; i < parts.length; i++) {\n if (parts[i] === '.') continue;\n if (parts[i] === '..') stack.pop();else stack.push(parts[i]);\n }\n\n return stack.join('/');\n};\n\nvar getBaseURL = function getBaseURL(root, base) {\n if (root) {\n return (base ? extractBaseURLFromString(base) : window.location.origin) + '/';\n } else {\n return base ? base : document.baseURI;\n }\n};\n\nvar extractBaseURLFromString = function extractBaseURLFromString() {\n var path = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var pathArray = path.split('/');\n var protocol = pathArray[0];\n var host = pathArray[2];\n return protocol + '//' + host;\n};\n\nvar isRelativeUrlPath = function isRelativeUrlPath(src) {\n if (!src) return false;\n\n if (src.indexOf('//') === 0) {\n src = window.location.protocol + src;\n }\n\n return src.indexOf('http://') !== 0 && src.indexOf('https://') !== 0 && src.indexOf('//') !== 0;\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isSVG = void 0;\n\nvar isSVG = function isSVG(url) {\n return url.slice(-4).toLowerCase() === '.svg';\n};\n\nexports.isSVG = isSVG;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.generateURL = void 0;\n\nvar _constants = require(\"../constants\");\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar generateURL = function generateURL(props) {\n var src = props.src,\n params = props.params,\n config = props.config,\n containerProps = props.containerProps,\n _props$devicePixelRat = props.devicePixelRatio,\n devicePixelRatio = _props$devicePixelRat === void 0 ? 1 : _props$devicePixelRat,\n processURL = props.processURL,\n processQueryString = props.processQueryString,\n service = props.service;\n\n var size = containerProps && containerProps.sizes[_constants.DEVICE_PIXEL_RATIO_LIST.indexOf(devicePixelRatio)];\n\n var _ref = size || {},\n width = _ref.width,\n height = _ref.height;\n\n var token = config.token,\n domain = config.domain,\n doNotReplaceURL = config.doNotReplaceURL,\n customDomain = config.customDomain;\n var finalDomain = customDomain ? domain : token + '.' + domain;\n var url = [doNotReplaceURL ? '' : \"https://\".concat(finalDomain, \"/v7/\"), src, src.indexOf('?') !== -1 ? '&' : '?'].join('');\n return [processURL ? processURL({\n url: url,\n token: token,\n domain: domain,\n service: service\n }) : url, getQueryString({\n params: _objectSpread(_objectSpread({}, config.params), params),\n width: width,\n height: height,\n config: config,\n processQueryString: processQueryString,\n devicePixelRatio: devicePixelRatio,\n service: service\n })].join('');\n};\n\nexports.generateURL = generateURL;\n\nvar getQueryString = function getQueryString(props) {\n var _props$params = props.params,\n params = _props$params === void 0 ? {} : _props$params,\n width = props.width,\n height = props.height,\n config = props.config,\n processQueryString = props.processQueryString,\n devicePixelRatio = props.devicePixelRatio,\n service = props.service;\n var processOnlyWidth = config.processOnlyWidth;\n\n var _processParamsExceptS = processParamsExceptSizeRelated(params),\n _processParamsExceptS2 = _slicedToArray(_processParamsExceptS, 3),\n restParams = _processParamsExceptS2[0],\n _processParamsExceptS3 = _processParamsExceptS2[1],\n widthFromParam = _processParamsExceptS3 === void 0 ? null : _processParamsExceptS3,\n heightFromParam = _processParamsExceptS2[2];\n\n var widthQ = width ? width : widthFromParam;\n var heightQ = height ? height : heightFromParam;\n var restParamsQ = Object.keys(restParams).map(function (key) {\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(restParams[key]);\n }).join('&');\n var query = [widthQ ? \"w=\".concat(widthQ) : '', heightQ && !processOnlyWidth ? (widthQ ? '&' : '') + \"h=\".concat(heightQ) : '', restParamsQ ? '&' + restParamsQ : ''].join('');\n return processQueryString ? processQueryString({\n query: query,\n widthQ: widthQ,\n heightQ: heightQ,\n restParamsQ: restParamsQ,\n processOnlyWidth: processOnlyWidth,\n devicePixelRatio: devicePixelRatio,\n service: service\n }) : query;\n};\n\nvar processParamsExceptSizeRelated = function processParamsExceptSizeRelated(params) {\n var w = params.w,\n h = params.h,\n width = params.width,\n height = params.height,\n restParams = _objectWithoutProperties(params, [\"w\", \"h\", \"width\", \"height\"]);\n\n return [restParams, w || width, h || height];\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getBreakpoint = void 0;\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nvar getBreakpoint = function getBreakpoint(sizes, presets) {\n var size = getAdaptiveSize(sizes, presets);\n return _toConsumableArray(size).reverse().find(function (item) {\n return window.matchMedia(item.media).matches;\n });\n};\n\nexports.getBreakpoint = getBreakpoint;\n\nvar getAdaptiveSize = function getAdaptiveSize(sizes, presets) {\n var resultSizes = [];\n Object.keys(sizes).forEach(function (key) {\n var customMedia = key.indexOf(':') > -1;\n var media = customMedia ? key : presets[key];\n resultSizes.push({\n media: media,\n params: normalizeSize(sizes[key])\n });\n });\n return resultSizes;\n};\n\nvar normalizeSize = function normalizeSize() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _params$w = params.w,\n w = _params$w === void 0 ? params.width || '' : _params$w,\n _params$h = params.h,\n h = _params$h === void 0 ? params.height || '' : _params$h,\n _params$r = params.r,\n r = _params$r === void 0 ? params.r : _params$r,\n _params$src = params.src,\n src = _params$src === void 0 ? params.src : _params$src;\n\n if (w.toString().indexOf('vw') > -1) {\n var percent = parseFloat(w);\n w = window.innerWidth * percent / 100;\n } else {\n w = parseFloat(w);\n }\n\n if (h.toString().indexOf('vh') > -1) {\n var _percent = parseFloat(h);\n\n h = window.innerHeight * _percent / 100;\n } else {\n h = parseFloat(h);\n }\n\n return {\n w: w,\n h: h,\n r: r,\n src: src\n };\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isSupportedInBrowser = void 0;\n\nvar isSupportedInBrowser = function isSupportedInBrowser(isBlurHash) {\n var support = true;\n\n if (isBlurHash) {\n try {\n new window.ImageData(new Uint8ClampedArray([0, 0, 0, 0]), 1, 1);\n } catch (e) {\n support = false;\n }\n }\n\n return Element.prototype.hasOwnProperty('prepend') && support;\n};\n\nexports.isSupportedInBrowser = isSupportedInBrowser;","import { getParams } from '../common/ci.utils';\nimport { DEVICE_PIXEL_RATIO_LIST } from 'cloudimage-responsive-utils/dist/constants';\n\n\nexport const getInitialConfigPlain = (config) => {\n const {\n imgSelector = 'ci-src',\n bgSelector = 'ci-bg-url',\n token = '',\n domain = 'cloudimg.io',\n lazyLoading = false,\n baseUrl, // to support old name\n baseURL,\n presets,\n params = 'org_if_sml=1',\n init = true,\n exactSize = false,\n doNotReplaceURL = false,\n limitFactor = 100,\n imageSizeAttributes = 'use',\n ignoreNodeImgSize,\n ignoreStyleImgSize = false,\n destroyNodeImgSize = false,\n saveNodeImgRatio = false,\n detectImageNodeCSS = false,\n processOnlyWidth = false,\n devicePixelRatioList = DEVICE_PIXEL_RATIO_LIST,\n // callbacks\n onImageLoad = null,\n // methods\n processURL = null,\n processQueryString = null\n } = config;\n\n return {\n imgSelector,\n bgSelector,\n token,\n domain,\n lazyLoading,\n baseURL: baseUrl || baseURL,\n exactSize,\n presets: presets ? presets :\n {\n xs: '(max-width: 575px)', // to 575 PHONE\n sm: '(min-width: 576px)', // 576 - 767 PHABLET\n md: '(min-width: 768px)', // 768 - 991 TABLET\n lg: '(min-width: 992px)', // 992 - 1199 SMALL_LAPTOP_SCREEN\n xl: '(min-width: 1200px)' // from 1200 USUALSCREEN\n },\n params: getParams(params),\n innerWidth: window.innerWidth,\n init,\n doNotReplaceURL,\n devicePixelRatioList,\n limitFactor,\n imageSizeAttributes,\n ignoreNodeImgSize,\n ignoreStyleImgSize,\n destroyNodeImgSize,\n saveNodeImgRatio,\n detectImageNodeCSS,\n processOnlyWidth,\n onImageLoad,\n processURL,\n processQueryString\n //isChrome: /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor)\n };\n};\n","import { addClass } from '../common/ci.utils';\n\n\nexport const loadBackgroundImage = (event) => {\n const bgContainer = event.target;\n const bg = bgContainer.getAttribute('data-bg');\n\n if (bg) {\n let optimizedImage = new Image();\n\n optimizedImage.onload = () => {\n addClass(bgContainer, 'ci-image-loaded');\n bgContainer.removeAttribute('data-bg');\n bgContainer.removeAttribute('ci-preview');\n }\n\n optimizedImage.src = bg;\n\n bgContainer.style.backgroundImage = 'url(' + bg + ')';\n }\n};\n\nexport const initImageClasses = ({ imgNode, lazy }) => {\n addClass(imgNode, 'ci-image');\n\n if (lazy) {\n addClass(imgNode, 'lazyload');\n }\n};\n\nexport const initImageBackgroundClasses = ({ imgNode, lazy }) => {\n addClass(imgNode, 'ci-bg');\n\n if (lazy) {\n addClass(imgNode, 'lazyload');\n }\n};","(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n\ttypeof define === 'function' && define.amd ? define(['exports'], factory) :\n\t(global = global || self, factory(global.throttleDebounce = {}));\n}(this, (function (exports) { 'use strict';\n\n\t/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n\t/**\n\t * Throttle execution of a function. Especially useful for rate limiting\n\t * execution of handlers on events like resize and scroll.\n\t *\n\t * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n\t * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the\n\t * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time\n\t * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds,\n\t * the internal counter is reset).\n\t * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n\t * to `callback` when the throttled-function is executed.\n\t * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end),\n\t * schedule `callback` to execute after `delay` ms.\n\t *\n\t * @returns {Function} A new, throttled, function.\n\t */\n\tfunction throttle (delay, noTrailing, callback, debounceMode) {\n\t /*\n\t * After wrapper has stopped being called, this timeout ensures that\n\t * `callback` is executed at the proper times in `throttle` and `end`\n\t * debounce modes.\n\t */\n\t var timeoutID;\n\t var cancelled = false; // Keep track of the last time `callback` was executed.\n\n\t var lastExec = 0; // Function to clear existing timeout\n\n\t function clearExistingTimeout() {\n\t if (timeoutID) {\n\t clearTimeout(timeoutID);\n\t }\n\t } // Function to cancel next exec\n\n\n\t function cancel() {\n\t clearExistingTimeout();\n\t cancelled = true;\n\t } // `noTrailing` defaults to falsy.\n\n\n\t if (typeof noTrailing !== 'boolean') {\n\t debounceMode = callback;\n\t callback = noTrailing;\n\t noTrailing = undefined;\n\t }\n\t /*\n\t * The `wrapper` function encapsulates all of the throttling / debouncing\n\t * functionality and when executed will limit the rate at which `callback`\n\t * is executed.\n\t */\n\n\n\t function wrapper() {\n\t for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n\t arguments_[_key] = arguments[_key];\n\t }\n\n\t var self = this;\n\t var elapsed = Date.now() - lastExec;\n\n\t if (cancelled) {\n\t return;\n\t } // Execute `callback` and update the `lastExec` timestamp.\n\n\n\t function exec() {\n\t lastExec = Date.now();\n\t callback.apply(self, arguments_);\n\t }\n\t /*\n\t * If `debounceMode` is true (at begin) this is used to clear the flag\n\t * to allow future `callback` executions.\n\t */\n\n\n\t function clear() {\n\t timeoutID = undefined;\n\t }\n\n\t if (debounceMode && !timeoutID) {\n\t /*\n\t * Since `wrapper` is being called for the first time and\n\t * `debounceMode` is true (at begin), execute `callback`.\n\t */\n\t exec();\n\t }\n\n\t clearExistingTimeout();\n\n\t if (debounceMode === undefined && elapsed > delay) {\n\t /*\n\t * In throttle mode, if `delay` time has been exceeded, execute\n\t * `callback`.\n\t */\n\t exec();\n\t } else if (noTrailing !== true) {\n\t /*\n\t * In trailing throttle mode, since `delay` time has not been\n\t * exceeded, schedule `callback` to execute `delay` ms after most\n\t * recent execution.\n\t *\n\t * If `debounceMode` is true (at begin), schedule `clear` to execute\n\t * after `delay` ms.\n\t *\n\t * If `debounceMode` is false (at end), schedule `callback` to\n\t * execute after `delay` ms.\n\t */\n\t timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n\t }\n\t }\n\n\t wrapper.cancel = cancel; // Return the wrapper function.\n\n\t return wrapper;\n\t}\n\n\t/* eslint-disable no-undefined */\n\t/**\n\t * Debounce execution of a function. Debouncing, unlike throttling,\n\t * guarantees that a function is only executed a single time, either at the\n\t * very beginning of a series of calls, or at the very end.\n\t *\n\t * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n\t * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n\t * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n\t * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n\t * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n\t * to `callback` when the debounced-function is executed.\n\t *\n\t * @returns {Function} A new, debounced function.\n\t */\n\n\tfunction debounce (delay, atBegin, callback) {\n\t return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false);\n\t}\n\n\texports.debounce = debounce;\n\texports.throttle = throttle;\n\n\tObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=index.umd.js.map\n"],"sourceRoot":""}