{"version":3,"sources":["webpack:///resources/js/src/app/components/item/ItemImageCarousel.vue","webpack:///./resources/js/src/app/components/item/ItemImageCarousel.vue?55b3","webpack:///./resources/js/src/app/components/item/ItemImageCarousel.vue","webpack:///./resources/js/src/app/components/item/ItemImageCarousel.vue?a015","webpack:///./resources/js/src/app/components/item/ItemImageCarousel.vue?00e4"],"names":[],"mappings":"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CA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB,aAAa;AACb;AACA,gCAAgC,sCAAsC;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA,8BAA8B,oCAAoC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,iBAAiB,0BAA0B;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACpHA;AAAA;AAAA;AAAA;AAAgG;AAC3B;AACL;;;AAGhE;AACsG;AACtG,gBAAgB,2GAAU;AAC1B,EAAE,uFAAM;AACR,EAAE,4FAAM;AACR,EAAE,qGAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEA;AACA,IAAI,KAAU,EAAE,YAiBf;AACD;AACe,gF;;;;;;;;;;;;ACtCf;AAAA;AAAA,wCAAyM,CAAgB,qPAAG,EAAC,C;;;;;;;;;;;;ACA7N;AAAA;AAAA;AAAA;AAAA;AAAA","file":"chunks/ceres-40.js","sourcesContent":["<template>\n <div itemscope itemtype=\"https://schema.org/Thing\">\n <div ref=\"single\" class=\"single-carousel owl-carousel owl-theme owl-single-item mt-0\">\n <div v-for=\"(image, index) in singleImages\" :key=\"index\" class=\"prop-1-1\">\n <a :href=\"image.url\" :data-lightbox=\"`single-item-image${_uid}`\">\n <lazy-img :alt=\"getAltText(image)\" :image-url=\"image.url\" :title=\"getImageName(image)\" :width=\"getImageWidth(image)\" :height=\"getImageHeight(image)\" />\n </a>\n </div>\n </div>\n\n <div v-if=\"showThumbs\" id=\"thumb-carousel\" ref=\"thumbs\" class=\"owl-thumbs owl-carousel owl-theme owl-single-item\">\n <div v-for=\"(imagePreview, index) in carouselImages\" :key=\"index\" class=\"prop-1-1\">\n <div @click=\"goTo(index)\" class=\"image-container\">\n <lazy-img\n :alt=\"getAltText(imagePreview)\"\n :image-url=\"imagePreview.url\"\n :title=\"getImageName(imagePreview)\"\n :width=\"getImageWidth(imagePreview)\"\n :height=\"getImageHeight(imagePreview)\"\n picture-class=\"owl-thumb border-appearance\"\n v-bind:class=\"{ 'active': currentItem === index}\" />\n </div>\n </div>\n </div>\n\n <div v-if=\"!initialized\" class=\"single-carousel owl-carousel owl-loaded owl-theme owl-single-item mt-0\">\n <div class=\"prop-1-1\">\n <lazy-img\n :alt=\"getAltText(singleImages[0].url)\"\n :image-url=\"singleImages[0].url\"\n :title=\"getImageName(singleImages[0].url)\"\n :width=\"getImageWidth(singleImages[0])\"\n :height=\"getImageHeight(singleImages[0])\"\n picture-class=\"owl-placeholder\" />\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport { isNullOrUndefined } from \"../../helper/utils\";\n\nexport default {\n name: \"item-image-carousel\",\n\n props: {\n maxQuantity:\n {\n type: Number,\n default: 10\n },\n imageUrlAccessor:\n {\n type: String,\n default: \"url\"\n },\n showThumbs:\n {\n type: Boolean,\n default: true\n },\n showDots:\n {\n type: Boolean,\n default: true\n },\n animationStyle:\n {\n type: String,\n default: \"standard\"\n },\n pluginPath:\n {\n type: String,\n default: \"\"\n }\n },\n\n inject: {\n itemId: {\n default: null\n }\n },\n\n data()\n {\n return {\n currentItem: 0,\n initialized: false,\n };\n },\n\n computed:\n {\n currentVariation()\n {\n return this.$store.getters[`${this.itemId}/currentItemVariation`]\n },\n\n carouselImages()\n {\n return this.$options.filters.itemImages(\n this.currentVariation.images,\n \"urlPreview\"\n ).slice(0, this.maxQuantity);\n },\n\n singleImages()\n {\n return this.$options.filters.itemImages(\n this.currentVariation.images,\n this.imageUrlAccessor\n ).slice(0, this.maxQuantity);\n }\n },\n\n watch: {\n currentVariation:\n {\n handler(val, oldVal)\n {\n if (val !== oldVal)\n {\n setTimeout(() =>\n {\n this.reInitialize();\n }, 1);\n }\n },\n deep: true\n }\n },\n\n mounted()\n {\n this.$nextTick(() =>\n {\n this.loadLightbox().then(() =>\n {\n this.initCarousel();\n this.initThumbCarousel();\n })\n .catch(event =>\n {\n console.log(\"error while loading lightbox\", event);\n });\n });\n },\n\n methods:\n {\n getImageCount()\n {\n return this.carouselImages.length > this.maxQuantity ? this.maxQuantity : this.carouselImages.length;\n },\n\n reInitialize()\n {\n const $owl = $(this.$refs.single);\n\n $owl.trigger(\"destroy.owl.carousel\");\n $owl.html($owl.find(\".owl-stage-outer\").html()).removeClass(\"owl-loaded\");\n $owl.find(\".owl-item\").remove();\n\n const $thumbs = $(this.$refs.thumbs);\n\n $thumbs.trigger(\"destroy.owl.carousel\");\n $thumbs.html($thumbs.find(\".owl-stage-outer\").html()).removeClass(\"owl-loaded\");\n $thumbs.find(\".owl-item\").remove();\n\n this.initCarousel();\n this.initThumbCarousel();\n },\n\n initCarousel()\n {\n const imageCount = this.getImageCount();\n const carouselSettings = {\n autoHeight : true,\n dots : this.showDots,\n items : 1,\n lazyLoad : true,\n rewind : true,\n margin : 10,\n mouseDrag : imageCount > 1,\n nav : imageCount > 1,\n navClass : [\n \"owl-single-item-nav left carousel-control\",\n \"owl-single-item-nav right carousel-control\"\n ],\n navContainerClass: \"\",\n navText : [\n \"<i class=\\\"owl-single-item-control fa fa-chevron-left\\\" aria-hidden=\\\"true\\\"></i>\",\n \"<i class=\\\"owl-single-item-control fa fa-chevron-right\\\" aria-hidden=\\\"true\\\"></i>\"\n ],\n smartSpeed : 350,\n onChanged: event =>\n {\n const $thumb = $(this.$refs.thumbs);\n\n $thumb.trigger(\"to.owl.carousel\", [\n event.page.index,\n 350\n ]);\n },\n onInitialized: event =>\n {\n this.initialized = true;\n }\n };\n\n if (this.animationStyle !== \"standard\")\n {\n carouselSettings.animateOut = this.animationStyle;\n }\n\n $(this.$refs.single).owlCarousel(carouselSettings);\n\n if (!isNullOrUndefined(window.lightbox))\n {\n lightbox.option({\n wrapAround: true,\n albumLabel: this.$translate(\"Ceres::Template.singleItemLightboxImageShown\")\n });\n }\n\n $(this.$refs.single).on(\"changed.owl.carousel\", event =>\n {\n this.currentItem = event.page.index;\n });\n },\n\n initThumbCarousel()\n {\n $(this.$refs.thumbs).owlCarousel({\n autoHeight : true,\n dots : false,\n items : 5,\n lazyLoad : true,\n loop : false,\n margin : 10,\n mouseDrag : false,\n center : false,\n nav : true,\n navClass : [\n \"owl-single-item-nav left carousel-control\",\n \"owl-single-item-nav right carousel-control\"\n ],\n navContainerClass: \"\",\n navText : [\n \"<i class=\\\"owl-single-item-control fa fa-chevron-left\\\" aria-hidden=\\\"true\\\"></i>\",\n \"<i class=\\\"owl-single-item-control fa fa-chevron-right\\\" aria-hidden=\\\"true\\\"></i>\"\n ],\n smartSpeed : 350\n });\n },\n\n goTo(index)\n {\n const $owl = $(this.$refs.single);\n\n $owl.trigger(\"to.owl.carousel\", [\n index,\n 350\n ]);\n },\n\n getAltText(image)\n {\n return image && image.alternate ? image.alternate : this.$options.filters.itemName(this.currentVariation);\n },\n\n getImageName(image)\n {\n return image && image.name ? image.name : this.$options.filters.itemName(this.currentVariation);\n },\n\n getImageWidth(image)\n {\n return image && image.width ? image.width : this.$options.filters.itemImageWidth(this.carouselImages);\n },\n\n getImageHeight(image)\n {\n return image && image.height ? image.height : this.$options.filters.itemImageHeight(this.carouselImages);\n },\n\n loadLightbox()\n {\n return new Promise((resolve, reject) =>\n {\n const script = document.querySelector(\"script#lightboxscript\");\n\n if (!isNullOrUndefined(script))\n {\n resolve();\n }\n else\n {\n const script = document.createElement(\"script\");\n\n script.type = \"text/javascript\";\n script.id = \"lightboxscript\";\n script.src = `${ this.pluginPath }/js/dist/lightbox.min.js`;\n\n script.addEventListener(\"load\", () => resolve(), false);\n script.addEventListener(\"error\", event => reject(event), false);\n\n document.body.appendChild(script);\n }\n });\n }\n }\n}\n</script>\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { attrs: { itemscope: \"\", itemtype: \"https://schema.org/Thing\" } },\n [\n _c(\n \"div\",\n {\n ref: \"single\",\n staticClass:\n \"single-carousel owl-carousel owl-theme owl-single-item mt-0\"\n },\n _vm._l(_vm.singleImages, function(image, index) {\n return _c(\"div\", { key: index, staticClass: \"prop-1-1\" }, [\n _c(\n \"a\",\n {\n attrs: {\n href: image.url,\n \"data-lightbox\": \"single-item-image\" + _vm._uid\n }\n },\n [\n _c(\"lazy-img\", {\n attrs: {\n alt: _vm.getAltText(image),\n \"image-url\": image.url,\n title: _vm.getImageName(image),\n width: _vm.getImageWidth(image),\n height: _vm.getImageHeight(image)\n }\n })\n ],\n 1\n )\n ])\n }),\n 0\n ),\n _vm._v(\" \"),\n _vm.showThumbs\n ? _c(\n \"div\",\n {\n ref: \"thumbs\",\n staticClass: \"owl-thumbs owl-carousel owl-theme owl-single-item\",\n attrs: { id: \"thumb-carousel\" }\n },\n _vm._l(_vm.carouselImages, function(imagePreview, index) {\n return _c(\"div\", { key: index, staticClass: \"prop-1-1\" }, [\n _c(\n \"div\",\n {\n staticClass: \"image-container\",\n on: {\n click: function($event) {\n return _vm.goTo(index)\n }\n }\n },\n [\n _c(\"lazy-img\", {\n class: { active: _vm.currentItem === index },\n attrs: {\n alt: _vm.getAltText(imagePreview),\n \"image-url\": imagePreview.url,\n title: _vm.getImageName(imagePreview),\n width: _vm.getImageWidth(imagePreview),\n height: _vm.getImageHeight(imagePreview),\n \"picture-class\": \"owl-thumb border-appearance\"\n }\n })\n ],\n 1\n )\n ])\n }),\n 0\n )\n : _vm._e(),\n _vm._v(\" \"),\n !_vm.initialized\n ? _c(\n \"div\",\n {\n staticClass:\n \"single-carousel owl-carousel owl-loaded owl-theme owl-single-item mt-0\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"prop-1-1\" },\n [\n _c(\"lazy-img\", {\n attrs: {\n alt: _vm.getAltText(_vm.singleImages[0].url),\n \"image-url\": _vm.singleImages[0].url,\n title: _vm.getImageName(_vm.singleImages[0].url),\n width: _vm.getImageWidth(_vm.singleImages[0]),\n height: _vm.getImageHeight(_vm.singleImages[0]),\n \"picture-class\": \"owl-placeholder\"\n }\n })\n ],\n 1\n )\n ]\n )\n : _vm._e()\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ItemImageCarousel.vue?vue&type=template&id=5285279e&\"\nimport script from \"./ItemImageCarousel.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemImageCarousel.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/runner/work/plugin-ceres/plugin-ceres/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('5285279e')) {\n api.createRecord('5285279e', component.options)\n } else {\n api.reload('5285279e', component.options)\n }\n module.hot.accept(\"./ItemImageCarousel.vue?vue&type=template&id=5285279e&\", function () {\n api.rerender('5285279e', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"resources/js/src/app/components/item/ItemImageCarousel.vue\"\nexport default component.exports","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemImageCarousel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemImageCarousel.vue?vue&type=script&lang=js&\"","export * from \"-!../../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemImageCarousel.vue?vue&type=template&id=5285279e&\""],"sourceRoot":""}