1var M=Object.defineProperty;var A=(o,t,e)=>t in o?M(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e;var i=(o,t,e)=>A(o,typeof t!="symbol"?t+"":t,e);import{L as S}from"./Logger.chunk-2e74b09e.js";import{C as f,A as w}from"./main.bundle-95265ef3.js";import{P as L}from"./DataLayerPopulator.chunk-f2509288.js";const T=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);class C extends CustomEvent{constructor(t,e){super(t,{cancelable:!0,detail:{loadMoreEnabled:e}})}}const u=class u extends C{constructor(t){super(u.Type,t)}};i(u,"Type","reload");let p=u;const h=class h extends C{constructor(t){super(h.Type,t)}};i(h,"Type","replace");let g=h;class d{constructor(t,e){i(this,"container");i(this,"logger");i(this,"lastClickedButton");this.container=t,this.logger=e,this.init()}init(){let t=this.getAllSubmitButtonsAndAttachListener();this.container.addEventListener("submit",async e=>{e.preventDefault();let n=this.container.getAttribute("action");const s=this.container.dataset.loadMoreEnabledId;let r=new FormData(this.container),l="";this.isLoadMoreTriggered(e)?l="loadMore":(l="reload",this.isResetTriggered(e)&&(n=n.substring(0,n.indexOf("?")),r=new FormData),r.set("page","1")),this.lastClickedButton=null,t.forEach(function(a){a.classList.add("loading"),a.disabled=!0});try{const a=await this.fetchMore(n,r),c=(await this.getDocumentFromResponse(a)).documentElement.querySelector(`[data-load-more-enabled-id="${s}"]`),y=c.querySelector(".load-more-append-content"),m=c.querySelector(".load-more-replace-content"),b=c.querySelector(".load-more-button");this.container.setAttribute("action",c.getAttribute("action")),this.replaceOrHideLoadMoreButton(b),m&&(this.replaceContent(m),this.container.dispatchEvent(new g(this))),l==="reload"&&(this.clearAppendContentContainer(),this.container.dispatchEvent(new p(this))),this.appendContent(y),window.dispatchEvent(new L("loadMoreSubmission","loadMore",n)),t=this.getAllSubmitButtonsAndAttachListener()}catch(a){this.logger.log("LoadMoreFetchingError",a)}})}getAllSubmitButtons(){const t=[...this.container.querySelectorAll('input[type="submit"], input[type="button"], button')],e=this.container.id;return e&&t.push(...document.querySelectorAll(`input[type="submit"][form="${e}"], input[type="button"][form="${e}"], button[form="${e}"]`)),t}getAllSubmitButtonsAndAttachListener(){const t=this.getAllSubmitButtons();return t.forEach(e=>{e.addEventListener("click",()=>{this.lastClickedButton={dataset:{loadMoreTrigger:e.dataset.loadMoreTrigger,resetTrigger:e.dataset.resetTrigger}}})}),t}fetchMore(t,e){return fetch(t,{method:"post",body:e})}replaceOrHideLoadMoreButton(t=void 0){const e=this.container.querySelector(".load-more-button");e&&t?e.replaceWith(t):e&&(e.style.display="none")}isLoadMoreTriggered(t){var e;return((e=this.lastClickedButton)==null?void 0:e.dataset.loadMoreTrigger)||"detail"in t&&"loadMoreTrigger"in t.detail}isResetTriggered(t){var e;return((e=this.lastClickedButton)==null?void 0:e.dataset.resetTrigger)||"detail"in t&&"resetTrigger"in t.detail}async getDocumentFromResponse(t){const e=await t.text();return new DOMParser().parseFromString(e,"text/html")}replaceContent(t){this.container.querySelector(".load-more-replace-content").replaceWith(t),d.fixSafariResponsiveImages(t),document.dispatchEvent(new f(t))}appendContent(t){const e=this.container.querySelector(".load-more-append-content");let n=null;for(;t.childNodes.length>0;)n=e.appendChild(t.childNodes[0]),d.fixSafariResponsiveImages(n),document.dispatchEvent(new f(n))}clearAppendContentContainer(){const t=this.container.querySelector(".load-more-append-content");for(;t.lastElementChild;)t.removeChild(t.lastElementChild)}static fixSafariResponsiveImages(t){T&&t.querySelectorAll("img").forEach(e=>{e.outerHTML=e.outerHTML})}}class D extends w{constructor(){super(...arguments);i(this,"loadMoreInstances",new Map)}initialize(e){const n=e.querySelectorAll('[data-component="load-more-enabled"]');if(n.length<1)return;const s=new S("LoadMore");s.log("LoadMoreContainers",n),n.forEach(r=>{s.log("LoadMoreInitializing",r);const l=new d(r,s);this.loadMoreInstances.set(r,l)})}}export{D as default};
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.