PageSourceSearch

https://www.tip-pumpen.de/theme/0e38d563cdfd2354a419f47224c86f50/j…s-elements.product-advisor.plugin.c68a2f.js

js tip-pumpen.de collected 2026-10-04 20:33:52 UTC 10,454 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[27822],{156(e){var t=function(e){var t;return!!e&&"object"==typeof e&&"[object RegExp]"!==(t=Object.prototype.toString.call(e))&&"[object Date]"!==t&&e.$$typeof!==s},s="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function i(e,t){return!1!==t.clone&&t.isMergeableObject(e)?a(Array.isArray(e)?[]:{},e,t):e}function r(e,t,s){return e.concat(t).map(function(e){return i(e,s)})}function n(e){return Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[])}function o(e,t){try{return t in e}catch(e){return!1}}function a(e,s,l){(l=l||{}).arrayMerge=l.arrayMerge||r,l.isMergeableObject=l.isMergeableObject||t,l.cloneUnlessOtherwiseSpecified=i;var c,d,h=Array.isArray(s);return h!==Array.isArray(e)?i(s,l):h?l.arrayMerge(e,s,l):(d={},(c=l).isMergeableObject(e)&&n(e).forEach(function(t){d[t]=i(e[t],c)}),n(s).forEach(function(t){(!o(e,t)||Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))&&(o(e,t)&&c.isMergeableObject(s[t])?d[t]=(function(e,t){if(!t.customMerge)return a;var s=t.customMerge(e);return"function"==typeof s?s:a})(t,c)(e[t],s[t],c):d[t]=i(s[t],c))}),d)}a.all=function(e,t){if(!Array.isArray(e))throw Error("first argument should be an array");return e.reduce(function(e,s){return a(e,s,t)},{})},e.exports=a},220(e,t,s){s.d(t,{A:()=>a});var i=s(156),r=s.n(i),n=s(707),o=s(308);class a{constructor(e,t={},s=!1){if(!(e instanceof Node)){console.warn(`There is no valid element given while trying to create a plugin instance for "${s}".`);return}this.el=e,this.$emitter=new o.A(this.el),this._pluginName=this._getPluginName(s),this.options=this._mergeOptions(t),this._initialized=!1,this._registerInstance(),this._init()}init(){console.warn(`The "init" method for the plugin "${this._pluginName}" is not defined. The plugin will not be initialized.`)}update(){}_init(){this._initialized||(this.init(),this._initialized=!0)}_update(){this._initialized&&this.update()}_mergeOptions(e){let t=[this.constructor.options,this.options,e];return t.push(this._getConfigFromDataAttribute()),t.push(this._getOptionsFromDataAttribute()),r().all(t.filter(e=>e instanceof Object&&!(e instanceof Array)).map(e=>e||{}))}_getConfigFromDataAttribute(){let e={};if("function"!=typeof this.el.getAttribute)return e;let t=n.A.toDashCase(this._pluginName),s=this.el.getAttribute(`data-${t}-config`);return s?window.PluginConfigManager.get(this._pluginName,s):e}_getOptionsFromDataAttribute(){let e={};if("function"!=typeof this.el.getAttribute)return e;let t=n.A.toDashCase(this._pluginName),s=this.el.getAttribute(`data-${t}-options`);if(s)try{return JSON.parse(s)}catch(e){console.error(`The data attribute "data-${t}-options" could not be parsed to json: ${e.message}`)}return e}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(e){return e||(e=this.constructor.name),e}}},308(e,t,s){s.d(t,{A:()=>i});class i{constructor(e=document){this._el=e,e.$emitter=this,this._listeners=[]}publish(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=new CustomEvent(e,{detail:t,cancelable:s});return this.el.dispatchEvent(i),i}subscribe(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=this,r=e.split("."),n=s.scope?t.bind(s.scope):t;if(s.once&&!0===s.once){let t=n;n=function(s){i.unsubscribe(e),t(s)}}return this.el.addEventListener(r[0],n),this.listeners.push({splitEventName:r,opts:s,cb:n}),!0}unsubscribe(e){let t=e.split(".");return this.listeners=this.listeners.reduce((e,s)=>([...s.splitEventName].sort().toString()===t.sort().toString()?this.el.removeEventListener(s.splitEventName[0],s.cb):e.push(s),e),[]),!0}reset(){return this.listeners.forEach(e=>{this.el.removeEventListener(e.splitEventName[0],e.cb)}),this.listeners=[],!0}get el(){return this._el}set el(e){this._el=e}get listeners(){return this._listeners}set listeners(e){this._listeners=e}}},707(e,t,s){s.d(t,{A:()=>i});
1class i{static ucFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}static lcFirst(e){return e.charAt(0).toLowerCase()+e.slice(1)}static toDashCase(e){return e.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(e,t){let s=i.toUpperCamelCase(e,t);return i.lcFirst(s)}static toUpperCamelCase(e,t){return t?e.split(t).map(e=>i.ucFirst(e.toLowerCase())).join(""):i.ucFirst(e.toLowerCase())}static parsePrimitive(e){try{return/^\d+(.|,)\d+$/.test(e)&&(e=e.replace(",",".")),JSON.parse(e)}catch(t){return e.toString()}}}},822(e,t,s){s.r(t),s.d(t,{default:()=>r});var i=s(220);class r extends i.A{static #e=this.options={slideSelector:".rhweb-product-advisor-slide",activeClass:"is-active",startBtnSelector:"[data-advisor-start]",answerSelector:"[data-advisor-answer]",nextBtnSelector:"[data-advisor-next]",backBtnSelector:"[data-advisor-back]",restartBtnSelector:"[data-advisor-restart]",resultContainerSelector:"[data-advisor-results]",resultHeaderSelector:"[data-advisor-result-header]",noResultsSelector:"[data-advisor-no-results]",productPoolSelector:"[data-advisor-product-pool]",selectedClass:"is-selected",animationDuration:400};init(){this.slides=this.el.querySelectorAll(this.options.slideSelector),this.currentSlideIndex=0,this.selectedAnswers={},this.contentAnimation=this.el.dataset.contentAnimation||"none",this._registerEvents()}_registerEvents(){let e=this.el.querySelector(this.options.startBtnSelector);e&&e.addEventListener("click",()=>this._goToSlide(1)),this.el.querySelectorAll(this.options.answerSelector).forEach(e=>{e.addEventListener("click",e=>this._onAnswerClick(e))}),this.el.querySelectorAll(this.options.nextBtnSelector).forEach(e=>{e.addEventListener("click",()=>this._goToNextSlide())}),this.el.querySelectorAll(this.options.backBtnSelector).forEach(e=>{e.addEventListener("click",()=>this._goBack())});let t=this.el.querySelector(this.options.restartBtnSelector);t&&t.addEventListener("click",()=>this._restart())}_onAnswerClick(e){let t=e.currentTarget,s=t.closest(this.options.slideSelector),i=parseInt(s.dataset.questionIndex,10);if("true"===s.dataset.multiselect){t.classList.toggle(this.options.selectedClass);let e=s.querySelector(this.options.nextBtnSelector);if(e){let t=s.querySelectorAll(`${this.options.answerSelector}.${this.options.selectedClass}`).length>0;e.disabled=!t}}else{s.querySelectorAll(this.options.answerSelector).forEach(e=>{e.classList.remove(this.options.selectedClass)}),t.classList.add(this.options.selectedClass),this._collectExcludeIdsForQuestion(s,i),this._autoAdvance(s);return}this._collectExcludeIdsForQuestion(s,i)}_collectExcludeIdsForQuestion(e,t){let s=e.querySelectorAll(`${this.options.answerSelector}.${this.options.selectedClass}`);if(0===s.length){this.selectedAnswers[t]=[];return}if("true"===e.dataset.multiselect&&1!==s.length){let e=[];s.forEach(t=>{try{let s=JSON.parse(t.dataset.excludeProductIds||"[]");e.push(new Set(s))}catch(t){e.push(new Set)}});let i=[...e[0]].filter(t=>e.every(e=>e.has(t)));this.selectedAnswers[t]=i}else{let e=[];s.forEach(t=>{try{let s=JSON.parse(t.dataset.excludeProductIds||"[]");e.push(...s)}catch(e){}}),this.selectedAnswers[t]=[...new Set(e)]}}_autoAdvance(e){e.querySelectorAll(`${this.options.answerSelector}.${this.options.selectedClass}`).length>0&&(clearTimeout(this._advanceTimeout),this._advanceTimeout=setTimeout(()=>{this._goToNextSlide()},600))}_goToNextSlide(){let e=this.currentSlideIndex+1;e>=this.slides.length||("result"===this.slides[e].dataset.slide&&this._buildResults(),this._goToSlide(e))}_goBack(){this.currentSlideIndex>0&&this._goToSlide(this.currentSlideIndex-1)}_getAnimationClass(e){if("none"===this.contentAnimation)return null;let t={fadeIn:{forward:"rhweb-advisor-anim-fadeIn",backward:"rhweb-advisor-anim-fadeIn"},fadeInUp:{forward:"rhweb-advisor-anim-fadeInUp",backward:"rhweb-advisor-anim-fadeInDown"},fadeInDown:{forward:"rhweb-advisor-anim-fadeInDown",backward:"rhweb-advisor-anim-fadeInUp"},fadeInLeft:{forward:"rhweb-advisor-anim-fadeInLeft",backward:"rhweb-advisor-anim-fadeInRight"},fadeInRight:{forward:"rhweb-advisor-anim-fadeInRight",backward:"rhweb-advisor-anim-fadeInLeft"}}[this.contentAnimation];return t?t[e]:null}_goToSlide(e){if(e<0||e>=this.slides.length)return;let t=this.slides[this.currentSlideIndex],s=this.slides[e],i=e>this.currentSlideIndex?"forward":"backward",r=this.options.animationDuration;t.style.transition=`opacity ${r/2}ms ease`,t.style.opacity="0",setTimeout(()=>{t.classList.remove(this.options.activeClass),t.style.transition="",t.style.opacity="";let r=s.querySelector(".rhweb-product-advisor-content");r&&(r.classList.remove("rhweb-advisor-anim-fadeIn","rhweb-advisor-anim-fadeInUp","rhweb-advisor-anim-fadeInDown","rhweb-advisor-anim-fadeInLeft","rhweb-advisor-anim-fadeInRight"),r.offsetWidth),s.classList.add(this.options.activeClass);let n=this._getAnimationClass(i);n&&r&&r.classList.add(n),this.currentSlideIndex=e},r/2)}_buildResults(){let e=this.el.querySelector(this.options.productPoolSelector),t=this.el.querySelector(this.options.resultContainerSelector),s=this.el.querySelector(this.options.resultHeaderSelector),i=this.el.querySelector(this.options.noResultsSelector);if(!e||!t)return;let r=[...e.querySelectorAll("[data-product-id]")].map(e=>e.dataset.productId),n=new Set;
1Object.values(this.selectedAnswers).forEach(e=>{e.forEach(e=>n.add(e))});let o=r.filter(e=>!n.has(e));if(t.innerHTML="",0===o.length){s&&(s.style.display="none"),i&&(i.style.display="");return}s&&(s.style.display=""),i&&(i.style.display="none"),o.forEach(s=>{let i=e.querySelector(`[data-product-id="${s}"]`);i&&t.appendChild(i.cloneNode(!0))}),window.PluginManager&&window.PluginManager.initializePlugins()}_restart(){this.selectedAnswers={},this.el.querySelectorAll(`.${this.options.selectedClass}`).forEach(e=>{e.classList.remove(this.options.selectedClass)}),this.el.querySelectorAll(this.options.nextBtnSelector).forEach(e=>{e.disabled=!0});let e=this.el.querySelector(this.options.resultContainerSelector);e&&(e.innerHTML="");let t=this.el.querySelector(this.options.resultHeaderSelector);t&&(t.style.display="none");let s=this.el.querySelector(this.options.noResultsSelector);s&&(s.style.display="none"),this._goToSlide(0)}}}}]);

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.