{"version":3,"file":"8518.9df9a04dd511d7b97031.js","mappings":"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","sources":["webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_propertyDetails/galleryOverlay/style.scss","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_mixins/swipeMixin.vue","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_mixins/swipeMixin.vue?268c","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_mixins/dragMixin.vue","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_mixins/dragMixin.vue?6a9e","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_propertyDetails/galleryOverlay/index.vue?9fa5","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_propertyDetails/galleryOverlay/index.vue","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_propertyDetails/galleryOverlay/component.ts","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_propertyDetails/galleryOverlay/style.scss?948b","webpack://UmbracoVuePrototype/./Scripts/src/vue-components/_propertyDetails/galleryOverlay/index.vue?0139"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.black-background[data-v-328bbb1c]{position:fixed;z-index:100;top:0;left:0;width:100vw;height:100vh;background-color:rgba(0,0,0,.9);opacity:1;transition:opacity .2s ease-in-out,z-index .2s ease-in-out}@media(max-width: 991px){.black-background[data-v-328bbb1c]{overflow-y:hidden}}.black-background.disabled[data-v-328bbb1c]{z-index:-5;opacity:0}.black-background .displayed[data-v-328bbb1c]{display:block !important}.black-background .image-gallery[data-v-328bbb1c]{display:block;height:100vh}.black-background .image-gallery .image-display[data-v-328bbb1c]{display:flex;height:85%;justify-content:center;align-items:center}@media(max-width: 991px){.black-background .image-gallery .image-display[data-v-328bbb1c]{height:85%}}.black-background .image-gallery .image-display img[data-v-328bbb1c]{object-fit:contain;justify-content:center;align-content:center;max-width:100vw}.black-background .image-gallery .image-display-overlay[data-v-328bbb1c]{position:absolute;top:0;width:100vw;height:85%;display:flex}.black-background .image-gallery .image-display-overlay .gallery-icon-container[data-v-328bbb1c]{justify-self:flex-end;margin-left:auto;display:flex;flex-direction:column}.black-background .image-gallery .image-display-overlay .gallery-icon-container .close-button-container[data-v-328bbb1c]{display:inline-flex}.black-background .image-gallery .image-display-overlay .gallery-icon-container .close-button-container .image-count-display[data-v-328bbb1c]{color:#fff;margin:23px 0px 0px -40px;font-size:25px;position:absolute;transition:color .2s}@media(min-width: 991px){.black-background .image-gallery .image-display-overlay .gallery-icon-container .close-button-container .image-count-display[data-v-328bbb1c]{display:none}}.black-background .image-gallery .image-display-overlay .gallery-control-icons[data-v-328bbb1c]{margin:15px 30px 15px 15px;font-size:50px;color:#fff;opacity:.2;cursor:pointer}.black-background .image-gallery .image-display-overlay .gallery-control-icons.right-arrow[data-v-328bbb1c]{margin-top:auto;margin-bottom:auto}.black-background .image-gallery .image-display-overlay .gallery-control-icons.invisible[data-v-328bbb1c]{opacity:0}.black-background .image-gallery .image-display-overlay .gallery-control-icons.left-arrow[data-v-328bbb1c]{margin-top:auto;margin-bottom:auto}@media(max-width: 990px){.black-background .image-gallery .image-display-overlay .gallery-control-icons.right-arrow[data-v-328bbb1c]{display:none;position:fixed;bottom:15%}.black-background .image-gallery .image-display-overlay .gallery-control-icons.left-arrow[data-v-328bbb1c]{display:none;position:fixed;bottom:15%}}.black-background .image-gallery .scroll-gallery[data-v-328bbb1c]{overflow-y:visible;white-space:nowrap;height:15%;padding:0px 10px 10px 10px}@media(max-width: 991px){.black-background .image-gallery .scroll-gallery[data-v-328bbb1c]{display:none}}.black-background .image-gallery .scroll-gallery img[data-v-328bbb1c]{display:inline-block;height:100%;margin:0px 5px;border:3px solid hsla(0,0%,100%,0);transition:border .2s ease-in-out,transform .2s ease-in-out}.black-background .image-gallery .scroll-gallery img.overlay-selected[data-v-328bbb1c]{transform:scale(1.07);border:3px solid #4285f4}.black-background .image-gallery .scroll-gallery span[data-v-328bbb1c]{display:inline;white-space:nowrap}`, \"\",{\"version\":3,\"sources\":[\"webpack://./Scripts/src/vue-components/_propertyDetails/galleryOverlay/style.scss\"],\"names\":[],\"mappings\":\"AAAA,mCACE,cAAA,CACA,WAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,YAAA,CACA,+BAAA,CACA,SAAA,CACA,0DAAA,CACA,yBAVF,mCAWI,iBAAA,CAAA,CAEF,4CACE,UAAA,CACA,SAAA,CAEF,8CACE,wBAAA,CAEF,kDACE,aAAA,CACA,YAAA,CACA,iEACE,YAAA,CACA,UAAA,CACA,sBAAA,CACA,kBAAA,CACA,yBALF,iEAMI,UAAA,CAAA,CAEF,qEACE,kBAAA,CACA,sBAAA,CACA,oBAAA,CACA,eAAA,CAGJ,yEACE,iBAAA,CACA,KAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,iGACE,qBAAA,CACA,gBAAA,CACA,YAAA,CACA,qBAAA,CACA,yHACE,mBAAA,CACA,8IACE,UAAA,CACA,yBAAA,CACA,cAAA,CACA,iBAAA,CACA,oBAAA,CACA,yBANF,8IAOI,YAAA,CAAA,CAKR,gGACE,0BAAA,CACA,cAAA,CACA,UAAA,CACA,UAAA,CACA,cAAA,CACA,4GACE,eAAA,CACA,kBAAA,CAEF,0GACE,SAAA,CAEF,2GACE,eAAA,CACA,kBAAA,CAEF,yBACE,4GACE,YAAA,CACA,cAAA,CACA,UAAA,CAEF,2GACE,YAAA,CACA,cAAA,CACA,UAAA,CAAA,CAKR,kEACE,kBAAA,CACA,kBAAA,CACA,UAAA,CACA,0BAAA,CACA,yBALF,kEAMI,YAAA,CAAA,CAEF,sEACE,oBAAA,CACA,WAAA,CACA,cAAA,CACA,kCAAA,CACA,2DAAA,CACA,uFACE,qBAAA,CACA,wBAAA,CAGJ,uEACE,cAAA,CACA,kBAAA\",\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\r\n","import script from \"./swipeMixin.vue?vue&type=script&lang=ts\"\nexport * from \"./swipeMixin.vue?vue&type=script&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./dragMixin.vue?vue&type=script&lang=ts\"\nexport * from \"./dragMixin.vue?vue&type=script&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createElementVNode as _createElementVNode, normalizeStyle as _normalizeStyle, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"image-gallery\" }\nconst _hoisted_2 = { class: \"image-container\" }\nconst _hoisted_3 = [\"src\", \"alt\"]\nconst _hoisted_4 = {\n mouseevent: \"overlayGallerySwipe\",\n class: \"gallery-icon-container\"\n}\nconst _hoisted_5 = { class: \"close-button-container\" }\nconst _hoisted_6 = [\"name\"]\nconst _hoisted_7 = [\"src\", \"alt\", \"onMousedown\"]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"black-background\", _ctx.disabledClass])\n }, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"image-display\",\n style: _normalizeStyle([_ctx.dragImageMarginStyle, _ctx.swipeImageMarginStyle])\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"img\", {\n src: (_ctx.displayedImage[1] as string),\n alt: (_ctx.displayedImage[2] as string),\n loading: \"lazy\"\n }, null, 8 /* PROPS */, _hoisted_3)\n ])\n ], 4 /* STYLE */),\n _createElementVNode(\"div\", {\n mouseevent: \"overlayGallerySwipe\",\n class: \"image-display-overlay\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (_ctx.displayArrows($event as PointerEvent)))\n }, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"gallery-control-icons left-arrow icon-circle-left\", _ctx.displayedArrowClass]),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.shiftImageLeft()))\n }, null, 2 /* CLASS */),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", {\n class: \"image-count-display\",\n style: _normalizeStyle(_ctx.imageCountStyle)\n }, _toDisplayString(_ctx.imageCountString), 5 /* TEXT, STYLE */),\n _createElementVNode(\"div\", {\n class: \"gallery-control-icons icon-cancel-circle\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.closeOverlay()))\n })\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"gallery-control-icons right-arrow icon-circle-right\", _ctx.displayedArrowClass]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.shiftImageRight()))\n }, null, 2 /* CLASS */),\n _cache[4] || (_cache[4] = _createElementVNode(\"div\", { class: \"gallery-control-icons invisible icon-cancel-circle\" }, null, -1 /* HOISTED */))\n ])\n ]),\n _createElementVNode(\"div\", {\n class: \"scroll-gallery\",\n name: _ctx.scrollbarId\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.imageList, (value) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: value[0]\n }, [\n _createElementVNode(\"img\", {\n src: value[1] as string,\n class: _normalizeClass(value[0] == _ctx.displayedImage[0] ? 'overlay-selected' : ''),\n alt: value[2] as string,\n loading: \"lazy\",\n onMousedown: ($event: any) => (_ctx.imageSelected(value as any, $event))\n }, null, 42 /* CLASS, PROPS, NEED_HYDRATION */, _hoisted_7)\n ]))\n }), 128 /* KEYED_FRAGMENT */))\n ], 8 /* PROPS */, _hoisted_6)\n ])\n ], 2 /* CLASS */))\n}","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ imageCountString }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n","import { PropType, defineComponent } from \"vue\";\r\n// @ts-ignore\r\nimport dragMixin from \"./../../_mixins/dragMixin.vue\";\r\n// @ts-ignore\r\nimport swipeMixin from \"./../../_mixins/swipeMixin.vue\";\r\nimport { loadingScreen } from \"@/ts/loadingScreenComp\";\r\n\r\nexport default defineComponent({\r\n mixins: [swipeMixin, dragMixin],\r\n props: {\r\n isDisplayedProp: {\r\n type: Number,\r\n default: new Number(0),\r\n },\r\n imageListProp: {\r\n type: Object as PropType<(String | number)[][]>,\r\n default: new Array(),\r\n },\r\n currentImageProp: {\r\n type: Number,\r\n default: new Number(0),\r\n },\r\n },\r\n data() {\r\n return {\r\n displayedImage: [-1, \"\"] as string | number[],\r\n scrollbarId: Math.floor(Math.random() * 100000).toString() as string,\r\n disabledClass: \"disabled\",\r\n dragImageMarginStyle: {\r\n marginLeft: \"0px\"\r\n } as object,\r\n swipeImageMarginStyle: {},\r\n imageCountStyle: {},\r\n displayedArrowClass: \"\",\r\n scrollElement: {} as Element\r\n };\r\n },\r\n computed: {\r\n imageList: function () {\r\n if (this.imageListProp.length === 0) {\r\n return [\"0\", \"\"];\r\n } else {\r\n let newImageList: (string | number)[][] = [];\r\n let elementId = 1;\r\n this.imageListProp.forEach((element: (string | number)[]) => {\r\n element[0] = elementId;\r\n elementId++;\r\n newImageList.push(element);\r\n })\r\n //this.displayedImage = this.imageListProp[0];\r\n return newImageList;\r\n }\r\n },\r\n imageCountString: function () {\r\n if (this.displayedImage[0] === \"-1\") {\r\n return \"\";\r\n }\r\n let arrayIndex: number = 0;\r\n for (let imageItem of this.imageListProp) {\r\n if (this.displayedImage[0] === imageItem[0]) {\r\n arrayIndex++;\r\n break;\r\n }\r\n arrayIndex++;\r\n }\r\n return (\r\n arrayIndex + \"/\" + this.imageListProp.length\r\n );\r\n }\r\n },\r\n watch: {\r\n isDisplayedProp: function () {\r\n this.lockVerticalScroll();\r\n this.dragInitiateTouch();\r\n this.swipeInitiateTouch();\r\n this.switchImageDelayed(this.currentImageProp);\r\n }\r\n },\r\n mounted() {\r\n this.scrollElement = document.getElementsByName(this.scrollbarId)[0];\r\n loadingScreen().addLoadedModule();\r\n },\r\n methods: {\r\n imageSelected(image: (string | number)[], event: Event): void {\r\n this.displayedImage = image;\r\n this.scrollToItem(event.target as HTMLElement);\r\n },\r\n // referencing items like this is bad practice for vue.js. However this may be the only way to do it.\r\n scrollToItem(element: HTMLElement): void {\r\n // set scroll bar element to corrent value.\r\n if (this.scrollElement !== null && element !== null) {\r\n this.scrollElement.scrollTo({\r\n left: element.offsetLeft - document.documentElement.clientWidth / 3,\r\n behavior: \"smooth\"\r\n });\r\n }\r\n },\r\n closeOverlay(): void {\r\n this.disabledClass = \"disabled\";\r\n this.unlockVerticalScroll();\r\n this.dragRemoveTouch();\r\n this.swipeRemoveTouch();\r\n },\r\n shiftImageRight(): void {\r\n this.switchImage(Number(this.displayedImage[0]) + 1);\r\n },\r\n shiftImageLeft(): void {\r\n this.switchImage(Number(this.displayedImage[0]) - 1);\r\n },\r\n async switchImageDelayed(imageId: number): Promise {\r\n if (this.displayedImage[0] == -1) {\r\n this.displayedImage = this.imageListProp[0];\r\n }\r\n await this.delay(50);\r\n this.switchImage(imageId);\r\n this.disabledClass = \"\";\r\n },\r\n switchImage(imageId: number): void {\r\n if (imageId > this.imageList.length) {\r\n imageId = 1;\r\n }\r\n if (imageId < 1) {\r\n imageId = this.imageList.length;\r\n }\r\n this.imageList.forEach((image: string | number[]) => {\r\n if (Number(image[0]) === imageId) {\r\n this.displayedImage = image;\r\n }\r\n });\r\n const scrollEle: HTMLElement = document.getElementsByClassName(\r\n \"overlay-selected\"\r\n )[0] as HTMLElement;\r\n this.scrollToItem(scrollEle);\r\n },\r\n unlockVerticalScroll() {\r\n const bodyElement = document.getElementsByClassName(\r\n \"body\"\r\n )[0] as HTMLElement;\r\n\r\n bodyElement.style.overflowY = \"visible\";\r\n bodyElement.style.height = \"auto\";\r\n },\r\n lockVerticalScroll() {\r\n const bodyElement = document.getElementsByClassName(\r\n \"body\"\r\n )[0] as HTMLElement;\r\n\r\n bodyElement.style.overflowY = \"hidden\";\r\n bodyElement.style.height = \"100vh\";\r\n },\r\n // class is triggered when user clicks on image.\r\n // It ensures arrows will always show when a mouse is used.\r\n // This allows users with a small laptop/ipad who uses a mouse to scroll gallery.\r\n displayArrows(event: PointerEvent) {\r\n if (event.pointerType === \"mouse\") {\r\n this.displayedArrowClass = \"displayed\";\r\n }\r\n },\r\n // methods from swipe Mixin. Triggers when swipe has occurred.\r\n async swipeLeft(swipeName: string) {\r\n this.switchImage(Number(this.displayedImage[0]) + 1);\r\n this.swipeImageMarginStyle = {\r\n opacity: \"0\",\r\n marginLeft: \"500px\",\r\n transition: \"margin-left 0s\"\r\n };\r\n await this.delay(100);\r\n this.swipeImageMarginStyle = {\r\n opacity: \"1\",\r\n marginLeft: \"0px\",\r\n transition: \"margin-left 0.3s ease-out, opacity 0.3s ease-out\"\r\n };\r\n await this.delay(300);\r\n this.swipeImageMarginStyle = {};\r\n },\r\n async swipeRight(swipeName: string) {\r\n const displayedIndex: number = Number(this.displayedImage[0]);\r\n this.switchImage(Number(this.displayedImage[0]) - 1);\r\n this.swipeImageMarginStyle = {\r\n opacity: \"0\",\r\n marginLeft: \"-500px\",\r\n transition: \"margin-left 0s\"\r\n };\r\n await this.delay(100);\r\n this.swipeImageMarginStyle = {\r\n opacity: \"1\",\r\n marginLeft: \"0px\",\r\n transition: \"margin-left 0.3s ease-out, opacity 0.3s ease-out\"\r\n };\r\n await this.delay(300);\r\n this.swipeImageMarginStyle = {};\r\n },\r\n async popPageNumRed() {\r\n this.imageCountStyle = {\r\n color: \"red\"\r\n };\r\n await this.delay(200);\r\n this.imageCountStyle = {};\r\n },\r\n // methods from drag mixin. Triggers when drag has occurred.\r\n dragMouseMove(dragClickedName: string, posX: number, posY: number) {\r\n if (posX > 0) {\r\n this.dragImageMarginStyle = {\r\n marginLeft: posX + \"px\",\r\n transition: \"margin-left 0s\"\r\n };\r\n } else {\r\n this.dragImageMarginStyle = {\r\n marginRight: Math.abs(posX) + \"px\",\r\n transition: \"margin-left 0s\"\r\n };\r\n }\r\n },\r\n dragMouseUp(dragClickedName: string) {\r\n this.dragImageMarginStyle = {\r\n marginLeft: \"0px\",\r\n marginRight: \"0px\",\r\n transition: \"margin-left 0.3s ease-out\"\r\n };\r\n },\r\n // delay common method for use within the components.\r\n async delay(ms: number) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n }\r\n }\r\n});\r\n","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-3.use[2]!./style.scss?vue&type=style&index=0&id=328bbb1c&scoped=true&lang=scss&external\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-3.use[2]!./style.scss?vue&type=style&index=0&id=328bbb1c&scoped=true&lang=scss&external\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./index.vue?vue&type=template&id=328bbb1c&scoped=true&ts=true\"\nimport script from \"./component.ts?vue&type=script&lang=ts&external\"\nexport * from \"./component.ts?vue&type=script&lang=ts&external\"\n\nimport \"./style.scss?vue&type=style&index=0&id=328bbb1c&scoped=true&lang=scss&external\"\n\nimport exportComponent from \"../../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-328bbb1c\"]])\n\nexport default __exports__"],"names":["___CSS_LOADER_EXPORT___","push","module","id","data","swipeClickedName","swipeMousePositionX","swipeMousePositionY","swipeThreshold","beforeUnmount","document","removeEventListener","this","registerMousedown","registerMouseup","methods","swipeInitiateMouse","addEventListener","swipeInitiateTouch","swipeRemoveMouse","swipeRemoveTouch","setThreshold","threshold","event","name","target","getAttribute","MouseEvent","pageX","pageY","TouchEvent","touches","length","diffX","diffY","changedTouches","Math","abs","swipeLeft","swipeRight","swipeUp","swipeDown","elementName","dragClickedName","dragMousePositionX","dragMousePositionY","dragRegisterMouseDown","dragRegisterMouseup","dragInitiateMouse","dragRegisterMousedown","dragInitiateTouch","dragRemoveMouse","dragRemoveTouch","dragMouseMoveEvent","dragMouseUp","dragMouseMove","posX","posY","absX","absY","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","mouseevent","_hoisted_5","_hoisted_6","_hoisted_7","mixins","swipeMixin","dragMixin","props","isDisplayedProp","type","Number","default","imageListProp","Object","Array","currentImageProp","displayedImage","scrollbarId","floor","random","toString","disabledClass","dragImageMarginStyle","marginLeft","swipeImageMarginStyle","imageCountStyle","displayedArrowClass","scrollElement","computed","imageList","newImageList","elementId","forEach","element","imageCountString","arrayIndex","imageItem","watch","lockVerticalScroll","switchImageDelayed","mounted","getElementsByName","addLoadedModule","imageSelected","image","scrollToItem","scrollTo","left","offsetLeft","documentElement","clientWidth","behavior","closeOverlay","unlockVerticalScroll","shiftImageRight","switchImage","shiftImageLeft","imageId","delay","scrollEle","getElementsByClassName","bodyElement","style","overflowY","height","displayArrows","pointerType","swipeName","opacity","transition","popPageNumRed","color","marginRight","ms","Promise","resolve","setTimeout","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_ctx","_cache","$props","$setup","$data","$options","src","alt","loading","$event","value","key"],"sourceRoot":""}