{"version":3,"file":"7401_d51ea8ce8a8f47e4a874.bundle.js","mappings":"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","sources":["webpack://tumarket/./js/search/search.js","webpack://tumarket/./js/ctu/productSearch.js","webpack://tumarket/./js/util/tabSpecificElements.js","webpack://tumarket/./js/search/additionalResults.js","webpack://tumarket/./js/pages/category.js","webpack://tumarket/./node_modules/jquery-ui/ui/widgets/mouse.js"],"sourcesContent":["import * as $ from \"jquery\";\n\nimport \"bootstrap/js/dist/popover\";\nimport \"bootstrap/js/dist/modal\";\nimport \"readmore-js\";\nimport tumGlobal from \"../global.js\";\nimport searchFilter from \"../filter/filter.js\";\nimport filter from \"../filter/script.js\";\nimport { ajaxSend } from \"../global/fetch\";\nimport { getPrecompiledTemplate, loadPrecompiledTemplates } from \"../global/templates\";\nimport { initTuPopover } from \"../global/popover\";\nimport { addEventDelegate, appendHtml, find, hide, show } from \"../global/dom\";\nimport { showAlert } from \"../global/dialog\";\nimport { searchWidgets } from \"../navbar/searchSelect.js\";\n\nvar tumSearch = {\n\toptions: {\n\t\ttext: \"\",\n\t\ttype: \"\",\n\t\tpoints: [],\n\t\tpage: 1,\n\t\tfirmPage: 1,\n\t\tsort: \"relup\",\n\t\tfirstInitCall: true,\n\t\tisFirstLoad: true,\n\t\tpageDirection : '',\n\t\tactiveTab: '',\n\t\teditLimitationsMsg: \"\",\n\t\tisMobSearch: false,\n\t},\n\t\n\tmapPointsToAdd: [],\n\tinit: function (options) {\n\t\t$(\"#asModal\").modal({ show: false, backdrop: 'static' });\n\t\t\n\t\tthis.options = $.extend(this.options, options);\n\t\tif (this.options.firstInitCall) {\n\t\t\tthis.initCallbacks();\n\t\t\tthis.options.firstInitCall = false;\n\t\t}\n\n\t\tthis.updateCollapseSummaryTitleVisible(true);\t\n\t\t\n\t\t$('.tum-firms-alterFilter').readmore({\n\t\t\tmoreLink: ' Развернуть',\n\t\t\tlessLink: ' Свернуть',\n\t\t\tspeed: 100,\n\t\t\tcollapsedHeight: 36\n\t\t});\n\n\t\t$('.tum-firms-alterFilterWrap').removeClass('d-none');\n\t},\n\tinitCallbacks: function () {\n\t\tlet self = this;\n\t\taddEventDelegate(document, \"click\", \".tum-firms-alterFilterItem\", (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tvar header = document.querySelector('#alt-filter-header');\n\n\t\t\tself.options.activeTab = element.closest('.b-catalog').querySelector('.nav-link.active').dataset.href;\n\n\t\t\thide('.btn-show-prev');\n\n\t\t\tif (!element.matches('.fa-times')) {\n\t\t\t\tvar val = element.dataset.contact;\n\t\t\t\tvar text = `${element.textContent}`;\n\t\t\t\tlet count = element.parentElement.querySelector(\".tum-firms-alterFilterItemCount\")?.textContent;\n\t\t\t\thide(find(header, '.tum-h2-text'));\n\t\t\t\thide(\".tum-firms-alterFilterWrap\");\n\t\t\t\tappendHtml(header, `

Организации с контактом ${text}${count ? `${count}` : ''}

`);\n\t\t\t\tself.options.text = val;\n\t\t\t\tself.search(true, 1, val);\n\t\t\t} else {\n\t\t\t\theader.querySelector('.alterHeader')?.remove();\n\t\t\t\tshow(find(header, '.tum-h2-text'));\n\t\t\t\tshow(\".tum-firms-alterFilterWrap\");\n\t\t\t\tself.options.text = \"\";\n\t\t\t\tself.search(true, 1, \"-1\");\n\t\t\t}\n\t\t});\n\n\t\taddEventDelegate(document, \"click\", \".btn-products\", (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tvar page = +$(element).attr('data-page');\n\t\t\tif (page == 1) $(element).addClass('d-none');\n\t\t\tif ($(element).closest('.tab-pane').attr('id') == \"firms\") {\n\t\t\t\tif (page > self.options.firmPage) {\n\t\t\t\t\t$(element).attr('data-page', page + 1);\n\t\t\t\t\tsearchFilter.setURLParameter('firmPage', page);\n\t\t\t\t}\n\t\t\t\telse $(element).attr('data-page', page - 1);\n\t\t\t\tself.options.firmPage = page > self.options.firmPage ? self.options.firmPage + 1 : self.options.firmPage;\n\t\t\t} else {\n\t\t\t\tif (page > +self.options.page) {\n\t\t\t\t\t$(element).attr('data-page', page + 1);\n\t\t\t\t\tsearchFilter.setURLParameter('page', page);\n\t\t\t\t} else $(element).attr('data-page', page - 1);\n\t\t\t\tself.options.page = page > +self.options.page ? +self.options.page + 1 : +self.options.page;\t\t\n\t\t\t}\n\t\t\tif ($(element).hasClass('btn-show-more')) {\n\t\t\t\tself.options.pageDirection = \"down\";\n\t\t\t}\n\t\t\tself.options.activeTab = $(element).closest('.b-catalog').find('.nav-link.active').attr('data-href');\n\t\t\tself.search(false, page);\n\t\t});\n\t\t\n\t\taddEventDelegate(document, 'click', \".focus-search-input\", () => {\n\t\t\tif (!tumGlobal.isMob()) {\n\t\t\t\tsearchWidgets.main.focus();\n\t\t\t} else {\n\t\t\t\timport(\"../searchMenu\").then(({tum_searchMenu}) => {\n\t\t\t\t\ttum_searchMenu.toggleMenu().then(() => tum_searchMenu.focusSearch());\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t},\n\t_search: function (isSort, page, text) {\n\t\tlet self = this;\n\n\t\tvar params = {\n\t\t\ttext: text != null && text != \"-1\" ? text : \"\",\n\t\t\ttype: this.options.type,\n\t\t\tpage: page,\n\t\t\tsort: this.options.sort,\n\t\t\tpageDirection: this.options.pageDirection,\n\t\t\tactiveTab: this.options.activeTab\n\t\t};\n\n\t\tfunction renderFirms(data){\n\t\t\tvar tabCont = '#firms';\n\n\t\t\tdata.items.bygoods = data.items.Type == \"bygoods\";\n\n\t\t\tvar templates = {\n\t\t\t\tgrid: 'firm-mini-list',\n\t\t\t\tmini: 'firm-mini-list',\n\t\t\t\trows: 'firm-mini-row-list'\n\t\t\t};\n\n\t\t\tvar viewMode = filter.options.viewMode;\n\n\t\t\tvar actualViewMode = viewMode == 'mini' ? 'grid' : viewMode;\n\n\t\t\tvar tmpl = getPrecompiledTemplate(templates[actualViewMode]);\n\t\t\tvar html = $(tmpl(data.items));\n\t\t\tinitTuPopover(html);\n\n\t\t\tif (!isSort) {\n\t\t\t\tif (self.options.pageDirection != \"down\") {\n\t\t\t\t\t$(tabCont + ' [data-view=' + actualViewMode + ']').prepend(html);\n\t\t\t\t} else {\n\t\t\t\t\t$(tabCont + ' [data-view=' + actualViewMode + ']').append(html);\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\t$(tabCont + ' [data-view=' + actualViewMode + ']').html(html);\n\t\t\t}\n\n\t\t\tif (data.items.filter.firmPage * data.items.filter.firmPageSize >= data.items.ProductsInfo.filteredKA) {\n\t\t\t\t$(tabCont + ' .btn-products.btn-show-more').addClass('d-none');\n\t\t\t} else {\n\t\t\t\t$(tabCont + ' .btn-products.btn-show-more').removeClass('d-none');\n\t\t\t}\n\t\t}\n\n\t\tajaxSend({ url: \"/Search/Search\", data: params }).then(data => {\n\t\t\tif (data.result) {\n\t\t\t\tswitch (self.options.activeTab) {\n\t\t\t\t\tcase \"firms\":\n\t\t\t\t\t\trenderFirms(data);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\t$(\"[data-toggle=popover]\").popover({\n\t\t\t\t\tsanitize: false\n\t\t\t\t});\n\t\t\t}\n\t\t\telse {\n\t\t\t\tshowAlert(data.msg || \"Произошла ошибка\", { type: \"danger\", delay: 10000 });\n\t\t\t}\n\t\t});\n\t},\n\tsearch: function (isSort, page, text) {\n\t\tlet templates = [\n\t\t\t'firm-mini-list', \n\t\t\t'firm-mini-row-list'\n\t\t];\n\t\tloadPrecompiledTemplates(templates).then(() => this._search(isSort, page, text));\n\t},\n\tgetsearchcount: function (type) {\n\n\t\tvar params = { text: this.options.text, type: type, page: this.options.page, sort: this.options.sort };\n\t\tajaxSend({ url: \"/Search/Search\", data: params }).then(data => {\n\t\t\tif (data.result) {\n\t\t\t\tvar showCount = data.items.SearchResults ? data.items.ResultCount : 0;\n\t\t\t\tswitch (type) {\n\t\t\t\t\tcase \"byOrganization\":\n\t\t\t\t\t\t$('.search-count-byorg').html(showCount)\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"byAddress\":\n\t\t\t\t\t\t$('.search-count-byaddress').html(showCount)\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"byContacts\":\n\t\t\t\t\t\t$('.search-count-bycontact').html(showCount)\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tshowAlert(data.msg || \"Произошла ошибка\", { type: \"danger\", delay: 10000 });\n\t\t\t}\n\t\t});\n\t},\n\n\tupdateCollapseSummaryTitleVisible: function (isFirst) {\n\t\tvar elm = document.getElementById('collapseSummarySrcTitle');\n\t\tif (!elm) return false; \n\t\tvar $elm = $('.collapseSummarySrcTitleClass');\n\t\tvar maxCollapseHeight = parseInt($elm.attr('data-height'));\n\t\tvar $elmLink = $('.collapseSummarySrcTitleLink');\n\t\tvar sH = Math.ceil(parseFloat(elm.scrollHeight));\n\t\tvar iH = Math.ceil(parseFloat($('#collapseSummarySrcTitle').innerHeight()));\n\t\tvar isNoCollapse = !$elm.hasClass('collapse');\n\n\t\tif ((sH > iH) && (isFirst || !isNoCollapse)) {// Contains hidden content!\n\t\t\t$elmLink.removeClass('d-none');\n\t\t}\n\t\telse if ((isNoCollapse) || (sH == maxCollapseHeight) || sH == 0) {\n\t\t\t$elmLink.addClass('d-none');\n\t\t}\n\t}\n};\n\nexport { tumSearch };","/* global tumarket */\n\nimport * as $ from \"jquery\";\nimport \"readmore-js\";\nimport productsList from \"../search/productsList.js\";\nimport filterCont from \"../filter/filterCont.js\";\nimport searchFilter from \"../filter/filter.js\";\nimport { tumSearch } from \"../search/search.js\";\nimport { addEventDelegate, hasClass, hide, show, toggleClass } from \"../global/dom\";\n\nvar productSearch = {\n\toptions: {\n\t\tpage: 1,\n\t\tpageSize: 10,\n\t\tctuID: 0,\n\t\tpoints: [],\n\t\tctuCount: 0,\n\t\tisSearchPage:true\n\t},\n\tinit: function (options) {\n\t\tObject.assign(productSearch.options, options);\n\n\t\taddEventDelegate(document, \"click\", \".b-nav-search a\", (element, e) => {\n\t\t\te.preventDefault();\n\t\t\tif (productSearch.options.type == \"bygoods\") {\n\t\t\t\tlet href = element.href;\n\t\t\t\tif (hasClass('.b-aside-itemShowFilterWrap', 'd-none')) {\n\t\t\t\t\tlet leftSideBlock = document.querySelector('.left-side-block');\n\t\t\t\t\tshow(leftSideBlock);\n\t\t\t\t\ttoggleClass(leftSideBlock, 'fadeInLeft', true);\n\t\t\t\t\ttoggleClass(leftSideBlock, 'fadeOutLeft', false);\n\n\t\t\t\t\ttoggleClass('.right-side-block', 'col-lg-9 col-md-8', true);\n\n\t\t\t\t\ttoggleClass('.b-aside-itemToggleView', 'fa-arrow-right', false);\n\t\t\t\t\ttoggleClass('.b-aside-itemToggleView', 'fa-angle-double-left', true);\n\t\t\t\t\tshow('.b-aside-itemToggleView');\n\t\t\t\t}\n\t\t\t\tif (href != '#offers') {\n\t\t\t\t\tif (href == '#firms') {\n\t\t\t\t\t\tshow('.view-toggler');\n\t\t\t\t\t}\n\t\t\t\t\tif (href == '#firmsonmap') {\n\t\t\t\t\t\thide('.view-toggler');\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tshow('.view-toggler');\n\t\t\t\t}\t\t\n\t\t\t}\n\t\t});\n\n\t\taddEventDelegate(document, 'click', '.tum-closeCats-mobShow', this.readmoreInit);\n\n\t\taddEventDelegate(document, 'focusin focusout', '.searchInput', function (element, event) {\n\t\t\tif (event.type === 'focusin') {\n\t\t\t\telement.closest('.input-group.tum-filter-search').classList.add('focusin');\n\t\t\t} else if (event.type === 'focusout') {\n\t\t\t\telement.closest('.input-group.tum-filter-search').classList.remove('focusin');\n\t\t\t}\n\t\t});\n\n\t\taddEventDelegate(document, 'input', '.searchInput', element => {\n\t\t\ttoggleClass(element.closest('.tum-filter-search').querySelector('.b-aside-searchClear'), 'hide', !element.value.length)\n\t\t});\n\t\t\n\t\tproductSearch.readmoreInit();\n\t\t\n\t\tif (tumarket.category) {\n\t\t\tif (tumarket.category.filter.page > 1 && !tumarket.category.products.length) {\n\t\t\t\tsearchFilter.setURLParameter('page', 1);\n\t\t\t\tlocation.reload();\n\t\t\t}\n\n\t\t\tproductsList.init({\n\t\t\t\turl: '/categoryRequests/SearchProduct',\n\t\t\t\tcontainer: '.category-products-list',\n\t\t\t\tdataMapperCallback: (data) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tProducts: data?.ProductItems || [],\n\t\t\t\t\t\tProductsSecondary: data?.ProductItemsSecondary || []\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t\tgetUrlParamsCallback: (state, prepend) => {\n\t\t\t\t\tlet filter = filterCont.getFilter();\n\t\t\t\t\tfilter.page = prepend ? state.productsPage_up : state.productsPage;\n\t\t\t\t\treturn filter;\n\t\t\t\t},\n\t\t\t\tdataUpdateCallback: (state, data, prepend) => {\n\t\t\t\t\tif (state.productsPage > 1)\n\t\t\t\t\tsearchFilter.setURLParameter('page', prepend ? state.productsPage_up : state.productsPage);\n\t\t\t\t},\n\t\t\t\tproductsPage_up: tumarket.category.filter.page,\n\t\t\t\tproductsPage: tumarket.category.filter.page,\n\t\t\t\tproductsPageSize: tumarket.category.filter.pageSize,\n\t\t\t\ttotalProducts: tumarket.category.productCount_filtered,\n\t\t\t\tproducts: tumarket.category.products,\n\t\t\t\tproductsSecondary: [],\n\t\t\t\tbanners: tumarket.category.banners,\n\t\t\t\tminProductsLeftToShowBanner: tumarket.category.minProductsLeftToShowBanner,\n\t\t\t\tviewMode: tumarket.category.viewMode\n\t\t\t});\n\t\t}\n\t\telse if (tumarket.search) {\n\t\t\tif (tumarket.search.filter.page > 1 && !tumarket.search.products.length && !tumarket.search.productsSecondary.length) {\n\t\t\t\tsearchFilter.setURLParameter('page', 1);\n\t\t\t\tlocation.reload();\n\t\t\t}\n\n\t\t\tproductsList.init({\n\t\t\t\turl: '/Search/Search',\n\t\t\t\tcontainer: '.search-products-list',\n\t\t\t\tdataMapperCallback: (data) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tProducts: data?.items.ProductItems || [],\n\t\t\t\t\t\tProductsSecondary: data?.items.ProductItemsSecondary || []\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t\tgetUrlParamsCallback: (state, prepend) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tpage: prepend ? state.productsPage_up : state.productsPage,\n\t\t\t\t\t\ttype: tumSearch.options.type,\n\t\t\t\t\t\tsort: tumSearch.options.sort,\n\t\t\t\t\t\tpageDirection: tumSearch.options.pageDirection,\n\t\t\t\t\t\tactiveTab: \"offers\",\n\t\t\t\t\t\ttext: tumSearch.options.text\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tdataUpdateCallback: (state, data, prepend) => {\n\t\t\t\t\tif (state.productsPage > 1)\n\t\t\t\t\tsearchFilter.setURLParameter('page', prepend ? state.productsPage_up : state.productsPage);\n\t\t\t\t},\n\t\t\t\tproductsPage_up: tumarket.search.filter.page,\n\t\t\t\tproductsPage: tumarket.search.filter.page,\n\t\t\t\tproductsPageSize: tumarket.search.filter.pageSize,\n\t\t\t\ttotalProducts: tumarket.search.productCount_filtered,\n\t\t\t\tproducts: tumarket.search.products,\n\t\t\t\tproductsSecondary: tumarket.search.productsSecondary,\n\t\t\t\tbanners: tumarket.search.banners,\n\t\t\t\tctuCloud: tumarket.search.ctuCloud,\n\t\t\t\tminProductsLeftToShowBanner: tumarket.search.minProductsLeftToShowBanner,\n\t\t\t\tviewMode: tumarket.search.viewMode,\n\t\t\t\tadditional_items: tumarket.search._?.additional_items\n\t\t\t});\n\t\t}\n\t},\n\treadmoreInit: function () {\n\t\t$(\".tum-filter-closeCats-add\").readmore({\n\t\t\tmoreLink: ' Ещё',\n\t\t\tlessLink: ' Свернуть',\n\t\t\tspeed: 100,\n\t\t\tcollapsedHeight: 22\n\t\t});\n\t}\n};\n\nexport default productSearch;","import * as $ from \"jquery\";\nimport { hide, show } from \"../global/dom\";\n\nfunction initTabSpecificElements() {\n $(document).on('shown.bs.tab', '[data-toggle=tab]', () => updateTabSpecificElements());\n}\n\nfunction updateTabSpecificElements() {\n let tab = document.querySelector('a[data-toggle=\"tab\"].active').getAttribute('href');\n hide('[data-tab]');\n show(`[data-tab=\"${tab}\"]`);\n\n for (let elem of document.querySelectorAll('[data-tab-classes]')) {\n let data = JSON.parse(elem.dataset.tabClasses);\n let allClasses = Object.values(data).join(\" \").split(\" \");\n elem.classList.remove(...allClasses);\n elem.classList.add(...data[tab.replace('#', '')].split(\" \"));\n }\n}\n\nexport { updateTabSpecificElements, initTabSpecificElements };","import { setCookie } from \"../global/cookie\";\nimport { addEventDelegate } from \"../global/dom\";\n\naddEventDelegate(document, 'click', '.search-showAdditionalResults', () => {\n setCookie('tum_search_showAdditional', '1', 1);\n location.reload();\n});\n","/* global tumarket */\n\nimport \"./layout.js\";\nimport searchFilter from \"../filter/filter\";\nimport productSearch from \"../ctu/productSearch.js\";\nimport min from \"../search/miniature.js\";\nimport otherCitiesSearch from \"../search/OtherCitiesSearch.js\";\nimport { reviews } from \"../firm/reviews.js\";\nimport previews from \"../previews/previewsEmbed.js\";\nimport filter from \"../filter/script.js\";\n\nimport \"../search/additionalResults.js\";\n\n//css\nimport \"../../css/modules/tu.m/catalog/filter.css\";\nimport \"../../css/modules/tu.m/catalog/search.css\";\nimport \"../../css/modules/product/editModal.css\";\nimport \"../../css/modules/tu.m/catalog/filterReadMore.css\";\nimport \"../../css/modules/tu.m/catalog/searchTitleReadMore.css\";\nimport \"../../css/modules/ctuCloud.css\";\nimport { initTabSpecificElements, updateTabSpecificElements } from \"../util/tabSpecificElements.js\";\n\nwindow.addEventListener('load', () => {\n\tsearchFilter.init(tumarket.category.filter, { askForCoordinates: true });\n\n\tproductSearch.init({\n\t\tpage: tumarket.category.filter.page,\n\t\tctuID: tumarket.category.filter.ctuID,\n\t\tpageSize: tumarket.category.filter.pageSize,\n\t\tproductCount: tumarket.category.productCount,\n\t\tctuCount: 1,\n\t\tisSearchPage: false\n\t});\n\n\tmin.init({ IsAuth: tumarket.isAuthenticated });\n\n\totherCitiesSearch.init({\n\t\tfirstCity: tumarket.category.otherCities.firstCity\n\t});\n\n\treviews.init({\n\t\tcanAccessReview: true,\n\t\tisAuthenticated: tumarket.isAuthenticated\n\t});\n\n\tpreviews.init({\n\t\tcontainer: \"#previews\"\n\t});\n\n\tfilter.init({\n\t\tshowFilters: tumarket.category.showFilters\n\t});\n\n\tupdateTabSpecificElements();\n\tinitTabSpecificElements();\n});","/*!\n * jQuery UI Mouse 1.14.1\n * https://jqueryui.com\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license.\n * https://jquery.org/license\n */\n\n//>>label: Mouse\n//>>group: Widgets\n//>>description: Abstracts mouse-based interactions to assist in creating certain widgets.\n//>>docs: https://api.jqueryui.com/mouse/\n\n( function( factory ) {\n\t\"use strict\";\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\n\t\t// AMD. Register as an anonymous module.\n\t\tdefine( [\n\t\t\t\"jquery\",\n\t\t\t\"../version\",\n\t\t\t\"../widget\"\n\t\t], factory );\n\t} else {\n\n\t\t// Browser globals\n\t\tfactory( jQuery );\n\t}\n} )( function( $ ) {\n\"use strict\";\n\nvar mouseHandled = false;\n$( document ).on( \"mouseup\", function() {\n\tmouseHandled = false;\n} );\n\nreturn $.widget( \"ui.mouse\", {\n\tversion: \"1.14.1\",\n\toptions: {\n\t\tcancel: \"input, textarea, button, select, option\",\n\t\tdistance: 1,\n\t\tdelay: 0\n\t},\n\t_mouseInit: function() {\n\t\tvar that = this;\n\n\t\tthis.element\n\t\t\t.on( \"mousedown.\" + this.widgetName, function( event ) {\n\t\t\t\treturn that._mouseDown( event );\n\t\t\t} )\n\t\t\t.on( \"click.\" + this.widgetName, function( event ) {\n\t\t\t\tif ( true === $.data( event.target, that.widgetName + \".preventClickEvent\" ) ) {\n\t\t\t\t\t$.removeData( event.target, that.widgetName + \".preventClickEvent\" );\n\t\t\t\t\tevent.stopImmediatePropagation();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t} );\n\n\t\tthis.started = false;\n\t},\n\n\t// TODO: make sure destroying one instance of mouse doesn't mess with\n\t// other instances of mouse\n\t_mouseDestroy: function() {\n\t\tthis.element.off( \".\" + this.widgetName );\n\t\tif ( this._mouseMoveDelegate ) {\n\t\t\tthis.document\n\t\t\t\t.off( \"mousemove.\" + this.widgetName, this._mouseMoveDelegate )\n\t\t\t\t.off( \"mouseup.\" + this.widgetName, this._mouseUpDelegate );\n\t\t}\n\t},\n\n\t_mouseDown: function( event ) {\n\n\t\t// don't let more than one widget handle mouseStart\n\t\tif ( mouseHandled ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._mouseMoved = false;\n\n\t\t// We may have missed mouseup (out of window)\n\t\tif ( this._mouseStarted ) {\n\t\t\tthis._mouseUp( event );\n\t\t}\n\n\t\tthis._mouseDownEvent = event;\n\n\t\tvar that = this,\n\t\t\tbtnIsLeft = event.which === 1,\n\t\t\telIsCancel = typeof this.options.cancel === \"string\" ?\n\t\t\t\t$( event.target ).closest( this.options.cancel ).length :\n\t\t\t\tfalse;\n\t\tif ( !btnIsLeft || elIsCancel || !this._mouseCapture( event ) ) {\n\t\t\treturn true;\n\t\t}\n\n\t\tthis.mouseDelayMet = !this.options.delay;\n\t\tif ( !this.mouseDelayMet ) {\n\t\t\tthis._mouseDelayTimer = setTimeout( function() {\n\t\t\t\tthat.mouseDelayMet = true;\n\t\t\t}, this.options.delay );\n\t\t}\n\n\t\tif ( this._mouseDistanceMet( event ) && this._mouseDelayMet( event ) ) {\n\t\t\tthis._mouseStarted = ( this._mouseStart( event ) !== false );\n\t\t\tif ( !this._mouseStarted ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\t// Click event may never have fired (Gecko & Opera)\n\t\tif ( true === $.data( event.target, this.widgetName + \".preventClickEvent\" ) ) {\n\t\t\t$.removeData( event.target, this.widgetName + \".preventClickEvent\" );\n\t\t}\n\n\t\t// These delegates are required to keep context\n\t\tthis._mouseMoveDelegate = function( event ) {\n\t\t\treturn that._mouseMove( event );\n\t\t};\n\t\tthis._mouseUpDelegate = function( event ) {\n\t\t\treturn that._mouseUp( event );\n\t\t};\n\n\t\tthis.document\n\t\t\t.on( \"mousemove.\" + this.widgetName, this._mouseMoveDelegate )\n\t\t\t.on( \"mouseup.\" + this.widgetName, this._mouseUpDelegate );\n\n\t\tevent.preventDefault();\n\n\t\tmouseHandled = true;\n\t\treturn true;\n\t},\n\n\t_mouseMove: function( event ) {\n\n\t\t// Only check for mouseups outside the document if you've moved inside the document\n\t\t// at least once.\n\t\tif ( this._mouseMoved && !event.which ) {\n\n\t\t\t// Support: Safari <=8 - 9\n\t\t\t// Safari sets which to 0 if you press any of the following keys\n\t\t\t// during a drag (#14461)\n\t\t\tif ( event.originalEvent.altKey || event.originalEvent.ctrlKey ||\n\t\t\t\t\tevent.originalEvent.metaKey || event.originalEvent.shiftKey ) {\n\t\t\t\tthis.ignoreMissingWhich = true;\n\t\t\t} else if ( !this.ignoreMissingWhich ) {\n\t\t\t\treturn this._mouseUp( event );\n\t\t\t}\n\t\t}\n\n\t\tif ( event.which || event.button ) {\n\t\t\tthis._mouseMoved = true;\n\t\t}\n\n\t\tif ( this._mouseStarted ) {\n\t\t\tthis._mouseDrag( event );\n\t\t\treturn event.preventDefault();\n\t\t}\n\n\t\tif ( this._mouseDistanceMet( event ) && this._mouseDelayMet( event ) ) {\n\t\t\tthis._mouseStarted =\n\t\t\t\t( this._mouseStart( this._mouseDownEvent, event ) !== false );\n\t\t\tif ( this._mouseStarted ) {\n\t\t\t\tthis._mouseDrag( event );\n\t\t\t} else {\n\t\t\t\tthis._mouseUp( event );\n\t\t\t}\n\t\t}\n\n\t\treturn !this._mouseStarted;\n\t},\n\n\t_mouseUp: function( event ) {\n\t\tthis.document\n\t\t\t.off( \"mousemove.\" + this.widgetName, this._mouseMoveDelegate )\n\t\t\t.off( \"mouseup.\" + this.widgetName, this._mouseUpDelegate );\n\n\t\tif ( this._mouseStarted ) {\n\t\t\tthis._mouseStarted = false;\n\n\t\t\tif ( event.target === this._mouseDownEvent.target ) {\n\t\t\t\t$.data( event.target, this.widgetName + \".preventClickEvent\", true );\n\t\t\t}\n\n\t\t\tthis._mouseStop( event );\n\t\t}\n\n\t\tif ( this._mouseDelayTimer ) {\n\t\t\tclearTimeout( this._mouseDelayTimer );\n\t\t\tdelete this._mouseDelayTimer;\n\t\t}\n\n\t\tthis.ignoreMissingWhich = false;\n\t\tmouseHandled = false;\n\t\tevent.preventDefault();\n\t},\n\n\t_mouseDistanceMet: function( event ) {\n\t\treturn ( Math.max(\n\t\t\t\tMath.abs( this._mouseDownEvent.pageX - event.pageX ),\n\t\t\t\tMath.abs( this._mouseDownEvent.pageY - event.pageY )\n\t\t\t) >= this.options.distance\n\t\t);\n\t},\n\n\t_mouseDelayMet: function( /* event */ ) {\n\t\treturn this.mouseDelayMet;\n\t},\n\n\t// These are placeholder methods, to be overriden by extending plugin\n\t_mouseStart: function( /* event */ ) {},\n\t_mouseDrag: function( /* event */ ) {},\n\t_mouseStop: function( /* event */ ) {},\n\t_mouseCapture: function( /* event */ ) {\n\t\treturn true;\n\t}\n} );\n\n} );\n"],"names":["tumSearch","text","type","points","page","firmPage","sort","firstInitCall","isFirstLoad","pageDirection","activeTab","editLimitationsMsg","isMobSearch","productSearch","options","pageSize","ctuID","ctuCount","isSearchPage","init","Object","assign","document","element","e","preventDefault","href","leftSideBlock","querySelector","this","readmoreInit","event","closest","classList","add","remove","value","length","tumarket","category","filter","products","setURLParameter","location","reload","productsList","url","container","dataMapperCallback","data","Products","ProductItems","ProductsSecondary","ProductItemsSecondary","getUrlParamsCallback","state","prepend","filterCont","getFilter","productsPage_up","productsPage","dataUpdateCallback","productsPageSize","totalProducts","productCount_filtered","productsSecondary","banners","minProductsLeftToShowBanner","viewMode","search","items","ctuCloud","additional_items","_","readmore","moreLink","lessLink","speed","collapsedHeight","updateTabSpecificElements","tab","getAttribute","elem","querySelectorAll","JSON","parse","dataset","tabClasses","allClasses","values","join","split","replace","window","addEventListener","askForCoordinates","productCount","IsAuth","isAuthenticated","firstCity","otherCities","reviews","canAccessReview","showFilters","on","$","mouseHandled","widget","version","cancel","distance","delay","_mouseInit","that","widgetName","_mouseDown","target","removeData","stopImmediatePropagation","started","_mouseDestroy","off","_mouseMoveDelegate","_mouseUpDelegate","_mouseMoved","_mouseStarted","_mouseUp","_mouseDownEvent","btnIsLeft","which","elIsCancel","_mouseCapture","mouseDelayMet","_mouseDelayTimer","setTimeout","_mouseDistanceMet","_mouseDelayMet","_mouseStart","_mouseMove","originalEvent","altKey","ctrlKey","metaKey","shiftKey","ignoreMissingWhich","button","_mouseDrag","_mouseStop","clearTimeout","Math","max","abs","pageX","pageY"],"sourceRoot":""}