PageSourceSearch

https://distribucionmayorista.online/modules/iqitextendedproduct/views/js/front.js

js distribucionmayorista.online collected 2026-10-04 13:26:46 UTC 19,357 bytes, 332 lines download raw bytes

1/******/ (function(modules) { // webpackBootstrap
2/******/ 	// The module cache
3/******/ 	var installedModules = {};
4/******/
5/******/ 	// The require function
6/******/ 	function __webpack_require__(moduleId) {
7/******/
8/******/ 		// Check if module is in cache
9/******/ 		if(installedModules[moduleId])
10/******/ 			return installedModules[moduleId].exports;
11/******/
12/******/ 		// Create a new module (and put it into the cache)
13/******/ 		var module = installedModules[moduleId] = {
14/******/ 			exports: {},
15/******/ 			id: moduleId,
16/******/ 			loaded: false
17/******/ 		};
18/******/
19/******/ 		// Execute the module function
20/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21/******/
22/******/ 		// Flag the module as loaded
23/******/ 		module.loaded = true;
24/******/
25/******/ 		// Return the exports of the module
26/******/ 		return module.exports;
27/******/ 	}
28/******/
29/******/
30/******/ 	// expose the modules object (__webpack_modules__)
31/******/ 	__webpack_require__.m = modules;
32/******/
33/******/ 	// expose the module cache
34/******/ 	__webpack_require__.c = installedModules;
35/******/
36/******/ 	// __webpack_public_path__
37/******/ 	__webpack_require__.p = "";
38/******/
39/******/ 	// Load entry module and return exports
40/******/ 	return __webpack_require__(0);
41/******/ })
42/************************************************************************/
43/******/ ([
44/* 0 */
45/***/ (function(module, exports, __webpack_require__) {
46
47	'use strict';
48	
49	__webpack_require__(7);
50	
51	__webpack_require__(9);
52
53/***/ }),
54/* 1 */,
55/* 2 */,
56/* 3 */,
57/* 4 */,
58/* 5 */,
59/* 6 */,
60/* 7 */
61/***/ (function(module, exports, __webpack_require__) {
62
63	'use strict';
64	
65	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
66	
67	var _libThreesixtyThreesixtyMin = __webpack_require__(8);
68	
69	var _libThreesixtyThreesixtyMin2 = _interopRequireDefault(_libThreesixtyThreesixtyMin);
70	
71	$(document).ready(function () {
72	    var threesixty;
73	    var videoIframes = undefined,
74	        $videoIframesWrapper = undefined,
75	        $videoModal = $('#iqit-iqitvideos-modal'),
76	        $threesixtyModal = $('#iqit-threesixty-modal');
77	
78	    $threesixtyModal.on('shown.bs.modal', function () {
79	
80	        var speed = 70;
81	        if (typeof iqitextendedproduct.speed !== 'undefined') {
82	            speed = iqitextendedproduct.speed;
83	        }
84	
85	        if (typeof threesixty !== 'undefined') {
86	            threesixty.autoplayStart();
87	        } else {
88	            threesixty = new _libThreesixtyThreesixtyMin2['default']({
89	                element: '#iqit-threesixty',
90	                images: $('#iqit-threesixty').data('threesixty'),
91	                autoplay: true,
92	                autoplaySpeed: speed,
93	                stopAutoplayOnClick: true,
94	                stopAutoplayOnMouseenter: true,
95	                resumeAutoplayOnMouseleave: true,
96	                resumeAutoplayDelay: 500
97	            });
98	            threesixty.load();
99	        }
100	    });
101	
102	    $threesixtyModal.on('hidden.bs.modal', function () {
103	        threesixty.autoplayStop();
104	    });
105	
106	    $videoModal.on('shown.bs.modal', function () {
107	        $videoIframesWrapper = $('#iqitvideos-block');
108	        videoIframes = $videoIframesWrapper.html();
109	    });
110	
111	    $videoModal.on('hidden.bs.modal', function () {
112	        $videoIframesWrapper.html(videoIframes);
113	    });
114	});
115
116/***/ }),
117/* 8 */
118/***/ (function(module, exports) {
119
120	/*
121	  Tridi v1.2.0 - JavaScript 360 3D Product Viewer
122	  Author: Lukasz Wojcik
123	  License: MIT
124	  Homepage: https://tridi.lukem.net
125	  GitHub: http://github.com/lukemnet/tridi
126	*/
127	"use strict";
128	
129	var Tridi = (function () {
130	  function t(t) {
131	    var i = this;this.trigger = function (t) {
132	      var e = i[t];e && e();
133	    }, this.validate = function (t) {
134	      t.element || console.error("'element' property is missing or invalid. Container element must be specified."), void 0 === t.images && void 0 === t.format && console.error("'format' property is missing or invalid. Image format must be provided for 'numbered' property."), "numbered" !== t.images || t.location || console.error("'location' property is missing or invalid. Image location must be provided for 'numbered' property.");
135	    }, this.validate(t), this.element = t.element, this.images = t.images || "numbered", this.format = t.format || void 0, this.location = t.location || "./images", this.count = Array.isArray(this.images) ? this.images.length : t.count, this.draggable = void 0 === t.draggable || t.draggable, this.keys = t.keys || !1, this.hintOnStartup = t.hintOnStartup || !1, this.hintText = t.hintText || null, this.focusOnHintClose = t.focusOnHintClose || !1, this.lazy = t.lazy || !1, this.autoplay = t.autoplay || !1, this.autoplaySpeed = void 0 !== t.autoplaySpeed ? t.autoplaySpeed : 50, this.stopAutoplayOnClick = t.stopAutoplayOnClick || !1, this.stopAutoplayOnMouseenter = t.stopAutoplayOnMouseenter || !1, this.resumeAutoplayOnMouseleave = t.resumeAutoplayOnMouseleave || !1, this.resumeAutoplayDelay = t.resumeAutoplayDelay || 0, this.passive = void 0 === t.passive || t.passive, this.spinner = t.spinner || !1, this.touch = void 0 === t.touch || t.touch, this.mousewheel = t.mousewheel || !1, this.inverse = t.inverse || !1, this.dragInterval = t.dragInterval || 1, this.touchDragInterval = t.touchDragInterval || 2, this.mouseleaveDetect = t.mouseleaveDetect || !1, this.onViewerGenerate = t.onViewerGenerate || void 0, this.onViewerImageGenerate = t.onViewerImageGenerate || void 0, this.onViewerImageUpdate = t.onViewerImageUpdate || void 0, this.onHintShow = t.onHintShow || void 0, this.onHintHide = t.onHintHide || void 0, this.onLoadingScreenShow = t.onLoadingScreenShow || void 0, this.onLoadingScreenHide = t.onLoadingScreenHide || void 0, this.onImagesPreload = t.onImagesPreload || void 0, this.onAutoplayStart = t.onAutoplayStart || void 0, this.onAutoplayStop = t.onAutoplayStop || void 0, this.onNextMove = t.onNextMove || void 0, this.onPrevMove = t.onPrevMove || void 0, this.onNextFrame = t.onNextFrame || void 0, this.onPrevFrame = t.onPrevFrame || void 0, this.onDragStart = t.onDragStart || void 0, this.onDragEnd = t.onDragEnd || void 0, this.onLoad = t.onLoad || void 0, this.onUpdate = t.onUpdate || void 0, this.elementName = this.setElementName(), this.imageIndex = 1, this.moveBuffer = [], this.dragActive = !1, this.intervals = [], this.timeouts = [], this.stashedImgs = 0;
136	  }return t.prototype.setElementName = function () {
137	    var t = this.element;return "string" == typeof t ? t.substr(1) : t.getAttribute("id") ? t.getAttribute("id") : t.getAttribute("class") ? t.getAttribute("class").split(" ")[0] : "unnamedTridi-" + (Math.floor(9e4 * Math.random()) + 1e4);
138	  }, t.prototype.validateUpdate = function (t) {
139	    return !!(t.images || t.format || t.count || t.location) || (console.error("UpdatableOptions object doesn't contain options that can be updated."), !1);
140	  }, t.prototype.updateOptions = function (e) {
141	    var i = this;Object.keys(e).map(function (t) {
142	      i[t] = e[t], "images" === t && e[t].constructor === Array && (i.count = e.images.length);
143	    });
144	  }, t.prototype.getElem = function (t) {
145	    return "string" == typeof this.element ? t ? document.querySelector(this.element + " " + t) : document.querySelector(this.element) : this.element;
146	  }, t.prototype.viewer = function () {
147	    return this.getElem();
148	  }, t.prototype.stash = function () {
149	    return this.getElem(".tridi-stash");
150	  }, t.prototype.getHintOverlay = function () {
151	    return this.getElem(".tridi-hint-overlay");
152	  }, t.prototype.getLoadingScreen = function () {
153	    return this.getElem(".tridi-loading");
154	  }, t.prototype.image = function (t) {
155	    return this.imgs()[t - 1];
156	  }, t.prototype.viewerImage = function () {
157	    return this.getElem(".tridi-viewer-image");
158	  }, t.prototype.lazyLoad = function (t, e) {
159	    this.lazy && !e ? (this.viewerImage().addEventListener("click", t), this.touch && this.viewerImage().addEventListener("touchstart", t, { passive: this.passive })) : t();
160	  }, t.prototype.imgs = function () {
161	    var i = this;return "numbered" === this.images ? Array.apply(null, { length: this.count }).map(function (t, e) {
162	      return i.location + "/" + (e + 1) + "." + i.format.toLowerCase();
163	    }) : this.images;
164	  }, t.prototype.generateViewer = function () {
165	    this.viewer().className += " tridi-viewer tridi-" + this.elementName + "-viewer tridi-draggable-" + this.draggable + " tridi-touch-" + this.touch + " tridi-mousewheel-" + this.mousewheel + " tridi-hintOnStartup-" + this.hintOnStartup + " tridi-lazy-" + this.lazy, this.trigger("onViewerGenerate");
166	  }, t.prototype.generateLoadingScreen = function () {
167	    var t = document.createElement("div");t.className += "tridi-loading tridi-" + this.elementName + "-loading", t.style.display = "none";var e = document.createElement("div");e.className += "tridi-spinner tridi-" + this.elementName + "-spinner", t.appendChild(e), this.viewer().appendChild(t);
168	  }, t.prototype.setLoadingState = function (t, e) {
169	    this.getLoadingScreen().style.display = t ? "block" : "none", e || this.trigger(t ? "onLoadingScreenShow" : "onLoadingScreenHide");
170	  }, t.prototype.generateStash = function () {
171	    if (!this.stash()) {
172	      this.stashedImgs = 0;var t = document.createElement("div");t.style.display = "none", t.classList.add("tridi-stash"), this.viewer().appendChild(t);
173	    }
174	  }, t.prototype.destroyStash = function () {
175	    this.stashedImgs = 0, this.stash().parentNode.removeChild(this.stash());
176	  }, t.prototype.displayHintOnStartup = function (n) {
177	    var _this = this;
178	
179	    var o = this;if (this.hintOnStartup) {
180	      var s, t;
181	      var a, e;
182	
183	      (function () {
184	        var i = function i(t) {
185	          var e = t.target.classList.contains(s),
186	              i = t.target.classList.contains(a);(e || i) && (o.getHintOverlay().style.display = "none", n(), o.focusOnHintClose && o.viewerImage().focus(), o.trigger("onHintHide"));
187	        };
188	
189	        s = "tridi-" + _this.elementName + "-hint-overlay";
190	        t = document.createElement("div");
191	        t.className += "tridi-hint-overlay " + s, t.tabIndex = 0;a = "tridi-" + _this.elementName + "-hint";
192	        e = document.createElement("div");
193	        e.className += "tridi-hint " + a, _this.hintText && (e.innerHTML = '<span class="tridi-hint-text tridi-' + _this.elementName + '-hint-text">' + _this.hintText + "</span>"), t.appendChild(e), _this.viewer().appendChild(t), _this.trigger("onHintShow");document.addEventListener("click", i), _this.touch && document.addEventListener("touchstart", i), document.addEventListener("keydown", function (t) {
194	          "Enter" === t.key && i(t);
195	        });
196	      })();
197	    } else n();
198	  }, t.prototype.stashImage = function (t, e, i, n) {
199	    var o = new Image();o.onload = n.bind(this), o.className += "tridi-image tridi-image-" + (i + 1), o.src = e, t.innerHTML += o.outerHTML;
200	  }, t.prototype.populateStash = function () {
201	    var i = this,
202	        n = this.stash(),
203	        o = this.imgs();n && o && o.map(function (t, e) {
204	      i.stashImage(n, t, e, function () {
205	        i.stashedImgs += 1, i.stashedImgs === o.length && (i.setLoadingState(!1, !0), i.trigger("onImagesPreload"));
206	      });
207	    });
208	  }, t.prototype.generateViewerImage = function () {
209	    var t = this,
210	        e = this.viewer(),
211	        i = new Image();i.onload = function () {
212	      return t.trigger("onViewerImageGenerate");
213	    }, i.className += "tridi-viewer-image tridi-" + this.elementName + "-viewer-image", i.setAttribute("draggable", "false"), i.setAttribute("alt", ""), i.src = this.image(1), e.innerHTML = "" + i.outerHTML + e.innerHTML;
214	  }, t.prototype.updateViewerImage = function (t) {
215	    var e = this;this.viewerImage().onload = function () {
216	      return e.trigger("onViewerImageUpdate");
217	    }, this.viewerImage().src = this.image(t);
218	  }, t.prototype.nextFrame = function () {
219	    this.imageIndex = this.imageIndex <= 1 ? this.count : this.imageIndex - 1, this.viewerImage().src = this.image(this.imageIndex), this.trigger("onNextFrame");
220	  }, t.prototype.prevFrame = function () {
221	    this.imageIndex = this.imageIndex >= this.count ? 1 : this.imageIndex + 1, this.viewerImage().src = this.image(this.imageIndex), this.trigger("onPrevFrame");
222	  }, t.prototype.nextMove = function () {
223	    return this.trigger("onNextMove"), this.inverse ? this.prevFrame() : this.nextFrame();
224	  }, t.prototype.prevMove = function () {
225	    return this.trigger("onPrevMove"), this.inverse ? this.nextFrame() : this.prevFrame();
226	  }, t.prototype.rotateViewerImage = function (t) {
227	    var e = t.touches ? this.touchDragInterval : this.dragInterval,
228	        i = (t.touches ? t.touches[0].clientX : t.clientX) - this.viewerImage().offsetLeft;if (this.moveBuffer.length < 2) this.moveBuffer.push(i);else {
229	      var n = this.moveBuffer[1];this.moveBuffer[1] = i, this.moveBuffer[0] = n;
230	    }var o = !(i % e),
231	        s = this.moveBuffer[0],
232	        a = this.moveBuffer[1];o && a < s ? this.nextMove() : o && s < a && this.prevMove();
233	  }, t.prototype.startDragging = function () {
234	    this.dragActive = !0, this.viewer().classList.add("tridi-dragging"), this.trigger("onDragStart");
235	  }, t.prototype.stopDragging = function () {
236	    this.dragActive = !1, this.viewer().classList.remove("tridi-dragging"), this.trigger("onDragEnd");
237	  }, t.prototype.resetMoveBuffer = function () {
238	    this.moveBuffer.length = 0;
239	  }, t.prototype.attachCosmeticEvents = function () {
240	    var t = this.viewer();t.addEventListener("mouseenter", function () {
241	      return t.classList.add("tridi-viewer-hovered");
242	    }), t.addEventListener("mouseleave", function () {
243	      return t.classList.remove("tridi-viewer-hovered");
244	    });
245	  }, t.prototype.attachDragEvents = function () {
246	    var e = this;if (this.draggable) {
247	      var t = this.viewerImage();t.addEventListener("mousedown", function (t) {
248	        t.preventDefault && t.preventDefault(), e.startDragging(), e.rotateViewerImage(t);
249	      }), t.addEventListener("mouseup", function (t) {
250	        t.preventDefault && t.preventDefault(), e.stopDragging(), e.resetMoveBuffer();
251	      }), t.addEventListener("mousemove", function (t) {
252	        e.dragActive && e.rotateViewerImage(t);
253	      }), t.addEventListener("mouseleave", function () {
254	        e.resetMoveBuffer();
255	      });
256	    }
257	  }, t.prototype.attachMouseLeaveDetection = function () {
258	    var t = this;this.mouseleaveDetect && this.viewer().addEventListener("mouseleave", function () {
259	      t.stopDragging(), t.resetMoveBuffer();
260	    });
261	  }, t.prototype.attachTouchEvents = function () {
262	    var e = this;if (this.touch) {
263	      var t = this.viewerImage();t.addEventListener("touchstart", function (t) {
264	        e.startDragging(), e.rotateViewerImage(t);
265	      }, { passive: !0 }), t.addEventListener("touchmove", function (t) {
266	        e.rotateViewerImage(t);
267	      }, { passive: !0 }), t.addEventListener("touchend", function () {
268	        e.stopDragging(), e.resetMoveBuffer();
269	      });
270	    }
271	  }, t.prototype.attachMousewheelEvents = function () {
272	    var e = this;this.mousewheel && this.viewerImage().addEventListener("wheel", function (t) {
273	      t.preventDefault && !e.passive && t.preventDefault(), 0 < t.deltaY / 120 ? e.nextMove() : e.prevMove();
274	    }, { passive: this.passive });
275	  }, t.prototype.attachKeyEvents = function () {
276	    var e = this;this.keys && (this.viewerImage().setAttribute("tabindex", "0"), this.viewerImage().addEventListener("keydown", function (t) {
277	      "ArrowLeft" === t.key && e.prevMove(), "ArrowRight" === t.key && e.nextMove();
278	    }));
279	  }, t.prototype.clearIntervals = function () {
280	    this.intervals.map(clearInterval), this.intervals.length = 0;
281	  }, t.prototype.setAutoplayInterval = function () {
282	    var t = window.setInterval(this.nextMove.bind(this), this.autoplaySpeed);this.intervals.push(t);
283	  }, t.prototype.clearTimeouts = function () {
284	    this.timeouts.map(clearTimeout), this.timeouts.length = 0;
285	  }, t.prototype.setAutoplayTimeout = function () {
286	    var t = window.setTimeout(this.setAutoplayInterval.bind(this), this.resumeAutoplayDelay);this.timeouts.push(t);
287	  }, t.prototype.toggleAutoplay = function (t, e) {
288	    t ? (this.clearTimeouts(), 0 === this.intervals.length && (e ? this.setAutoplayInterval() : this.setAutoplayTimeout())) : this.clearIntervals(), this.trigger(t ? "onAutoplayStart" : "onAutoplayStop");
289	  }, t.prototype.stopAutoplaySequence = function () {
290	    this.clearTimeouts(), this.toggleAutoplay(!1);
291	  }, t.prototype.startAutoplay = function () {
292	    var e = this;if (this.autoplay) {
293	      var _t2 = function t(_t) {
294	        _t.target.classList.contains("tridi-btn") || e.toggleAutoplay(!0);
295	      };
296	
297	      this.toggleAutoplay(!0, !0), this.stopAutoplayOnClick && (this.viewerImage().addEventListener("mousedown", this.stopAutoplaySequence.bind(this)), this.touch && this.viewerImage().addEventListener("touchstart", this.stopAutoplaySequence.bind(this), { passive: this.passive })), this.stopAutoplayOnMouseenter && this.viewerImage().addEventListener("mouseenter", this.stopAutoplaySequence.bind(this));if (this.resumeAutoplayOnMouseleave) {
298	        var i = this.viewerImage();i.addEventListener("mouseleave", _t2), this.touch && i.addEventListener("touchend", _t2);
299	      }
300	    }
301	  }, t.prototype.attachEvents = function () {
302	    this.attachCosmeticEvents(), this.attachDragEvents(), this.attachMouseLeaveDetection(), this.attachTouchEvents(), this.attachMousewheelEvents(), this.attachKeyEvents();
303	  }, t.prototype.start = function () {
304	    var t = this;this.generateViewer(), this.generateLoadingScreen(), this.setLoadingState(!0), this.generateViewerImage(), this.setLoadingState(!1), this.displayHintOnStartup(function () {
305	      t.lazyLoad(function () {
306	        t.setLoadingState(!0), t.generateStash(), t.populateStash(), t.attachEvents(), t.startAutoplay(), t.setLoadingState(!1);
307	      });
308	    }), this.trigger("onLoad");
309	  }, t.prototype.next = function () {
310	    this.nextMove();
311	  }, t.prototype.prev = function () {
312	    this.prevMove();
313	  }, t.prototype.autoplayStart = function () {
314	    this.toggleAutoplay(!0);
315	  }, t.prototype.autoplayStop = function () {
316	    this.toggleAutoplay(!1);
317	  }, t.prototype.update = function (t, e) {
318	    this.validateUpdate(t) && (this.setLoadingState(!0), this.updateOptions(t), this.destroyStash(), this.generateStash(), this.populateStash(), this.updateViewerImage(e ? this.imageIndex : 1), this.attachEvents(), this.setLoadingState(!1), this.trigger("onUpdate"));
319	  }, t.prototype.load = function () {
320	    this.start();
321	  }, t;
322	})();"undefined" != typeof module && (module.exports = Tridi);
323
324/***/ }),
325/* 9 */
326/***/ (function(module, exports) {
327
328	// removed by extract-text-webpack-plugin
329
330/***/ })
331/******/ ]);
332//# sourceMappingURL=front.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.