PageSourceSearch

https://cdn.enjoy365.ch/theme/708fe8aec540dfc0ba91690406c57400/js/…storefront.address-manager.plugin.868c58.js

js enjoy365.ch collected 2026-09-24 10:57:54 UTC 14,079 bytes, 3 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[5191],{5191:(e,t,s)=>{s.r(t),s.d(t,{default:()=>l});var r=s(9568),i=s(3107),n=s(3019),o=s(5965);let a="shipping",d="billing";class l extends r.Z{init(){[a,d].includes(this.options.initialTab)||(console.warn("[AddressManagerPlugin] options.initialTab was expected to be 'billing' or 'shipping', got '".concat(this.options.initialTab,"'")),this.options.initialTab=a),this.el.removeEventListener("click",this._getModal.bind(this)),this.el.addEventListener("click",this._getModal.bind(this)),this._client=new i.Z,this._registerEvents()}_registerEvents(){var e2,t2,s2,r2;document.querySelectorAll(this.options.addressEditFormSelector).forEach(e3=>{e3.addEventListener("click",this._onRenderAddressForm.bind(this,e3))}),document.querySelectorAll(this.options.setDefaultAddressSelector).forEach(e3=>{e3.addEventListener("click",this._onChangeDefaultAddress.bind(this,e3))}),document.querySelectorAll(this.options.addressSelectItemSelector).forEach(e3=>{e3.addEventListener("click",this._onSetRadioInputActive.bind(this,e3))}),(e2=document.querySelector(this.options.shippingAddressTabSelector))===null||e2===void 0||e2.addEventListener("click",this._onSwitchToShippingTab.bind(this)),(t2=document.querySelector(this.options.billingAddressTabSelector))===null||t2===void 0||t2.addEventListener("click",this._onSwitchToBillingTab.bind(this)),(s2=document.querySelector(this.options.addressEditorFormSubmitSelector))===null||s2===void 0||s2.addEventListener("submit",this._onSaveChanges.bind(this)),(r2=document.querySelector(this.options.addressEditCancelSelector))===null||r2===void 0||r2.addEventListener("click",this._onEditAddressCancel.bind(this))}_getModal(e2){e2.preventDefault(),this._btnLoader=new o.Z(e2.currentTarget),this._btnLoader.create(),this._client.get(this.options.addressManagerUrl,e3=>{this._renderModal(e3),this._registerEvents()})}_renderModal(e2){let t2=new n.Z(e2);t2.open(()=>this._btnLoader.remove(),0);let s2=t2.getModal();s2.children[0].classList.add(this.options.addressModalDialogScrollableClass,this.options.addressModalDialogSelectorClass),this.options.initialTab===d?(s2.querySelector(this.options.billingAddressTabSelector).checked=!0,this._onSwitchToBillingTab()):s2.querySelector(this.options.shippingAddressTabSelector).checked=!0,window.PluginManager.initializePlugins()}_onSwitchToBillingTab(){document.querySelector(this.options.billingAddressTabSelector).checked=!0,document.querySelector(this.options.shippingTabPaneSelector).classList.remove("show","active"),document.querySelector(this.options.billingTabPaneSelector).classList.add("show","active")}_onSwitchToShippingTab(){document.querySelector(this.options.shippingAddressTabSelector).checked=!0,document.querySelector(this.options.billingTabPaneSelector).classList.remove("show","active"),document.querySelector(this.options.shippingTabPaneSelector).classList.add("show","active")}_onSaveChanges(e2){e2.preventDefault(),this._client.post(e2.currentTarget.action,new FormData(e2.target),(e3,t2)=>{if(t2.status===204)return location.reload();this._replaceModalContent(e3)})}_onSetRadioInputActive(e2,t2){var s2,r2;if(t2.target.closest(this.options.dropdownSelector))return;let i2=e2.querySelector('input[type="radio"]').value,n2=(r2=e2.querySelector('input[type="radio"]'))===null||r2===void 0||(s2=r2.dataset)===null||s2===void 0?void 0:s2.addressType;if(!i2||!n2){console.warn("[AddressManagerPlugin] Radio input is missing id or address type");return}n2===a?document.querySelector(this.options.currentShippingIdSelector).value=i2:document.querySelector(this.options.currentBillingIdSelector).value=i2,e2.querySelector('input[type="radio"]').checked=!0}_onChangeDefaultAddress(e2){var t2,s2;let r2=e2==null||(t2=e2.dataset)===null||t2===void 0?void 0:t2.addressId,i2=e2==null||(s2=e2.dataset)===null||s2===void 0?void 0:s2.addressType;if(!r2||!i2){console.warn("[AddressManagerPlugin] Default button is missing address id or type attribute");return}this._client.post(this.options.addressSwitchUrl,JSON.stringify({id:r2,type:i2}),e3=>this._replaceModalContent(e3,i2))}_onRenderAddressForm(e2){var t2,s2;let r2=e2==null||(t2=e2.dataset)===null||t2===void 0?void 0:t2.addressId,i2=e2==null||(s2=e2.dataset)===null||s2===void 0?void 0:s2.addressType;if(!i2){console.warn("[AddressManagerPlugin] Form is missing address type attribute");return}this._client.post("".concat(this.options.addressManagerUrl).concat(r2?"/".concat(r2):"","?type=").concat(i2),"",e3=>this._replaceModalContent(e3))}_onEditAddressCancel(e2){var t2,s2;let r2=(s2=e2.currentTarget)===null||s2===void 0||(t2=s2.dataset)===null||t2===void 0?void 0:t2.addressType;this._client.get(this.options.addressManagerUrl,e3=>this._replaceModalContent(e3,r2))}_replaceModalContent(e2){let t2=arguments.length>1&&arguments[1]!==void 0?arguments[1]:a,s2=new DOMParser().parseFromString(e2,"text/html").querySelector("body").children;document.querySelector(this.options.addressManagerModalSelector).parentElement.replaceChildren(...s2),t2===d&&this._onSwitchToBillingTab(),window.PluginManager.initializePlugins(),this._registerEvents()}}l.options={activeBillingAddressId:null,activeShippingAddressId:null,initialTab:null,addressModalDialogScrollableClass:"modal-dialog-scrollable",addressModalDialogSelectorClass:"modal-dialog-address",dropdownSelector:".dropdown",addressEditFormSelector:".address-manager-modal-address-form",shippingAddressTabSelector:"#shipping-address-tab",b
1illingAddressTabSelector:"#billing-address-tab",shippingTabPaneSelector:"#shipping-address-tab-pane",billingTabPaneSelector:"#billing-address-tab-pane",addressManagerModalSelector:".address-manager-modal",addressEditCancelSelector:".address-form-create-cancel",addressEditSubmitSelector:".address-form-create-submit",setDefaultAddressSelector:".address-manager-modal-set-default-address",addressEditorFormSubmitSelector:"#address-manager-modal-address-form",currentShippingIdSelector:".address-manager-modal-currentShippingId",currentBillingIdSelector:".address-manager-modal-currentBillingId",addressSelectItemSelector:".address-manager-select-address",addressManagerUrl:"/widgets/account/address-manager",addressSwitchUrl:"/account/address/switch"}},3107:(e,t,s)=>{s.d(t,{Z:()=>r});class r{get(e2,t2){let s2=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"application/json",r2=this._createPreparedRequest("GET",e2,s2);return this._sendRequest(r2,null,t2)}post(e2,t2,s2){let r2=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"application/json";r2=this._getContentType(t2,r2);let i=this._createPreparedRequest("POST",e2,r2);return this._sendRequest(i,t2,s2)}delete(e2,t2,s2){let r2=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"application/json";r2=this._getContentType(t2,r2);let i=this._createPreparedRequest("DELETE",e2,r2);return this._sendRequest(i,t2,s2)}patch(e2,t2,s2){let r2=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"application/json";r2=this._getContentType(t2,r2);let i=this._createPreparedRequest("PATCH",e2,r2);return this._sendRequest(i,t2,s2)}
1abort(){if(this._request)return this._request.abort()}setErrorHandlingInternal(e2){this._errorHandlingInternal=e2}_registerOnLoaded(e2,t2){t2&&(this._errorHandlingInternal===!0?(e2.addEventListener("load",()=>{t2(e2.responseText,e2)}),e2.addEventListener("abort",()=>{console.warn("the request to ".concat(e2.responseURL," was aborted"))}),e2.addEventListener("error",()=>{console.warn("the request to ".concat(e2.responseURL," failed with status ").concat(e2.status))}),e2.addEventListener("timeout",()=>{console.warn("the request to ".concat(e2.responseURL," timed out"))})):e2.addEventListener("loadend",()=>{t2(e2.responseText,e2)}))}_sendRequest(e2,t2,s2){return this._registerOnLoaded(e2,s2),e2.send(t2),e2}_getContentType(e2,t2){return e2 instanceof FormData&&(t2=!1),t2}_createPreparedRequest(e2,t2,s2){return this._request=new XMLHttpRequest,this._request.open(e2,t2),this._request.setRequestHeader("X-Requested-With","XMLHttpRequest"),s2&&this._request.setRequestHeader("Content-type",s2),this._request}constructor(){this._request=null,this._errorHandlingInternal=!1}}},5774:(e,t,s)=>{s.d(t,{ZP:()=>u,ar:()=>d});var r=s(5206),i=s(3266);let n="modal-backdrop",o="modal-backdrop-open",a="no-scroll",d=350,l={ON_CLICK:"backdrop/onclick"};class c{create(e2){this._removeExistingBackdrops(),document.body.insertAdjacentHTML("beforeend",this._getTemplate());let t2=document.body.lastChild;document.documentElement.classList.add(a),setTimeout(function(){t2.classList.add(o),typeof e2=="function"&&e2()},75),this._dispatchEvents()}remove(){let e2=arguments.length>0&&arguments[0]!==void 0?arguments[0]:d,t2=this._getBackdrops();i.Z.iterate(t2,e3=>e3.classList.remove(o)),setTimeout(this._removeExistingBackdrops.bind(this),e2),document.documentElement.classList.remove(a)}_dispatchEvents(){let e2=r.Z.isTouchDevice()?"touchstart":"click";document.addEventListener(e2,function(e3){e3.target.classList.contains(n)&&document.dispatchEvent(new CustomEvent(l.ON_CLICK))})}_getBackdrops(){return document.querySelectorAll(".".concat(n))}_removeExistingBackdrops(){if(this._exists()===!1)return;let e2=this._getBackdrops();i.Z.iterate(e2,e3=>e3.remove())}_exists(){return document.querySelectorAll(".".concat(n)).length>0}_getTemplate(){return'<div class="'.concat(n,'"></div>')}constructor(){return c.instance||(c.instance=this),c.instance}}let h=Object.freeze(new c);class u{static create(){let e2=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;h.create(e2)}static remove(){let e2=arguments.length>0&&arguments[0]!==void 0?arguments[0]:d;h.remove(e2)}static SELECTOR_CLASS(){return n}}},5965:(e,t,s)=>{s.d(t,{Z:()=>i});var r=s(2363);class i extends r.Z{create(){super.create(),this._isButtonElement()?this.parent.disabled=!0:this._isAnchorElement()&&this.parent.classList.add("disabled")}remove(){super.remove(),this._isButtonElement()?this.parent.disabled=!1:this._isAnchorElement()&&this.parent.classList.remove("disabled")}_isButtonElement(){return this.parent.tagName.toLowerCase()==="button"}_isAnchorElement(){return this.parent.tagName.toLowerCase()==="a"}constructor(e2,t2="before"){if(super(e2,t2),!this._isButtonElement()&&!this._isAnchorElement())throw Error("Parent element is not of type <button> or <a>")}}},2363:(e,t,s)=>{s.d(t,{L:()=>n,Z:()=>o});var r=s(3266);let i="loader",n={BEFORE:"before",AFTER:"after",INNER:"inner"};class o{create(){if(!this.exists()){if(this.position===n.INNER){this.parent.innerHTML=o.getTemplate();return}this.parent.insertAdjacentHTML(this._getPosition(),o.getTemplate())}}remove(){let e2=this.parent.querySelectorAll(".".concat(i));r.Z.iterate(e2,e3=>e3.remove())}exists(){return this.parent.querySelectorAll(".".concat(i)).length>0}_getPosition(){return this.position===n.BEFORE?"afterbegin":"beforeend"}static getTemplate(){return'<div class="'.concat(i,`" role="status">
2                    <span class="`).concat("visually-hidden",`">Loading...</span>
3                </div>`)}static SELECTOR_CLASS(){return i}constructor(e2,t2=n.BEFORE){this.parent=e2 instanceof Element?e2:document.body.querySelector(e2),this.position=t2}}},3019:(e,t,s)=>{s.d(t,{Z:()=>a});var r=s(4049),i=s(5774);let n="js-pseudo-modal",o="js-pseudo-modal-template-root-element";class a{open(e2){let t2=arguments.length>1&&arguments[1]!==void 0?arguments[1]:i.ar;this._hideExistingModal(),this._create(),setTimeout(this._open.bind(this,e2),t2)}close(){let e2=this.getModal();this._modalInstance=bootstrap.Modal.getInstance(e2),this._modalInstance.hide()}getModal(){return this._modal||this._create(),this._modal}updatePosition(){this._modalInstance.handleUpdate()}updateContent(e2,t2){this._content=e2,this._setModalContent(e2),this.updatePosition(),typeof t2=="function"&&t2.bind(this)()}_hideExistingModal(){try{let e2=r.Z.querySelector(document,".".concat(n," .modal"),!1);if(!e2)return;let t2=bootstrap.Modal.getInstance(e2);if(!t2)return;t2.hide()}catch(e2){console.warn("[PseudoModalUtil] Unable to hide existing pseudo modal before opening pseudo modal: ".concat(e2.message))}}_open(e2){this.getModal(),this._modal.addEventListener("hidden.bs.modal",this._modalWrapper.remove),this._modal.addEventListener("shown.bs.modal",e2),this._modal.addEventListener("hide.bs.modal",()=>{document.activeElement instanceof HTMLElement&&document.activeElement.blur()}),this._modalInstance.show()}_create(){this._modalMarkupEl=r.Z.querySelector(document,this._templateSelector),this._createModalWrapper(),this._modalWrapper.innerHTML=this._content,this._modal=this._createModalMar
3kup(),this._modalInstance=new bootstrap.Modal(this._modal,{backdrop:this._useBackdrop}),document.body.insertAdjacentElement("beforeend",this._modalWrapper)}_createModalWrapper(){this._modalWrapper=r.Z.querySelector(document,".".concat(n),!1),this._modalWrapper||(this._modalWrapper=document.createElement("div"),this._modalWrapper.classList.add(n))}_createModalMarkup(){let e2=r.Z.querySelector(this._modalWrapper,".modal",!1);if(e2)return e2;let t2=this._modalWrapper.innerHTML;return this._modalWrapper.innerHTML=this._modalMarkupEl.innerHTML,this._setModalContent(t2),r.Z.querySelector(this._modalWrapper,".modal")}_setModalTitle(){let e2=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";try{r.Z.querySelector(this._modalWrapper,this._templateTitleSelector).innerHTML=e2}catch(e3){}}_setModalContent(e2){let t2=r.Z.querySelector(this._modalWrapper,this._templateContentSelector);t2.innerHTML=e2;let s2=r.Z.querySelector(t2,".".concat(o),!1);if(s2){r.Z.querySelector(this._modalWrapper,".".concat(o)).replaceChildren(s2);return}try{let e3=r.Z.querySelector(t2,this._templateTitleSelector);e3&&(this._setModalTitle(e3.innerHTML),e3.parentNode.removeChild(e3))}catch(e3){}}constructor(e2,t2=!0,s2=".".concat("js-pseudo-modal-template"),r2=".".concat("js-pseudo-modal-template-content-element"),i2=".".concat("js-pseudo-modal-template-title-element")){this._content=e2,this._useBackdrop=t2,this._templateSelector=s2,this._templateContentSelector=r2,this._templateTitleSelector=i2}}}}]);

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.