{"version":3,"file":"productsListings.min.js","names":["window","onpopstate","console","log","location","reload","addCartScript","$","length","prev","addClass","mobileFilters","click","e","preventDefault","animate","left","mobileAdjustments","width","prepend","after","remove","MiddysProductListing","props","prodCodeSize","content","mouseover","size","Math","round","outerWidth","leftPos","attr","parents","hasClass","append","mouseout","t","target","parent","is","find","_AntiForgeryToken","id","ajax","url","type","dataType","beforeSend","xhr","setRequestHeader","success","data","complete","html","responseText","error","getFormatedPriceValue","number","Intl","NumberFormat","style","currency","format","version","state","APIEndPoint","origin","key","setKey","React","useState","Date","now","useEffect","reloadMiddysProductListing","apiCallToGetCategoryResponse","queryBrand","queryParams","URLSearchParams","search","get","querySearch","p","pageNo","mostreleventfilter","sr","mostreleventURL","listingProductData","listingMetaData","listingFacetData","productRangeURL","searchPageURL","fpGroupPageURL","brandName","categoryName1","categoryName2","categoryName3","fpGroupName","filterURLCategoryCount","filterURLCategoryCountURL","filterURLBrandCount","totalResults","pageSize","filterBrandValue","URL","pathname","substring","URLPart","split","CameFromMegaMenu","CameFromMegaMenuBrand","filterURLCategory1","filterURLCategory2","filterURLCategory3","filterURLOutOfStock","brandlandingpage","secondAPI","apiCallToGetFeaturedProductsGroupResonse","fetch","method","headers","RequestVerificationToken","val","then","result","json","hasOwnProperty","setErrorCategory1","setShowLoader","productTitleElement","document","getElementById","featureProductsDescription","textContent","name","description","innerHTML","push","toLowerCase","CameFromMegaMenuCate","setCameFromMegaMenuCate","queryCat1","queryCat2","queryCat3","queryExcludeOutOfStock","href","perPage","pr","includes","filterMostRelevent","setFilterMostRelevent","filterCategory1","setFilterCategory1","errorCategory1","filterCategory2","setFilterCategory2","filterCategory3","setFilterCategory3","filterShowing","setFilterShowing","filterBrand","setFilterBrand","errorBrand","setErrorBrand","currentPage","setCurrentPage","brandSelectedCount","setBrandSelectedCount","categorySelectedCount","setcategorySelectedCount","categorySelectedCountURL","setcategorySelectedCountURL","filterFPGroup","setFilterFPGroup","filterExcludeOutOfStock","setFilterExcludeOutOfStock","responseData","setResponseData","showLoader","setError","isLoaded","setIsLoaded","bannerImages","setBannerImages","warningMessage","setWarningMessage","warningType","setWarningType","tempValue","setTempValue","tempIndex","setTempIndex","softErrorArray","setSoftErrorArray","cancelIndex","setCancelIndex","oldQTY","setOldQTY","qtyUpdate","setQtyUpdate","qtypId","setQtypId","qtyIndex","setQtyIndex","qtyRefresh","setQtyRefresh","getProductName","pname","re1","replace","re2","re3","showLoginPopup","fadeIn","show","isLoggedIn","loginToken","getLogin","hasJobListPermission","jlPermissionToken","getJobListPermission","addToJobListScript","myobj","getElementsByClassName","i","script","createElement","setAttribute","src","body","appendChild","Categories","setCategories","Brands","setBrands","loadScript","setLoadScript","payload","setPayload","secondAPICall","filterState","filterOutOfStock","updatedPayload","Acate1","Acate2","Acate3","sort","a","b","map","Acategory1","ci","subCategories","Acategory2","ci2","cate1","i1","cate2","i2","Acategory3","ci3","cate3","indexOf","ABrands","brand","b1","Bbrand","pageChangeURL","catePageChangeURL","tempPageChangeURL","pageChangeBrandURL","pageChangeCat1URL","pageChangeCat2URL","pageChangeCat3URL","pageChangeExcludeOutOfStockURL","productsDataResponseCode","conditionsAPI","pageAPI","sizeAPI","sortAPI","stockAPI","querySearchAPI","apiCallToGetProducts","qid","relevantURL","stateCondition","arr","arrURL","br1","arrURLcat1","arrURLcat2","arrURLcat3","i3","params","URLParams","history","pushState","toString","querySearchAPIURL","encodeURIComponent","concat","startsWith","utmParams","forEach","value","\"Content-Type\"","results","status","StatusCode","ErrorMessage","errors","Object","keys","currentQty","product_default_quantity","raw","parseInt","currentPrice","product_price","parseFloat","facets","category_name_1","category_name_2","category_name_3","brand_name","brand_name_data","c1","category_name_1_data","selected","c2","category_name_2_data","c3","category_name_3_data","getExcludeOutOfStock","handleExcludeOutOfStockSelect","event","checked","class","onChange","for","getCategories","openFilter","display","emptyStyle","firstLevelStyle","height","thirdLevelStyle","handlecategory1Select","catename","cateArray2","cateArray3","cateArr","filtered2","filter","filtered3","category","handlecategory2Select","cateArray","filtered","handlecategory3Select","className","ci1","cn1","count","disabled","htmlFor","cn2","\"data-level\"","cn3","handlePlusMinusClick","index","newFlag","assign","handleWorningPopuuClick","hide","tem","timeout","setTimeout","clearTimeout","handleCancelPopupClick","handleInputType","JobListProductId","re","test","random","handleInputOnBlur","getBlockItem","bannerImage","RedirectionURL","IsOpenInNewTab","onClick","alt","DesktopImage","TabImage","MobileImage","getDividedListingData","listingProductDataArray","product","pIndex","localStorage","setItem","\"data-productcode\"","product_pronto_code","\"data-productqty\"","\"data-productprice\"","product_display_name","product_images","product_name","loading","product_attr_middys_code","Fragment","product_attr_unit_of_measure","inventory","product_stock","stock_status_msg","toLocaleString","minimumFractionDigits","maximumFractionDigits","product_uom_plural","stock_img_ind","min","onBlur","assignPosition","positionType","getListingData","positions","Desktop","Array","fill","Tab","Mobile","slicedData","sliceData","openDivClass","dataArray","slices","pos","slice","getPageUrlForBrand","brandArr","getBrands","handleBrandSelect","bd","handleResetFilterClick","getMostRelevant","handleMostReleventChangeSelect2","handleMostReleventChange","select2","minimumResultsForSearch","off","on","getShowing","handleShowingChangeSelect2","handleShowingChange","meta","pageData","page","total_results","showHTML","querySelector","stopPropagation","getTotalResult","Pagination","onPageChange","totalCount","siblingCount","paginationRange","usePagination","onNext","onPrevious","lastPage","pointerEvents","pageNumber","range","start","end","from","_","idx","useMemo","totalPageCount","ceil","totalPageNumbers","leftSiblingIndex","max","rightSiblingIndex","shouldShowLeftDots","shouldShowRightDots","firstPageIndex","lastPageIndex","sCount","rCount","leftItemCount","leftRange","endRange","rightItemCount","rightRange","middleRange","middleRangeResponsive","Xt","scrollTo","jsVersion","URL1","URLPart1","getCookie","cname","decodedCookie","decodeURIComponent","cookie","ca","c","charAt","selectedStateData","dataState","ReactDOM","render"],"sources":["productsListings.js"],"sourcesContent":["'use strict';\r\nwindow.onpopstate = function (e) {\r\n console.log(\"Page reload\");\r\n location.reload(true);\r\n};\r\nfunction addCartScript() {\r\n if ($('.product-item').length > 0) {\r\n $('.product-item .cart-wrap').prev().addClass('foot-space');\r\n }\r\n}\r\nfunction mobileFilters() {\r\n $('.filter-view-toggle').click(function (e) {\r\n e.preventDefault();\r\n $('.product-filters').animate({\r\n left: '0'\r\n })\r\n })\r\n\r\n $('.close-filter').click(function (e) {\r\n e.preventDefault();\r\n $('.product-filters').animate({\r\n left: '-100%'\r\n })\r\n })\r\n}\r\n\r\nfunction mobileAdjustments() {\r\n if ($(window).width() < 768) {\r\n if ($('.product-group .sort-wrap .filter-view-toggle').length < 1) {\r\n $('.product-group .sort-wrap').prepend('Filters');\r\n $('.sidebar-head label').after('');\r\n mobileFilters();\r\n }\r\n }\r\n else {\r\n $('.product-group .sort-wrap .filter-view-toggle').remove();\r\n $('.sidebar-head .close-filter').remove();\r\n }\r\n}\r\n\r\nconst MiddysProductListing = (props) => {\r\n const {\r\n version,\r\n state\r\n } = props;\r\n\r\n var APIEndPoint = window.location.origin;\r\n\r\n const [key, setKey] = React.useState(Date.now()); // Initialize with current timestamp\r\n\r\n React.useEffect(() => {\r\n window.reloadMiddysProductListing = () => {\r\n apiCallToGetCategoryResponse()\r\n setKey(Date.now());\r\n };\r\n }, []);\r\n\r\n function prodCodeSize() {\r\n var content = 'Middy’s Part Number (Product Code)';\r\n $('.prod-code').mouseover(function(e){\r\n var size = Math.round($(this).outerWidth());\r\n var leftPos = ((size - 230) / 2)+'px';\r\n $(this).attr('data-size', size+'px');\r\n if (!$(this).parents().hasClass('cart-collection-block')) {\r\n $(this).append(''+content+'')\r\n }\r\n else if ($(this).parents().hasClass('order-detail-block')) {\r\n $(this).append(''+content+'')\r\n }\r\n \r\n })\r\n \r\n $('.prod-code').mouseout(function(e){\r\n var t = e.target;\r\n if (!$(t).parent().is('.prod-code')) {\r\n $(this).find('.prod-tooltip').remove();\r\n }\r\n })\r\n \r\n }\r\n\r\n /*URL variables*/\r\n var queryBrand = '';\r\n const queryParams = new URLSearchParams(window.location.search);\r\n queryBrand = queryParams.get('brand');\r\n var querySearch = queryParams.get('s');\r\n //page\r\n var p = 1;\r\n var pageNo = queryParams.get('page');\r\n if (pageNo !== '' && pageNo !== null) {\r\n p = pageNo;\r\n }\r\n\r\n //mostrelevent filter\r\n var mostreleventfilter = ' ';\r\n var sr = 'mr';\r\n var mostreleventURL = queryParams.get('sort');\r\n if (mostreleventURL !== '' && mostreleventURL !== null) {\r\n sr = mostreleventURL;\r\n }\r\n if (sr == 'mr' || sr == 'Mr' || sr == 'MR') {\r\n mostreleventfilter = ' ';\r\n } else if (sr == 'product-asc') {\r\n mostreleventfilter = '{\"product_name\":\"asc\"}';\r\n } else if (sr == 'product-desc') {\r\n mostreleventfilter = '{\"product_name\":\"desc\"}';\r\n } else if (sr == 'brand-asc') {\r\n mostreleventfilter = '{\"brand_name\":\"asc\"}';\r\n } else if (sr == 'brand-desc') {\r\n mostreleventfilter = '{\"brand_name\":\"desc\"}';\r\n }\r\n //paths\r\n var listingPageURL = \"c\";\r\n var productRangeURL = \"product-range\";\r\n var searchPageURL = \"search\";\r\n var productDetailsPageURL = \"/p/\";\r\n var fpGroupPageURL = \"featured-products\";\r\n //global variables\r\n var brandName = '';\r\n var categoryName1 = '';\r\n var categoryName2 = '';\r\n var categoryName3 = '';\r\n var fpGroupName = '';\r\n var listingProductData;\r\n var listingMetaData;\r\n var listingFacetData;\r\n var filterURLCategoryCount = 0;\r\n var filterURLCategoryCountURL = 0;\r\n var filterURLBrandCount = 0;\r\n var totalResults = 0;\r\n var pageSize = 24;\r\n var filterBrandValue = [];\r\n //URL \r\n var URL = window.location.pathname;\r\n URL = URL.substring(1);\r\n URL = URL.substring(0, URL.length)\r\n var URLPart = URL.split('/');\r\n var CameFromMegaMenu = [];\r\n var CameFromMegaMenuBrand = [];\r\n var filterURLCategory1 = [];\r\n var filterURLCategory2 = [];\r\n var filterURLCategory3 = [];\r\n var filterURLFPGroup = '';\r\n var filterURLOutOfStock = '';\r\n var brandlandingpage = false;\r\n var secondAPI = false;\r\n\r\n const apiCallToGetFeaturedProductsGroupResonse = async () => {\r\n fetch(window.location.origin + '/api/group?number=' + fpGroupName, {\r\n method: 'GET',\r\n headers: {\r\n \"RequestVerificationToken\": $(\"#checkloginApi [name='__RequestVerificationToken']\").val()\r\n },\r\n }).then(result => result.json())\r\n .then(data => {\r\n _AntiForgeryToken(\"#checkloginApi\");\r\n if (data) {\r\n if (data.hasOwnProperty('StatusCode')) {\r\n setErrorCategory1(true);\r\n setShowLoader(false);\r\n } else {\r\n const productTitleElement = document.getElementById('product-list-title');\r\n const featureProductsDescription = document.getElementById('featured-products-description');\r\n if (productTitleElement) {\r\n productTitleElement.textContent = data.name;\r\n }\r\n\r\n if (featureProductsDescription && data.description) {\r\n featureProductsDescription.innerHTML = data.description\r\n }\r\n }\r\n }\r\n }, (error) => {\r\n _AntiForgeryToken(\"#checkloginApi\");\r\n setErrorCategory1(true);\r\n setShowLoader(false);\r\n })\r\n }\r\n\r\n if (URLPart.length > 0) {\r\n if (URLPart[0] === listingPageURL) {\r\n if (URLPart[1] != undefined && URLPart[1] != 'undefined' && URLPart[1] != '') {\r\n filterURLCategory1.push(URLPart[1]);\r\n CameFromMegaMenu.push(\"L1\" + URLPart[1]);\r\n filterURLCategoryCount = 1;\r\n brandlandingpage = false;\r\n }\r\n if (URLPart[2] != undefined && URLPart[2] != 'undefined' && URLPart[2] != '') {\r\n filterURLCategory2.push(URLPart[2]);\r\n CameFromMegaMenu.push(\"L2\" + URLPart[2]);\r\n filterURLCategoryCount = 2;\r\n brandlandingpage = false;\r\n }\r\n } else if (URLPart[0].toLowerCase() === fpGroupPageURL) {\r\n if (URLPart[1]) {\r\n fpGroupName = URLPart[1].toLowerCase();\r\n apiCallToGetFeaturedProductsGroupResonse(); \r\n }\r\n }\r\n }\r\n\r\n if (queryBrand != undefined && queryBrand != 'undefined' && queryBrand != '') {\r\n filterBrandValue = queryBrand.split(\",\");\r\n CameFromMegaMenuBrand = filterBrandValue[0];\r\n filterURLBrandCount = filterBrandValue.length;\r\n brandlandingpage = true;\r\n }\r\n\r\n const [CameFromMegaMenuCate, setCameFromMegaMenuCate] = React.useState(CameFromMegaMenu);\r\n\r\n var queryCat1 = queryParams.get('cat1');\r\n if (queryCat1 != undefined && queryCat1 != 'undefined' && queryCat1 != '') {\r\n filterURLCategory1 = queryCat1.split(\",\");\r\n filterURLCategoryCountURL = 1;\r\n }\r\n\r\n var queryCat2 = queryParams.get('cat2');\r\n if (queryCat2 != undefined && queryCat2 != 'undefined' && queryCat2 != '') {\r\n filterURLCategory2 = queryCat2.split(\",\");\r\n }\r\n\r\n var queryCat3 = queryParams.get('cat3');\r\n if (queryCat3 != undefined && queryCat3 != 'undefined' && queryCat3 != '') {\r\n filterURLCategory3 = queryCat3.split(\",\");\r\n }\r\n\r\n var queryExcludeOutOfStock = queryParams.get('stock'); //exclude out of stock\r\n if (queryExcludeOutOfStock != undefined && queryExcludeOutOfStock != 'undefined' && queryExcludeOutOfStock != '') {\r\n filterURLOutOfStock = 'true';\r\n }\r\n else {\r\n filterURLOutOfStock = '';\r\n }\r\n\r\n\r\n if (URLPart.length == 1 && URLPart[0] == listingPageURL && (queryBrand == '' || queryBrand == null)) {\r\n window.location.href = window.location.origin + '/' + productRangeURL;\r\n }\r\n\r\n //if (URLPart.length > 0 && (URLPart[0] == productRangeURL || URLPart[0] == searchPageURL) && secondAPI == false) {\r\n /*if (URLPart.length > 0 && (URLPart[0] == productRangeURL) && secondAPI == false) {\r\n //setSecondAPICall(true);\r\n secondAPI = true;\r\n }*/\r\n\r\n if (URLPart && URLPart.length > 14) {\r\n if (URLPart[14] == productRangeURL) {\r\n // setSecondAPICall(true);\r\n secondAPI = true;\r\n }\r\n }\r\n\r\n //showing per page filter \r\n var perPage = 24;\r\n var pr = queryParams.get('items');\r\n var pageArray = ['24', '48', '96'];\r\n\r\n if (pr !== '' && pr !== null && pr !== undefined && pr !== 0) {\r\n if (pageArray.includes(pr)) {\r\n if (pr == '24' || pr == '48' || pr == '96') {\r\n perPage = pr;\r\n }\r\n }\r\n }\r\n\r\n /*filter*/\r\n const [filterMostRelevent, setFilterMostRelevent] = React.useState(mostreleventfilter);\r\n const [filterCategory1, setFilterCategory1] = React.useState(filterURLCategory1);\r\n const [errorCategory1, setErrorCategory1] = React.useState(false);\r\n\r\n const [filterCategory2, setFilterCategory2] = React.useState(filterURLCategory2);\r\n const [filterCategory3, setFilterCategory3] = React.useState(filterURLCategory3);\r\n const [filterShowing, setFilterShowing] = React.useState(perPage);\r\n const [filterBrand, setFilterBrand] = React.useState(filterBrandValue);\r\n const [errorBrand, setErrorBrand] = React.useState(false);\r\n const [currentPage, setCurrentPage] = React.useState(p);\r\n const [brandSelectedCount, setBrandSelectedCount] = React.useState(filterURLBrandCount);\r\n\r\n const [categorySelectedCount, setcategorySelectedCount] = React.useState(filterURLCategoryCount);\r\n const [categorySelectedCountURL, setcategorySelectedCountURL] = React.useState(filterURLCategoryCountURL);\r\n\r\n const [filterFPGroup, setFilterFPGroup] = React.useState(filterURLFPGroup);\r\n const [filterExcludeOutOfStock, setFilterExcludeOutOfStock] = React.useState(filterURLOutOfStock);\r\n\r\n // response\r\n const [responseData, setResponseData] = React.useState(null);\r\n\r\n // loader\r\n const [showLoader, setShowLoader] = React.useState(false);\r\n //no product data message\r\n const [error, setError] = React.useState(null);\r\n const [isLoaded, setIsLoaded] = React.useState(false);\r\n\r\n //bannerImage\r\n const [bannerImages, setBannerImages] = React.useState(null);\r\n\r\n //soft and hard limit\r\n\r\n const [warningMessage, setWarningMessage] = React.useState('');\r\n const [warningType, setWarningType] = React.useState('');\r\n const [tempValue, setTempValue] = React.useState(null);\r\n const [tempIndex, setTempIndex] = React.useState(null);\r\n const [softErrorArray, setSoftErrorArray] = React.useState([]);\r\n const [cancelIndex, setCancelIndex] = React.useState('');\r\n const [oldQTY, setOldQTY] = React.useState('');\r\n const [qtyUpdate, setQtyUpdate] = React.useState('');\r\n const [qtypId, setQtypId] = React.useState('');\r\n const [qtyIndex, setQtyIndex] = React.useState('');\r\n const [qtyRefresh, setQtyRefresh] = React.useState('');\r\n\r\n //Global functions\r\n function _AntiForgeryToken(id) {\r\n $.ajax({\r\n url: \"/login/RefreshToken\",\r\n type: \"GET\",\r\n dataType: \"json\",\r\n beforeSend: function (xhr) {\r\n xhr.setRequestHeader('Content-Type', 'application/json');\r\n },\r\n success: function (data) {\r\n //console.log(data);\r\n },\r\n complete: function (data) {\r\n //console.log(\"Hello\", data);\r\n $(id).html(data.responseText);\r\n // Set our complete callback, \r\n },\r\n error: function (e) {\r\n //alert(\"error\");\r\n }\r\n });\r\n }\r\n const getProductName = (pname) => {\r\n var name = '';\r\n let re1 = /[^\\w\\d]/ig;\r\n name = pname.replace(re1, '-');\r\n\r\n let re2 = /[ ]/;\r\n name = name.replace(re2, '-');\r\n\r\n let re3 = /-+/g;\r\n name = name.replace(re3, '-');\r\n return name.toLowerCase();\r\n\r\n }\r\n function getURICamelCaseName(uriName) {\r\n return uriName.split('-')\r\n .map(word => word.charAt(0).toUpperCase() + word.slice(1))\r\n .join(' ');\r\n }\r\n function getFormatedPriceValue(number) {\r\n return new Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD' }).format(number)\r\n }\r\n const showLoginPopup = () => {\r\n $(\".login-popup\").fadeIn();\r\n $(\".login\").fadeIn();\r\n $(\".login-popup .dialog .close-dialog\").show();\r\n }\r\n const isLoggedIn = () => {\r\n var loginToken = getLogin() == 'True' ? 'Login' : null;\r\n if (loginToken == null || loginToken == '' || loginToken == undefined) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n const hasJobListPermission = () => {\r\n var jlPermissionToken = getJobListPermission() == 'True' ? 'Permission' : null;\r\n if (jlPermissionToken == null || jlPermissionToken == '' || jlPermissionToken == undefined) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n const addToJobListScript = () => {\r\n\r\n var myobj = document.getElementsByClassName(\"addToJobListScript\");\r\n for (var i = 0; i < myobj.length; i++) {\r\n myobj[i].remove();\r\n }\r\n const script = document.createElement(\"script\");\r\n script.setAttribute(\"class\", \"addToJobListScript\");\r\n script.src = \"/js/scripts/minified/AddtoJoblist.min.js?v=\"+version;\r\n document.body.appendChild(script);\r\n }\r\n\r\n //Testcategory\r\n const [Categories, setCategories] = React.useState([]);\r\n const [Brands, setBrands] = React.useState([]);\r\n const [loadScript, setLoadScript] = React.useState(false);\r\n //const [secondAPICall, setSecondAPICall] = React.useState(secondAPI);\r\n const [payload, setPayload] = React.useState({\r\n \"secondAPICall\": secondAPI,\r\n \"filterState\":state !== '' ? state : '',\r\n \"currentPage\": p,\r\n \"filterShowing\": perPage,\r\n \"filterCategory1\": [],\r\n \"filterCategory2\": [],\r\n \"filterCategory3\": [],\r\n \"filterMostRelevent\": mostreleventfilter,\r\n \"filterBrand\": [],\r\n \"filterFPGroup\": fpGroupName,\r\n \"filterOutOfStock\": ''\r\n });\r\n\r\n React.useEffect(() => {\r\n if (loadScript === true) {\r\n addToJobListScript();\r\n }\r\n }, [loadScript])\r\n\r\n const apiCallToGetCategoryResponse = () => {\r\n let updatedPayload = { ...payload };\r\n var Acate1 = [];\r\n var Acate2 = [];\r\n var Acate3 = [];\r\n fetch(window.location.origin + '/api/middys?name=categories', {\r\n method: 'GET',\r\n headers: {\r\n \"RequestVerificationToken\": $(\"#checkloginApi [name='__RequestVerificationToken']\").val()\r\n },\r\n })\r\n .then(result => result.json())\r\n .then(data => {\r\n _AntiForgeryToken(\"#checkloginApi\");\r\n if (data) {\r\n if (data.hasOwnProperty('StatusCode')) {\r\n setErrorCategory1(true);\r\n setShowLoader(false);\r\n } else {\r\n //sorting\r\n if (data.length > 0) {\r\n data.sort((a, b) => (a.name > b.name) ? 1 : ((b.name > a.name) ? -1 : 0))\r\n data.map((Acategory1, ci) => {\r\n if (Acategory1.hasOwnProperty(\"subCategories\")) {\r\n Acategory1.subCategories.sort((a, b) => (a.name > b.name) ? 1 : ((b.name > a.name) ? -1 : 0))\r\n Acategory1.subCategories.map((Acategory2, ci2) => {\r\n if (Acategory2.hasOwnProperty(\"subCategories\")) {\r\n Acategory2.subCategories.sort((a, b) => (a.name > b.name) ? 1 : ((b.name > a.name) ? -1 : 0))\r\n }\r\n })\r\n }\r\n })\r\n }\r\n setCategories(data);\r\n if (filterCategory1.length > 0) {\r\n data.length > 0 ?\r\n data.map((Acategory1, ci) => {\r\n filterCategory1.map((cate1, i1) => {\r\n if (getProductName(Acategory1.name) == cate1) {\r\n Acate1.push(Acategory1.name);\r\n }\r\n });\r\n if (Acate1.length > 0) {\r\n if (filterCategory2.length > 0) {\r\n if (Acategory1.hasOwnProperty(\"subCategories\")) {\r\n Acategory1.subCategories.map((Acategory2, ci2) => {\r\n filterCategory2.map((cate2, i2) => {\r\n if (getProductName(Acategory2.name) == cate2) {\r\n Acate2.push(Acategory2.name);\r\n }\r\n });\r\n if (filterCategory3.length > 0) {\r\n if (Acategory2.hasOwnProperty(\"subCategories\")) {\r\n Acategory2.subCategories.map((Acategory3, ci3) => {\r\n filterCategory3.map((cate3, i2) => {\r\n if (getProductName(Acategory3.name) == cate3) {\r\n if (Acate3.indexOf(Acategory3.name) === -1) {\r\n Acate3.push(Acategory3.name);\r\n }\r\n }\r\n });\r\n })\r\n }\r\n }\r\n })\r\n }\r\n }\r\n }\r\n })\r\n : null\r\n\r\n if (Acate1.length > 0) {\r\n setFilterCategory1(Acate1);\r\n updatedPayload = { ...updatedPayload, filterCategory1: Acate1 };\r\n //console.log(\"updatedPayload=======start ==========\", updatedPayload);\r\n if (Acate1.length === 1 && Acate2.length > 0) {\r\n setFilterCategory2(Acate2);\r\n updatedPayload = {\r\n ...updatedPayload,\r\n filterCategory2: Acate2\r\n };\r\n }\r\n\r\n if (Acate1.length === 1 && Acate2.length >= 1 && Acate3.length > 0) {\r\n setFilterCategory3(Acate3);\r\n updatedPayload = {\r\n ...updatedPayload,\r\n filterCategory3: Acate3\r\n };\r\n }\r\n\r\n\r\n //console.log(\"updatedPayload=======middle ==========\", updatedPayload);\r\n\r\n if (Acate1.length > 0\r\n || ((Acate1.length === 1 && Acate2.length > 0)\r\n || (Acate1.length === 1 && Acate2.length >= 1 && Acate3.length > 0))\r\n ) {\r\n //console.log(\"updatedPayload=======end ==========\", updatedPayload);\r\n //setPayload(updatedPayload);\r\n //setSecondAPICall(true);\r\n updatedPayload = {\r\n ...updatedPayload,\r\n secondAPICall:true\r\n };\r\n } else {\r\n setErrorCategory1(true);\r\n setShowLoader(false);\r\n }\r\n }\r\n }\r\n if (filterURLBrandCount > 0) {\r\n var ABrands = [];\r\n fetch(window.location.origin + '/api/middys?name=brands', {\r\n method: 'GET',\r\n headers: {\r\n \"RequestVerificationToken\": $(\"#checkloginApi [name='__RequestVerificationToken']\").val()\r\n },\r\n })\r\n .then(result => result.json())\r\n .then(data => {\r\n if (data) {\r\n if (data.hasOwnProperty('StatusCode')) {\r\n setErrorBrand(true);\r\n setShowLoader(false);\r\n } else {\r\n setBrands(data);\r\n if (filterBrand.length > 0) {\r\n data.length > 0 ?\r\n filterBrand.map((brand, b1) => {\r\n data.map((Bbrand, ci) => {\r\n if (getProductName(Bbrand.name) == brand) {\r\n ABrands.push(Bbrand.name);\r\n }\r\n });\r\n })\r\n : null\r\n if (ABrands.length > 0) {\r\n setFilterBrand(ABrands);\r\n updatedPayload = { ...updatedPayload, filterBrand: ABrands,secondAPICall:true };\r\n setPayload(updatedPayload);\r\n //console.log(\"=========updatedPayload= 1========\", updatedPayload);\r\n //setSecondAPICall(true);\r\n } else {\r\n setFilterBrand([]);\r\n updatedPayload = { ...updatedPayload, filterBrand: [] };\r\n setPayload(updatedPayload);\r\n setErrorBrand(true);\r\n setShowLoader(false);\r\n }\r\n }\r\n }\r\n }\r\n }, (error) => {\r\n setErrorBrand(true);\r\n setShowLoader(false);\r\n })\r\n }else{\r\n if (Acate1.length > 0\r\n || ((Acate1.length === 1 && Acate2.length > 0)\r\n || (Acate1.length === 1 && Acate2.length >= 1 && Acate3.length > 0))\r\n ) {\r\n //console.log(\"updatedPayload=======end 2 ==========\", updatedPayload);\r\n setPayload(updatedPayload);\r\n //setSecondAPICall(true);\r\n } \r\n }\r\n if(filterCategory1.length == 0 && filterURLBrandCount==0){\r\n updatedPayload = { ...updatedPayload, secondAPICall:true };\r\n\r\n setPayload(updatedPayload);\r\n }\r\n //console.log(\"updatedPayload=======out ==========\", updatedPayload);\r\n }\r\n }\r\n }, (error) => {\r\n _AntiForgeryToken(\"#checkloginApi\");\r\n setErrorCategory1(true);\r\n setShowLoader(false);\r\n })\r\n\r\n }\r\n React.useEffect(() => {\r\n setShowLoader(true);\r\n apiCallToGetCategoryResponse();\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n //console.log(\"payload\",payload);\r\n setShowLoader(true);\r\n var pageChangeURL = '';\r\n var catePageChangeURL = '';\r\n var tempPageChangeURL = '';\r\n var pageChangeBrandURL = '';\r\n var pageChangeCat1URL = '';\r\n var pageChangeCat2URL = '';\r\n var pageChangeCat3URL = '';\r\n var pageChangeExcludeOutOfStockURL = '';\r\n var productsDataResponseCode = '';\r\n var conditionsAPI = '';\r\n var pageAPI = '';\r\n var sizeAPI = '';\r\n var sortAPI = '[]';\r\n var stockAPI = '';\r\n var querySearchAPI = ''\r\n const apiCallToGetProducts = () => {\r\n setShowLoader(true);\r\n conditionsAPI = '';\r\n pageChangeURL = '';\r\n catePageChangeURL = '';\r\n tempPageChangeURL = '';\r\n if ((payload.filterBrand == '' || payload.filterBrand == null) && (URLPart[0] == productRangeURL || URLPart[0] == listingPageURL || URLPart[0].toLowerCase() == fpGroupPageURL)) {\r\n pageChangeURL += '?';\r\n }\r\n if (payload.filterShowing !== '' && payload.filterShowing > 0) {\r\n if (payload.filterShowing != 24) {\r\n pageChangeURL += '&items=' + payload.filterShowing;\r\n }\r\n sizeAPI = payload.filterShowing;\r\n }\r\n if (payload.currentPage !== '') {\r\n if (payload.currentPage !== 1) {\r\n pageChangeURL += '&page=' + payload.currentPage;\r\n }\r\n pageAPI = payload.currentPage;\r\n }\r\n if (querySearch !== '' && querySearch !== null) {\r\n querySearchAPI = querySearch;\r\n }\r\n\r\n if (payload.filterMostRelevent !== '' && payload.filterMostRelevent !== null) {\r\n var qid = '&id=';\r\n var relevantURL = '';\r\n var stateCondition = \"product_ranking_national\";\r\n if (payload.filterMostRelevent !== '' && payload.filterMostRelevent !== null) {\r\n qid += 'sort=' + payload.filterMostRelevent;\r\n\r\n if (payload.filterMostRelevent == ' ') {\r\n relevantURL = '';\r\n }\r\n else if (payload.filterMostRelevent == '{\"product_name\":\"asc\"}') {\r\n relevantURL = '&sort=product-asc';\r\n } else if (payload.filterMostRelevent == '{\"product_name\":\"desc\"}') {\r\n relevantURL = '&sort=product-desc';\r\n } else if (payload.filterMostRelevent == '{\"brand_name\":\"asc\"}') {\r\n relevantURL = '&sort=brand-asc';\r\n } else if (payload.filterMostRelevent == '{\"brand_name\":\"desc\"}') {\r\n relevantURL = '&sort=brand-desc';\r\n }\r\n\r\n if (URLPart[0] == searchPageURL || URLPart[0] == listingPageURL || URLPart[0] == productRangeURL) {\r\n if (payload.filterState !== '' && payload.filterMostRelevent == ' ') {\r\n if (payload.filterState.toLowerCase() == 'vic') {\r\n stateCondition = \"product_ranking_vic\";\r\n } else if (payload.filterState.toLowerCase() == 'sa') {\r\n stateCondition = \"product_ranking_sa\";\r\n } else if (payload.filterState.toLowerCase() == 'act') {\r\n stateCondition = \"product_ranking_act\";\r\n } else if (payload.filterState.toLowerCase() == 'nsw') {\r\n stateCondition = \"product_ranking_nsw\";\r\n } else if (payload.filterState.toLowerCase() == 'wa') {\r\n stateCondition = \"product_ranking_wa\";\r\n } else if (payload.filterState.toLowerCase() == 'nt') {\r\n stateCondition = \"product_ranking_nt\";\r\n } else if (payload.filterState.toLowerCase() == 'tas') {\r\n stateCondition = \"product_ranking_tas\";\r\n } else if (payload.filterState.toLowerCase() == 'qld') {\r\n stateCondition = \"product_ranking_qld\";\r\n } else {\r\n stateCondition = \"product_ranking_national\";\r\n }\r\n }\r\n sortAPI = payload.filterMostRelevent == ' ' ? '[{\"_score\": \"desc\"},{\"' + stateCondition + '\": \"desc\"}]' : '[' + payload.filterMostRelevent + ']';\r\n } else {\r\n sortAPI = payload.filterMostRelevent == ' ' ? '[]' : '[' + payload.filterMostRelevent + ']';\r\n }\r\n }\r\n pageChangeURL += relevantURL;\r\n }\r\n\r\n if (payload.filterBrand.length > 0 && payload.filterBrand !== '' && payload.filterBrand !== null) {\r\n var arr = '';\r\n var arrURL = '';\r\n payload.filterBrand.map((br1, b1) => {\r\n arr += (b1 > 0 ? ',' : '') + '\"' + br1 + '\"';\r\n arrURL += (b1 > 0 ? ',' : '') + getProductName(br1);\r\n });\r\n conditionsAPI += '{\"brand_name\": [' + arr + ']}';\r\n if (arrURL !== '' && arrURL !== undefined && arrURL !== null) {\r\n pageChangeBrandURL = \"brand=\" + arrURL;\r\n }\r\n arr = '';\r\n arrURL = '';\r\n }\r\n\r\n if (payload.filterCategory1.length > 0 && payload.filterCategory1 !== '' && payload.filterCategory1 !== null) {\r\n var arr = '';\r\n var arrURLcat1 = '';\r\n payload.filterCategory1.map((cate1, i1) => {\r\n arr += (i1 > 0 ? ',' : '') + '\"' + cate1 + '\"';\r\n arrURLcat1 += (i1 > 0 ? ',' : '') + getProductName(cate1);\r\n });\r\n if (conditionsAPI !== '') {\r\n conditionsAPI += ',';\r\n }\r\n conditionsAPI += '{\"category_name_1\": [' + arr + ']}';\r\n if (arrURLcat1 !== '' && arrURLcat1 !== undefined && arrURLcat1 !== null) {\r\n pageChangeCat1URL = \"cat1=\" + arrURLcat1;\r\n }\r\n arr = '';\r\n arrURLcat1 = '';\r\n }\r\n\r\n if (payload.filterCategory2.length > 0 && payload.filterCategory2 !== '' && payload.filterCategory2 !== null) {\r\n var arr = '';\r\n var arrURLcat2 = '';\r\n payload.filterCategory2.map((cate2, i2) => {\r\n arr += (i2 > 0 ? ',' : '') + '\"' + cate2 + '\"';\r\n arrURLcat2 += (i2 > 0 ? ',' : '') + getProductName(cate2);\r\n });\r\n if (conditionsAPI !== '') {\r\n conditionsAPI += ',';\r\n }\r\n conditionsAPI += '{\"category_name_2\": [' + arr + ']}';\r\n if (arrURLcat2 !== '' && arrURLcat2 !== undefined && arrURLcat2 !== null) {\r\n pageChangeCat2URL = \"cat2=\" + arrURLcat2;\r\n }\r\n arr = '';\r\n arrURLcat2 = '';\r\n }\r\n\r\n if (payload.filterCategory3.length > 0 && payload.filterCategory3 !== '' && payload.filterCategory3 !== null) {\r\n var arr = '';\r\n var arrURLcat3 = '';\r\n payload.filterCategory3.map((cate3, i3) => {\r\n arr += (i3 > 0 ? ',' : '') + '\"' + cate3 + '\"';\r\n arrURLcat3 += (i3 > 0 ? ',' : '') + getProductName(cate3);\r\n });\r\n if (conditionsAPI !== '') {\r\n conditionsAPI += ',';\r\n }\r\n conditionsAPI += '{\"category_name_3\": [' + arr + ']}';\r\n if (arrURLcat3 !== '' && arrURLcat3 !== undefined && arrURLcat3 !== null) {\r\n pageChangeCat3URL = \"cat3=\" + arrURLcat3;\r\n }\r\n arr = '';\r\n arrURLcat3 = '';\r\n }\r\n\r\n if (payload.filterFPGroup.length > 0 && payload.filterFPGroup !== '' && payload.filterFPGroup !== null) {\r\n if (conditionsAPI !== '') {\r\n conditionsAPI += ',';\r\n }\r\n conditionsAPI += '{\"featured_product_group_id\": [\"' + fpGroupName + '\"]}';\r\n }\r\n\r\n if (filterExcludeOutOfStock == 'true') {\r\n pageChangeExcludeOutOfStockURL = \"stock=true\";\r\n stockAPI = true;\r\n }\r\n else {\r\n pageChangeExcludeOutOfStockURL = '';\r\n stockAPI = false;\r\n }\r\n\r\n\r\n if (URLPart[0] == listingPageURL || URLPart[0] == productRangeURL || URLPart[0].toLowerCase() == fpGroupPageURL) {\r\n var params = '{\"filters\": [' + conditionsAPI + '],\"isInStockOnly\":' + stockAPI + ',\"page\": {\"current\":' + pageAPI + ',\"size\":' + sizeAPI + '},\"sorts\": ' + sortAPI + '}';\r\n }\r\n if (URLPart[0] == searchPageURL) {\r\n\r\n var params = '{\"filters\": [' + conditionsAPI + '],\"isInStockOnly\":' + stockAPI + ',\"page\": {\"current\":' + pageAPI + ',\"size\":' + sizeAPI + '},\"query\":\"' + querySearchAPI + '\",\"sorts\": ' + sortAPI + '}';\r\n }\r\n\r\n\r\n pageChangeURL = pageChangeURL == '?' ? '' : pageChangeURL;\r\n\r\n let URLParams = new URLSearchParams(document.location.search);\r\n if (URLPart[0] == productRangeURL && URLPart[0] != listingPageURL && URLPart[0] != searchPageURL) {\r\n if (URLParams.size > 0) {\r\n history.pushState({}, null, window.location.origin + '/' + productRangeURL + \"?\" + URLParams.toString());\r\n }\r\n else {\r\n history.pushState({}, null, window.location.origin + '/' + productRangeURL + pageChangeURL);\r\n }\r\n } else if (URLPart[0] == searchPageURL) {\r\n\r\n var querySearchAPIURL = '?s=' + encodeURIComponent(querySearchAPI);\r\n if (pageChangeCat1URL !== '' && pageChangeCat2URL == '' && pageChangeCat3URL == '') {\r\n catePageChangeURL = '&' + pageChangeCat1URL;\r\n } else if (pageChangeCat1URL !== '' && pageChangeCat2URL !== '' && pageChangeCat3URL == '') {\r\n catePageChangeURL = '&' + pageChangeCat1URL + '&' + pageChangeCat2URL;\r\n } else if (pageChangeCat1URL !== '' && pageChangeCat2URL !== '' && pageChangeCat3URL !== '') {\r\n catePageChangeURL = '&' + pageChangeCat1URL + '&' + pageChangeCat2URL + '&' + pageChangeCat3URL;\r\n }\r\n\r\n if (catePageChangeURL !== '' && pageChangeBrandURL !== '') {\r\n tempPageChangeURL = catePageChangeURL + '&' + pageChangeBrandURL;\r\n } else if (catePageChangeURL == '' && pageChangeBrandURL !== '') {\r\n tempPageChangeURL = '&' + pageChangeBrandURL;\r\n } else if (catePageChangeURL !== '' && pageChangeBrandURL == '') {\r\n tempPageChangeURL = catePageChangeURL;\r\n }\r\n if (tempPageChangeURL !== '' && pageChangeURL !== '') {\r\n pageChangeURL = tempPageChangeURL + pageChangeURL;\r\n } else if (tempPageChangeURL !== '' && pageChangeURL == '') {\r\n pageChangeURL = tempPageChangeURL;\r\n } else {\r\n pageChangeURL = pageChangeURL;\r\n }\r\n\r\n if (pageChangeExcludeOutOfStockURL !== '') {\r\n pageChangeURL = pageChangeURL.concat(\"&\" + pageChangeExcludeOutOfStockURL);\r\n }\r\n\r\n history.pushState({}, null, window.location.origin + '/' + searchPageURL + querySearchAPIURL + pageChangeURL);\r\n } else {\r\n if (CameFromMegaMenuCate.length == 1) {\r\n if (pageChangeCat2URL !== '' && pageChangeCat3URL == '' && pageChangeBrandURL == '') {\r\n pageChangeURL = '?' + pageChangeCat2URL + pageChangeURL.replace('?', '');\r\n } else if (pageChangeCat2URL !== '' && pageChangeCat3URL !== '' && pageChangeBrandURL == '') {\r\n pageChangeURL = '?' + pageChangeCat2URL + '&' + pageChangeCat3URL + pageChangeURL.replace('?', '');\r\n } else if (pageChangeCat2URL !== '' && pageChangeCat3URL !== '' && pageChangeBrandURL !== '') {\r\n pageChangeURL = '?' + pageChangeCat2URL + '&' + pageChangeCat3URL + '&' + pageChangeBrandURL + pageChangeURL.replace('?', '');\r\n } else if (pageChangeCat2URL == '' && pageChangeCat3URL == '' && pageChangeBrandURL !== '') {\r\n pageChangeURL = '?' + pageChangeBrandURL + pageChangeURL.replace('?', '');\r\n } else if (pageChangeCat2URL !== '' && pageChangeBrandURL !== '') {\r\n pageChangeURL = '?' + pageChangeCat2URL + '&' + pageChangeBrandURL + pageChangeURL.replace('?', '');\r\n } else {\r\n pageChangeURL = pageChangeURL;\r\n }\r\n }\r\n else if (CameFromMegaMenuCate.length == 2) {\r\n if (pageChangeCat3URL !== '' && pageChangeBrandURL !== '') {\r\n pageChangeURL = '?' + pageChangeCat3URL + '&' + pageChangeBrandURL + pageChangeURL.replace('?', '');\r\n } else if (pageChangeCat3URL !== '' && pageChangeBrandURL == '') {\r\n pageChangeURL = '?' + pageChangeCat3URL + pageChangeURL.replace('?', '');\r\n } else if (pageChangeCat3URL == '' && pageChangeBrandURL !== '') {\r\n pageChangeURL = '?' + pageChangeBrandURL + pageChangeURL.replace('?', '');\r\n } else {\r\n pageChangeURL = pageChangeURL;\r\n }\r\n\r\n } else {\r\n if (pageChangeCat1URL !== '' && pageChangeCat2URL == '' && pageChangeCat3URL == '') {\r\n catePageChangeURL = '&' + pageChangeCat1URL;\r\n } else if (pageChangeCat1URL !== '' && pageChangeCat2URL !== '' && pageChangeCat3URL == '') {\r\n catePageChangeURL = '&' + pageChangeCat1URL + '&' + pageChangeCat2URL;\r\n } else if (pageChangeCat1URL !== '' && pageChangeCat2URL !== '' && pageChangeCat3URL !== '') {\r\n catePageChangeURL = '&' + pageChangeCat1URL + '&' + pageChangeCat2URL + '&' + pageChangeCat3URL;\r\n }\r\n\r\n if (pageChangeBrandURL !== '') {\r\n pageChangeURL = '?' + pageChangeBrandURL + pageChangeURL.replace('?', '');\r\n } else {\r\n pageChangeURL = pageChangeURL;\r\n }\r\n if (pageChangeURL !== '' && catePageChangeURL !== '') {\r\n pageChangeURL = pageChangeURL + catePageChangeURL;\r\n }\r\n }\r\n\r\n if (pageChangeExcludeOutOfStockURL != '') {\r\n if (pageChangeURL.includes('cat1=') || pageChangeURL.includes('cat2=') || pageChangeURL.includes('cat3=') || pageChangeURL.includes('brand=')) {\r\n pageChangeURL = pageChangeURL.concat(\"&\" + pageChangeExcludeOutOfStockURL);\r\n }\r\n else if (!pageChangeURL.startsWith('?')) {\r\n pageChangeURL = pageChangeURL.concat(\"?\" + pageChangeExcludeOutOfStockURL);\r\n }\r\n else {\r\n pageChangeURL = pageChangeURL.concat(pageChangeExcludeOutOfStockURL);\r\n }\r\n }\r\n\r\n if (URLPart[0] == listingPageURL && URLParams.size > 0) {\r\n if (pageChangeURL == '') {\r\n history.pushState({}, null, window.location.origin + window.location.pathname + \"?\" + URLParams.toString());\r\n }\r\n else {\r\n var utmParams = '';\r\n URLParams.forEach((value, key) => {\r\n if (key.toLowerCase().includes(\"utm_\")) {\r\n utmParams += \"&\" + key + \"=\" + value;\r\n }\r\n });\r\n history.pushState({}, null, window.location.origin + window.location.pathname + pageChangeURL + utmParams);\r\n }\r\n }\r\n else {\r\n history.pushState({}, null, window.location.origin + window.location.pathname + pageChangeURL);\r\n }\r\n }\r\n\r\n fetch(window.location.origin + '/api/search', {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n \"RequestVerificationToken\": $(\"#checkloginApi [name='__RequestVerificationToken']\").val()\r\n },\r\n body: params,\r\n }).then(results => {\r\n productsDataResponseCode = results.status;\r\n if (productsDataResponseCode == 204) {\r\n window.location.href = window.location.origin + '/404';\r\n }\r\n return results.json();\r\n }).then((data) => {\r\n _AntiForgeryToken(\"#checkloginApi\");\r\n if (data) {\r\n //console.log(\"search request: \", params);\r\n if (data.hasOwnProperty('StatusCode')) {\r\n if (data.StatusCode === 204) {\r\n window.location.href = window.location.origin + '/404';\r\n } else {\r\n if (data.hasOwnProperty('ErrorMessage')) {\r\n setError(data.ErrorMessage);\r\n }\r\n }\r\n } else {\r\n setIsLoaded(true);\r\n if (data.hasOwnProperty('errors')) {\r\n setError(data.errors);\r\n setShowLoader(false);\r\n }\r\n else {\r\n if (Object.keys(data).length > 0) {\r\n if (data.hasOwnProperty('results')) {\r\n data.results.map(p => {\r\n if (p.hasOwnProperty(\"product_default_quantity\") && p.product_default_quantity.hasOwnProperty(\"raw\") && p.product_default_quantity.raw !== '') {\r\n p.currentQty = parseInt(p.product_default_quantity.raw);\r\n } else {\r\n p.currentQty = 1;\r\n }\r\n if (p.hasOwnProperty(\"product_price\") && p.product_default_quantity.hasOwnProperty(\"raw\") && p.product_price.raw !== '') {\r\n p.currentPrice = parseFloat(p.product_price.raw);\r\n } else {\r\n p.currentPrice = 0;\r\n }\r\n }\r\n );\r\n }\r\n //console.log(\"search results: \", data);\r\n setResponseData(data);\r\n if (loadScript === false) {\r\n setLoadScript(true);\r\n }\r\n\r\n setShowLoader(false);\r\n\r\n\r\n }\r\n }\r\n }\r\n\r\n } else {\r\n console.log(\"Some thing went Wrong...\");\r\n setShowLoader(false);\r\n }\r\n },\r\n (error) => {\r\n _AntiForgeryToken(\"#checkloginApi\");\r\n setIsLoaded(true);\r\n setError(error);\r\n setShowLoader(false);\r\n })\r\n\r\n fetch(window.location.origin + '/api/GetPLPSearchCTA', {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n \"RequestVerificationToken\": $(\"#checkloginApi [name='__RequestVerificationToken']\").val()\r\n },\r\n body: params,\r\n }).then(result => result.json())\r\n .then(data => {\r\n setBannerImages(data);\r\n //console.log(\"image\", data);\r\n }, (error) => {\r\n console.log(error);\r\n });\r\n }\r\n\r\n if ((errorCategory1 === false || errorBrand === false) && payload.secondAPICall == true) {\r\n apiCallToGetProducts();\r\n }\r\n if (errorCategory1 === true || errorBrand === true) {\r\n setShowLoader(false);\r\n }\r\n }, [errorCategory1,errorBrand,payload]);\r\n\r\n if (responseData !== null) {\r\n listingFacetData = responseData.facets;\r\n var category_name_1 = [];\r\n var category_name_2 = [];\r\n var category_name_3 = [];\r\n var brand_name = [];\r\n\r\n if (listingFacetData.hasOwnProperty('brand_name')) {\r\n brand_name = listingFacetData.brand_name;\r\n if (brand_name.length > 0) {\r\n for (var b in brand_name) {\r\n var brand_name_data;\r\n if (brand_name[b].hasOwnProperty('data')) {\r\n brand_name_data = brand_name[b].data;\r\n if (brand_name_data.length > 0) {\r\n brandName = brand_name_data;\r\n brandName.sort(function (a, b) {\r\n if (a.value < b.value) { return -1; }\r\n if (a.value > b.value) { return 1; }\r\n return 0;\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (listingFacetData.hasOwnProperty('category_name_1')) {\r\n category_name_1 = listingFacetData.category_name_1;\r\n if (category_name_1.length > 0) {\r\n for (var c1 in category_name_1) {\r\n var category_name_1_data;\r\n if (category_name_1[c1].hasOwnProperty('data')) {\r\n category_name_1_data = category_name_1[c1].data;\r\n if (category_name_1_data.length > 0) {\r\n categoryName1 = category_name_1_data;\r\n categoryName1.sort(function (a, b) {\r\n if (a.value < b.value) { return -1; }\r\n if (a.value > b.value) { return 1; }\r\n return 0;\r\n });\r\n\r\n categoryName1.sort(function (a, b) {\r\n if (a.selected < b.selected) { return 1; }\r\n if (a.selected > b.selected) { return -1; }\r\n return 0;\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (listingFacetData.hasOwnProperty('category_name_2')) {\r\n category_name_2 = listingFacetData.category_name_2;\r\n if (category_name_2.length > 0) {\r\n for (var c2 in category_name_2) {\r\n var category_name_2_data;\r\n if (category_name_2[c2].hasOwnProperty('data')) {\r\n category_name_2_data = category_name_2[c2].data;\r\n if (category_name_2_data.length > 0) {\r\n categoryName2 = category_name_2_data;\r\n categoryName2.sort(function (a, b) {\r\n if (a.value < b.value) { return -1; }\r\n if (a.value > b.value) { return 1; }\r\n return 0;\r\n });\r\n\r\n categoryName2.sort(function (a, b) {\r\n if (a.selected < b.selected) { return 1; }\r\n if (a.selected > b.selected) { return -1; }\r\n return 0;\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (listingFacetData.hasOwnProperty('category_name_3')) {\r\n category_name_3 = listingFacetData.category_name_3;\r\n if (category_name_3.length > 0) {\r\n for (var c3 in category_name_3) {\r\n var category_name_3_data;\r\n if (category_name_3[c3].hasOwnProperty('data')) {\r\n category_name_3_data = category_name_3[c3].data;\r\n if (category_name_3_data.length > 0) {\r\n categoryName3 = category_name_3_data;\r\n categoryName3.sort(function (a, b) {\r\n if (a.value < b.value) { return -1; }\r\n if (a.value > b.value) { return 1; }\r\n return 0;\r\n });\r\n\r\n categoryName3.sort(function (a, b) {\r\n if (a.selected < b.selected) { return 1; }\r\n if (a.selected > b.selected) { return -1; }\r\n return 0;\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n //get \"exclude out of stock\" filter\r\n const getExcludeOutOfStock = (props) => {\r\n const handleExcludeOutOfStockSelect = (event) => {\r\n if (event.target.checked) {\r\n setPayload({\r\n ...payload,\r\n currentPage: 1,\r\n filterOutOfStock: 'true'\r\n });\r\n setFilterExcludeOutOfStock('true');\r\n }\r\n else {\r\n setPayload({\r\n ...payload,\r\n currentPage: 1,\r\n filterOutOfStock: ''\r\n });\r\n setFilterExcludeOutOfStock('');\r\n }\r\n setCurrentPage(1);\r\n };\r\n return (\r\n