1(self.webpackChunkapp_project=self.webpackChunkapp_project||[]).push([[7520],{64446:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>i});const a=n(32881).Z;class i extends a{}},32881:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var a=n(38302),i=n(14863),o=n(12737),r=n(79510);const s=n(66462);class l extends a.Z{get SELECTORS(){return{openAttr:".js-open-attributes",panelRoot:".side-panel.side-panel-product-information",buttonClosePanel:".action-bar__button",contextSidePanel:".side-panel.side-panel-product-information .side-panel__inner",closeButton:".side-panel.side-panel-product-information .action-bar__button",targetContainer:".js-product-information .product-tile__actions"}}get CLASSES(){return{keyboardInteraction:"keyboard-interaction",mouseInteraction:"mouse-interaction"}}get KEYBOARD_INPUT(){return"keyboard"===this.html.dataset.whatintent||this.body.classList.contains(this.CLASSES.keyboardInteraction)}constructor(e){super(e),this.body=document.body,this.html=document.documentElement,this.sourceProductTile=this.element.queryParentsByClassName("product"),this.addButton=this.element.querySelector(this.SELECTORS.openAttr),this.informationsURL=this.element.dataset.informationsUrl,this.panelRoot=document.querySelector(this.SELECTORS.panelRoot),this.buttonClosePanel=this.panelRoot.querySelector(this.SELECTORS.closeButton),this.handleClick=this.handleClick.bind(this),this.handlePanelClose=this.handlePanelClose.bind(this),this.keyboardHandler=this.keyboardHandler.bind(this),this.allyTabFocusHandler=null,this.lastTriggerButton=null,this.init()}init(){this.addButton&&this.addButton.addEventListener("click",this.handleClick),o.Z.on("product:hideQuickAddToCartPanel",this.handlePanelClose)}async handleClick(e){var t;e.preventDefault(),this.lastTriggerButton=e.currentTarget,this.lastTriggerButton.setAttribute("aria-expanded","true"),o.Z.emit("body:loading");const n=null===(t=this.panelRoot)||void 0===t?void 0:t.querySelector(this.SELECTORS.targetContainer);if(this.panelRoot&&n)try{const e=await(0,i.ZP)(this.informationsURL),t=await e.text();n.innerHTML=t,this.populateHeader(n),o.Z.on("carousel:initialized",(()=>{o.Z.emit("body:loaded"),o.Z.emit("product:showInfoPanel",{productTile:this.sourceProductTile})})),this.KEYBOARD_INPUT&&s.when.visibleArea({context:this.SELECTORS.contextSidePanel,callback:e=>{this.allyTabFocusHandler=s.maintain.tabFocus({context:this.SELECTORS.contextSidePanel});const t=document.querySelector(this.SELECTORS.closeButton)||s.query.firstTabbable({context:e,defaultToContext:!0});t&&s.element.focus(t)},area:.5})}catch(e){console.error("Error loading product information:",e)}}populateHeader(e){if(!this.panelRoot)return;const t=this.panelRoot.querySelector(".header-side-panel");if(!t)return;const n=e.querySelector(".product-tile-expanded__header");if(!n)return;const a=t.querySelector(".header-side-panel-title"),i=n.querySelector(".product-tile-body__link"),o=n.querySelector(".section-price-single-product-plp");if(!a)return;let r=t.querySelector(".header-side-panel__titlewrap");r||(r=document.createElement("div"),r.className="header-side-panel__titlewrap",a.parentNode.insertBefore(r,a),r.appendChild(a)),i&&(a.textContent=i.textContent.trim());const s=r.querySelector(".header-side-panel__price");s&&s.remove(),o&&(o.classList.add("header-side-panel__price"),r.appendChild(o)),n.remove()}handlePanelClose(){this.allyTabFocusHandler&&(this.allyTabFocusHandler.disengage(),this.allyTabFocusHandler=null),this.KEYBOARD_INPUT&&this.lastTriggerButton&&s.element.focus(this.lastTriggerButton),this.lastTriggerButton&&this.lastTriggerButton.setAttribute("aria-expanded","false")}keyboardHandler(e){var t;(null==e||null===(t=e.key)||void 0===t?void 0:t.toUpperCase())===r.hY&&(e.preventDefault(),e.stopPropagation(),o.Z.emit("product:hideInfoPanel"),this.handlePanelClose())}destroy(){this.addButton&&this.addButton.removeEventListener("click",this.handleClick),o.Z.off("product:hideQuickAddToCartPanel",this.handlePanelClose),this.allyTabFocusHandler&&(this.allyTabFocusHandler.disengage(),this.allyTabFocusHandler=null),super.destroy()}}}}]);
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.