{"version":3,"sources":["webpack:///./resources/js/src/app/components/item/ItemImageCarousel.vue?55b3","webpack:///./resources/js/src/app/components/item/ItemImageCarousel.vue?a015","webpack:///resources/js/src/app/components/item/ItemImageCarousel.vue","webpack:///./resources/js/src/app/components/item/ItemImageCarousel.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","itemscope","itemtype","singleImages","length","staticStyle","href","url","ref","alt","getAltText","middleSingleImage","width","getImageWidth","height","getImageHeight","_e","_v","carouselImages","_l","imagePreview","index","key","style","videoCode","videoUrl","_withStripped","props","maxQuantity","imageUrlAccessor","showThumbs","showDots","animationStyle","pluginPath","inject","itemId","default","data","currentItem","initialized","computed","watch","currentVariation","mounted","$nextTick","$","css","methods","component","options","__file"],"mappings":"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","file":"chunks/ceres-39.min.js","sourcesContent":["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    {\n      staticClass: \"fancy-box-gallery\",\n      attrs: { itemscope: \"\", itemtype: \"http://schema.org/Thing\" },\n    },\n    [\n      _vm.singleImages && _vm.singleImages.length > 0\n        ? _c(\"div\", { staticClass: \"img-gallery\" }, [\n            _c(\n              \"a\",\n              {\n                staticClass: \"fancybox d-block\",\n                staticStyle: { \"pointer-events\": \"none\" },\n                attrs: {\n                  href: _vm.singleImages[0].url,\n                  \"data-fancybox\": \"gallery\",\n                },\n              },\n              [\n                _c(\"lazy-img\", {\n                  ref: \"itemLazyImage\",\n                  attrs: {\n                    alt: _vm.getAltText(_vm.middleSingleImage[0]),\n                    \"picture-class\": \"img-gallery-big-one img-fluid\",\n                    \"image-url\": _vm.middleSingleImage[0].url,\n                    width: _vm.getImageWidth(_vm.middleSingleImage[0]),\n                    height: _vm.getImageHeight(_vm.middleSingleImage[0]),\n                  },\n                }),\n              ],\n              1\n            ),\n          ])\n        : _vm._e(),\n      _vm._v(\" \"),\n      _vm.carouselImages.length > 0\n        ? _c(\"div\", { staticClass: \"thumbs\" }, [\n            _c(\n              \"div\",\n              { staticClass: \"thumb-list\" },\n              [\n                _vm._l(_vm.carouselImages, function (imagePreview, index) {\n                  return index > 0\n                    ? _c(\"div\", { key: index, staticClass: \"thumb\" }, [\n                        _c(\n                          \"div\",\n                          {\n                            staticClass: \"thumb-image\",\n                            style: {\n                              \"background-image\":\n                                \"url(\" + imagePreview.url + \")\",\n                            },\n                          },\n                          [\n                            _c(\"a\", {\n                              staticClass:\n                                \"fancybox position-relative d-block h-100\",\n                              staticStyle: { \"pointer-events\": \"none\" },\n                              attrs: {\n                                href: _vm.singleImages[index].url,\n                                \"data-fancybox\": \"gallery\",\n                              },\n                            }),\n                          ]\n                        ),\n                      ])\n                    : _vm._e()\n                }),\n                _vm._v(\" \"),\n                _vm.videoCode\n                  ? _c(\"div\", { staticClass: \"thumb\" }, [\n                      _c(\"div\", { staticClass: \"thumb-image\" }, [\n                        _c(\n                          \"a\",\n                          {\n                            staticClass:\n                              \"fancybox position-relative d-block h-100\",\n                            staticStyle: { \"pointer-events\": \"none\" },\n                            attrs: {\n                              href: _vm.videoUrl,\n                              \"data-fancybox\": \"gallery\",\n                            },\n                          },\n                          [\n                            _c(\"i\", {\n                              staticClass: \"fa fa-play-circle-o fa-3x\",\n                            }),\n                          ]\n                        ),\n                      ]),\n                    ])\n                  : _vm._e(),\n              ],\n              2\n            ),\n          ])\n        : _vm._e(),\n    ]\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","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&\"","<template>\r\n  <div class=\"fancy-box-gallery\" itemscope itemtype=\"http://schema.org/Thing\">\r\n    <div v-if=\"singleImages && singleImages.length > 0\" class=\"img-gallery\">\r\n      <a class=\"fancybox d-block\" :href=\"singleImages[0].url\" data-fancybox=\"gallery\" style=\"pointer-events: none;\">\r\n        <lazy-img :alt=\"getAltText(middleSingleImage[0])\" ref=\"itemLazyImage\"\r\n          picture-class=\"img-gallery-big-one img-fluid\" :image-url=\"middleSingleImage[0].url\"\r\n          :width=\"getImageWidth(middleSingleImage[0])\" :height=\"getImageHeight(middleSingleImage[0])\">\r\n        </lazy-img>\r\n      </a>\r\n    </div>\r\n    <div class=\"thumbs\" v-if=\"carouselImages.length > 0\">\r\n      <div class=\"thumb-list\">\r\n        <div class=\"thumb\" v-for=\"(imagePreview, index) in carouselImages\" :key=\"index\" v-if=\"index>0\">\r\n          <div class=\"thumb-image\" :style=\"{'background-image': 'url(' + imagePreview.url + ')'}\">\r\n            <a class=\"fancybox position-relative d-block h-100\" :href=\"singleImages[index].url\" data-fancybox=\"gallery\"\r\n              style=\"pointer-events: none;\"></a>\r\n          </div>\r\n        </div>\r\n        <div class=\"thumb\" v-if=\"videoCode\">\r\n          <div class=\"thumb-image\">\r\n            <a class=\"fancybox position-relative d-block h-100\" :href=\"videoUrl\" data-fancybox=\"gallery\"\r\n              style=\"pointer-events: none;\">\r\n              <i class=\"fa fa-play-circle-o fa-3x\"></i>\r\n            </a>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\nimport { isNullOrUndefined } from \"../../helper/utils\";\r\n\r\nexport default {\r\n  props: {\r\n    maxQuantity:\r\n        {\r\n          type: Number,\r\n          default: 20\r\n        },\r\n    imageUrlAccessor:\r\n        {\r\n          type: String,\r\n          default: \"url\"\r\n        },\r\n    videoCode:\r\n        {\r\n          type: String,\r\n          default: \"\"\r\n        },\r\n    showThumbs:\r\n        {\r\n          type: Boolean,\r\n          default: true\r\n        },\r\n    showDots:\r\n        {\r\n          type: Boolean,\r\n          default: true\r\n        },\r\n    animationStyle:\r\n        {\r\n          type: String,\r\n          default: \"standard\"\r\n        },\r\n    pluginPath:\r\n        {\r\n          type: String,\r\n          default: \"\"\r\n        }\r\n  },\r\n\r\n  inject: {\r\n    itemId: {\r\n      default: null\r\n    }\r\n  },\r\n\r\n  data()\r\n  {\r\n    return {\r\n      currentItem: 0,\r\n      initialized: false\r\n    };\r\n  },\r\n\r\n  computed:\r\n      {\r\n        currentVariation()\r\n        {\r\n          return this.$store.getters[`${this.itemId}/currentItemVariation`]\r\n        },\r\n\r\n        carouselImages()\r\n        {\r\n          return this.$options.filters.itemImages(\r\n              this.currentVariation.images,\r\n              \"urlPreview\"\r\n          ).slice(0, this.maxQuantity);\r\n        },\r\n\r\n        singleImages()\r\n        {\r\n          return this.$options.filters.itemImages(\r\n              this.currentVariation.images,\r\n              this.imageUrlAccessor\r\n          ).slice(0, this.maxQuantity);\r\n        },\r\n\r\n        middleSingleImage()\r\n        {\r\n          return this.$options.filters.itemImages(\r\n              this.currentVariation.images,\r\n              \"urlSecondPreview\"\r\n          ).slice(0, 1);\r\n        },\r\n\r\n        videoUrl()\r\n        {\r\n          return `https://www.youtube.com/watch?v=${this.videoCode}&rel=0&showinfo=1`;\r\n        }\r\n      },\r\n\r\n  watch: {\r\n    currentVariation:\r\n        {\r\n          handler(val, oldVal)\r\n          {\r\n            if (val !== oldVal)\r\n            {\r\n              setTimeout(() =>\r\n              {\r\n                this.reInitialize();\r\n              }, 1);\r\n            }\r\n          },\r\n          deep: true\r\n        }\r\n  },\r\n\r\n  mounted()\r\n  {\r\n    this.$nextTick(() =>\r\n    {\r\n      this.loadFancyBox().then(() =>\r\n      {\r\n        this.initFancyBox();\r\n        $('.fancy-box-gallery a').css('pointer-events', 'auto');\r\n      })\r\n          .catch(event =>\r\n          {\r\n            console.log(\"error while loading fancybox\", event);\r\n          });\r\n    });\r\n  },\r\n\r\n  methods:\r\n      {\r\n        getImageCount()\r\n        {\r\n          return this.carouselImages.length > this.maxQuantity ? this.maxQuantity : this.carouselImages.length;\r\n        },\r\n\r\n        reInitialize()\r\n        {\r\n          this.initFancyBox();\r\n        },\r\n\r\n        initFancyBox()\r\n        {\r\n          $.fancybox.defaults.loop = \"true\";\r\n\r\n          $().fancybox({\r\n            selector : '.fancy-box-gallery a',\r\n            backFocus : false,\r\n            hash   : false,\r\n            thumbs : {\r\n              autoStart : false\r\n            },\r\n            loop: true,\r\n            buttons : [\r\n              'zoom',\r\n              'slideShow',\r\n              'fullScreen',\r\n              'thumbs',\r\n              'close'\r\n            ]\r\n          });\r\n        },\r\n\r\n        getAltText(image)\r\n        {\r\n          return image && image.alternate ? image.alternate : this.$options.filters.itemName(this.currentVariation);\r\n        },\r\n\r\n        getImageName(image)\r\n        {\r\n          return image && image.name ? image.name : this.$options.filters.itemName(this.currentVariation);\r\n        },\r\n\r\n        getImageWidth(image)\r\n        {\r\n          return image && image.width ? image.width : this.$options.filters.itemImageWidth(this.carouselImages);\r\n        },\r\n\r\n        getImageHeight(image)\r\n        {\r\n          return image && image.height ? image.height : this.$options.filters.itemImageHeight(this.carouselImages);\r\n        },\r\n\r\n        loadFancyBox()\r\n        {\r\n          return new Promise((resolve, reject) =>\r\n          {\r\n            let script = document.querySelector(\"script#fancyboxscript\");\r\n\r\n            if (!isNullOrUndefined(script))\r\n            {\r\n              resolve();\r\n            }\r\n            else\r\n            {\r\n              const script = document.createElement(\"script\");\r\n\r\n              script.type = \"text/javascript\";\r\n              script.id = \"fancyboxscript\";\r\n              script.src = `${ this.pluginPath }/js/dist/fancybox.min.js`;\r\n\r\n              script.addEventListener(\"load\", () => resolve(), false);\r\n              script.addEventListener(\"error\", event => reject(event), false);\r\n\r\n              document.body.appendChild(script);\r\n            }\r\n          });\r\n        }\r\n      }\r\n}\r\n</script>\r\n","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(\"/Users/philippneumann/Documents/frontendstudios/8291/430/GonserDT/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"],"sourceRoot":""}