PageSourceSearch

https://www.wolfoil.com/wolf/woc/assets/js/sgs.e134f8d7dc0f3dd49d9f.js

js wolfoil.com collected 2026-09-24 12:11:24 UTC 10,343 bytes, 110 lines download raw bytes

1"use strict";(self.webpackChunkwebpack=self.webpackChunkwebpack||[]).push([[155],{7152:function(e,t,s){s.d(t,{p:function(){return i}});class i{static mapRangeToCssVariable(e){return e?`--brand__color--${e.toLowerCase().trim()}`:""}}},4826:function(e,t,s){s.r(t),s.d(t,{Custom_SuggestionSearch_Container:function(){return c}});var i=s(6901),r=s(7073),n=s(2832),a=s(5450),o=s(4527);class c extends i.Dlw_SuggestionSearch_Container{connectedCallback(){super.connectedCallback(),this.messageHandler.register("SuggestionSelected",(e=>this.onSuggestionSelected(e)))}searchByButtonClick(){var e=this.getInputValue();this.messageHandler.sendMessage("SearchInputEnter",this.componentId,{searchText:e})}getInputValue(){var e=this.querySelector(`[data-webid=${this.getInputWebId()}]`);return e?.value}getInputWebId(){return"searchInput"+(this.componentId?`-${this.componentId}`:"")}onSuggestionSelected(e){var t={competitorProduct:e.suggestion.item.fields};r.p.sendMessage(n.h.CompetitorProductSelected,t),o.x.dispatchSelectItemEvent({item_list_name:"Competitor products",items:[t.competitorProduct]})}render(){if(!a.SuggestionSearch.isHeaderSearch(this.componentId))return super.render();return i.html`
2            <div class="c-sgs__container">
3                <div class="c-sgs__search">
4                    <h2 class="h3 c-sgs__search-title">
5                        ${(0,i.translate)("searchBarTitle",{fallback:"What are you looking for?"})}
6                    </h2>
7                    ${this.renderInput()}
8                    <button class="a-btn a-btn--primary c-sgs__search-button" @click="${()=>this.searchByButtonClick()}">
9                        ${(0,i.translate)("searchButtonText",{fallback:"Search"})}
10                    </button>
11                </div>
12                ${this.renderResults()}
13            </div>
14        `}}},7821:function(e,t,s){s.r(t),s.d(t,{Custom_Suggestion_Facet:function(){return n}});var i=s(6901),r=s(3668);class n extends i.Dlw_Suggestion_Facet{renderTitle(e){let t=(this.suggestion.filter.dataView?.toLowerCase()??"").includes("news")?`${r.q.News}Plural`:`${r.q.Product}Plural`;return i.html`
15            <div class="c-sgs__filter-item">
16                ${(0,i.translate)("filterSuggestionTemplate",{pluralType:{key:t,fallback:"products"},category:{key:`${this.suggestion.category}`,fallback:this.suggestion.category},value:{fallback:this.suggestion.filter.title},fallback:"Filter on {pluralType} with {category} : {value}"})}
17            </div>
18        `}renderCategory(e){return i.html``}}},8762:function(e,t,s){s.r(t),s.d(t,{Custom_Suggestion_Item:function(){return a}});var i=s(6901),r=s(3668),n=s(7152);class a extends i.Dlw_Suggestion_Item{async connectedCallback(){super.connectedCallback();var e=await Promise.resolve().then(s.bind(s,9913));this.messageHandler=new e.Dlw_DOM_Message_Handler("customer-locator")}renderRange(){if(!this.suggestion.item.fields.title2)return i.html``;var e=this.suggestion.item.fields.rangeCode;return e&&0!==e.length||(e=this.suggestion.item.fields.range),i.html`<span class="c-sgs__product-color" style="color:rgb(var(${n.p.mapRangeToCssVariable(e)}))">${this.suggestion.item.fields.title2}</span>`}renderProductSuggestion(){var e=this.suggestion.item.fields,t="tech"===e.title3?.toLowerCase()?"":" ";return i.html`
19            <div class="c-sgs__item-container">
20                <div class="c-sgs__item-icon c-sgs__item-icon--product"></div>
21                <div class="c-sgs__item-text-container">
22                    <h4 class="c-sgs__item-main-title">
23                        ${e.title1}
24                        ${this.renderRange()}${t}${e.title3}
25                        <span class="c-sgs__item-title-big">
26                            ${e.title4}
27                        </span>
28                    </h4>
29                    <div class="c-sgs__item-sub">
30                        ${e.application}
31                    </div>
32                    <div class="c-sgs__item-sub">
33                        ${(0,i.translate)("productIdLabel",{fallback:"Product:"})} ${e.fluidId}
34                    </div>
35                </div>
36            </div>
37        `}renderNewsSuggestion(){var e=this.suggestion.item.fields;const t=Array.isArray(e.categoryTagTexts)&&e.categoryTagTexts.length>0?e.categoryTagTexts.slice():[e.categoryTagText?`${e.categoryTagText}`:""];return i.html`
38                <div class="c-sgs__item-container">
39                    <div class="c-sgs__item-icon c-sgs__item-icon--news"></div>
40                    <div class="c-sgs__item-text-container">
41                        <h4 class="c-sgs__item-main-title">
42                            ${e.title}
43                        </h4>
44                        <div class="c-sgs__item-tags">
45                            ${t.map((e=>e?i.html`<span class="c-sgs__item-tag">${e}</span>`:i.html``))}
46                            <span class="c-sgs__item-tag">${e.marketingTagText}</span>
47                        </div>
48                    </div>
49                </div>
50        `}renderCompetitorProductSuggestion(){return i.html`
51            <div class="c-sgs__item-container">
52                <div class="c-sgs__item-text-container">
53                    <h4 class="c-sgs__item-main-title">
54                        ${this.suggestion.item.fields.name}
55                    </h4>
56                </div>
57            </div>
58        `}clickCustomerSuggestion(e){this.messageHandler.sendMessage("customer-clicked",{item:e})}renderCustomerSuggestion(){var e=this.suggestion.item.fields;let t=a.countryTranslator.getCountryDisplayName(e.countryCode);return i.html`
59            <div class="c-sgs__item-container" @click="${()=>this.clickCustomerSuggestion(this.suggestion.item)}">
60                <div class="c-sgs__item-text-container">
61                    <h4 class="c-sgs__item-main-title">
62                        ${e.name}
63                    </h4>
64                    <div class="c-sgs__item-sub" >
65                        ${e.street??""} ${e.number??""} <br/>
66                        ${e.postalCode??""} ${e.city??""},  ${t??""}
67                    </div>
68                </div>
69            </div>
70        `}renderSuggestionSummary(){var e=this.suggestion.category;return e===r.q.Product?this.renderProductSuggestion():e===r.q.News?this.renderNewsSuggestion():e===r.q.CompetitorProduct?this.renderCompetitorProductSuggestion():e===r.q.Customer?this.renderCustomerSuggestion():i.html``}}},8197:function(e,t,s){s.r(t),s.d(t,{Custom_Suggestion_Results:function(){return o}});var i=s(6901),r=s(3668),n=s(5450),a=s(4527);class o extends i.Dlw_Suggestion_Results{updateSuggestions(e){super.updateSuggestions(e),n.SuggestionSearch.isCompetitorProductSearch(this.componentId)&&a.x.dispatchSearchEvent({search_term:this.suggestionsShownForText})}selectNextSuggestion(e,t){if(this.reorderedSuggestions&&0!=this.reorderedSuggestions.length)if(this.selectedSuggestion){let s=this.reorderedSuggestions.indexOf(this.selectedSuggestion)+e,i=this.reorderedSuggestions[s];this.selectedSuggestion=void 0!==i?i:this.reorderedSuggestions[t]}else this.selectedSuggestion=this.reorderedSuggestions[t]}renderCompetitorProductSuggestions(){return i.html`
71            <li>
72                <ul class="c-competitor__sgs-results">
73                    ${super.renderSuggestions()}
74                </ul>
75            </li>
76            <li>
77                ${this.renderGroupHelpText(r.q.CompetitorProduct)}
78            </li>            
79        `}renderSuggestions(){if(n.SuggestionSearch.isCompetitorProductSearch(this.componentId))return this.renderCompetitorProductSuggestions();if(!n.SuggestionSearch.isHeaderSearch(this.componentId))return super.renderSuggestions();if(!this.suggestions||0===this.suggestions.length)return i.html``;var e=this.suggestions.reduce(((e,t)=>{const{category:s,filter:i,item:r}=t;return i?(e.filters[s]=e.filters[s]??[],e.filters[s].push(t)):r&&(e.items[s]=e.items[s]??[],e.items[s].push(t)),e}),{items:[],filters:[]});return this.reorderedSuggestions=[...Object.entries(e.items).flatMap((e=>e[1])),...Object.entries(e.filters).flatMap((e=>e[1]))],i.html`
80                    ${Object.entries(e.items).length>0?i.html` 
81                       ${this.renderSuggestionsGroup(e.items,!0)} 
82                    `:""}
83
84                    ${Object.entries(e.filters).length>0?i.html`
85                        ${this.renderSuggestionsGroup(e.filters,!1)}
86                    `:""}
87                `}getUrlTemplate(e){return e===r.q.Product?o.productFilterUrlTemplate:e===r.q.News?o.newsFilterUrlTemplate:""}renderGroupHelpText(e){return e!==r.q.CompetitorProduct?i.html``:i.html`
88            <div class="c-sgs__help-container">
89                <p class="c-sgs__help">
90                    ${(0,i.translate)(`${e}HelpText`,null,null,!0)}
91                </p>
92            </div>
93        `}showResultsBox(){this.suggestionsShownForText.length>0&&n.SuggestionSearch.isCompetitorProductSearch(this.componentId)?this.hideSearchResults=!1:super.showResultsBox()}renderSuggestionsGroup(e,t){return i.html`${Object.entries(e).map((e=>{let[s,r]=e;return i.html`
94                <li class="c-sgs__result-item">
95                    <h3 class="h4 c-sgs__result-list-title">
96                        ${t?(0,i.translate)(`${s}Plural`):`${s}`}
97                    </h3>
98                    <div class="c-sgs__result-list">
99                        ${r.map((e=>this.renderBySuggestion(e)))}
100                        ${t&&o.productFilterUrlTemplate?i.html`
101                                <div class="c-sgs__link-more"> 
102                                    <a class="a-btn a-btn--link a-btn--arrow-right" href="${this.getUrlTemplate(s)}?filter=search(${encodeURIComponent(this.searchInputElement.value)})">
103                                        ${(0,i.translate)("viewMoreOfGroup",{pluralType:{key:`${s}Plural`,fallback:"products"}})}
104                                    </a> 
105                                </div>
106                            `:""}
107                    </div>
108                </li>
109            `}))}
110        `}}},4527:function(e,t,s){var i;s.d(t,{x:function(){return r}});class r{}i=r,r.SELECT_ITEM_EVENT="select_item",r.SEARCH_EVENT="search",r.dispatchGTMEvent=(e,t)=>
110{gtag("event",e,t)},r.dispatchSelectItemEvent=e=>{i.dispatchGTMEvent(i.SELECT_ITEM_EVENT,e)},r.dispatchSearchEvent=e=>{i.dispatchGTMEvent(i.SEARCH_EVENT,e)}}}]);

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.