Your IP : 216.73.216.86


Current Path : /var/www/homesaver/www/bitrix/js/ui/vue3/directives/lazyload/dist/
Upload File :
Current File : /var/www/homesaver/www/bitrix/js/ui/vue3/directives/lazyload/dist/lazyload.bundle.js.map

{"version":3,"file":"lazyload.bundle.js","sources":["../src/lazyload.js"],"sourcesContent":["/**\n * Image Lazy Load Vue3 directive\n *\n * @package bitrix\n * @subpackage ui\n * @copyright 2001-2021 Bitrix\n */\n\n/*\n\tAttention: intersection observer work with errors if image has border-radius\n\n\tExample of usage:\n\n\t<img v-lazyload\n\t\tclass=\"bx-module-element\"\n\t\tsrc=\"https://.../placeholder.png\"\n\t\tdata-lazyload-src=\"https://.../targetImage.png\"\n\t\tdata-lazyload-error-src=\"https://.../errorImage.png\"\n\t/>\n\n\t<img v-lazyload\n\t\tclass=\"bx-module-element\"\n\t\tsrc=\"https://.../placeholder.png\"\n\t\tdata-lazyload-dont-hide\n\t\tdata-lazyload-src=\"https://.../targetImage.png\"\n\t\tdata-lazyload-error-src=\"https://.../errorImage.png\"\n\t/>\n\n\t<img v-lazyload\n\t\tclass=\"bx-module-element\"\n\t\tdata-lazyload-src=\"https://.../targetImage.png\"\n\t/>\n\n\t<img v-lazyload\n\t\tclass=\"bx-module-element\"\n\t\tdata-lazyload-src=\"https://.../targetImage.png\"\n\t\tdata-lazyload-error-class=\"bx-module-element-error\"\n\t\tdata-lazyload-success-class=\"bx-module-element-success\"\n\t/>\n */\n\nimport {BitrixVue} from \"ui.vue3\";\nimport 'main.polyfill.intersectionobserver';\n\nconst WATCH = 'bx-lazyload-watch';\nconst LOADING = 'bx-lazyload-loading';\nconst SUCCESS = 'bx-lazyload-success';\nconst ERROR = 'bx-lazyload-error';\nconst HIDDEN = 'bx-lazyload-hidden';\n\nconst BLANK_IMAGE = \"data:image/svg+xml,%3Csvg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'%3E%3C/svg%3E\";\n\nexport const lazyload = {\n\tbeforeMount(element, bindings)\n\t{\n\t\tif (typeof bindings.value === 'object' && typeof bindings.value.callback === 'function')\n\t\t{\n\t\t\telement.lazyloadCallback = bindings.value.callback;\n\t\t}\n\n\t\tif (!element.src || element.src === location.href.replace(location.hash, ''))\n\t\t{\n\t\t\telement.src = BLANK_IMAGE;\n\t\t}\n\n\t\tif (lazyloadObserver)\n\t\t{\n\t\t\tlazyloadObserver.observe(element);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlazyloadLoadImage(element);\n\t\t}\n\t},\n\tupdated(element)\n\t{\n\t\tif (\n\t\t\t!element.classList.contains(SUCCESS)\n\t\t\t&& !element.classList.contains(ERROR)\n\t\t\t&& !element.classList.contains(WATCH)\n\t\t\t&& !element.classList.contains(LOADING)\n\t\t)\n\t\t{\n\t\t\telement.classList.add(LOADING);\n\t\t}\n\t\telse if (\n\t\t\t(element.classList.contains(SUCCESS) || element.classList.contains(ERROR))\n\t\t\t&& element.dataset.lazyloadSrc\n\t\t\t&& element.dataset.lazyloadSrc !== element.src\n\t\t)\n\t\t{\n\t\t\tif (!element.dataset.lazyloadSrc.startsWith('http'))\n\t\t\t{\n\t\t\t\tconst url = document.createElement('a');\n\t\t\t\turl.href = element.dataset.lazyloadSrc;\n\t\t\t\tif (url.href === element.src)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tlazyloadLoadImage(element);\n\t\t}\n\t},\n\tunmounted(element)\n\t{\n\t\tif (lazyloadObserver)\n\t\t{\n\t\t\tlazyloadObserver.unobserve(element);\n\t\t}\n\t}\n};\n\nlet lazyloadObserver = null;\nlet lazyloadLoadImage = function(currentImage, callback)\n{\n\tlet SUCCESS_CLASS = currentImage.dataset.lazyloadSuccessClass? currentImage.dataset.lazyloadSuccessClass.split(\" \"): [];\n\tdelete currentImage.dataset.lazyloadSuccessClass;\n\n\tSUCCESS_CLASS = [SUCCESS, ...SUCCESS_CLASS];\n\n\tlet ERROR_CLASS = currentImage.dataset.lazyloadErrorClass? currentImage.dataset.lazyloadErrorClass.split(\" \"): [];\n\tdelete currentImage.dataset.lazyloadErrorClass;\n\n\tERROR_CLASS = [ERROR, ...ERROR_CLASS];\n\n\tcurrentImage.classList.add(LOADING);\n\n\tconst newImage = new Image();\n\tnewImage.src = currentImage.dataset.lazyloadSrc;\n\n\tif (!currentImage.dataset.lazyloadHiddenSrc)\n\t{\n\t\tcurrentImage.dataset.lazyloadHiddenSrc = currentImage.src;\n\t}\n\n\tnewImage.onload = function()\n\t{\n\t\tif (currentImage.classList.contains(HIDDEN))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tif (currentImage.dataset.lazyloadSrc)\n\t\t{\n\t\t\tcurrentImage.src = currentImage.dataset.lazyloadSrc;\n\t\t}\n\n\t\tcurrentImage.classList.remove(LOADING);\n\t\tcurrentImage.classList.add(...SUCCESS_CLASS);\n\n\t\tif (typeof currentImage.lazyloadCallback === 'function')\n\t\t{\n\t\t\tcurrentImage.lazyloadCallback({element: currentImage, state: 'success'});\n\t\t\tdelete currentImage.lazyloadCallback;\n\t\t}\n\t};\n\n\tnewImage.onerror = function()\n\t{\n\t\tif (currentImage.classList.contains(HIDDEN))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tcurrentImage.classList.remove(LOADING);\n\t\tcurrentImage.classList.add(...ERROR_CLASS);\n\t\tcurrentImage.title = '';\n\t\tcurrentImage.alt = '';\n\n\t\tif (typeof currentImage.lazyloadCallback === 'function')\n\t\t{\n\t\t\tcurrentImage.lazyloadCallback({element: currentImage, state: 'error'});\n\t\t\tdelete currentImage.lazyloadCallback;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tcurrentImage.src = BLANK_IMAGE;\n\t\t}\n\t};\n\n\tif (typeof currentImage.dataset.lazyloadDontHide !== 'undefined')\n\t{\n\t\tcurrentImage.classList.remove(WATCH);\n\t\tdelete currentImage.dataset.lazyloadDontHide;\n\n\t\tif (lazyloadObserver)\n\t\t{\n\t\t\tlazyloadObserver.unobserve(currentImage);\n\t\t}\n\t}\n};\n\nif (typeof window.IntersectionObserver !== 'undefined')\n{\n\tlazyloadObserver = new IntersectionObserver(function (entries, observer)\n\t{\n\t\tentries.forEach(function(entry)\n\t\t{\n\t\t\tconst currentImage = entry.target;\n\n\t\t\tif (currentImage.classList.contains(ERROR))\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif (entry.isIntersecting)\n\t\t\t{\n\t\t\t\tif (currentImage.classList.contains(HIDDEN))\n\t\t\t\t{\n\t\t\t\t\tif (currentImage.dataset.lazyloadSrc)\n\t\t\t\t\t{\n\t\t\t\t\t\tcurrentImage.src = currentImage.dataset.lazyloadSrc;\n\t\t\t\t\t}\n\t\t\t\t\tcurrentImage.classList.remove(HIDDEN);\n\t\t\t\t}\n\t\t\t\telse if (currentImage.classList.contains(WATCH))\n\t\t\t\t{\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tcurrentImage.classList.add(WATCH);\n\t\t\t\t\tlazyloadLoadImage(currentImage);\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tif (\n\t\t\t\t\tcurrentImage.classList.contains(HIDDEN)\n\t\t\t\t\t|| !currentImage.classList.contains(WATCH)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tif (currentImage.dataset.lazyloadHiddenSrc)\n\t\t\t\t{\n\t\t\t\t\tcurrentImage.src = currentImage.dataset.lazyloadHiddenSrc;\n\t\t\t\t}\n\n\t\t\t\tcurrentImage.classList.remove(LOADING);\n\t\t\t\tcurrentImage.classList.add(HIDDEN);\n\t\t\t}\n\t\t});\n\t}, {\n\t\tthreshold: [0, 1]\n\t});\n}"],"names":["WATCH","LOADING","SUCCESS","ERROR","HIDDEN","BLANK_IMAGE","lazyload","beforeMount","element","bindings","value","callback","lazyloadCallback","src","location","href","replace","hash","lazyloadObserver","observe","lazyloadLoadImage","updated","classList","contains","add","dataset","lazyloadSrc","startsWith","url","document","createElement","unmounted","unobserve","currentImage","SUCCESS_CLASS","lazyloadSuccessClass","split","ERROR_CLASS","lazyloadErrorClass","newImage","Image","lazyloadHiddenSrc","onload","remove","state","onerror","title","alt","lazyloadDontHide","window","IntersectionObserver","entries","observer","forEach","entry","target","isIntersecting","threshold"],"mappings":"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"}