{"version":3,"file":"8926_8a037672d439a6a8e7d2.bundle.js","mappings":"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","sources":["webpack://tumarket/./js/search/miniature.js","webpack://tumarket/./js/youtubePreview.js"],"sourcesContent":["/* global tumarket */\n\nimport * as $ from \"jquery\";\nimport tumCommon from \"../common.js\";\nimport tumGlobal from \"../global.js\";\nimport { bootstrapAlert } from \"../global/alert\";\nimport { ajaxSend } from \"../global/fetch\";\nimport { getCookie, setCookie } from \"../global/cookie\";\n\nimport \"../../css/modules/miniatures/miniatures.css\";\n\nimport { showAdultWarning } from \"../product/restrictAdult.js\";\nimport { getPrecompiledTemplate, loadPrecompiledTemplates } from \"../global/templates\";\nimport { pauseYoutubeVideos, youtubePreview } from \"../youtubePreview.js\";\nimport { addEventDelegate, appendHtml, toggleClass } from \"../global/dom\";\nimport { isMob } from \"../global/util\";\nimport { showDialog } from \"../global/dialog\";\n\nvar min = {\n\toptions: {\n\t\tneedMoreHeightPlus: 50,\n\t\tIsAuth: false,\n\t\tajaxURL: {\n\t\t\taddFavorite: '/FavoriteProducts/UpdateFavoriteProducts',\n\t\t\tremoveFavorite: '/FavoriteProducts/RemoveFavoriteProduct',\n\t\t\taddFavoriteFirm: '/FavoriteProducts/UpdateFavoriteFirms',\n\t\t\tremoveFavoriteFirm: '/FavoriteProducts/RemoveFavoriteFirm',\n\t\t\tgetProductDetails: '/Search/GetProductMiniatures'\n\t\t},\n\t\tfavProductsCookie: 'favorProducts2',\n\t\tfavFirmsCookie: 'favorFirms'\n\t},\n\tinit: function (options) {\n\t\tmin.options = $.extend(min.options, options);\n\t\tmin.initCallbacks();\n\t\tthis.initImages();\n\t},\n\tinitCallbacks: function () {\n\t\tvar self = this;\n\n\t\taddEventDelegate(document, 'click', '.tum-dropleft-menu-show, .miniature-menuBtn2', (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tmin.getMenuItems(element);\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.menu-action-show-map', (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tif ($('.ui-tooltip').length) {\n\t\t\t\t$('.ui-tooltip').remove();\n\t\t\t}\n\t\t\tmin.showMap($(element));\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.tum-add-menu-close', (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tmin.needMoreHeightRevert();\n\t\t\telement.closest('.dropdown-menu')?.classList.remove('d-block');\n\t\t});\n\n\t\taddEventDelegate(document, 'click', 'body', () => {\n\t\t\tif ($('.tum-product-test-warningPop').length > 0) $('.tum-product-test-warningPop').remove();\n\t\t});\n\n\t\t$(document).on('mouseup', function (e) {\n\t\t\tvar $container = $(\".b-product-dropdown.d-block\");\n\t\t\tvar $target = $(e.target);\n\n\t\t\t// if the target of the click isn't the container nor a descendant of the container\n\t\t\tif (!$container.is($target) && !$container.has($target).length && $container.length > 0\n\t\t\t\t\t&& !$('a', $target.closest('.product-card-menu')).hasClass('tum-dropleft-menu-show') && !$('.tum-errorObject').has(e.target).length) {\n\t\t\t\tmin.needMoreHeightRevert();\n\t\t\t\t$($container).removeClass('d-block');\n\t\t\t}\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.menu-action-error', (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tvar $elTU = $(element).closest('.product-card').find('.b-product-name a');\n\t\t\tvar $elKA = $(element).closest('.firm-miniature').find('.b-product-name a');\n\t\t\tvar $dropMenuContainer = $(element).closest('.card-menu').find('.tum-dropleft-menu-show');\n\t\t\tvar id = $dropMenuContainer.attr('data-productid') || $dropMenuContainer.attr('data-firmid'); \n\t\t\tvar isTU = $elTU.length > 0;\n\t\t\twindow.open('/sendcontentmistakes?text=' + (isTU ? $elTU.text() : $elKA.text()) + '&errorObject=' + (isTU ? 'product-mini' : 'firm-mini') + '&' + (isTU ? 'tuID='+id : 'kaID='+id), '_blank');\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.tum-add-favorite-firm', (element, e) => {\n\t\t\te.preventDefault();\n\n\t\t\tlet firmID = $(element).attr('data-firmid');\n\t\t\tself._addFirmToFavorites(firmID)\n\t\t\t.then(data => {\n\t\t\t\tif (data.result) {\n\t\t\t\t\tself._updateFavoriteButton_firm(firmID);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.tum-del-favorite-firm', (element, e) => {\n\t\t\te.preventDefault();\n\n\t\t\tlet firmID = $(element).attr('data-firmid');\n\t\t\tself._removeFirmFromFavorites(firmID).then(data => {\n\t\t\t\tif (data.result) {\n\t\t\t\t\tself._updateFavoriteButton_firm(firmID);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.tum-add-favorite', (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tif ($(element).closest('.product-card').hasClass('_adult-product')) return;\n\n\t\t\tlet productID = $(element).attr('data-productid');\n\t\t\tself._addProductToFavorites(productID).then(data => {\n\t\t\t\tif (data.result) {\n\t\t\t\t\ttumCommon.updateFavoritesCount();\n\t\t\t\t\tself._updateFavoriteButton_product(productID);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\t\n\t\taddEventDelegate(document, 'click', '.tum-del-favorite', (element, e) => {\n\t\t\te.preventDefault();\n\n\t\t\tlet productID = $(element).attr('data-productid');\n\t\t\tself._removeProductFromFavorites(productID).then(data => {\n\t\t\t\tif (data.result) {\n\t\t\t\t\ttumCommon.updateFavoritesCount();\n\t\t\t\t\tself._updateFavoriteButton_product(productID);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\taddEventDelegate(document, 'click', \".b-product-showDetails, .b-product-hideDetails\", element => {\n\t\t\tvar $product = $(element).closest(\".product-card\");\n\n\t\t\tself._toggleDetails($product);\n\t\t});\n\n\t\taddEventDelegate(document, 'click', \".b-product-showAllDetails\", () => {\n\t\t\tfor (let product of document.querySelectorAll('.product-card')) {\n\t\t\t\tthis._toggleDetails(product, true);\n\t\t\t}\n\t\t});\n\n\t\taddEventDelegate(document, \"click\", \".product-card._adult-product\", (element, e) => {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\tshowAdultWarning(true);\n\t\t});\n\n\t\taddEventDelegate(document, 'click', \".miniatMenu-showSchedule\", element => {\n\t\t\tself.getFirmSchedule($(element));\n\t\t});\n\t\t\n\t\taddEventDelegate(document, 'click', '.restrict-msg', () => {\n\t\t\tshowAdultWarning(true);\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.product-card [data-go-to-video]', element => {\n\t\t\tlet $product = $(element).closest('.product-card');\n\t\t\tlet lastIndex = $('.mini-images-page', $product).last().attr('data-index');\n\t\t\tself.goToImage($product, lastIndex);\n\t\t});\n\t},\n\t_toggleDetails: function($product, value){\n\t\tlet reverse = undefined;\n\t\tif (value != undefined) reverse = !value;\n\n\t\t$(\".b-product-annotation\", $product).toggleClass('min-product-annotation-collapsed', reverse);\n\t\t$('.b-product-hideDetails', $product).toggleClass('d-none', reverse);\n\t\t$('.b-product-showDetails, .b-product-showAllDetails', $product).toggleClass('d-none', value);\n\t},\n\t_getProductMiniatureMenu: function(id, type) {\n\t\treturn new Promise(resolve => ajaxSend({ url: '/Search/GetProductMiniatureMenu', data: { id, type } }).then(resolve));\n\t},\n\t_getFirmMiniatureMenu: function(id, type) {\n\t\treturn new Promise(resolve => ajaxSend({ url: '/Search/GetMiniatMenuItems', data: { itemID: id, type, isProduct: false } }).then(resolve));\n\t},\n\t_getMenuItems: function (btn) {\n\t\tlet self = this;\n\n\t\tlet miniature = btn.closest(\".product-card, .firm-miniature\");\n\n\t\t//кнопку меню находим заново внутри миниатюры, т.к. функция может быть запущена и другой кнопкой (.miniature-menuBtn2)\n\t\tbtn = miniature.querySelector(\".card-menu .tum-dropleft-menu-show\");\n\n\t\tlet cont = miniature.querySelector('.card-menu');\n\t\tlet menuCont = cont.querySelector('.b-product-dropdown');\n\n\t\tlet currentMenu = document.querySelector(\"body > .b-product-dropdown\");\n\t\tcurrentMenu?.remove();\n\n\t\tlet isFirm = !!cont.closest(\".firm-miniature\");\n\t\tlet itemId = btn.getAttribute('data-productid') ? btn.getAttribute('data-productid') : btn.getAttribute('data-firmid');\n\n\t\tfunction showMenu(){\n\t\t\tif (isMob()) {\n\t\t\t\tshowDialog({\n\t\t\t\t\tcontent: menuCont.innerHTML,\n\t\t\t\t\tbodyClasses: isFirm ? \"firm-miniature-menu\" : \"product-miniature-menu\",\n\t\t\t\t\tpinToBottom: true,\n\t\t\t\t\tshowHeader: false,\n\t\t\t\t\ttitle: btn.dataset.title\n\t\t\t\t});\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet elem = menuCont.cloneNode(true);\n\t\t\ttoggleClass(elem, 'invisible', true);\n\t\t\ttoggleClass(elem, isFirm ? \"firm-miniature-menu\" : \"product-miniature-menu\", true);\n\t\t\telem.setAttribute('data-error-object', isFirm ? 'firm-mini' : 'product-mini');\n\t\t\telem.setAttribute('data-error-itemid', itemId);\n\t\t\tdocument.body.appendChild(elem);\n\n\t\t\tself.updateMenuPosition(miniature);\n\t\t}\n\n\t\tif (!menuCont?.childNodes.length) {\n\t\t\t\n\t\t\tlet type = btn.getAttribute('data-typemenu') || 0;\n\t\t\tlet isProduct = !!btn.getAttribute('data-productid');\n\t\t\tlet getMenu = isProduct ? this._getProductMiniatureMenu : this._getFirmMiniatureMenu;\n\n\t\t\tgetMenu(itemId, type)\n\t\t\t.then(data => {\n\t\t\t\tif (data.result) {\n\t\t\t\t\tlet html = '';\n\t\t\t\t\tif (isProduct) html = getPrecompiledTemplate(\"product-mini-menu\")(JSON.parse(data.value));\n\t\t\t\t\telse html = getPrecompiledTemplate('firm-mini-menu')(JSON.parse(data.value));\n\t\t\t\t\t\n\t\t\t\t\tappendHtml(menuCont, html);\n\t\t\t\t\t\n\t\t\t\t\tshowMenu();\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tshowMenu();\n\t\t}\n\t},\n\tgetMenuItems: function(btn){\n\t\tloadPrecompiledTemplates([\n\t\t\t'product-mini-menu',\n\t\t\t'firm-mini-menu'\n\t\t]).then(() => this._getMenuItems(btn));\n\t},\n\tupdateMenuPosition: function(miniature) {\n\t\tlet menu = document.querySelector(\"body > .b-product-dropdown\");\n\t\tlet miniatureBox = miniature.getBoundingClientRect();\n\t\tlet scrollTop = window.scrollY;\n\n\t\tmenu.style.top = `${miniatureBox.top + scrollTop}px`;\n\t\tlet screenWidth = window.innerWidth;\n\t\tlet width = Math.max.apply(null, [310, miniatureBox.width]);\n\n\t\tlet left = (screenWidth > miniatureBox.left + width && miniatureBox.left > 0) ? miniatureBox.left : screenWidth - width - 10;\n\n\t\tmenu.style.width = `${width}px`;\n\t\tmenu.style.left = `${left}px`;\n\n\t\t//до этого момента высота меню неизвестна, поэтому всё в такой последовательности. \n\t\t//выше top задаем только чтобы не прыгала высота страницы, потому что меню добавляется в конец\n\t\ttoggleClass(menu, 'd-block', true);\n\n\t\tlet menuBox = menu.getBoundingClientRect();\n\t\tmenu.style.top = `${miniatureBox.top + scrollTop + (miniatureBox.height - menuBox.height)/2}px`;\n\t\ttoggleClass(menu, 'invisible', false);\n\t},\n\tshowMap: function ($btn) {\n\t\tlet long = $btn.attr('data-long');\n\t\tlet lat = $btn.attr('data-lat');\n\t\tlet firmID = $btn.attr('data-firmid') || $btn.closest('.product-card').find('.tum-dropleft-menu-show').attr('data-firmid');\n\n\t\tlet params = {\n\t\t\tlong: long,\n\t\t\tlat: lat,\n\t\t\tfirmID: firmID\n\t\t};\n\n\t\ttumCommon.showFirmOnMap(params);\n\t},\n\tneedMoreHeight: function ($btn) {\n\t\tvar $hDiv = $btn.closest('.product-card');\n\t\tif (!!$hDiv && $hDiv.hasClass('need-more-height')) {\n\t\t\tvar hMnu = $($hDiv.find('.dropdown-menu')).height() + this.options.needMoreHeightPlus;\n\t\t\tvar hDiv = $hDiv.height();\n\t\t\tif (hMnu > hDiv) {\n\t\t\t\t$hDiv.height(hMnu);\n\t\t\t}\n\t\t}\n\t},\n\tneedMoreHeightRevert: function () {\n\t\tvar $hDiv = $($(\".b-product-dropdown.d-block\")).closest('.product-card');\n\t\tif (!!$hDiv && $hDiv.hasClass('need-more-height')) {\n\t\t\t$hDiv.removeAttr('style');\n\t\t}\n\t},\n\t_addFirmToFavorites: function(firmID) {\n\t\tlet cookie = JSON.parse(getCookie(this.options.favFirmsCookie) || '[]');\n\t\tif (!cookie.includes(firmID)) cookie.push(firmID);\n\t\t\n\t\tif (!tumarket.isAuthenticated) {\n\t\t\tsetCookie(this.options.favFirmsCookie, JSON.stringify(cookie), 10);\n\t\t\treturn Promise.resolve({ result: true });\n\t\t}\n\n\t\t//после авторизации избранное из куки нужно сохранить в бд вместе с данным товаром, а куку удалить\n\t\tsetCookie(this.options.favFirmsCookie, '[]', -1);\n\t\tlet favorites = cookie.map(e => ({ firmID: e }));\n\n\t\treturn new Promise(resolve => {\n\t\t\tajaxSend({ url: this.options.ajaxURL.addFavoriteFirm, data: { firmIDs: favorites } }).then(resolve);\n\t\t});\n\t},\n\t_removeFirmFromFavorites: function(firmID) {\n\t\tlet cookie = JSON.parse(getCookie(this.options.favFirmsCookie) || '[]');\n\t\tcookie = cookie.filter(e => e != firmID);\n\t\t\n\t\tif (!tumarket.isAuthenticated) {\n\t\t\tsetCookie(this.options.favFirmsCookie, JSON.stringify(cookie), 10);\n\t\t\treturn Promise.resolve({ result: true });\n\t\t}\n\n\t\treturn new Promise(resolve => {\n\t\t\tajaxSend({ url: this.options.ajaxURL.removeFavoriteFirm, data: { id: firmID } }).then(resolve);\n\t\t});\n\t},\n\t_updateFavoriteButton_product: function(productID){\n\t\tlet buttons = $(`.tum-add-favorite[data-productid=${productID}], .tum-del-favorite[data-productid=${productID}]`);\n\t\tbuttons.toggleClass('d-none');\n\t},\n\t_updateFavoriteButton_firm: function(firmID){\n\t\tlet buttons = $(`.tum-add-favorite-firm[data-firmid=${firmID}], .tum-del-favorite-firm[data-firmid=${firmID}]`);\n\t\tbuttons.toggleClass('d-none');\n\t},\n\t_addProductToFavorites: function(productID){\n\t\tlet cookie = JSON.parse(getCookie(this.options.favProductsCookie) || '{}');\n\n\t\tcookie[productID] = new Date();\n\t\t\n\t\tif (!tumarket.isAuthenticated) {\n\t\t\tsetCookie(this.options.favProductsCookie, JSON.stringify(cookie), 10);\n\t\t\treturn Promise.resolve({ result: true });\n\t\t}\n\n\t\t//после авторизации избранное из куки нужно сохранить в бд вместе с данным товаром, а куку удалить\n\t\tsetCookie(this.options.favProductsCookie, '{}', -1);\n\t\tlet favorites = Object.keys(cookie).map(e => ({ ProductID: Number(e) }));\n\n\t\treturn new Promise(resolve => {\n\t\t\tajaxSend({ url: this.options.ajaxURL.addFavorite, data: { productIDs: favorites } }).then(resolve);\n\t\t});\n\t},\n\t_removeProductFromFavorites: function(productID){\n\t\tlet cookie = JSON.parse(getCookie(this.options.favProductsCookie) || '{}');\n\t\tdelete cookie[productID];\n\t\t\n\t\tif (!tumarket.isAuthenticated) {\n\t\t\tsetCookie(this.options.favProductsCookie, JSON.stringify(cookie), 10);\n\t\t\treturn Promise.resolve({ result: true });\n\t\t}\n\n\t\treturn new Promise(resolve => {\n\t\t\tajaxSend({ url: this.options.ajaxURL.removeFavorite, data: { id: productID } }).then(resolve);\n\t\t});\n\t},\n\tgetDate: function () {\n\t\tvar date = new Date().toLocaleString('ru', {\n\t\t\tyear: 'numeric',\n\t\t\tmonth: 'numeric',\n\t\t\tday: 'numeric'\n\t\t});\n\t\tvar time = new Date().toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' });\n\t\tvar res = `${date} ${time}`;\n\t\treturn res;\n\t},\n\tgoToImage: function($product, index) {\n\t\tvar $cont = $(\".mini-images\", $product);\n\t\tvar $img = $cont.find(\"img\");\n\n\t\tvar $page = $('.mini-images-page[data-index=\"' + index + '\"]', $cont);\n\t\tlet isVideo = $page.is('[data-video]');\n\t\t$('.mini-header-show-video', $product).toggleClass('d-none', !isVideo);\n\n\t\tvar src = $page.attr(\"data-src\");\n\t\t$img.attr(\"src\", src);\n\n\t\t$(\".mini-images-page\", $cont).removeClass(\"active\");\n\t\t$page.addClass(\"active\");\n\t},\n\tinitImages: function(){\n\t\tvar self = this;\n\t\tlet touchstartX = 0;\n\t\tlet touchendX = 0;\n\n\t\t$(document).on('mouseenter', \".mini-images-page-area\", function() {\n\t\t\tlet $product = $(this).closest('.product-card');\n\t\t\tlet index = $(this).attr('data-index');\n\t\t\t\n\t\t\tself.goToImage($product, index);\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.mini-header-show-video', element => {\n\t\t\tlet $product = $(element).closest('.product-card');\n\t\t\tself.toggleVideo($product);\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.mini-header-hide-video', element => {\n\t\t\tlet $product = $(element).closest('.product-card');\n\t\t\tself.toggleVideo($product);\n\t\t\tpauseYoutubeVideos();\n\t\t});\n\n\t\t$(document).on('touchstart', '.mini-images-swipeArea', function(event) {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\ttouchstartX = event.changedTouches[0].screenX;\n\t\t});\n\t\t\n\t\t$(document).on('touchend', '.mini-images-swipeArea', function(event) {\n\t\t\tevent.stopPropagation();\n\t\t\ttouchendX = event.changedTouches[0].screenX;\n\t\t\thandleGesture(this);\n\t\t}); \n\t\t\n\t\t$(document).on('touchmove', '.mini-images-swipeArea', function(e) {\n\t\t\te.stopPropagation();\n\n\t\t\tvar xStart, yStart = 0;\n\t\t\n\t\t\txStart = e.touches[0].screenX;\n\t\t\tyStart = e.touches[0].screenY;\n\t\t\n\t\t\tvar xMovement = Math.abs(e.touches[0].screenX - xStart);\n\t\t\tvar yMovement = Math.abs(e.touches[0].screenY - yStart);\n\n\t\t\tif ((xMovement * 3) > yMovement) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t});\n\n\t\tfunction handleGesture(swipearea) {\n\t\t\tlet imgCont = $(swipearea).closest('.mini-images');\n\t\t\tif (touchendX <= touchstartX) {\n\t\t\t\tself.nextImage(imgCont);\n\t\t\t}\n\t\t\t\n\t\t\tif (touchendX >= touchstartX) {\n\t\t\t\tself.previousImage(imgCont);\n\t\t\t}\n\t\t}\n\t},\n\tnextImage: function(imgCont){\n\t\tlet $current = $(\".mini-images-page.active\", imgCont);\n\t\tlet $next = $current.next();\n\t\tif (!$next.length) {\n\t\t\t$next = $current.prevAll().last();\n\t\t}\n\n\t\t$(\".mini-images-page\", imgCont).removeClass(\"active\");\n\t\t$next.addClass(\"active\");\n\t\t$(\"img\", imgCont).attr(\"src\", $next.attr(\"data-src\"));\n\n\t\tlet $product = imgCont.closest('.product-card');\n\t\tlet isVideo = $next.is('[data-video]');\n\t\t$('.mini-header-show-video', $product).toggleClass('d-none', !isVideo);\n\t},\n\ttoggleVideo: function($product){\n\t\tlet $showVideoBtn = $('.mini-header-show-video', $product);\n\t\t\n\n\t\tlet videoPreview = $('.mini-product-video .youtube-preview', $product);\n\t\tlet showAsModal = videoPreview.is('[data-modal]');\n\t\tif (videoPreview.length) {\n\t\t\tyoutubePreview.enableYoutubeVideo(videoPreview[0]);\n\t\t}\n\n\t\tif (showAsModal) return;\n\n\t\t$('.mini-product-video', $product).toggleClass('d-none');\n\t\t$('.mini-images', $product).toggleClass('d-none');\n\t\t$('.mini-header-hide-video', $product).toggleClass('d-none');\n\t\t\n\t\t$showVideoBtn.toggleClass('d-none');\n\t\t$('.miniature-top-btn', $product).toggleClass('invisible');\n\t\t$('.mini-header-discount', $product).toggleClass('d-none');\n\t},\n\tpreviousImage: function(imgCont){\n\t\tlet $current = $(\".mini-images-page.active\", imgCont);\n\t\tlet $prev = $current.prev();\n\t\tif (!$prev.length) {\n\t\t\t$prev = $current.nextAll().last();\n\t\t}\n\n\t\t$(\".mini-images-page\", imgCont).removeClass(\"active\");\n\t\t$prev.addClass(\"active\");\n\t\t$(\"img\", imgCont).attr(\"src\", $prev.attr(\"data-src\"));\n\n\t\tlet $product = imgCont.closest('.product-card');\n\t\tlet isVideo = $prev.is('[data-video]');\n\t\t$('.mini-header-show-video', $product).toggleClass('d-none', !isVideo);\n\t},\n\tgetFirmSchedule: function($btn){\n\t\tvar $schedule = $btn.closest(\".product-miniature-menu, .firm-miniature-menu, .schedule-container\").find(\".miniatMenu-schedule\");\n\t\tvar params = { firmID: $btn.attr(\"data-firmid\"), depID: $btn.attr(\"data-depid\") || 0 };\n\n\t\tif ($schedule.html()) {\n\t\t\t$schedule.toggleClass(\"d-none\");\n\t\t\treturn;\n\t\t}\n\n\t\tloadPrecompiledTemplates(['firm-schedule']).then(() => {\n\t\t\tajaxSend({ url: '/FirmRequests/GetFirmSchedule', data: params }).then(data => {\n\t\t\t\tif (data.result) {\n\t\t\t\t\tvar template = getPrecompiledTemplate('firm-schedule');\n\t\t\t\t\tvar d = Object.assign({}, data, { localTime: tumGlobal.getFullDate() });\n\t\t\t\t\tvar htmlOut = template(d);\n\t\t\t\t\t$schedule.html(htmlOut);\n\t\t\t\t} else {\n\t\t\t\t\tbootstrapAlert('Ошибка загрузки графика фирмы.');\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n};\n\nexport default min;\n","import * as $ from \"jquery\";\nimport \"bootstrap/js/dist/modal\";\nimport \"../css/modules/tu.m/youtubePreview.css\";\nimport tumGlobal from \"./global\";\nimport { addEventDelegate, toggleClass } from \"./global/dom\";\n\nfunction pauseYoutubeVideos() {\n\tlet videos = document.querySelectorAll('.youtube-iframe');\n\tfor (let video of videos) {\n\t\tvideo.contentWindow.postMessage('{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}', '*')\n\t}\n}\n\nlet youtubePreview = {\n\toptions: {\n\t},\n\tinit: function (options) {\n\t\tObject.assign(this.options, options);\n\n\t\taddEventDelegate(document, 'click', '.youtube-preview', element => {\n\t\t\tthis.enableYoutubeVideo(element);\n\t\t});\n\n\t\t$(document).on('hide.bs.modal', '#yt-preview-modal', () => {\n\t\t\tdocument.querySelector('#yt-preview-modal .modal-body').innerHTML = \"\";\n\t\t});\n\t},\n\tenableYoutubeVideo: function(preview){\n\t\tlet showAsModal = preview.matches('[data-modal]');\n\n\t\tlet options = {\n\t\t\twidth: preview.getAttribute('data-width'),\n\t\t\theight: preview.getAttribute('data-height'),\n\t\t\turl: preview.getAttribute('data-url'),\n\t\t\tclass: preview.getAttribute('data-class')\n\t\t};\n\n\t\tif (showAsModal) {\n\t\t\tthis.showAsModal(options);\n\n\t\t\tsetTimeout(() => { \n\t\t\t\tlet overlay = document.querySelector('#yt-preview-modal .youtube-embed-overlay');\n\t\t\t\ttoggleClass(overlay, 'show', true);\n\t\t\t\tsetTimeout(() => toggleClass(overlay, 'show', false), 3000);\n\t\t\t}, 1000);\n\n\t\t\treturn;\n\t\t}\n\n\t\ttoggleClass(preview, 'youtube-preview', false);\n\t\tpreview.innerHTML = this.renderVideo(options);\n\t\tsetTimeout(() => { \n\t\t\ttoggleClass(preview.querySelector('.youtube-embed-overlay'), 'show', true);\n\t\t\tsetTimeout(() => toggleClass(preview.querySelector('.youtube-embed-overlay'), 'show', false), 3000);\n\t\t}, 1000);\n\n\t\tpreview.dispatchEvent(new Event(\"tu.ytpreview.rendered\"));\n\t},\n\trenderVideo: function (options) {\n\t\treturn `\n\t\t\t
\n\t\t\t
ВКЛЮЧИТЬ
\n\t\t\t\n\t\t\t
`;\n\t},\n\t_showAsModal: function(options) {\n\t\tlet modal = document.querySelector('#yt-preview-modal');\n\t\tmodal.querySelector('.modal-body').innerHTML = this.renderVideo(options);\n\t\t$(modal).modal('show');\n\t},\n\tshowAsModal: function(options) {\n\t\tif (!document.querySelector('#yt-preview-modal')) {\n\t\t\treturn tumGlobal.createModal({\n\t\t\t\tid: 'yt-preview-modal',\n\t\t\t\tnoHeader: true,\n\t\t\t\tnoFooter: true,\n\t\t\t\tuseCloseButton: true,\n\t\t\t\tnoBodyPadding: true,\n\t\t\t\tbackdropStatic: true\n\t\t\t}).then(() => this._showAsModal(options));\n\t\t}\n\n\t\tthis._showAsModal(options);\n\t},\n\tinitPreview: function (container) {\n\t\tlet url = container.getAttribute('data-url');\n\t\tlet title = container.getAttribute('data-title');\n\t\tlet width = container.getAttribute('data-width') || 320;\n\t\tlet height = container.getAttribute('data-height') || 180;\n\t\tlet innerHTML = `\"YouTube\"\n\t\t\t\t\t\t
\n\t\t\t\t\t\t \t\"\"\n\t\t\t\t\t\t\t${title}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
`;\n\n\t\tcontainer.innerHTML = innerHTML;\n\t},\n\tinitPreviews: function(container){\n\t\t(container || document).querySelectorAll('.youtube-preview').forEach(e => {\n\t\t\tthis.initPreview(e);\n\t\t});\n\t},\n\turlToId: function (url) {\n\t\tlet res = url.replace('https://www.youtube.com/embed/', '');\n\t\tres = res.indexOf('?') > -1 ? res.substring(0, url.indexOf('?')) : res;\n\t\treturn res;\n\t}\n};\n\nexport { youtubePreview, pauseYoutubeVideos };"],"names":["min","options","needMoreHeightPlus","IsAuth","ajaxURL","addFavorite","removeFavorite","addFavoriteFirm","removeFavoriteFirm","getProductDetails","favProductsCookie","favFirmsCookie","init","initCallbacks","this","initImages","self","document","element","e","preventDefault","getMenuItems","length","remove","showMap","needMoreHeightRevert","closest","classList","on","$container","$target","target","is","has","hasClass","removeClass","$elTU","find","$elKA","$dropMenuContainer","id","attr","isTU","window","open","text","firmID","_addFirmToFavorites","then","data","result","_updateFavoriteButton_firm","_removeFirmFromFavorites","productID","_addProductToFavorites","updateFavoritesCount","_updateFavoriteButton_product","_removeProductFromFavorites","$product","_toggleDetails","product","querySelectorAll","stopPropagation","getFirmSchedule","lastIndex","last","goToImage","value","reverse","undefined","toggleClass","_getProductMiniatureMenu","type","Promise","resolve","url","_getFirmMiniatureMenu","itemID","isProduct","_getMenuItems","btn","miniature","querySelector","cont","menuCont","currentMenu","isFirm","itemId","getAttribute","showMenu","content","innerHTML","bodyClasses","pinToBottom","showHeader","title","dataset","elem","cloneNode","setAttribute","body","appendChild","updateMenuPosition","childNodes","html","JSON","parse","menu","miniatureBox","getBoundingClientRect","scrollTop","scrollY","style","top","screenWidth","innerWidth","width","Math","max","apply","left","menuBox","height","$btn","params","long","lat","showFirmOnMap","needMoreHeight","$hDiv","hMnu","removeAttr","cookie","includes","push","tumarket","isAuthenticated","stringify","favorites","map","firmIDs","filter","Date","Object","keys","ProductID","Number","productIDs","getDate","toLocaleString","year","month","day","toLocaleTimeString","hour","minute","index","$cont","$img","$page","isVideo","src","addClass","touchstartX","touchendX","toggleVideo","event","changedTouches","screenX","swipearea","imgCont","nextImage","previousImage","handleGesture","xStart","yStart","touches","screenY","abs","$current","$next","next","prevAll","$showVideoBtn","videoPreview","showAsModal","y","enableYoutubeVideo","$prev","prev","nextAll","$schedule","depID","htmlOut","template","assign","localTime","getFullDate","pauseYoutubeVideos","videos","video","contentWindow","postMessage","youtubePreview","preview","matches","class","setTimeout","overlay","renderVideo","dispatchEvent","Event","_showAsModal","modal","createModal","noHeader","noFooter","useCloseButton","noBodyPadding","backdropStatic","initPreview","container","urlToId","initPreviews","forEach","res","replace","indexOf","substring"],"sourceRoot":""}