PageSourceSearch

https://www.moebelhaus-remer.de/theme/ecc2afe890050b3f07368931f2a3…/netkitchen-configurator.js?1790337924

js moebelhaus-remer.de collected 2026-10-08 11:02:52 UTC 24,174 bytes, 1 lines download raw bytes

1(()=>{"use strict";var t={156(t){var e=function(t){var e;return!!t&&"object"==typeof t&&"[object RegExp]"!==(e=Object.prototype.toString.call(t))&&"[object Date]"!==e&&t.$$typeof!==i},i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(t,e){return!1!==e.clone&&e.isMergeableObject(t)?o(Array.isArray(t)?[]:{},t,e):t}function s(t,e,i){return t.concat(e).map(function(t){return n(t,i)})}function a(t){return Object.keys(t).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[])}function r(t,e){try{return e in t}catch(t){return!1}}function o(t,i,c){(c=c||{}).arrayMerge=c.arrayMerge||s,c.isMergeableObject=c.isMergeableObject||e,c.cloneUnlessOtherwiseSpecified=n;var l,d,u=Array.isArray(i);return u!==Array.isArray(t)?n(i,c):u?c.arrayMerge(t,i,c):(d={},(l=c).isMergeableObject(t)&&a(t).forEach(function(e){d[e]=n(t[e],l)}),a(i).forEach(function(e){(!r(t,e)||Object.hasOwnProperty.call(t,e)&&Object.propertyIsEnumerable.call(t,e))&&(r(t,e)&&l.isMergeableObject(i[e])?d[e]=(function(t,e){if(!e.customMerge)return o;var i=e.customMerge(t);return"function"==typeof i?i:o})(e,l)(t[e],i[e],l):d[e]=n(i[e],l))}),d)}o.all=function(t,e){if(!Array.isArray(t))throw Error("first argument should be an array");return t.reduce(function(t,i){return o(t,i,e)},{})},t.exports=o}},e={};function i(n){var s=e[n];if(void 0!==s)return s.exports;var a=e[n]={exports:{}};return t[n](a,a.exports,i),a.exports}i.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return i.d(e,{a:e}),e},i.d=(t,e)=>{for(var n in e)i.o(e,n)&&!i.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var n=i(156),s=i.n(n);class a{static ucFirst(t){return t.charAt(0).toUpperCase()+t.slice(1)}static lcFirst(t){return t.charAt(0).toLowerCase()+t.slice(1)}static toDashCase(t){return t.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(t,e){let i=a.toUpperCamelCase(t,e);return a.lcFirst(i)}static toUpperCamelCase(t,e){return e?t.split(e).map(t=>a.ucFirst(t.toLowerCase())).join(""):a.ucFirst(t.toLowerCase())}static parsePrimitive(t){try{return/^\d+(.|,)\d+$/.test(t)&&(t=t.replace(",",".")),JSON.parse(t)}catch(e){return t.toString()}}}
1class r{constructor(t=document){this._el=t,t.$emitter=this,this._listeners=[]}publish(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=new CustomEvent(t,{detail:e,cancelable:i});return this.el.dispatchEvent(n),n}subscribe(t,e){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this,s=t.split("."),a=i.scope?e.bind(i.scope):e;if(i.once&&!0===i.once){let e=a;a=function(i){n.unsubscribe(t),e(i)}}return this.el.addEventListener(s[0],a),this.listeners.push({splitEventName:s,opts:i,cb:a}),!0}unsubscribe(t){arguments.length>1&&"function"==typeof arguments[1]&&console.warn(`[NativeEventEmitter] Unsubscribing by passing the subscriber function as a second argument is not supported. By default, all listeners for the event will be removed. Use a suffix (separated by a dot) on the event name when subscribing/unsubscribing to identify/target your specific listener only, e.g. "${t}.MyCustomPlugin"`);let e=t.split(".");return this.listeners=this.listeners.reduce((t,i)=>([...i.splitEventName].sort().toString()===e.sort().toString()?this.el.removeEventListener(i.splitEventName[0],i.cb):t.push(i),t),[]),!0}reset(){return this.listeners.forEach(t=>{this.el.removeEventListener(t.splitEventName[0],t.cb)}),this.listeners=[],!0}get el(){return this._el}set el(t){this._el=t}get listeners(){return this._listeners}set listeners(t){this._listeners=t}}class o{constructor(t,e={},i=!1){if(!(t instanceof Node)){console.warn(`There is no valid element given while trying to create a plugin instance for "${i}".`);return}this.el=t,this.$emitter=new r(this.el),this._pluginName=this._getPluginName(i),this.options=this._mergeOptions(e),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(){}destroy(){}_init(){this._initialized||(this.init(),this._initialized=!0)}_update(){this._initialized&&this.update()}_mergeOptions(t){let e=[this.constructor.options,this.options,t];return e.push(this._getConfigFromDataAttribute()),e.push(this._getOptionsFromDataAttribute()),s().all(e.filter(t=>t instanceof Object&&!(t instanceof Array)).map(t=>t||{}))}_getConfigFromDataAttribute(){let t={};if("function"!=typeof this.el.getAttribute)return t;let e=a.toDashCase(this._pluginName),i=this.el.getAttribute(`data-${e}-config`);return i?window.PluginConfigManager.get(this._pluginName,i):t}_getOptionsFromDataAttribute(){let t={};if("function"!=typeof this.el.getAttribute)return t;let e=a.toDashCase(this._pluginName),i=this.el.getAttribute(`data-${e}-options`);if(i)try{return JSON.parse(i)}catch(t){console.error(`The data attribute "data-${e}-options" could not be parsed to json: ${t.message}`)}return t}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(t){return t||(t=this.constructor.name),t}}let c=window.PluginManager;$(document).ready(function(){let t=document.getElementById("configId"),e=document.getElementById("toggleModalButton");new URL(document.location.href).searchParams.get("config_id")===t&&$(e).trigger("click"),$("main.content-main").width(),$(".product-detail-configurator .nk-configurator-button-container").on("click",function(){$(".brevo-conversations").css("display","none")}),$(".product-detail-configurator .justify-content-center .mdl-header .close-icon").on("click",function(){$(".brevo-conversations").css("display","block")})}),c.register("netkProductDetailConfigurator",class extends o{init(){this.configuratorData=JSON.parse(document.getElementById("configurationDataJson").dataset.configuratorData),this.configLink=document.getElementById("configLink").dataset.configLink,this.productNumber=document.getElementById("productNumber").dataset.productNumber,this.productBasePrice=JSON.parse(document.getElementById("productBasePrice").dataset.productBasePrice),this.productUuid=document.getElementById("productUuid").dataset.productUuid,this.productName=document.getElementById("productName").dataset.productName,this.configId=document.getElementById("configId").dataset.configId,this.navIds=[],this.dataObject=JSON.parse(document.getElementById("configObject").dataset.configObject),this.configuratorInitiated=!1,this.readyForSave=!1,this.loadedFields=[],this.saveBtn=null,this.navLinks=[],this.blockAritlceGroup=JSON.parse(document.getElementById("configBlockArticleGroup").dataset.configBlockArticleGroup),this.btn=document.getElementById("toggleModalButton"),this.cbe=document.getElementById("configurator-base-element"),this.closeBtn=document.getElementById("closeBtn"),this.modal=document.getElementById("modal"),this.configuratorContainer=document.getElementById("configuratorContainer"),this.navigationContainer=document.getElementById("navigationContainer"),this.leftBtnContainer=document.getElementById("leftButtonContainer"),this.rightBtnContainer=document.getElementById("rightButtonContainer"),this.headlineElement=document.getElementById("configuratorHeadling"),this.sendButtonContainer=document.getElementById("sendButtonContainer"),this.configLinkElement=document.getElementById("configLinkElement"),this.copyConfigLink=document.getElementById("copyConfigLink"),this.showCopiedText=document.getElementById("showCopiedText"),this.rightLoadingContainer=document.getElementById("rightLoadingContainer"),this.bodyTagElement=document.getElementsByTagName("body")[0],this.configProgressBar=document.getElementById("configProgressBar"),this.configProgressBarStep=100,this.configBarProgressed=1,this.currentTabId=0,this.assemblyService=document.getElementById("assemblyService"),this.assemblyServicePrice=document.getElementById("assemblyServicePrice"),this.xhr=new XMLHttpRequest,this._registerEvents(),0!=this.configuratorData.length&&(this.cbe.classList.add("d-flex"),this.cbe.classList.remove("d-none")),this.headlineElement.innerHTML=this.productName+" "+this.productNumber}_registerEvents(){this.btn.addEventListener("click",this.toggleModal.bind(this)),this.copyConfigLink.addEventListener("click",this.copySaveLinkToClipboard.bind(this)),this.closeBtn.addEventListener("click",this.toggleModal.bind(this))}toggleModal(){this.modal.classList.contains("d-none")?(this.modal.classList.remove("d-none"),this.modal.classList.add("d-flex"),this.renderConfigurator()):(this.modal.classList.remove("d-flex"),this.modal.classList.add("d-none"))}renderConfigurator(){Object.keys(this.configuratorData),this.setConfigLink(),this.configuratorInitiated||(this.initCategories(),this.updateSummary()),this.createNavButton(-1,"l","<",0),this.createNavButton(1,"r",">",2),this._updateNextBtn(),this.configuratorInitiated=!0}setConfigLink(){this.configLinkElement.href=this.configLink}setLinkActive(t){this.navLinks.forEach(function(t){t.classList.remove("configurator-nav-btn-active"),t.classList.add("configurator-nav-btn")}),t.classList.remove("configurator-nav-btn"),t.classList.add("configurator-nav-btn-active")}initCategories(){let t=0;for(let[e,i]of Object.entries(this.configuratorData)){let n=e.replace(" ","").toLowerCase(),s=document.createElement("li"),a=document.createElement("button"),r=document.createTextNode(e);a.id=e.replace(" ","").toLowerCase(),a.btnId=i.id,a.appendChild(r),a.classList.add("configurator-nav-btn","missing-configuration--background"),a.dataset.navId=t,s.appendChild(a),this.navigationContainer.appendChild(s),a.addEventListener("click",this.navFooterLinkContainer.bind(this)),this.navLinks.push(a),0===t&&(this.initTab(i,n,t),this.setLinkActive(a)),t++}this.configProgressBarStep=this.configProgressBarStep/t,this.configBarProgressed=this.configProgressBarStep,this.configProgressBar.style.width=this.configBarProgressed+"%"}navFooterLinkContainer(t){let e=t.target;this.setLinkActive(this.navLinks[e.dataset.navId]),this.setTab(e.dataset.navId);let i=parseInt(e.dataset.navId)+1;
1if(i){let t=$(".config-option-slider ul li:nth-child("+i+")").position().left;$(".config-option-slider").animate({scrollLeft:t},800),$(".product-detail-configurator #modal .mdl-body").animate({scrollTop:0},"slow")}}initTab(t,e,i){let n=document.createElement("div");if(n.id="tab-"+e,n.classList.add("d-grid"),this.navIds.push(n),this.configuratorContainer.innerHTML="",Array.isArray(t))this.configuratorContainer.appendChild(this.getConfigGroupHeader(t)),this.loadedFields=[],this.configuratorContainer.appendChild(n),this.initFields(t,e,n);else for(let[i,n]of(this.loadedFields=[],Object.entries(t))){let t=document.createElement("div");t.id="tab-"+e,t.classList.add("d-grid"),this.configuratorContainer.appendChild(this.getConfigGroupHeader(n)),this.configuratorContainer.appendChild(t),this.initFields(n,e,t)}}initFields(t,e,i){void 0!==t[0]?("Bildauswahl"===t[0].selection_type&&i.classList.add("configurator-picture-select-container"),t.forEach(t=>"Einfachauswahl"===t.selection_type?this.createSingleSelect(this,t,e,i):this.createImageSelect(t,e,i))):(i.classList.add("configurator-picture-select-container"),Object.entries(t).forEach(t=>
1t[1].forEach(t=>"Einfachauswahl"===t.selection_type?this.createSingleSelect(this,t,e,i):this.createImageSelect(t,e,i))))}getConfigGroupHeader(t){let e=document.createElement("div");if(e.classList.add("configuration-container--header"),t[0].description){let i=document.createElement("div");i.classList.add("nk-config-desc"),i.innerHTML=t[0].description,e.appendChild(i)}if(t[0].groupHeading){let i=document.createElement("div");i.classList.add("nk-config-group-heading"),i.innerHTML=t[0].groupHeading,e.appendChild(i)}if(t[0].groupDescription){let i=document.createElement("div");i.classList.add("nk-config-desc"),i.innerHTML=t[0].groupDescription,e.appendChild(i)}return e}createSingleSelect(t,e,i,n){let s=this.articleIsBlocked(e.article_number),a=document.createElement("div");a.id="field-container-"+e.article_number,a.classList.add("configurator-field-radio"),n.appendChild(a);let r=document.createElement("input");r.id="field-"+e.article_number,r.type="radio",r.disabled=s,r.name=i,r.checked=this.dataObject[e.config_group].selectedArticleNumber===e.article_number,r.classList.add("nk-radio-ipt"),a.appendChild(r);let o=document.createElement("label");o.classList.add(s?"radio-label-blocked":"radio-label"),a.appendChild(o),o.innerHTML+=" "+e.label,"0"!=e.surcharge&&(o.innerHTML+=" (+ "+e.surcharge+",00 €)"),s||(r.addEventListener("click",t.selectSingleElement.bind(t,e,r,0)),o.addEventListener("click",t.selectSingleElement.bind(t,e,r,0)))}selectSingleElement(t,e,i,n){this.dataObject[t.config_group].id=t.id,this.dataObject[t.config_group].surcharge=t.surcharge,this.dataObject[t.config_group].label=t.label,this.dataObject[t.config_group].selectedElement=e,this.dataObject[t.config_group].selectedArticleNumber=t.article_number,this.dataObject[t.config_group].orderNumber=t.orderNumber,i||(this.dataObject[t.config_group].selectedOption=t.article_number,e.checked=!0),void 0!==t.isMissing||null!==t.isMissing?this.dataObject[t.config_group].isMissing=t.isMissing:t.isMissing=null;let s=[];null!==t.incompatible_articles&&t.incompatible_articles.split(";").forEach(function(t){s.push(t)}),this.dataObject[t.config_group].blockedOptions=s,this.delectSelectedConfigElement(t),i&&(this.loadedFields.forEach(function(t){$(t).find(".configurator-picture-box-selected").remove()}),this.selectImageOption(e)),this.updateSummary(),this._updateNextBtn()}delectSelectedConfigElement(t){let e=this.blockAritlceGroup[t.config_group];if(e)for(let[t,i]of Object.entries(this.dataObject))for(let[i,n]of Object.entries(e.connected_group))t===i&&(this.dataObject[i].blockedOptions=[],this.dataObject[i].label="Bitte auswählen",this.dataObject[i].selectedArticleNumber=null,this.dataObject[i].orderNumber=null,this.dataObject[i].selectedElement=null,this.dataObject[i].selectedOption=null,this.dataObject[i].isMissing=!0,this.dataObject[i].surcharge=0,delete this.dataObject[i].id,this.updateSummary())}createImageSelect(t,e,i){let n=this.articleIsBlocked(t.article_number),s=document.createElement("div");s.id="field-container-"+t.article_number,this.loadedFields.push(s),i.appendChild(s);let a=document.createElement("div");a.classList.add("configurator-image-container");let r=document.createElement("img");if(r.src=t.image,r.alt=t.label,r.classList.add("picture-select-img"),a.appendChild(r),s.appendChild(a),this.dataObject[t.config_group].selectedArticleNumber===t.article_number?(s.classList.add("configurator-picture-box"),n||this.selectImageOption(a)):n?s.classList.add("configurator-picture-box-blocked"):s.classList.add("configurator-picture-box"),n||s.addEventListener("click",this.selectSingleElement.bind(this,t,s,1)),"0"!=t.surcharge){let e=document.createElement("div");e.innerHTML+=t.label+"<br> (+"+this.formatPriceString(t.surcharge)+")",e.classList.add(n?"picture-select-label-blocked":"picture-select-label"),s.appendChild(e)}else{let e=document.createElement("div");e.innerHTML+=t.label,e.classList.add(n?"picture-select-label-blocked":"picture-select-label"),s.appendChild(e)}}selectImageOption(t){if(t.classList.contains("configurator-picture-box")){this.selectImageOption(t.children[0]);return}
1let e=document.createElement("div");e.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" style="color: #16a34a; width: 100px;"> <path stroke-linecap="round" stroke-linejoin="round" d="M9 12.75L11.25 15 15 9.75M21 12c0 1.268-.63 2.39-1.593 3.068a3.745 3.745 0 01-1.043 3.296 3.745 3.745 0 01-3.296 1.043A3.745 3.745 0 0112 21c-1.268 0-2.39-.63-3.068-1.593a3.746 3.746 0 01-3.296-1.043 3.745 3.745 0 01-1.043-3.296A3.745 3.745 0 013 12c0-1.268.63-2.39 1.593-3.068a3.745 3.745 0 011.043-3.296 3.746 3.746 0 013.296-1.043A3.746 3.746 0 0112 3c1.268 0 2.39.63 3.068 1.593a3.746 3.746 0 013.296 1.043 3.746 3.746 0 011.043 3.296A3.745 3.745 0 0121 12z" /> </svg>',e.classList.add("configurator-picture-box-selected"),t.appendChild(e)}updateSummary(){let t=!0,e=document.getElementById("summaryContainer");e.innerHTML="";let i=document.createElement("table");i.classList.add("summary-table"),e.appendChild(i),this.addSummaryEntry(i,"BASISPREIS",this.productBasePrice,!1,!1,!0,!1);let n=0;for(let[e,s]of Object.entries(this.dataObject))null===s.selectedArticleNumber&&(t=!1),this.addHeadlineEntry(i,e,s,n),this.addSummaryEntry(i,s.label,s.surcharge,s.isMissing,!1,!1,s,e),n++;this.addSummaryEntry(i,"Gesamt",this.calculateFullPrice(),!1,!0,!0,!1),this.readyForSave=t,this.sendButtonContainer.classList.add("not--btn-active"),this.rightBtnContainer.classList.remove("not--btn-active"),this.navigationContainer.classList.remove("nk-active-add-cart-btn"),this.readyForSave&&(this.sendButtonContainer.classList.remove("not--btn-active"),this.rightBtnContainer.classList.add("not--btn-active")),$(this.sendButtonContainer).find("div").remove();let s=document.createElement("div");null===this.saveBtn&&(this.saveBtn=document.createElement("button")),this.saveBtn.innerHTML="In den Warenkorb",this.saveBtn.classList.add("btn","btn-primary","btn-buy"),document.getElementsByClassName("assembly-service-container").length&&this.saveBtn.classList.add("is-assembly-service"),s.appendChild(this.saveBtn),this.sendButtonContainer.appendChild(s),this.readyForSave&&(this.xhr=null,this.saveBtn.addEventListener("click",this.callRouterRequest.bind(this,"/config-add-to-cart","/checkout/cart",!0)))}callRouterRequest(t,e,i,n){let s=0,a=0;null!==this.assemblyService&&(s=this.assemblyService.checked,a=this.assemblyServicePrice.value);let r=JSON.stringify({uuid:this.productUuid,name:this.productName,price:this.productBasePrice,data:this.dataObject,configId:this.configId,configLink:this.configLink,processorItem:!0,assemblyService:s,assemblyServicePrice:a});this.xhr&&this.xhr.abort(),this.xhr=new XMLHttpRequest,this.xhr.onreadystatechange=()=>{200===this.xhr.status&&(this.xhr.abort(),this.xhr=null,e&&(window.location.href=e))},n&&setTimeout(()=>{this.rightLoadingContainer.classList.remove("loading-hide"),this.bodyTagElement.classList.add("is--loading-icon")},250),this.xhr.open("POST",t,!0),this.xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),this.xhr.send(r)}addHeadlineEntry(t,e,i,n){let s=document.createElement("tr"),a=document.createElement("td");a.innerHTML=e,a.classList.add("summary-price-headline-cell"),a.rowSpan=2,a.id=e.replace(" ","").toLowerCase(),a.dataset.navId=n,a.addEventListener("click",this.navFooterLinkContainer.bind(this)),this.navLinks.push(a),s.appendChild(a),t.appendChild(s)}addSummaryEntry(t,e,i){arguments.length>3&&void 0!==arguments[3]&&arguments[3];let n=arguments.length>4&&void 0!==arguments[4]&&arguments[4],s=arguments.length>5&&void 0!==arguments[5]&&arguments[5],a=arguments.length>6?arguments[6]:void 0,r=arguments.length>7?arguments[7]:void 0,o=document.createElement("tr"),c=document.createElement("td");if(s||(o.classList.add("summary-table-row"),c.classList.add("summary-price-label-cell","missing-configuration--text")),void 0!==a&&a.selectedArticleNumber){c.classList.remove("missing-configuration--text");let t=this.navLinks;Object.entries(this.dataObject).forEach(function(e,i){(void 0!==e[1]||null!==e[1])&&void 0!==t[i]&&t[i].id===r.toLowerCase().replace(". ",".")&&t[i].classList.remove("missing-configuration--background")})}n&&c.classList.add("summary-price-headline-total"),c.innerHTML=e,o.appendChild(c);
1let l=document.createElement("td");n?l.classList.add("summary-price-last-cell"):l.classList.add("summary-price"),l.innerHTML=this.formatPriceString(i),o.appendChild(l),t.appendChild(o)}createNavButton(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"l",i=(arguments.length>2&&void 0!==arguments[2]&&arguments[2],arguments.length>3&&void 0!==arguments[3]?arguments[3]:null),n=document.createElement("button");if(n.classList.add("btn","btn-primary","btn-buy","mdl-nav-btn"),"l"===e){n.innerHTML+='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="mdl-nav-btn-icon"><path stroke-linecap="round" stroke-linejoin="round" d="M18.75 19.5l-7.5-7.5 7.5-7.5m-6 15L5.25 12l7.5-7.5" /></svg>',n.classList.remove("mdl-nav-btn-inactive"),t<0&&n.classList.add("mdl-nav-btn-inactive");let e=document.createElement("span");e.innerText="Zurück",n.append(e)}else{n.classList.remove("mdl-nav-btn-inactive"),t>=i&&n.classList.add("mdl-nav-btn-inactive");let e=document.createElement("span");e.innerText="Weiter",n.append(e),n.innerHTML+='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="mdl-nav-btn-icon"><path stroke-linecap="round" stroke-linejoin="round" d="M11.25 4.5l7.5 7.5-7.5 7.5m-6-15l7.5 7.5-7.5 7.5" /></svg>'}n.dataset.navId=t,n.addEventListener("click",this.navButtonEvent.bind(this,t)),"l"===e?(this.leftBtnContainer.innerHTML="",this.leftBtnContainer.appendChild(n)):(this.rightBtnContainer.innerHTML="",this.rightBtnContainer.appendChild(n))}navButtonEvent(t,e){let i=this.getTabKey(t,-1);if(void 0!==this.dataObject[i]&&(this.dataObject[i].isMissing=!1),void 0!==this.dataObject[i]&&null===this.dataObject[i].selectedArticleNumber&&(this.dataObject[i].isMissing=!0,this.markNotSelectedTab(i),this.navLinks[t-1].classList.add("missing-configuration--background")),parseInt(t)){let e=$(".config-option-slider ul li:nth-child("+(parseInt(t)+1)+")").position().left;$(".config-option-slider").animate({scrollLeft:e},800),$(".product-detail-configurator #modal .mdl-body").animate({scrollTop:0},"slow")}return this.setLinkActive(this.navLinks[t]),this.xhr=null,this.callRouterRequest("/config-save-log",!1,this,!1),this.setTab(t)}getTabKey(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=null;return Object.keys(this.dataObject).forEach(function(n,s){s===t+e&&(i=n)}),i}markNotSelectedTab(t){let e;Object.values(document.getElementsByClassName("summary-table")[0].children).forEach(function(i){-1!==i.innerText.search(t)&&((e=i).classList.add("missing-configuration--text"),e.nextSibling.nextSibling.classList.add("missing-configuration--text"),e.nextSibling.nextSibling.nextSibling.classList.add("missing-configuration--text"))})}calculateFullPrice(){let t=Number.parseFloat(this.productBasePrice);for(let e of Object.entries(this.dataObject))t+=Number.parseFloat(e[1].surcharge);return t}formatPriceString(t){let e=Number.parseFloat((Math.round(100*t)/100).toFixed(2));if(Number.isInteger(e))return e.toLocaleString("de-DE")+",- €";{let t=(e=e.toLocaleString("de-DE")).search(",");return -1!==t&&e.length-t==2&&(e+="0"),e+",- €"}}setTab(t){this.currentTabId=parseInt(t);let e=Object.keys(this.dataObject).length,i=this.getFieldsForTab(t);this.initTab(i,"tab-"+t,t),this.createNavButton(parseInt(t)-1,"l","<",1),this.createNavButton(parseInt(t)+1,"r",">",e),this._updateNextBtn(),this.configBarProgressed=this.configProgressBarStep*(parseInt(t)+1),this.configProgressBar.style.width=this.configBarProgressed+"%"}getFieldsForTab(t){let e=0;for(let i of Object.entries(this.configuratorData)){if(e==t)return i[1];e++}}articleIsBlocked(t){let e=[];for(let t of Object.entries(this.dataObject)){let i=t[1].blockedOptions;0!==i.length&&i.forEach(t=>e.push(t))}return e.includes(t)}_updateNextBtn(){let t=this.rightBtnContainer.querySelector("button");if(!t||t.classList.contains("mdl-nav-btn-inactive"))return;let e=this.getTabKey(this.currentTabId),i=null!==e&&this.dataObject[e]&&null!==this.dataObject[e].selectedArticleNumber;t.disabled=!i}copySaveLinkToClipboard(t){t.preventDefault(),this.showCopiedText.classList.add("show"),setTimeout(()=>{this.showCopiedText.classList.remove("show")},"500"),navigator.clipboard.writeText(this.configLink)}}
1,"[data-product-detail-configurator-plg]")})();

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.