PageSourceSearch

https://www.berganza.com/klevu/klevu-theme-breeze_bloom.min.js?v=1788346681

js berganza.com collected 2026-10-02 10:23:25 UTC 78,139 bytes, 1 lines download raw bytes

1var klevu_layoutType="slim",klevu_productsToShowInSlimLayout=6;klevu.beforeActivation("quick",(function(e,t){klevu.each(klevu.search.extraSearchBox,(function(e,t){t.getScope().template.setTemplate(klevuQuickProductBlockTitleHeaderCustom,"klevuQuickProductBlockTitleHeader",!0),t.getScope().template.setTemplate(klevuQuickProductBlockCustom,"klevuQuickProductBlock",!0),t.getScope().template.setTemplate(klevuQuickTemplateBaseCustom,"klevuTemplateBase",!0),t.getScope().template.setTemplate(klevuQuickTrendingProductBlockCustom,"klevuQuickTrendingProductBlock",!0),t.getScope().template.setTemplate(klevuQuickRecentViewedProductBlockCustom,"klevuQuickRecentViewedProductBlock",!0),t.getScope().template.setTemplate(klevuSearchPersonalizationsCustom,"klevuSearchPersonalizations",!0),t.getScope().template.setTemplate(klevuQuickPageSuggestionsCustom,"klevuQuickPageSuggestions",!0)}))})),klevu.afterTemplateRender("quick",(function(e,t){function a(){klevu.each(klevu.dom.find(".kuQuickSearchAutoCompleteLayout .klevuWrap"),(function(e,t){const a=t.getBoundingClientRect().top;document.documentElement.style.setProperty("--klevuQuickPopupTopPosition",`${a}px`)}))}a(),window.addEventListener("resize",a)}));const cmsFields=[];cmsFields.push("id","name","shortDesc","url","typeOfRecord","image"),klevu.modifyRequest("all",(function(e,t){klevu.each(e.request.current.recordQueries,(function(e,t){"cmsCompressed"===t.id&&(klevu.setObjectPath(t,"settings.fields",cmsFields),klevu.setObjectPath(t,"settings.limit",4))}))}));var klevuQuickPageSuggestionsCustom='\n<% if(data.query.cmsCompressed) { %>\n    <% if(data.query.cmsCompressed.result.length > 0 ){ %>\n        <div class="klevuAutoSuggestionsWrap klevuCmsSuggestions" id="klevuCmsContentArea">\n            <div class="klevuSuggestionHeading"><span class="klevuHeadingText"><%=helper.translate("Pages")%></span></div>\n            <ul class="klevuQuickSearchList">\n                <% helper.each(data.query.cmsCompressed.result,function(key,cms){ %>\n                    <li class="klevuQuickSearchCmsListItem" tabindex="-1">\n                        <div class="klevuQuickSearchCmsContainer">\n                            <a target="_self" href="<%=cms.url%>" class="klevu-track-click klevuQuickSearchImageWrapper" data-url="<%=cms.url%>" data-name="<%=cms.name%>">\n                                <% if(cms.image) { %>\n                                    <img class="klevuQuickSearchImage" src="<%=cms.image%>">\n                                <% } else { %>\n                                    <img class="klevuQuickSearchImage" src="/images/fallback-image.jpg">\n                                <% } %>\n                            </a>\n                            <a target="_self" href="<%=cms.url%>" class="klevu-track-click klevuCmsName" data-url="<%=cms.url%>" data-name="<%=cms.name%>">\n                                <%=cms.name%>\n                            </a>\n                        </div>\n                    </li>\n                <% }); %>\n            </ul>\n        </div>\n    <% } %>\n<% } %>',klevuQuickProductBlockTitleHeaderCustom='\n<div class="klevuSuggestionHeading">\n    <span class="klevuHeadingText"><%=helper.translate("Products")%></span>\n</div>\n<div class="klevuProductsViewAll">\n    <% var queryParam = klevu.getSetting(klevu, "settings.url.queryParam"); %>\n    <a href="<%=helper.buildUrl(data.settings.landingUrl, queryParam ,helper.stripHtml(data.settings.term))%>" target="_parent"><%=helper.translate("View All")%></a>\n</div>',klevuQuickProductBlockCustom='\n<% \n    var updatedProductName = dataLocal.name;\n    if(klevu.search.modules.kmcInputs.base.getSkuOnPageEnableValue()) {\n        if(klevu.dom.helpers.cleanUpSku(dataLocal.sku)) {\n            updatedProductName += klevu.dom.helpers.cleanUpSku(dataLocal.sku);\n        }\n    }\n%>\n<li ku-product-block class="klevuProduct" data-id="<%=dataLocal.id%>">\n    <a title="<%= updatedProductName %>" target="_self" href="<%=dataLocal.url%>" data-id="<%=dataLocal.id%>"  class="klevuQuickProductInnerBlock trackProductClick kuTrackRecentView">\n        <div class="klevuProductItemTop">\n            <div class="klevuQuickImgWrap">\n                <img src="<%=dataLocal.image.replace(\'_medium\', \'_300x300\')%>" origin="<%=dataLocal.image.replace(\'_medium\', \'_300x300\')%>" onerror="klevu.dom.helpers.cleanUpProductImage(this)" alt="<%=updatedProductName%>" />\n            </div>\n        </div>\n        <div class="klevuProductItemBottom">\n            <div class="klevuQuickProductDescBlock">\n                <% if (typeof dataLocal.brand !== \'undefined\' && dataLocal.brand !== \'\') { %>\n                    <div class="klevu-brand"><%= dataLocal.brand %></div>\n                <% } %>\n                <div title="<%= updatedProductName %>" class="klevuQuickProductName kuClippedOne"> <%= updatedProductName %> </div>\n                <div class="klevu-desc-l2 kuClippedOne">
1 <%=dataLocal.shortDesc%> </div>\n                <div class="klevuQuickProductDesc kuClippedOne">\n                    <div class="klevuSpectxt"><%=dataLocal.summaryAttribute%><span><%=dataLocal.stickyLabelText%></span></div>\n                </div>\n                <% if(dataLocal.inStock && dataLocal.inStock != "yes") { %>\n                    <%=helper.render(\'quickProductStock\', scope, data, dataLocal) %>              \n                <% } else { %>\n                <% if(klevu.search.modules.kmcInputs.base.getShowPrices()) { %>\n                    <div class="klevuQuickProductPrice kuClippedOne">\n                        <%\n                            var kuTotalVariants = klevu.dom.helpers.cleanUpPriceValue(dataLocal.totalVariants);\n                            var kuStartPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.startPrice,dataLocal.currency);\n                            var kuSalePrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.salePrice,dataLocal.currency);\n                            var kuPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.price,dataLocal.currency);\n                            var is_poa = dataLocal && dataLocal.poa;\n                        %>\n                        <% if(!Number.isNaN(kuPrice) && is_poa) { %>\n                            <span class="kuSalePrice kuSpecialPrice PoaPrice">\n                                POA\n                            </span>\n                        <% } else if(!Number.isNaN(kuTotalVariants) && !Number.isNaN(kuStartPrice)) { %>                                \n                            <div class="klevuQuickSalePrice kuStartPrice">\n                                <span class="klevuQuickPriceGreyText"><%=helper.translate("Starting at")%></span>\n                                <span><%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.startPrice))%></span>                                \n                            </div>\n                        <% } else if(!Number.isNaN(kuSalePrice) && !Number.isNaN(kuPrice) && (kuPrice > kuSalePrice)){ %>\n                            <span class="klevuQuickOrigPrice">\n                                <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                            </span>\n                            <span class="klevuQuickSalePrice klevuQuickSpecialPrice">\n                                <%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice))%>\n                            </span>\n                        <% } else if(!Number.isNaN(kuSalePrice)) { %>\n                            <span class="klevuQuickSalePrice">\n                                <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice)) %>\n                            </span>\n                        <% } else if(!Number.isNaN(kuPrice)) { %>\n                            <span class="klevuQuickSalePrice">\n                                <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                            </span>\n                        <% } %>\n                    </div>\n                    <%=helper.render(\'searchResultProductVATLabelQuick\', scope, data, dataLocal) %>\n                    <% } %>\n                <% } %>\n                <%=helper.render(\'klevuQuickProductRating\',scope,data,dataLocal) %>\n            </div>\n        </div>\n        <div class="kuClearLeft"></div>\n    </a>\n    <%=helper.render(\'quickSearchProductAddToCart\',scope,data,dataLocal) %>        \n</li>',klevuQuickTemplateBaseCustom='\n<% var noResultsClass = \'\';\n    if(typeof data.query.productList !== \'undefined\' && data.query.productList.result.length === 0){\n        noResultsClass = \'klevu-no-results\';\n    }\n%>\n<div class="klevu-fluid kuPreventDocumentClick">\n    <div id="klevuSearchingArea" class="klevuQuickSearchingArea <%=noResultsClass %>">\n        <div ku-container data-container-id="ku_quick_main_container" data-container-role="main">\n            <header ku-container data-container-id="ku_quick_main_header_container" data-container-role="header">\n                <section ku-block data-block-id="ku_quick_main_header_sub_panel"></section>\n                <section ku-block data-block-id="ku_quick_main_header_banner">\n                    <%=helper.render(\'klevuQuickPromotionBanner\',scope,data,"top") %>                    \n                </section>\n                <section ku-block data-block-id="ku_quick_main_header_site_navigation">\n                    <div class="klevuSuggestionsBlock">                            \n                        <% if(data.showQuickFacetedLayoutCharLimitMessage == true) { 
1%>\n                            <% var quickFacetedLayoutMessage = (data.quickFacetedLayoutMinCharsTextValue) ? data.quickFacetedLayoutMinCharsTextValue : ""; %>\n                            <% if(quickFacetedLayoutMessage != "") { %>\n                                <span class="kuFacetedLayoutMinCharText"><%= helper.translate(quickFacetedLayoutMessage) %></span>\n                            <% } %>                    \n                        <% } else { %>\n                            <% if(data.query.productList) { %>\n                                <%=helper.render(\'klevuQuickTemplateResultsHeadingTitle\',scope,data,"productList") %>\n                                <%= helper.render(\'klevuQuickTemplateTabResults\',scope) %>                                                 \n                                <%= helper.render(\'klevuQuickProducts\',scope) %>\n                                <%= helper.render(\'klevuQuickOtherContent\',scope) %>\n                            <% } else { %>              \n                                <div class="kuSearchPersonalizationsContainer">\n                                    <%= helper.render(\'klevuSearchPersonalizations\',scope) %>    \n                                </div>\n                            <% } %>  \n                        <% } %>\n                        <%=helper.render(\'klevuQuickPageSuggestions\',scope) %>\n                        <%=helper.render(\'klevuQuickAutoSuggestions\',scope) %>\n                        <%=helper.render(\'klevuQuickCategorySuggestions\',scope) %>\n                    </div>\n                </section>\n            </header>\n        \n            <footer ku-container data-container-id="ku_quick_main_footer_container" data-container-role="footer">\n                <section ku-block data-block-id="ku_quick_main_footer_sub_panel"></section>\n                <section ku-block data-block-id="ku_quick_main_footer_banner">\n                    <%=helper.render(\'klevuQuickPromotionBanner\',scope,data,"bottom") %>\n                </section>\n            </footer> \n        </div>\n    </div>\n</div>',klevuQuickTrendingProductBlockCustom='\n<% \nvar updatedProductName = dataLocal.name;\nif(typeof dataLocal.brand !== \'undefined\' && dataLocal.brand !== \'\') {\n    updatedProductName = updatedProductName.replace(dataLocal.brand, \'\');\n}\n%>\n<a target="_self" href="<%=dataLocal.url%>" data-id="<%=dataLocal.id%>" class="klevuQuickProductInnerBlock kuTrackPersonalizedProductClick kuQSMenuItemTarget kuTrackRecentView">\n<div class="klevuProductItemTop">\n    <div class="klevuQuickImgWrap">\n        <div class="klevuQuickDiscountBadge"><strong><%=dataLocal.stickyLabelHead%></strong></div>\n        <img src="<%=dataLocal.image.replace(\'_medium\', \'_300x300\')%>" origin="<%=dataLocal.image.replace(\'_medium\', \'_300x300\')%>" onerror="klevu.dom.helpers.cleanUpProductImage(this)" alt="<%=updatedProductName%>" class="kuProdImg">\n    </div>\n</div>\n<div class="klevuProductItemBottom">\n    <% if (typeof dataLocal.brand !== \'undefined\' && dataLocal.brand !== \'\') { %>\n        <div class="klevu-brand"><%= dataLocal.brand %></div>\n    <% } %>\n    <div class="klevuQuickProductDescBlock">\n        <div class="klevuQuickProductName kuClippedOne" title="<%= updatedProductName %>"><%= updatedProductName %></div>\n        <div class="klevuQuickProductDesc">\n            <div class="klevuSpectxt"><%=dataLocal.summaryAttribute%><span><%=dataLocal.stickyLabelText%></span></div>\n            <div class="klevuQuickProductPrice">\n            <%\n                var kuTotalVariants = klevu.dom.helpers.cleanUpPriceValue(dataLocal.totalVariants);\n                var kuStartPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.startPrice,dataLocal.currency);\n                var kuSalePrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.salePrice,dataLocal.currency);\n                var kuPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.price,dataLocal.currency);\n                var is_poa = dataLocal && dataLocal.poa;\n            %>\n            <% if(!Number.isNaN(kuPrice) && is_poa) { %>
1\n                <span class="kuSalePrice kuSpecialPrice PoaPrice">\n                    POA\n                </span>\n            <% } else if(!Number.isNaN(kuTotalVariants) && !Number.isNaN(kuStartPrice)) { %>                                \n                <div class="klevuQuickSalePrice kuStartPrice">\n                    <span class="klevuQuickPriceGreyText"><%=helper.translate("From")%></span>\n                    <span><%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.startPrice))%></span>                                \n                </div>\n            <% } else if(!Number.isNaN(kuSalePrice) && !Number.isNaN(kuPrice) && (kuPrice > kuSalePrice)){ %>\n                <span class="klevuQuickOrigPrice">\n                    <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                </span>\n                <span class="klevuQuickSalePrice klevuQuickSpecialPrice">\n                    <%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice))%>\n                </span>\n            <% } else if(!Number.isNaN(kuSalePrice)) { %>\n                <span class="klevuQuickSalePrice">\n                    <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice)) %>\n                </span>\n            <% } else if(!Number.isNaN(kuPrice)) { %>\n                <span class="klevuQuickSalePrice">\n                    <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                </span>\n            <% } %>\n        </div>\n        </div>                \n    </div>\n</div>        \n</a>',klevuQuickRecentViewedProductBlockCustom='\n<% \n    var updatedProductName = dataLocal.name;\n    if(klevu.search.modules.kmcInputs.base.getSkuOnPageEnableValue()) {\n        if(klevu.dom.helpers.cleanUpSku(dataLocal.sku)) {\n            updatedProductName += klevu.dom.helpers.cleanUpSku(dataLocal.sku);\n        }\n    }\n%>\n<a target="_self" href="<%=dataLocal.url%>" data-id="<%=dataLocal.id%>" class="klevuQuickProductInnerBlock kuTrackPersonalizedProductClick kuTrackRecentView kuQSMenuItemTarget">\n    <div class="klevuProductItemTop">\n        <div class="klevuQuickImgWrap">\n            <div class="klevuQuickDiscountBadge"><strong><%=dataLocal.stickyLabelHead%></strong></div>\n            <img src="<%=dataLocal.image.replace(\'_medium\', \'_300x300\')%>" origin="<%=dataLocal.image.replace(\'_medium\', \'_300x300\')%>" onerror="klevu.dom.helpers.cleanUpProductImage(this)" alt="<%=updatedProductName%>" />\n        </div>\n    </div>\n    <div class="klevuProductItemBottom">\n        <% if (typeof dataLocal.brand !== \'undefined\' && dataLocal.brand !== \'\') { %>\n            <div class="klevu-brand"><%= dataLocal.brand %></div>\n        <% } %>\n        <div class="klevuQuickProductDescBlock">\n            <div class="klevuQuickProductName kuClippedOne" title="<%= updatedProductName %>"><%= updatedProductName %></div>\n            <div class="klevuQuickProductDesc">\n                <div class="klevuSpectxt"><%=dataLocal.summaryAttribute%><span><%=dataLocal.stickyLabelText%></span></div> <div class="klevuQuickProductPrice">\n                <%\n                    var kuTotalVariants = klevu.dom.helpers.cleanUpPriceValue(dataLocal.totalVariants);\n                    var kuStartPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.startPrice,dataLocal.currency);\n                    var kuSalePrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.salePrice,dataLocal.currency);\n                    var kuPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.price,dataLocal.currency);\n                    var is_poa = dataLocal && dataLocal.poa;\n                %>\n                <% if(!Number.isNaN(kuPrice) && is_poa) { %>\n                    <span class="kuSalePrice kuSpecialPrice PoaPrice">\n                        POA\n                    </span>\n                <% } else if(!Number.isNaN(kuTotalVariants) && !Number.isNaN(kuStartPrice)) { %>                                \n                    <div class="klevuQuickSalePrice kuStartPrice">
1\n                        <span class="klevuQuickPriceGreyText"><%=helper.translate("From")%></span>\n                        <span><%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.startPrice))%></span>                                \n                    </div>\n                <% } else if(!Number.isNaN(kuSalePrice) && !Number.isNaN(kuPrice) && (kuPrice > kuSalePrice)){ %>\n                    <span class="klevuQuickOrigPrice">\n                        <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                    </span>\n                    <span class="klevuQuickSalePrice klevuQuickSpecialPrice">\n                        <%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice))%>\n                    </span>\n                <% } else if(!Number.isNaN(kuSalePrice)) { %>\n                    <span class="klevuQuickSalePrice">\n                        <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice)) %>\n                    </span>\n                <% } else if(!Number.isNaN(kuPrice)) { %>\n                    <span class="klevuQuickSalePrice">\n                        <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                    </span>\n                <% } %>\n            </div>\n            </div>                \n        </div>\n    </div>        \n</a>',klevuSearchPersonalizationsCustom='\n<div ku-container data-container-id="ku_quick_main_content_container" data-container-role="content">\n<section ku-container data-container-id="ku_quick_main_content_left" data-container-position="left" data-container-role="left">\n    <div ku-block data-block-id="ku_quick_left_facets"></div>\n    <div ku-block data-block-id="ku_quick_left_call_outs">\n        <%=helper.render(\'kuTemplatePopularSearches\',scope) %>\n        <%=helper.render(\'kuTemplateRecentSearches\',scope) %>\n    </div>\n    <% if (window.innerWidth >= 768) { %>\n        <div ku-block data-block-id="ku_quick_left_banner"></div>\n    <% } %>\n</section>\n<section ku-container data-container-id="ku_quick_main_content_center" data-container-position="center" data-container-role="center">\n    <header ku-block data-block-id="ku_quick_result_header"></header>\n    <div ku-block data-block-id="ku_quick_result_items"></div>\n                \n    <div ku-block data-block-id="ku_quick_other_items">\n        <%=helper.render(\'klevuTrendingProducts\',scope) %>\n        <% if (window.innerWidth < 768) { %>\n            <div ku-block data-block-id="ku_quick_left_banner"></div>\n        <% } %>\n        <%=helper.render(\'klevuRecentViewedProducts\',scope) %>\n    </div>\n\n    <footer ku-block data-block-id="ku_quick_result_footer"></footer>\n</section>\n<section ku-container data-container-id="ku_quick_main_content_right" data-container-position="right" data-container-role="right">\n    <div ku-block data-block-id="ku_quick_right_facets"></div>\n    <div ku-block data-block-id="ku_quick_right_call_outs"></div>\n    <div ku-block data-block-id="ku_quick_right_banner"></div>\n</section>\n</div>';window.klevu_uc_userOptions||(window.klevu_uc_userOptions={}),window.klevu_uc_userOptions.landingFilterPosition="left",window.klevu_compare_disabled=!0,window.klevu_compare_show_differences_checked=!0;const KEYS_TO_COMPARE=["inStock","grams","sku","brand","size","category","rating"];klevu.beforeActivation("landing",(function(e,t){t.kScope.template.setTemplate(klevuLandingTemplateProductBlockCustom,"productBlock",!0),t.kScope.template.setTemplate(KlevuLandingTemplateResultsCustom,"results",!0),t.kScope.template.setTemplate(klevuLandingTemplateBaseCustom,"klevuTemplateLanding",!0),t.kScope.template.setTemplate(klevuLandingTemplateFiltersCustom,"filters",!0),t.kScope.template.setTemplate(klevuLandingTemplatePaginationCustom,"pagination",!0),t.kScope.chains.events.keyUp.remove({name:"scrollToTop"}),function(e){e.extend(!0,e.search.modules,{addParamsToURL:{base:{addURLtoHistory:function(t,a,n){if(void 0===window.history||void 0===window.history.pushState)return void console.error("This browser does not have the support of window.history or window.history.pushState");var l,i=new URLSearchParams(window.location.search),r=i.toString(),s=e.getObjectPath(t,"context.activeQueryId");n&&n.length&&(s=n);let c=void 0!==t.localOverrides.query[s].filters?t.localOverrides.query[s].filters.applyFilters:{},o=!1;"object"==typeof c&&!Array.isArray(c)&&null!==c&&Object.keys(c).length>0&&(o=!0);var d="Page",u=0;if(e.getSetting(e,"settings.theme.modules.pagination.searchResultsPage.enable")){var k=e.getObjectPath(t,"template.query."+s+".meta");if(k){var p=k.noOfResults;u=Math.ceil(k.offset/p)+1}
10===u||1===u?i.delete(d):i.set(d,u),l=i.toString()}var m=e.getObjectPath(t,"template.query."+s+".filters"),v="";if(m&&e.each(m,(function(t,a){var n="",l=a.options,i="";if(l&&l.length)e.each(l,(function(e,t){!0===t.selected&&(i.length&&(i+=","),i+=t.value)}));else if("SLIDER"===a.type){var r=a.start,s=a.end,c=a.min,o=a.max;null!=r&&null!=s&&(Number(r)===Number(c)&&Number(s)===Number(o)||(i=r+"-"+s))}i.length&&(n+=encodeURIComponent(a.key)+":"+encodeURIComponent(i)),n.length&&(v.length&&(v+=";"),v+=n)})),v.length>0&&o?i.set("Filters",v):i.delete("Filters"),r!==(l=i.toString())){var g={page:u,filters:l};window.history.pushState(g,null,l?"?"+l:window.location.pathname)}},restoreSearchParamsOnPageLoad:function(t,a){if(!e.getObjectPath(a.kScope,"element.kScope.getAndUpdateFiltersTriggered")){var n=e.getObjectPath(t,"context.activeQueryId")||"productList",l=e.dom.helpers.getQueryStringValue("Filters"),i=e.dom.helpers.getQueryStringValue("Page"),r="",s="",c=e.getObjectPath(t,"request.current.recordQueries");if(c&&c.length&&e.each(c,(function(e,t){t.id&&(i&&i.length||l&&l.length)&&(r=t.id,s=i||l)})),e.setObjectPath(a.kScope,"element.kScope.getAndUpdateFiltersTriggered",!0),(r=n||"productList").length&&s.length){n=r;var o=e.getSetting(a.kScope.settings,"settings.storage");o.tabs&&(o.tabs.setStorage("local"),o.tabs.mergeFromGlobal(),o.tabs.addElement("active",n),o.tabs.mergeToGlobal())}if(i&&i>1&&c&&c.length&&e.each(c,(function(a,l){if(l.id===n){var r=e.getObjectPath(l,"settings.limit");if((r=Number(r))>0){var s=(i-1)*r;e.setObjectPath(t,"localOverrides.query."+n+".settings.offset",s)}}})),l&&l.length){var d=l.split(";");d&&e.each(d,(function(a,l){var i=l.split(":");if(i.length){var r=decodeURIComponent(i[0]),s=decodeURIComponent(i[1]).split(","),c=e.getObjectPath(t,"localOverrides.query."+n+".filters.applyFilters.filters");if(c&&c.length){var o=!1;e.each(c,(function(t,a){a.key===r&&(o=!0,e.each(s,(function(t,n){var l=!1;e.each(a.values,(function(e,t){n===t&&(l=!0)})),l||a.values.push(n)})))})),o||c.push({key:r,values:s})}else e.setObjectPath(t,"localOverrides.query."+n+".filters.applyFilters.filters",[{key:r,values:s}])}}))}}},updatePayloadOnPopState:function(t,a,n){var l=e.dom.helpers.getQueryStringValue("Page");l=Number(l);var i=window.klevuCurrentScope.element.kObject.getScope().data.request.original.queryRequest[0].settings.limit;if((i=Number(i))>0){var r=(l-1)*i>0?(l-1)*i:0;e.setObjectPath(t,"localOverrides.query."+n+".settings.offset",r)}var s=e.dom.helpers.getQueryStringValue("Filters");if(s&&s.length){var c=s.split(";");let a="",l=[],i=[];e.each(c,(function(e,t){var n=t.split(":");n.length&&(a=decodeURIComponent(n[0]),l=decodeURIComponent(n[1]).split(","),i.push({key:a,values:l}))})),e.setObjectPath(t,"localOverrides.query."+n+".filters.applyFilters.filters",i)}else e.setObjectPath(t,"localOverrides.query."+n+".filters.applyFilters.filters",[])}},build:!0},klevuCompareProducts:function(t,a,n){const l=e.getGlobalSetting("search.apiKey",e.getGlobalSetting("global.apiKey")),i="https://js.klevu.com/klevu-js-v1/img-1-1/place-holder.jpg",r=e.getSetting(e,"settings.flags.setRemoteConfigLanding.build")?"landing":"catnav";function s(){return localStorage.getItem(`klevu-compare-ids-${r}-${l}`)?JSON.parse(localStorage.getItem(`klevu-compare-ids-${r}-${l}`)):[]}function c(e,t=!1){if(t)localStorage.setItem(`klevu-compare-ids-${r}-${l}`,JSON.stringify(e));else{let t=s();if(s().includes(e)){if(s().includes(e)){const a=s().indexOf(e);t.splice(a,1)}}else t.push(e);localStorage.setItem(`klevu-compare-ids-${r}-${l}`,JSON.stringify(t))}}function o(e=null){localStorage.setItem(`klevu-compare-data-${r}-${l}`,e),null===e&&s()&&!d()&&v(s())}function d(){return JSON.parse(localStorage.getItem(`klevu-compare-data-${r}-${l}`))}function u(e){return e.replace("/needtochange/","/")}function k(e){try{return e.every(((e,t,a)=>e.toLowerCase()===a[0].toLowerCase()))}catch(e){}}function p(){s().length;const t=document.querySelector("#klevu-compare-table"),n=t.querySelector("thead tr"),l=t.querySelector("tbody");let r="",c="";d().forEach((t=>{const n=t.image?u(t.image):i;r+=`<th>\n                <img src="${n}" alt="${t.name}">\n                <div class="kuName kuClippedOne">\n                  <a data-id="${t.id}" href="${t.url}" class="klevuProductClick" title="${t.name}">${t.name}</a>\n                </div>\n                ${e.search.modules.kmcInputs.base.getShowPrices()?'<div class="kuPrice">'+function(t){var n=e.dom.helpers.cleanUpPriceValue(t.totalVariants),l=e.dom.helpers.cleanUpPriceValue(t.startPrice,t.currency),i=e.dom.helpers.cleanUpPriceValue(t.salePrice,t.currency),r=e.dom.helpers.cleanUpPriceValue(t.price,t.currency),s=a.kScope.template.getTemplateSettings().helpers.processCurrency;let c=[""];return isNaN(n)||isNaN(l)?!isNaN(i)&&!isNaN(r)&&r>
1i?c.push(`\n                      <span class="kuOrigPrice kuClippedOne">\n                          ${s(t.currency,parseFloat(t.price))}\n                      </span>\n                      <span class="kuSalePrice kuSpecialPrice kuClippedOne">\n                          ${s(t.currency,parseFloat(t.salePrice))}\n                      </span>`):isNaN(i)?isNaN(r)||c.push(`\n                      <span class="kuSalePrice">\n                          ${s(t.currency,parseFloat(t.price))}\n                      </span>`):c.push(`\n                      <span class="kuSalePrice kuSpecialPrice">\n                          ${s(t.currency,parseFloat(t.salePrice))}\n                      </span>`):c.push(`\n                      <div class="kuSalePrice kuStartPrice kuClippedOne">\n                          <span class="klevuQuickPriceGreyText">Starting at</span>\n                          <span>${s(t.currency,parseFloat(t.startPrice))}</span>                                \n                      </div>`),c.push(""),c.join("")}(t)+"</div>":""}\n                <button class="klevu-compare-widget__item-button btn btn-inner" data-id="${t.id}" title="Remove from Klevu comparison"><span>&times;</span></button>\n                ${e.search.modules.kmcInputs.base.getAddToCartEnableValue()?function(t){if("no"!==t.inStock){var a=e.getObjectPath(e.search,"modules.kmcInputs.kmcData.klevu_uc_userOptions.addToCartButton","Add to cart");if("undefined"!=typeof klevu_uc_userOptions&&klevu_uc_userOptions&&klevu_uc_userOptions.addToCartButton,a)return`\n                          <div class="kuAddtocart" data-id="${t.id}">\n                              <a target="_self" href="javascript:void(0)" class="kuBtn kuLandingAddToCartBtn btn btn-def" role="button" tabindex="0" aria-label="Add to cart">${a}</a>       \n                          </div>\n                      `}return""}(t):""}\n            </th>`}));try{const e=(e,t)=>{const a=parseFloat(t)/5*100;let n=`<td><span class="spec klevu-compare-rating" spec-title="${e}">${t}`;return n+=a?`\n                  <span class="klevu-compare-rating__wrapper">\n                    <span class="klevu-compare-rating__value" style="width:${a}%;"></span>\n                  </span>`:'\n                  <span class="">\n                    <span class="">-</span>\n                  </span>',n+="</span></td>",n},t=(e,t)=>`<td><span class="spec" spec-title="${e}">${t}</span></td>`,a=d();KEYS_TO_COMPARE.forEach((n=>{const l=a.map((e=>e[n]||"")),i=k(l)&&klevu_compare_show_differences_checked?"hide":"",r=l.map((a=>"rating"===n.toLowerCase()?e(n,a):t(n,a))).join("");r.trim()&&(c+=`<tr class="${i}" data-name="${n}"><td class="klevu-compare-table__label">${n}</td>${r}</tr>`)}))}catch(e){console.log("KEYS_TO_COMPARE array error. Please declare the KEYS_TO_COMPARE Array!",e)}n.innerHTML=`<th class="klevu-compare-table__label">&nbsp;</th> ${r}`,l.innerHTML=c}function m(){!function(){const e=s().length||null,t=document.querySelector("#klevu-compare-widget"),a=document.querySelector("#klevu-compare-button"),n=document.querySelector(".klevu-compare-widget__selected-amount"),l=document.querySelector(".klevu-compare-widget__images");let r="";d().map((e=>{const t=e.image?u(e.image):i;r+=`\n                          <li class="klevu-compare-widget__item">\n                              <button class="klevu-compare-widget__item-button" data-id="${e.id}" title="Remove from Klevu comparison">\n                                  <img class="klevu-compare-widget__item-image" alt="${e.name}" style="max-height:50px;max-width:40px;" src="${t}" onerror="this.onerror=null; this.src='${i}'" />\n                                  <i class="klevu-compare-widget__item-button-cross">&times;</i>\n                              </button>\n                          </li>`,l&&(l.innerHTML=r)})),e&&t?(n.innerHTML=e,l.innerHTML=r,t.classList.remove("klevu-compare-widget--klevu-hidden"),a.disabled=!(e>1)):t&&t.classList.add("klevu-compare-widget--klevu-hidden")}(),p(),document.getElementById("toggleDifferences").addEventListener("change",(function(){const e=[],t=d();
1KEYS_TO_COMPARE.forEach((a=>{k(t.map((e=>e[a]||"")))&&e.push(a)})),document.querySelectorAll("#klevu-compare-table tbody tr").forEach((t=>{-1!==e.indexOf(t.dataset.name)&&t.classList.toggle("hide",this.checked)}))}))}function v(t){const a=`(${t.map((e=>`id:"${e}"`)).join(" OR ")})`;var i=JSON.stringify({recordQueries:[{settings:{customANDQuery:a,query:{term:"*"},typeOfRecords:["KLEVU_PRODUCT"],fields:[],limit:t.length},id:"productSearch"}],context:{apiKeys:[l]}}),r=new XMLHttpRequest;r.withCredentials=!1,r.addEventListener("readystatechange",(function(){if(4===this.readyState){!function(e){o(JSON.stringify(e)),m(),[...document.querySelectorAll(".klevu-compare-widget__item-button")].forEach((e=>{e.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation();const t=e.target.closest(".klevu-compare-widget__item-button").dataset.id;c(s().filter((e=>e!==t)),!0),v(s()),g(t),s().length<=1&&n.classList.remove("klevu-compare-table-shown"),document.getElementById("toggleDifferences").checked=!0}))}))}(JSON.parse(this.responseText).queryResults[0].records)}})),r.open("POST",e.settings.url.search),r.setRequestHeader("Content-Type","application/json"),r.send(i)}function g(e=null){try{e?s().includes(e)?(document.querySelector(`.klevu-compare[data-id="${e}"]`).classList.add("klevu-selected"),document.querySelector(`.klevu-compare[data-id="${e}"] input`).checked=!0):(document.querySelector(`.klevu-compare[data-id="${e}"]`).classList.remove("klevu-selected"),document.querySelector(`.klevu-compare[data-id="${e}"] input`).checked=!1):[...document.querySelectorAll(".klevu-compare")].forEach((e=>{s().includes(e.dataset.id)&&(e.classList.add("klevu-selected"),e.querySelector("input.klevu-compare__checkbox").checked=!0)}))}catch(e){}}function h(e){const t=e.target.closest(".klevu-compare").dataset.id;e.stopPropagation(),e.preventDefault(),c(t),g(t),v(s())}g(),o(),[...document.querySelectorAll(".klevu-compare")].forEach((t=>{e.event.attach(t,"click",h)})),n.addEventListener("click",(function({target:e}){try{e.matches("#klevu-compare-button, #klevu-compare-button *, #klevu-compare-table, #klevu-compare-table *")?n.classList.add("klevu-compare-table-shown"):n.classList.remove("klevu-compare-table-shown"),e.matches("#klevu-close-compare, #klevu-close-compare *")&&n.classList.remove("klevu-compare-table-shown")}catch(e){}}))},toggleFiltersOnMobile:function(e){document.querySelectorAll(".kuFiltersTitleHeading--button").forEach((t=>{function a(e,t){const a=e.getAttribute("data-original-content")||"Show Filters",n=e.getAttribute("data-toggle-content")||"Hide Filters";t.classList.contains("klevu-mobile-filters-shown")?e.innerHTML=n:e.innerHTML=a}t.addEventListener("click",(function(){e.classList.toggle("klevu-mobile-filters-shown"),a(t,e)}));document.querySelectorAll(".kuFiltersTitleHeading--button").forEach((t=>a(t,e)))}))},keepFacetsWithSelectedOptionsOpened:function(){const a={kuFilterBox:".kuFilterBox",kuSelected:".kuSelected",kuFilterNames:".kuFilterNames",kuFilterNamesCollapse:".kuFilterNames.kuFilterCollapse",kuFilterHead:".kuFilterHead",kuFilterHeadExpand:".kuFilterHead.kuExpand",kuExpand:".kuExpand",kuCollapse:".kuCollapse",nouiElement:".noUi-origin",priceFacetBlock:'[data-filter="klevu_price"]',kuFilterShowAll:".kuFilterShowAll",kuFilterCollapse:".kuFilterCollapse"},n=["search","category"];!function(){document.querySelectorAll(a.kuFilterHead).forEach((e=>{n.includes(e.innerText.trim().toLowerCase())?(e.classList.add(a.kuCollapse.substring(1)),e.classList.remove(a.kuExpand.substring(1))):(e.classList.add(a.kuExpand.substring(1)),e.classList.remove(a.kuCollapse.substring(1)))}));document.querySelectorAll(a.kuFilterNames).forEach((e=>{n.includes(e.id)?(e.classList.add(a.kuFilterShowAll.substring(1)),e.classList.remove(a.kuFilterCollapse.substring(1))):(e.classList.add(a.kuFilterCollapse.substring(1)),e.classList.remove(a.kuFilterShowAll.substring(1)))}))}();const l=document.querySelectorAll(a.kuFilterBox+" "+a.kuSelected);l.length>0&&l.forEach((e=>{const t=r(e,a.kuFilterBox).querySelector(a.kuFilterHeadExpand);t&&(t.classList.remove("kuExpand"),t.classList.add("kuCollapse"));const n=r(e,a.kuFilterNamesCollapse);n&&(n.classList.remove("kuFilterCollapse"),n.classList.add(a.kuFilterShowAll.substring(1)))}));var i=e.getObjectPath(t.kScope.data,"localOverrides.query."+t.kScope.data.context.activeQueryId+".filters.applyFilters.filters");if(Boolean(i?.filter((e=>"klevu_price"===e.key)).length)){const e=document.querySelector(`${a.priceFacetBlock} ${a.nouiElement}`);if(e){const t=r(e,a.kuFilterNamesCollapse);t&&(t.classList.remove("kuFilterCollapse"),t.classList.add(a.kuFilterShowAll.substring(1)));const n=r(e,a.kuFilterBox).querySelector(a.kuFilterHeadExpand);n&&(n.classList.remove("kuExpand"),n.classList.add("kuCollapse"))}}function r(e,t){let a=e.parentElement;for(;a;){if(a.matches(t))return a;a=a.parentElement}return null}},smoothScrollToProductListingTop:function(){function e(){setTimeout((function(){var e=document.getElementsByClassName("klevuMeta")[0];if(e){var t=e.getBoundingClientRect().top+window.pageYOffset;window.scrollTo({top:t-60,behavior:"smooth"})}}),100)}Object.values({pagination:".kuPagination a"}
1).forEach((t=>{document.querySelectorAll(t).forEach((t=>t.addEventListener("click",e)))}))}})}(klevu)})),klevu.afterTemplateRender("landing",(function(e,t){const a=document.body||document.querySelector(".klevuLanding");klevu_compare_disabled||klevu.search.modules.klevuCompareProducts(e,t,a),klevu.search.modules.addParamsToURL.base.addURLtoHistory(e,t),klevu.search.modules.toggleFiltersOnMobile(a),klevu.search.modules.keepFacetsWithSelectedOptionsOpened(),klevu.search.modules.smoothScrollToProductListingTop()})),klevu.modifyRequest("landing",(function(e,t){klevu.search.modules.addParamsToURL.base.restoreSearchParamsOnPageLoad(e,t),klevu.each(e.request.current.recordQueries,(function(e,t){"noResultsFoundPopularProductList"===klevu.getObjectPath(t,"id")&&klevu.setObjectPath(t,"settings.limit",8)})),window.klevuCurrentScope=t.kScope})),window.onpopstate=function(e){try{var t=klevu.getObjectPath(window.klevuCurrentScope.element.kObject.getScope().data,"context.activeQueryId"),a=window.klevuCurrentScope.element.kObject.getScope().data,n=window.klevuCurrentScope.element;n.kScope.data=n.kObject.resetData(n.kElem),n.kScope.data.context.keyCode=0,n.kScope.data.context.eventObject=e,n.kScope.data.context.event="keyUp",n.kScope.data.context.preventDefault=!1,klevu.search.modules.addParamsToURL.base.updatePayloadOnPopState(a,n,t),klevu.event.fireChain(n.kScope,"chains.events.keyUp",n,n.kScope.data,e)}catch(e){console.log(e)}};var klevuLandingTemplatePaginationCustom='\n<% if(data.query[dataLocal].result.length > 0 ) { %>\n<%\n    var offset = data.query[dataLocal].meta.offset;\n    var limit = data.query[dataLocal].meta.noOfResults;\n    var totalResults = data.query[dataLocal].meta.totalResultsFound;\n    var currentPage = Math.floor(offset / limit);\n    var totalPages = Math.ceil(totalResults / limit);\n    var windowSize = 5;\n    var startPage = Math.max(0, Math.min(currentPage - 2, totalPages - windowSize));\n    startPage = Math.max(0, startPage);\n    var endPage = Math.min(startPage + windowSize - 1, totalPages - 1);\n    var showPreviousPages = currentPage > 0 && limit > 0;\n    var showNextPages = currentPage < (totalPages - 1) && limit > 0;\n    var showFirstPageLink = showPreviousPages && currentPage > 2 && totalPages > windowSize;\n    var showStartEllipsis = showPreviousPages && currentPage > 3 && totalPages > windowSize + 1;\n    var showLastPageLink = showNextPages && currentPage < totalPages - 3 && totalPages > windowSize;\n    var showEndEllipsis = showNextPages && currentPage < totalPages - 4 && totalPages > windowSize + 1;\n%>\n\n<div class="kuPagination">\n\n    <% if (showPreviousPages) { %>\n        <a href="javascript:void(0)" class="klevuPaginate" data-offset="<%=(offset - limit)%>">\n            <i class="fa fa-angle-left klevu-fa" aria-hidden="true"></i>\n        </a>\n    <% } %>\n\n    <% if (showFirstPageLink) { %>\n        <a href="javascript:void(0)" class="klevuPaginate" data-offset="0">1</a>\n    <% } %>\n\n    <% if (showStartEllipsis) { %>\n        <a href="javascript:void(0)" class="klevuPaginate kuEllipsis" data-offset="<%=((currentPage-5)*limit)%>">...</a>\n    <% } %>\n\n    <% for (var i = startPage; i <= endPage; i++) { %>\n        <% if (i === currentPage) { %>\n            <span class="kuCurrent"><%=(i+1)%></span>\n        <% } else { %>\n            <a href="javascript:void(0)" class="klevuPaginate" data-offset="<%=(i*limit)%>"><%=(i+1)%></a>\n        <% } %>\n    <% } %>\n\n    <% if (showEndEllipsis) { %>\n        <a href="javascript:void(0)" class="klevuPaginate kuEllipsis" data-offset="<%=((currentPage+5)*limit)%>">...</a>\n    <% } %>\n\n    <% if (showLastPageLink) { %>\n        <a href="javascript:void(0)" class="klevuPaginate" data-offset="<%=((totalPages-1)*limit)%>"><%=totalPages%></a>\n    <% } %>\n\n    <% if (showNextPages) { %>\n        <a href="javascript:void(0)" class="klevuPaginate" data-offset="<%=(offset + limit)%>">\n            <i class="fa fa-angle-right klevu-fa" aria-hidden="true"></i>\n        </a>\n    <% } %>\n\n</div>\n<% } %>\n',klevuLandingTemplateProductBlockCustom='\n<% \n    var updatedProductName = dataLocal.name;\n    if(klevu.search.modules.kmcInputs.base.getSkuOnPageEnableValue()) {\n        if(klevu.dom.helpers.cleanUpSku(dataLocal.sku)) {\n            updatedProductName += klevu.dom.helpers.cleanUpSku(dataLocal.sku);\n        }\n    }\n%>\n<li ku-product-block class="klevuProduct klevuProductListItem" data-id="<%=dataLocal.id%>">\n    <div class="kuProdWrap">\n        <header ku-block data-block-id="ku_landing_result_item_header">\n            <%=helper.render(\'landingProductBadge\', scope, data, dataLocal) %>\n        </header>\n        <% var desc = [dataLocal.summaryAttribute,dataLocal.packageText,dataLocal.summaryDescription].filter(function(el) { return el; }); desc = desc.join(" "); %>\n        <main ku-block data-block-id="ku_landing_result_item_info">\n            <div class="kuProdTop">\n                <div class="klevuImgWrap">\n                    <a data-id="<%=dataLocal.id%>"\n                    data-name="<%=dataLocal.name%>"\n                    data-price="<%=dataLocal.salePrice%>"\n                    data-item-category="<%=dataLocal.ga4category%>"\n                    data-item-category2="<%=dataLocal.ga4style%>"\n                    data-item-category3="<%=dataLocal.metal_name%>"\n                    data-item-category4="<%=dataLocal.period%>"\n                    data-item-date_of_piece="<%=dataLocal.date_of_piece%>"\n                    data-item-metal="<%=dataLocal.metal%>"\n                    data-item-primary_stone="<%=dataLocal.primary_stone%>"\n                    data-item-stone_shape="<%=dataLocal.stone_shape%>"\n                    href="<%=dataLocal.url%>" \n                    class="klevuProductClick kuTrackRecentView imageLink">\n                        <img src="<%=dataLocal.image.replace(\'_medium\', \'_500x500\')%>" origin="<%=dataLocal.image.replace(\'_medium\', \'_500x500\')%>" onerror="klevu.dom.helpers.cleanUpProductImage(this)" alt="<%=updatedProductName%>" class="kuProdImg">\n                        <%=helper.render(\'landingImageRollover\', scope, data, dataLocal) %>\n                    </a>                        \n                </div>\n                \x3c!-- <div class="kuQuickView">\n                    <button data-id="<%=dataLocal.id%>" class="kuBtn kuBtnLight kuQuickViewBtn" role="button" tabindex="0" area-label="">Quick view</button>\n                </div> --\x3e\n            </div>\n        </main>\n        <footer ku-block="" data-block-id="ku_landing_result_item_footer">\n            <div class="kuProdBottom">               \n                \x3c!-- START OF CUSTOMIZATION --\x3e\n                <div class="kuName">\n                    <a data-id="<%=dataLocal.id%>"\n                    data-name="<%=dataLocal.name%>"\n                    data-price="<%=dataLocal.salePrice%>"\n                    data-item-category="<%=dataLocal.ga4category%>"\n                    data-item-category2="<%=dataLocal.ga4style%>"\n                    href="<%=dataLocal.url%>"\n                    class="klevuProductClick kuTrackRecentView nameLink"\n                    title="<%= updatedProductName %>">\n                        <%= updatedProductName %>\n                    </a>\n                </div>\n                \x3c!-- END OF CUSTOMIZATION --\x3e\n                <% if(dataLocal.inStock && dataLocal.inStock != "yes") { %>\n                    <%=helper.render(\'landingProductStock\', scope, data, dataLocal) %>              \n                <% } else { %>\n                <% if(klevu.search.modules.kmcInputs.base.getShowPrices()) { %>\n                    <div class="kuPrice">\n                        <%\n                            var kuTotalVariants = klevu.dom.helpers.cleanUpPriceValue(dataLocal.totalVariants);\n                            var kuStartPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.startPrice,dataLocal.currency);\n                            var kuSalePrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.salePrice,dataLocal.currency);\n                            var kuPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.price,dataLocal.currency);\n                            var is_poa = dataLocal && dataLocal.poa;\n                        %>
1\n                        <span class="hide-small-mobile">\n                            Ref: <%= dataLocal.id %>\n                        </span>\n                        <% if(!Number.isNaN(kuPrice) && is_poa) { %>\n                            <span class="kuSalePrice kuSpecialPrice PoaPrice">\n                                POA\n                            </span>\n                        <% } else if(!Number.isNaN(kuTotalVariants) && !Number.isNaN(kuStartPrice)) { %>\n                            <div class="kuSalePrice kuStartPrice kuClippedOne">\n                                <span class="klevuQuickPriceGreyText"><%=helper.translate("Starting at")%></span>\n                                <span><%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.startPrice))%></span>                                \n                            </div>\n                        <% } else if(!Number.isNaN(kuSalePrice) && !Number.isNaN(kuPrice) && (kuPrice > kuSalePrice)){ %>\n                            <span class="kuOrigPrice kuClippedOne">\n                                <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                            </span>\n                            <span class="kuSalePrice kuSpecialPrice kuClippedOne">\n                                <%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice))%>\n                            </span>\n                        <% } else if(!Number.isNaN(kuSalePrice)) { %>\n                            <span class="kuSalePrice kuSpecialPrice">\n                                <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice)) %>\n                            </span>\n                        <% } else if(!Number.isNaN(kuPrice)) { %>\n                            <span class="kuSalePrice">\n                                <%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)) %>\n                            </span>\n                        <% } %>\n                        <%=helper.render(\'searchResultProductVATLabel\', scope, data, dataLocal) %>\n                    </div>\n                <% } %>\n                <% } %>\n            </div>\n         </footer>\n    </div>\n\n    <% if (!klevu_compare_disabled) { %>\n        <button class="klevu-compare" data-id="<%=dataLocal.id%>" data-itemGroupId="<%=dataLocal.itemGroupId%>">\n            <input id="klevuCompare_<%=dataLocal.id%>" class="klevu-compare__checkbox" type="checkbox" style="pointer-events:none"/>\n            <label for="klevuCompare_<%=dataLocal.id%>" class="klevu-compare__label"> <%= helper.translate("Compare")%> </label>\n        </button>\n    <% } %>\n\n    <div class="add-wishlist-klevu">\n        <img onclick="handleUpdateWishlist(event)" \n        data-jewelleryitem_id="<%=dataLocal.jewelleryitem_id%>" \n        data-id="<%=dataLocal.id%>"\n        data-name="<%=dataLocal.name%>"\n        data-price="<%=dataLocal.salePrice%>"\n        data-currency="<%=dataLocal.currency%>"\n        data-item-category="<%=dataLocal.ga4category%>"\n        data-item-category2="<%=dataLocal.ga4style%>"\n        data-item-category3="<%=dataLocal.metal_name%>"\n        data-item-category4="<%=dataLocal.period%>"\n        class="wishlist-update wishlist-heart-icon wishlist-filter" \n        src="/images/icon-heart.svg" \n        alt="Wishlist">\n    </div>\n \n</li>',KlevuLandingTemplateResultsCustom='\n<div class="kuResultsListing">\n    <div class="productList klevuMeta" data-section="productList">\n        <div class="kuResultContent">\n            <div class="kuResultWrap <%=(data.query.productList.filters.length == 0 )?\'kuBlockFullwidth\':\'\'%>">\n\n                <header id="klevu-sort-filters-header" class="klevu-sort-filters-header" ku-block data-block-id="ku_landing_result_header">\n                    <div class="hide-mobile klevu-filters-toggle-btn-container">\n                        <button id="filters-toggle-btn" class="klevu-filters-toggle-btn">\n                            <i style="display: none" id="filters-toggle-btn-icon-open" class="hamburger-icon"></i>\n                            <img style="display: inline" id="filters-toggle-btn-icon-close" src="/images/icon-close.svg" />
1\n                            <span class="filters-toggle-btn-text klevu-filters-toggle-btn-text note" id="filters-toggle-btn-text">Hide filters</span>\n                        </button>\n\n                        <span class="hide-large-tablet">&nbsp;&nbsp;&nbsp;&#124;&nbsp;</span>\n\n                        <% if(helper.hasResults(data,"productList")) { %>\n                            <%=helper.render(\'limit\',scope,data,"productList") %>\n                        <% } %>\n                    </div>\n\n                    <%=helper.render(\'klevuLandingTemplateResultsHeadingTitle\',scope,data,"productList") %>\n                    <%=helper.render(\'filtersTop\',scope,data,"productList") %>\n                    \n                    <h2 class="klevu-subtitle">Our Collection of Antique and Vintage Jewellery</h2>\n\n                    <% if(helper.hasResults(data,"productList")) { %>\n                    <div class="klevu-sort-by-filters-container">\n                        <button class="kuFiltersTitleHeading kuFiltersTitleHeading--button" data-original-content="<%=helper.translate("Show Filters")%>" data-toggle-content="<%=helper.translate("Hide Filters")%>"><%=helper.translate("Show Filters")%></button>\n                        <div class="klevu-sort-by-container">\n                            <%=helper.render(\'sortBy\',scope,data,"productList") %>\n                        </div>\n                    </div>\n                    <% } %>\n\n                    \n\n                </header>\n\n                <div class="ku_landing_main_content_container" ku-container data-container-id="ku_landing_main_content_container" data-container-role="content">\n                    <section id="klevu-jewellery-filters" ku-container data-container-id="ku_landing_main_content_left" data-container-position="left" data-container-role="left">\n                        <div ku-block data-block-id="ku_landing_left_facets">                                \n                            <%= helper.render(\'kuFilterTagsTemplate\',scope,data,"productList") %>\n                            <%=helper.render(\'filters\',scope,data,"productList") %>\n                        </div>\n                        <div ku-block data-block-id="ku_landing_left_call_outs"></div>\n                        <div ku-block data-block-id="ku_landing_left_banner"></div>\n                    </section>\n                    <section id="klevu-jewellery-plp" ku-container data-container-id="ku_landing_main_content_center" data-container-position="center" data-container-role="center">\n\n                        <div ku-block data-block-id="ku_landing_result_items">\n                            <div class="kuResults">\n                                <% if(helper.hasResults(data,"productList")) { %>\n                                    <ul id="klevu-product-grid">\n                                        <% helper.each(data.query.productList.result,function(key,item){ %>\n                                            <% if(item.typeOfRecord == "KLEVU_PRODUCT") { %>\n                                                <%=helper.render(\'productBlock\',scope,data,item) %>\n                                            <% } %>\n                                        <% }); %>\n                                    </ul>\n                                <% } else { %>\n                                    <div class="kuNoRecordsFoundLabelTextContainer">\n                                        <span class="kuNoRecordsFoundLabelText"><%= helper.translate("No records found for your selection") %></span>\n                                    </div>\n                                <% } %>\n                                <div class="kuClearBoth"></div>\n                            </div>\n                        </div>\n                        \n                        <div ku-block data-block-id="ku_landing_other_items">\n                            <%=helper.render(\'klevuLandingTemplateInfiniteScrollDown\',scope,data) %>                               \n                        </div>\n\n                    </section>\n                    <section ku-container data-container-id="ku_landing_main_content_right" data-container-position="right" data-container-role="right">\n                        <div ku-block data-block-id="ku_landing_right_facets"></div>\n                        <div ku-block data-block-id="ku_landing_right_call_outs"></div>\n                        <div ku-block data-block-id="ku_landing_right_banner"></div>\n                    </section>\n                </div>\n                <footer class="klevu-product-footer" ku-block data-block-id="ku_landing_result_footer">\n                    \x3c!-- START OF CUSTOMIZATION --\x3e\n                    <%=helper.render(\'pagination\',scope,data,"productList") %>\n                    \x3c!-- END OF CUSTOMIZATION --\x3e\n                </footer>\n            </div>\n        </div>\n    </div>\n\n    <% if(data.query.contentList) { %>\n        <div class="contentList klevuMeta" data-section="contentList" data-result-view="list">\n            <div class="kuResultContent">\n                <div class="kuResultWrap <%=(data.query.contentList.filters.length == 0 )?\'kuBlockFullwidth\':\'\'%>">\n\n                    <div class="ku_landing_main_content_container" ku-container data-container-id="ku_landing_main_content_container" data-container-role="content">\n                        <section ku-container data-container-id="ku_landing_main_content_left" data-container-position="left" data-container-role="left">\n                            <div ku-block data-block-id="ku_landing_left_facets">\n                                \n                                <%= helper.render(\'kuFilterTagsTemplate\',scope,data,"contentList") %>\n                                <%=helper.render(\'filters\',scope,data,"contentList") %>\n\n                            </div>\n                            <div ku-block data-block-id="ku_landing_left_call_outs"></div>\n                            <div ku-block data-block-id="ku_landing_left_banner"></div>\n                        </section>\n                        <section ku-container data-container-id="ku_landing_main_content_center" data-container-position="center" data-container-role="center">\n                            \n                            <header id="content-items-header" ku-block data-block-id="ku_landing_result_header" class="content-items-per-page">\n                                <%=helper.render(\'filtersTop\',scope,data,"contentList") %>\n                                \n                                <% if(helper.hasResults(data,"contentList")) { %>\n                                    <%=helper.render(\'limit\',scope,data,"contentList") %>\n                                    \x3c!-- START OF CUSTOMIZATION --\x3e\n                                    \x3c!-- END OF CUSTOMIZATION --\x3e\n                                <% } %>\n                                <div class="kuClearBoth"></div> \n                            </header>\n\n                            <div ku-block data-block-id="ku_landing_result_items">\n                                <div class="kuClearBoth"></div>\n                                <div class="kuResults">\n                                    <% if(helper.hasResults(data,"contentList")) { %>\n                                        <ul>\n                                            <% helper.each(data.query.contentList.result,function(key,item){ %>\n                                                <% if(item.typeOfRecord == "KLEVU_CMS") { %>\n                                                    <%=helper.render(\'contentBlock\',scope,data,item) %>\n                                                <% }%>\n                                            <% }); %>\n                                        </ul>\n                                    <% } else { %>\n                                        <div class="kuNoRecordsFoundLabelTextContainer">
1\n                                            <span class="kuNoRecordsFoundLabelText"><%= helper.translate("No records found for your selection") %></span>\n                                        </div>\n                                    <% } %>\n                                    <div class="kuClearBoth"></div>\n                                </div>\n                            </div>\n                            <div ku-block data-block-id="ku_landing_other_items">\n                                <%=helper.render(\'klevuLandingTemplateInfiniteScrollDown\',scope,data) %>\n                            </div>\n                            <footer ku-block data-block-id="ku_landing_result_footer">\n                              \x3c!-- START OF CUSTOMIZATION --\x3e\n                                <%=helper.render(\'pagination\',scope,data,"contentList") %>\n                              \x3c!-- END OF CUSTOMIZATION --\x3e\n                            </footer>\n                        </section>\n                        <section ku-container data-container-id="ku_landing_main_content_right" data-container-position="right" data-container-role="right">\n                            <div ku-block data-block-id="ku_landing_right_facets"></div>\n                            <div ku-block data-block-id="ku_landing_right_call_outs"></div>\n                            <div ku-block data-block-id="ku_landing_right_banner"></div>\n                        </section>\n                    </div>\n                    \n                </div>\n            </div>\n        </div>\n    <% } %> \n\n</div>',klevuLandingTemplateBaseCustom='\n<div ku-container data-container-id="ku_landing_main_container" data-container-role="main">\n\n    <header ku-container data-container-id="ku_landing_main_header_container" data-container-role="header">\n        <section ku-block data-block-id="ku_landing_main_header_sub_panel"></section>\n        <section ku-block data-block-id="ku_landing_main_header_banner">\n            <%=helper.render(\'klevuLandingPromotionBanner\',scope,data,"top") %>\n            <%=helper.render(\'klevuLandingPromotionBanner\',scope,data,"bottom") %>\n        </section>\n        <section ku-block data-block-id="ku_landing_main_header_site_navigation"></section>\n    </header>\n\n    <div class="kuContainer">\n        <% if(!helper.hasResults(data,"productList") && !helper.hasFilters(data,"productList")) { %>\n        <%=helper.render(\'noResultsFoundLanding\',scope) %>\n        <% } else { %>\n        <%= helper.render(\'klevuLandingTemplateSearchBar\', scope) %>\n        <%=helper.render(\'klevuLandingImageSearchUploadBanner\',scope,data) %>\n        <%= helper.render(\'tab-results\', scope) %>\n        <%= helper.render(\'results\',scope) %>\n        <% } %>\n        <div class="kuClearBoth"></div>\n    </div>\n\n    <footer ku-container data-container-id="ku_landing_main_footer_container" data-container-role="footer">\n        <section ku-block data-block-id="ku_landing_main_footer_sub_panel"></section>\n        <section ku-block data-block-id="ku_landing_main_footer_banner">\n\n        </section>\n    </footer>\n\n</div>\n\n\n<div class="klevu-compare-table" id="klevu-compare-table">\n    <table class="klevu-compare-table__products">\n        <div class="klevu-compare-table-header">\n            <label class="toggle-differences"><input type="checkbox" id="toggleDifferences" <% if (klevu_compare_show_differences_checked) { %>checked<% } %> /><%= helper.translate("Show only differences")%></label>\n            <button id="klevu-close-compare">\n                <svg style="pointer-events:none;" enable-background="new 0 0 386.667 386.667" height="15" viewBox="0 0 386.667 386.667" width="15">\n                    <path d="m386.667 45.564-45.564-45.564-147.77 147.769-147.769-147.769-45.564 45.564 147.769 147.769-147.769 147.77 45.564 45.564 147.769-147.769 147.769 147.769 45.564-45.564-147.768-147.77z"/>\n                </svg>\n            </button>\n        </div>\n        <thead>\n            <tr>\n                <th class="klevu-compare-table__label"></th>\n                <th><img src="" alt=""><span></span></th>\n            </tr>\n        </thead>\n        <tbody>\n            <tr>\n                <td class="klevu-compare-table__label">Label</td>\n                <td><div class="spec" spec-title="Label"></div></td>\n            </tr>\n        </tbody>\n    </table>\n    \n\n</div>\n',klevuLandingTemplateFiltersCustom='\n<% if(data.query[dataLocal].filters.length > 0 ) { %>    \n    <div class="kuFilters" role="navigation" data-position="left" aria-label="Product Filters" tabindex="0">\n\n        <div class="klevu-compare-widget klevu-compare-widget--klevu-hidden" id="klevu-compare-widget">\n            <ul class="klevu-compare-widget__images"></ul>\n            <div class="klevu-compare-widget__header">
1\n                <span><%= helper.translate("To compare")%><span class="klevu-compare-widget__selected-amount"></span></span>\n                <button class="btn btn-def" id="klevu-compare-button" type="button" disabled><%= helper.translate("Compare")%></button>\n            </div>\n        </div>\n\n        <% helper.each(data.query[dataLocal].filters,function(key,filter){ %>\n            <% if(filter.type == "OPTIONS"){ %>\n                <div class="kuFilterBox klevuFilter <%=(filter.multiselect)?\'kuMulticheck\':\'\'%>" data-filter="<%=filter.key%>" <% if(filter.multiselect){ %> data-singleselect="false" <% } else { %> data-singleselect="true"<% } %>>\n                    <div class="kuFilterHead <%=(filter.isCollapsed) ? \'kuExpand\' : \'kuCollapse\'%>">\n                        <% var filter_label = (filter.label=="klevu_price") ? "price" : filter.label; %>\n                        <%=helper.translate(filter_label)%>\n                    </div>\n                    <% var filter_id = (filter.label=="klevu_price") \n                        ? "price" \n                        : filter.label.toLowerCase().split(" ").join("_"); %>\n                    <div id="<%=filter_id%>" data-optionCount="<%= filter.options.length %>" class="kuFilterNames <%= (filter.options.length <= 5 ) ? \'kuFilterShowAll\': \'\' %> <%=(filter.isCollapsed) ? \'kuFilterCollapse\' : \'\'%>">\n                        <ul>\n                            <% helper.each(filter.options,function(key,filterOption){ %>\n                                <li <% if(filterOption.selected ==true) { %> class="kuSelected"<% } %>>\n                                    <a\n                                        target="_self" \n                                        href="#" \n                                        title="<%=helper.escapeHTML(filterOption.name)%>" \n                                        class="klevuFilterOption<% if(filterOption.selected ==true) { %> klevuFilterOptionActive<% } %>" \n                                        data-value="<%=helper.escapeHTML(filterOption.value)%>"\n                                        data-name="<%=helper.escapeHTML(filterOption.name)%>" \n                                    >\n                                        <span class="kuFilterIcon"></span>\n                                        <span class="kufacet-text"><%=filterOption.name%></span>\n                                        <% if(filterOption.selected ==true) { %>\n                                            <span class="kuFilterCancel">X</span>\n                                        <% } else { %>\n                                            <span class="kuFilterTotal"><%=filterOption.count%></span>\n                                        <% } %>\n                                    </a>\n                                </li>\n                                \n                            <%  }); %>\n                        </ul>\n                    </div>\n                </div>\n            <% } else if(filter.type == "SLIDER")  { %>\n                <div class="kuFilterBox klevuFilter" data-filter="<%=filter.key%>">\n                    <div class="kuFilterHead <%=(filter.isCollapsed) ? \'kuExpand\' : \'kuCollapse\'%>">\n                        <% var filter_label = (filter.label=="klevu_price") ? "price" : filter.label; %>\n                        <%=helper.translate(filter_label)%>\n                    </div>\n                    <div id="<%=filter_label%>" class="kuFilterNames sliderFilterNames <%=(filter.isCollapsed) ? \'kuFilterCollapse\' : \'\'%>">                           \n                        <div class="kuPriceSlider klevuSliderFilter" data-query = "<%=dataLocal%>">\n                            <div data-querykey = "<%=dataLocal%>" class="noUi-target noUi-ltr noUi-horizontal noUi-background kuSliderFilter kuPriceRangeSliderFilter<%=dataLocal%>"></div>\n                        </div>\n                    </div>\n                </div>\n            <% } else if (filter.type == "RATING")  { %>\n                <div class="kuFilterBox klevuFilter <%=(filter.multiselect)?\'kuMulticheck\':\'\'%>" data-filter="<%=filter.key%>
1" <% if(filter.multiselect){ %> data-singleselect="false" <% } else { %> data-singleselect="true"<% } %>>\n                    <div class="kuFilterHead <%=(filter.isCollapsed) ? \'kuExpand\' : \'kuCollapse\'%>">\n                        <%=helper.translate(filter.label)%>\n                    </div>\n                    <div data-optionCount="<%= filter.options.length %>" class="kuFilterNames <%= (filter.options.length <= 5 ) ? \'kuFilterShowAll\': \'\' %> <%=(filter.isCollapsed) ? \'kuFilterCollapse\' : \'\'%>">\n                        <ul>\n                            <% helper.each(filter.options,function(key,filterOption){ %>\n                                <li <% if(filterOption.selected ==true) { %> class="kuSelected"<% } %>>\n                                    <a\n                                        target="_self" \n                                        href="#" \n                                        title="<%=helper.escapeHTML(filterOption.name)%>" \n                                        class="klevuFilterOption<% if(filterOption.selected ==true) { %> klevuFilterOptionActive<% } %>" \n                                        data-value="<%=helper.escapeHTML(filterOption.value)%>"\n                                        data-name="<%=helper.escapeHTML(filterOption.name)%>"\n                                    >\n                                        <span class="kuFilterIcon"></span>\n                                        <span class="kufacet-text">\n                                            <div class="klevuFacetStars">\n                                                <div class="klevuFacetRating" style="width:<%=(20*Number(filterOption.name))%>%;"></div>\n                                            </div>\n                                        </span>\n                                        <% if(filterOption.selected ==true) { %>\n                                            <span class="kuFilterCancel">X</span>\n                                        <% } else { %>\n                                            <span class="kuFilterTotal"><%=filterOption.count%></span>\n                                        <% } %>\n                                    </a>\n                                </li>\n                                \n                            <%  }); %>\n                        </ul>\n                    </div>\n                </div>\n            <% } else { %>\n                \x3c!-- Other Facets --\x3e\n            <% } %>\n        <% }); %>\n\n        <div class="need-help-container hide-mobile">\n            <div class="need-help-title">Need Help?</div>\n            <a href="mailto:[email protected]" class="need-help-text-container">\n                <img class="need-help-img" src="/images/icon-email-2025.svg" alt="Email us">\n                <span class="need-help-text">Email Us</span>\n            </a>\n            <a href="tel:+442074300393" class="need-help-text-container">\n                <img class="need-help-img" src="/images/icon-phone-2025.svg" alt="Phone us">\n                <span class="need-help-text gtm-phone">+44 20 7430 0393</span>\n            </a>\n            <a href="/contact-form" class="need-help-text-container need-help-main-container">\n                <img class="need-help-img need-help-img-main" src="/images/icon-book-appointment-2025-need-help.svg" alt="Book an appointment">\n                <span class="need-help-main">Book an appointment</span>\n            </a>\n        </div>\n        \n        \x3c!-- <div class="kuFiltersFooter">\n            <a target="_self" href="javascript:void(0)" class="kuBtn kuFacetsSlideOut kuMobileFilterCloseBtn" role="button" tabindex="0" area-label=""><%=helper.translate("Close")%></a>\n        </div> --\x3e\n\n    </div>\n<% } %>';async function handleUpdateWishlist(e){const t=e.target.dataset.jewelleryitem_id,a=!e.target.classList.contains("wishlist-filter"),n=`/ajax_wishlist.html?jewelleryitem_id=${t}&add=${a?0:1}`;try{const t=await fetch(n);if(!t.ok)throw new Error(`HTTP error! Status: ${t.status} ${t.statusText}`);const l=await t.json();if(0===l.contact_id)window.location.href="/myaccount";else{if(l.error)return void alert(l.error);l.success&&(a?(e.target.src="/images/icon-heart.svg",e.target.classList.add("wishlist-filter")):(e.target.src="/images/icon-heart-filled-gold.svg",e.target.classList.remove("wishlist-filter")),document.dispatchEvent(new CustomEvent("wishlistUpdatedKlevu",{detail:{button:e.target,adding:!a,wishlist_size:l.wishlist_size,wishlist_total:l.wishlist_total}})))}}catch(e){console.error(`Error fetching response: ${e.message}`)}}function createItemsForTracking(e){const t=[];return e.forEach(((e,a)=>{const n=e.getAttribute("data-id"),l=e.getAttribute("data-name"),i=parseInt(e.getAttribute("data-price")),r=e.getAttribute("data-item-category"),s=e.getAttribute("data-item-category2"),c=e.getAttribute("data-item-category3"),o=e.getAttribute("data-item-category4"),d=e.getAttribute("data-item-date_of_piece"),u=e.getAttribute("data-item-metal"),k=e.getAttribute("data-item-primary_stone"),p=e.getAttribute("data-item-stone_shape"),m={item_id:n,item_name:l,price:i,index:a};d&&(m.date_of_piece=d),o&&(m.period=o),u&&(m.metal=u),k&&(m.primary_stone=k),p&&(m.stone_shape=p),assignGA4ItemCategories(m,r,s,c,o),t.push(m)})),t}function setClickHandlersForSelectItem(e){e.forEach(((e,t)=>{e.querySelectorAll("a.imageLink, a.nameLink").forEach((e=>{e.dataset.index=t,e.addEventListener("click",handleTrackSelectItemFromList)}))}))}function removeClickHandlers(e,t){e.forEach((e=>{e.removeEventListener("click",t)}))}function handleTrackSelectItemFromList(e){const t=e.currentTarget,a=t.getAttribute("data-id"),n=t.getAttribute("data-name"),l=parseInt(t.getAttribute("data-price")),i=parseInt(t.dataset.index),r=t.getAttribute("data-item-category"),s=t.getAttribute("data-item-category2"),c=t.getAttribute("data-item-category3"),o=t.getAttribute("data-item-category4"),d={item_id:a,item_name:n,price:l,index:i};assignGA4ItemCategories(d,r,s,c,o);trackStandardEvent("select_item",{items:[d]})}document.addEventListener("DOMContentLoaded",(()=>{window.dataLayer=window.dataLayer||[];const e=document.querySelectorAll(".nav-search"),t=document.getElementById("my-search"),a=document.getElementById("popout-close-btn"),n=document.getElementById("klevu-popout");document.addEventListener("wishlistUpdatedKlevu",(function(e){const t=e.detail.button,a=parseInt(t.getAttribute("data-price"),10),n={item_id:t.getAttribute("data-id"),item_name:t.getAttribute("data-name"),price:a};assignGA4ItemCategories(n,t.getAttribute("data-item-category"),t.getAttribute("data-item-category2"),t.getAttribute("data-item-category3"),t.getAttribute("data-item-category4"));const l={currency:t.getAttribute("data-currency"),value:e.detail.wishlist_total,wishlist_size:e.detail.wishlist_size,items:[n]};trackStandardEvent(e.detail.adding?"add_to_wishlist":"remove_from_wishlist",l)}));const l=new MutationObserver((i=>
1{i.forEach((i=>{if("childList"===i.type){const i=document.querySelector(".klevuTarget");i&&(l.disconnect(),document.addEventListener("click",(l=>{!function(l,i){const r=!n.contains(l.target)&&!Array.from(e).some((e=>e.contains(l.target)))&&!i.contains(l.target),s=n.contains(l.target)&&!t.contains(l.target);r||a.contains(l.target)?function(e){n.classList.remove("active"),t.value="",document.body.classList.remove("noscroll");const a=setInterval((()=>{const t=getComputedStyle(e);"none"!==t.display&&(e.style.display="none"),"none"===t.display&&clearInterval(a)}),100)}(i):s&&(i.style.display="block")}(l,i)})))}}))})),i=new MutationObserver((e=>{e.forEach((e=>{e.addedNodes.forEach((e=>{if(e.classList?.contains("productListActive")){const e=createItemsForTracking(document.querySelectorAll(".kuResults ul li a.imageLink"));trackStandardEvent("view_item_list",{item_list_id:"jewelleryitem_list",item_list_name:"Jewellery Item List",items:e});const t=document.querySelectorAll(".kuResults ul li a.imageLink, .kuResults ul li a.nameLink"),a=document.querySelectorAll(".kuResults ul li.klevuProductListItem");removeClickHandlers(t,handleTrackSelectItemFromList),setClickHandlersForSelectItem(a)}if(e.classList&&["productListActive","contentListActive"].some((t=>e.classList.contains(t)))){const e=document.getElementById("filters-toggle-btn"),t=document.querySelector(".klevu-filters-toggle-btn-container"),a=document.getElementById("klevu-jewellery-filters"),n=document.getElementById("klevu-jewellery-plp"),l=document.querySelector(".filters-toggle-btn-text"),i=document.getElementById("filters-toggle-btn-icon-open"),r=document.getElementById("filters-toggle-btn-icon-close"),c=document.getElementById("klevu-product-grid");let o="true"===localStorage.getItem("showFilters");!async function(){try{const e=await fetch("/klevu_get_wishlistitems");if(!e.ok)throw new Error("Failed to fetch wishlist items");!function(e){document.querySelectorAll(".add-wishlist-klevu img").forEach((t=>{const a=t.getAttribute("data-jewelleryitem_id");e.includes(a)?(t.src="/images/icon-heart-filled-gold.svg",t.classList.remove("wishlist-filter")):t.src="/images/icon-heart.svg"}))}(await e.json())}catch(e){console.error("Error fetching wishlist items:",e)}}(),function(e,t,a,n,l,i,r,s,c){l.textContent=e?"Hide filters":"Show filters",i.style.display=e?"none":"inline",r.style.display=e?"inline":"none",e?(a.classList.remove("hide-filters"),n.style.width="",s.style.width="115px",c.classList.add("klevu-grid-3")):(a.style.width="0",a.classList.add("hide-filters"),n.style.width="100%",s.style.width="125px");a.hasAttribute("ku-empty")&&(n.style.width="100%",t.style.visibility="hidden")}(o,t,a,n,l,i,r,e,c),e.addEventListener("click",(function(){o=!o,localStorage.setItem("showFilters",o),function(e,t,a,n){e.classList.contains("hide-filters")?(e.classList.remove("hide-filters"),e.style.width="",t.style.width="",a.style.width="115px",n.classList.add("klevu-grid-3")):(e.classList.add("hide-filters"),a.style.width="125px",e.addEventListener("transitionend",(function a(){e.classList.contains("hide-filters")&&(e.style.width="0",t.style.width="100%",n.classList.remove("klevu-grid-3")),e.removeEventListener("transitionend",a)})))}(a,n,e,c),function(e){const t=document.querySelector(".filters-toggle-btn-text"),a=1e3,n=e.classList.contains("hide-filters")?"Show filters":"Hide filters",l=document.createElement("span");l.className="filters-toggle-btn-text klevu-filters-toggle-btn-text note",l.textContent=n,l.style.position="absolute",l.style.top="7px",l.style.left="15px",l.style.opacity="0";const i=document.getElementById("filters-toggle-btn-icon-open"),r=document.getElementById("filters-toggle-btn-icon-close"),c="none"!==window.getComputedStyle(i).display?r:i,o="none"!==window.getComputedStyle(i).display?i:r;t.insertAdjacentElement("afterend",l),s(t,a,"out",(()=>t.remove())),s(l,a,"in"),s(o,a,"out",(()=>o.style.display="none")),c.style.display="inline",c.style.opacity="0",s(c,a,"in")}(a)}))}}))}))}));function r(){n.classList.add("active"),t.focus(),document.body.classList.add("noscroll")}function s(e,t,a,n){let l="in"===a?0:1;const i=50/t*("in"===a?1:-1);"in"===a&&(e.style.display="block"),function t(){l+=i,"in"===a&&l>=1||"out"===a&&l<=0?(e.style.opacity="in"===a?"1":"0","out"===a&&(e.style.display="none"),n&&n()):(e.style.opacity=l,requestAnimationFrame(t))}()}l.observe(document.body,{childList:!0,subtree:!0}),i.observe(document.body,{childList:!0,subtree:!0}),e.forEach((e=>{e.addEventListener("click",r
vendor: 8 bytes, line 1
1)}))}));

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