PageSourceSearch

https://www.coop-pronto.ch/assets/scripts/chunks/9476.fd0de05ee8986e6a.min.js

js coop-pronto.ch collected 2026-09-26 11:02:39 UTC 14,072 bytes, 41 lines download raw bytes

1"use strict";(globalThis.webpackChunkCoop_Pronto=globalThis.webpackChunkCoop_Pronto||[]).push([["9476"],{671(e,t,l){l.d(t,{F_:()=>ea,init:()=>K,rD:()=>W});var r=l(3889),a=l(2495),o=l.n(a),n=l(707),i=l(7936),s=l(7072),d=l(6958),c=l(2984),u=l(6960),f=l(4583),v=l(7325),$=l(7039),h=l(1052),p=l(4759);function m(e,t,l,r,a,o,n){try{var i=e[o](n),s=i.value}catch(e){l(e);return}i.done?t(s):Promise.resolve(s).then(r,a)}function y(e){return function(){var t=this,l=arguments;return new Promise(function(r,a){var o=e.apply(t,l);function n(e){m(o,r,a,n,i,"next",e)}function i(e){m(o,r,a,n,i,"throw",e)}n(void 0)})}}let g=!1,S=!1,L=null,q=null,_=!1,w=!1,b=!1,E=null,C=!0,k="",A=null,T="location-overview",x=`${T}__mobile-item-mode`,I=`${T}__share-my-location`,F=`${T}__route-button`,O=`${T}__result-number`,P=`${T}__item-distance`,V=`${T}__location-list`,j=`${T}__location-list-mobile`,D=`${T}__swiper`,M=`${T}__list-item`,z=`${M}-skeleton`,H=`${T}__filter-services`,J=`${T}__selected-location`,N=`${T}__selected-location--hidden`,R=`${T}__item-link`,Z=`${T}__search-input`,X=`${T}__search-form`,B=`${M}--hidden`,G=`${T}__all-selected-filter-label`,K=e=>{w=!(b="true"===e.dataset.cookiebotActive)||b,C="true"===e.dataset.geolocation||!0,A=e.dataset.siteId?parseInt(e.dataset.siteId,10):null;let t=!1,l=!1;q=e.querySelector(`.${c.A}`);let a=e.querySelector(`.${X}`),o=e.querySelector(`.${V}`),v=e.querySelector(`.${j}`),$=null==o?void 0:o.querySelectorAll(`.${R}`),h=null==v?void 0:v.querySelectorAll(`.${R}`),p=e.querySelector(`.${x}`),m=e.querySelector(`.${G}`),S=e.querySelector(`.${I}`),F=e.querySelector(`.${D}`),O=e.querySelector(`.${H}`),P=null;if(a){P=a.querySelector(`.${Z}`);let e=a.querySelectorAll(`.${Z}`);(0,d.aD)(e),setTimeout(()=>{P&&(k=null==P?void 0:P.value)},100)}if(S&&(C&&"geolocation"in navigator?S.addEventListener("click",()=>{t||(t=!0,navigator.permissions.query({name:"geolocation"}).then(l=>{"granted"===l.state||"prompt"===l.state?navigator.geolocation.getCurrentPosition(l=>{L={lat:l.coords.latitude,lng:l.coords.longitude},$&&(eg($,L),ey(V,!0)),h&&E&&(eg(h,L),ey(j,!0),E.update()),ei(e),(0,c.rD)(L,14),eo(e),a&&ep(a,e),t=!1}):(t=!1,es(e))}))}):S.remove()),et(e).then(t=>{var l,r;e$(e,[null!=(l=null==P?void 0:P.value)?l:""]),U(e,t),q&&(U(q,t),"u"<typeof google||!google.maps?(0,c.hZ)(q):(null!=(r=q.dataset.markers)?r:"")&&(0,c.hZ)(q))}),F&&(E=new r.A(F,{speed:400,draggable:!0,loop:!1,effect:"slide",containerModifierClass:`${D}`,slideClass:`${T}__list-item`,wrapperClass:`${j}`,slidesPerView:1,initialSlide:0,spaceBetween:10,updateOnWindowResize:!0,keyboard:{enabled:!0,onlyInViewport:!0},modules:[n.A,i.A,s.A],on:{slideChange:e=>{let t=e.slides.filter(e=>!e.classList.contains(`${M}--hidden`))[e.activeIndex];if(t){let e=t.querySelector("a");e&&(window.location.hash=e.href.split("#")[1])}}}})),p&&p.addEventListener("click",()=>{e.classList.toggle(`${T}--mobile-item-mode`)}),$&&$.forEach(e=>{e.addEventListener("click",e=>{var t;(null!=(t=window.location.hash.split("#")[1])?t:"")===e.currentTarget.href.split("#")[1]&&q&&((0,d.hd)(),ed(),q.reset(),e.preventDefault())})}),e.addEventListener("markers-loaded",()=>{g&&eo(e)}),window.addEventListener("CookiebotOnAccept",function(){w=!0,a&&ep(a,e)}),e_(),window.addEventListener("resize",()=>{e_()},!1),eo(e),window.addEventListener("hashchange",()=>{eo(e)},!1),q){if(q.addEventListener("geolocation-found",t=>y(function*(){let l=t.detail;L=l,$&&(eg($,l),ey(V,!0)),h&&(eg(h,l),ey(j,!0)),ei(e),a&&ep(a,e)})()),q.addEventListener("marker-click",t=>{let l=t.detail,r=`${l.location.slug}-${l.location.id}`,a=e.querySelector(`[href="#${r}"]`);a&&a.click()}),a){if((0,d.Ix)(a),O){let t=O.querySelectorAll(".chip input");(0,d.aD)(t,()=>{m&&setTimeout(()=>{(0,u.mn)(e,(0,f.k7)(a),m),(0,c.vL)(Q(e))},300)})}a.addEventListener("submit",t=>{t.preventDefault(),m&&((0,u.mn)(e,(0,f.k7)(a),m),(0,c.vL)(Q(e)))}),P&&(P.addEventListener("input",()=>{ep(a,e),(0,c.vL)(Q(e))}),P.value.length>0&&(ep(a,e),(0,c.vL)(Q(e)))),a.addEventListener("change",()=>{if(m){var t;(0,u.mn)(e,(0,f.k7)(a),m),e$(e,[null!=(t=null==P?void 0:P.value)?t:""]),(0,d.Ix)(a)}(0,c.vL)(Q(e))}),a.addEventListener("reset",()=>{P&&P.setAttribute("value",""),(0,d.hd)(),ed(),eh(e,1),es(e),(0,c.vL)(Q(e)),q&&q.reset()})}q.addEventListener("zoom-changed",()=>{(l||_)&&setTimeout(()=>{l=!1,_=!1},100)})}},Q=(e,t=V)=>{let l=e.querySelector(`.${t}`);if(l){let e=l.querySelectorAll(`.${M}:not(.${B})`);if(e){let t=[];
1return e.forEach(e=>{var l;t.push(parseInt(null!=(l=e.dataset.id)?l:"0"))}),t}}return[]},W=(e=[])=>y(function*(){let t=yield(0,v.s)();try{let l=yield fetch("/get-remaining-open-minutes",{method:"POST",headers:{"Content-Type":"application/json","X-CSRF-Token":t},body:JSON.stringify({ids:e})});return yield l.json()}catch(e){return[]}})(),U=(e,t)=>{if(e){let l=t.map(e=>e.id+","+e.posLat+","+e.posLng+","+e.name+","+o()(e.slug)).join("|");return e.dataset.markers=l,l}return""},Y=(e,t)=>{let l=e.querySelector(`.${V}`),r=e.querySelector(`.${j}`);l&&r&&(ee(e,t),t.forEach(t=>{let a=eb(t);a&&l.appendChild(a);let o=l.querySelector(`[href="#${t.slug}-${t.id}"]`);o&&o.addEventListener("click",t=>{var l;(null!=(l=window.location.hash.split("#")[1])?l:"")===t.currentTarget.href.split("#")[1]&&(0,d.C3)()&&(e.classList.remove(`${T}--mobile-item-mode`),t.preventDefault())});let n=eb(t,!0);n&&r.appendChild(n)}))},ee=(e,t)=>{let l=e.querySelectorAll(`.${z}`);l.length>0&&t.length>0&&l.forEach(e=>{e.remove()})},et=e=>y(function*(){if("geolocation"in navigator&&!L)try{let t=yield new Promise((e,t)=>{navigator.geolocation.getCurrentPosition(e,t,{timeout:5e3,maximumAge:6e4})});L={lat:t.coords.latitude,lng:t.coords.longitude},ei(e)}catch(e){console.log("Geolocation not available or denied")}let t=[],l=yield er(10);t=[...l],Y(e,l),el(e);let r=yield er(90,10);t=[...t,...r],Y(e,r),el(e);let a=yield er(1e4,100);return t=[...t,...a],Y(e,a),el(e),U(e,t),U(q,t),(0,c.hZ)(q),S=!0,e.dispatchEvent(new CustomEvent("markers-loaded")),t})(),el=e=>{let t=e.querySelector(`.${V}`),l=e.querySelector(`.${j}`);L?(t&&(eg(t.querySelectorAll(`.${R}`),L),ey(V,!0)),l&&(eg(l.querySelectorAll(`.${R}`),L),ey(j,!0),E&&E.update())):(ey(V,!1),ey(j,!1),E&&E.update())},er=(e=50,t=0)=>y(function*(){let l=yield(0,v.s)();try{let r=yield fetch("/load-all-locations",{method:"POST",headers:{"Content-Type":"application/json","X-CSRF-Token":l},body:JSON.stringify({limit:e,offset:t,siteId:A,userCoordinates:L})});return yield r.json()}catch(e){return console.error(e),[]}})(),ea=(e,t,l=null)=>{var r,a;let o=ec(e),n=ec(e,j),i=e.querySelector(`.${J}-content`),s=e=>{e.forEach(e=>{let l=e.querySelector(`.${R}`),r=t.find(t=>{var l;return t.id===parseInt(null!=(l=e.dataset.id)?l:"0")});if(l&&r){var a,o;null==(a=l.querySelector(`.${T}__address-tag-wrapper > .tag`))||a.remove(),null==(o=l.querySelector(`.${T}__address-tag-wrapper`))||o.prepend((0,d.bf)((0,$.V)(r.minutesLeft)))}})};if(l&&1===t.length){let e=l.classList.value.replace("tag--disabled","");null==(r=l.parentElement)||r.prepend((0,d.bf)((0,$.V)(t[0].minutesLeft,e))),l.remove()}if(o&&s(o),n&&s(n),i){let e=t.find(e=>{var t;return e.id===parseInt(null!=(t=i.dataset.id)?t:"0")});e&&(null==(a=i.querySelector(".tag"))||a.remove(),i.prepend((0,d.bf)((0,$.V)(e.minutesLeft))))}},eo=(e,t=V)=>y(function*(){let l=e.querySelector(`.${J}`);if(S){var r,a,o,n,i;let s=e.querySelector(`.${t}`),c=e.querySelector(`.${J}-content`),u=null!=(r=window.location.hash.split("#")[1])?r:"",f=null==s?void 0:s.querySelector(`[href="#${u}"]`);if(f&&c){let t=e.querySelector(`.${F}`),r=c.nextElementSibling;e.classList.add(`${T}--selected-location-visible`);let s=f.nextElementSibling,v=parseFloat(null!=(a=f.dataset.lat)?a:"0"),$=parseFloat(null!=(o=f.dataset.lng)?o:"0");t.href=en(v,$),r.href=en(v,$),c.innerHTML=`${f.outerHTML} ${s.outerHTML}`,c.dataset.id=null!=(n=null==(i=f.parentElement)?void 0:i.dataset.id)?n:"",(0,d.C3)()&&E&&(Array.from([...e.querySelector(`.${j}`).children]).filter(e=>!e.classList.contains(B)).forEach((t,l)=>{var r;(null!=(r=t.firstElementChild.dataset.slug)?r:"")+"-"+t.dataset.id===u&&E&&(E.slides.length>0&&E.slideTo(l),e.classList.remove(`${T}--mobile-item-mode`))}),E.updateSlides()),null==l||l.classList.remove(N)}else null==l||l.classList.add(N)}else g=!0})(),en=(e,t)=>`https://www.google.com/maps/dir/?api=1&destination=${e},${t}`,ei=e=>{e.classList.add(`${T}--geolocation-found`)},es=e=>{e.classList.remove(`${T}--geolocation-found`)},ed=()=>{history.pushState("",document.title,window.location.pathname)},ec=(e,t=V)=>{let l=e.querySelector(`.${t}`);return l?l.querySelectorAll(`.${M}`):null},eu=e=>
1{e.forEach(e=>e.classList.add(B))},ef=(e,t)=>{let l=e.querySelectorAll(`.${O}`);l&&l.forEach(e=>{e.innerText=t.toString()})},ev=(e,t)=>{if(0===t.length)return!0;for(let l of e.split(","))if(-1!==t.indexOf(parseInt(l)))return!0;return!1},e$=(e,t,l)=>{let r,a=k!==t[0],o=t.length>0,n=ec(e),i=(r=[],e.querySelectorAll('[type="checkbox"]:checked').forEach(e=>{-1===r.indexOf(parseInt(e.value))&&r.push(parseInt(e.value))}),r);if(n){eu(n);let r=0;n.forEach(e=>{var l;let a=null!=(l=e.dataset.searchValue)?l:"";t.forEach(t=>{var l;let o=ev(null!=(l=e.dataset.services)?l:"",i);a.toLowerCase().includes(t.toLowerCase())&&o&&(e.classList.contains(B)&&r++,e.classList.remove(B))})});let f=ec(e,j);if(f){eu(f);let l=0;if(f.forEach(e=>{var r;let a=null!=(r=e.dataset.searchValue)?r:"";t.forEach(t=>{var r;let o=ev(null!=(r=e.dataset.services)?r:"",i);a.toLowerCase().includes(t.toLowerCase())&&o&&(e.classList.contains(B)&&l++,e.classList.remove(B))})}),E&&(E.update(),l>0&&(0,d.C3)())){var s,u;let t=Array.from(f).filter(e=>!e.classList.contains(B)),l=null!=(s=e.dataset.markers)?s:"",r=(0,d.Q0)(l);if(t.length>0&&r.length>0){(0,c.KM)(r).then(e=>{e&&Array.from(f).forEach(l=>{var r;parseInt(null!=(r=l.dataset.id)?r:"-1")===e.id&&(o&&!a?t.forEach((e,t)=>{e.dataset.id===l.dataset.id&&(null==E||E.slideTo(t))}):a&&(null==E||E.slideTo(0)))})});let l=e.querySelector(`.${Z}`);if(null!=(u=null==l?void 0:l.value)?u:""){e.classList.add(`${T}--selected-location-visible`);let t=e.querySelector(`.${J}`);null==t||t.classList.remove(N)}}}}ef(e,r),l&&l(r)}},eh=(e,t)=>{let l=`${T}__extended-search`,r=e.querySelector(`.${l}`);0===t?null==r||r.classList.add(`${l}--show`):null==r||r.classList.remove(`${l}--show`)};function ep(e,t){let l=e.querySelector(`.${Z}`);if(l){let r=l.value,a=t.querySelector(`.${V}`),o=t.querySelector(`.${j}`);if(L&&a&&o){let e=a.querySelectorAll(`.${R}`),l=o.querySelectorAll(`.${R}`);(0,d.C3)()?(eg(l,L),ey(j,!0)):(eg(e,L),ey(V,!0)),ei(t)}null===L&&((0,d.C3)()?ey(j,!1):ey(V,!1)),e$(t,[r],l=>{eh(t,l),l?e$(t,[r]):w?eS(t,r).then(e=>{if(e){let l=t.querySelector(`.${V}`);if(l&&o){(0,d.C3)()?(eg(o.querySelectorAll(`.${R}`),e.geometry.location),ey(j,!0)):(eg(l.querySelectorAll(`.${R}`),e.geometry.location),ey(V,!0));let r=((e,t=10,l=30)=>{let r=ec(e);if(r){eu(r);let e=0;return r.forEach((r,a)=>{var o,n;let i=parseFloat(null!=(o=null==(n=r.querySelector(`.${P}`))?void 0:n.dataset.distance)?o:"0");a<t&&l>i&&(r.classList.remove(B),e++)}),e}return 0})(t,10,50);r>0?(ei(t),ef(t,r),_||(_=!0,setTimeout(()=>{(0,c.rD)(e.geometry.location)},1e3))):es(t)}}}):(eh(t,l),es(t)),em(t,r),(0,d.Ix)(e)}),k=r}}let em=(e,t)=>{e.querySelectorAll(`.${T}__search-string`).forEach(e=>{e.innerText=t})},ey=(e=V,t=!1)=>{let l=document.querySelector(`.${e}`);if(l){let e=Array.from(l.querySelectorAll(`.${M}`));e.sort((e,l)=>{if(e&&l){let d=e.querySelector(`.${R}`),c=l.querySelector(`.${R}`);if(d&&c){var r,a,o,n,i,s;if(t)return parseFloat(null!=(r=d.dataset.distance)?r:"0")-parseFloat(null!=(a=c.dataset.distance)?a:"0");{let e=null!=(o=null==(i=d.dataset.searchValue)?void 0:i.toLowerCase())?o:"",t=null!=(n=null==(s=c.dataset.searchValue)?void 0:s.toLowerCase())?n:"";return e.localeCompare(t)}}}return 0}),l.innerHTML="",e.forEach(e=>{l.appendChild(e)})}},eg=(e,t)=>{e.forEach(e=>{var l,r;let a=parseFloat(null!=(l=e.dataset.lat)?l:"0"),o=parseFloat(null!=(r=e.dataset.lng)?r:"0"),n=e.querySelector(`.${P}`);if(n){let l=(0,d.gd)(t.lat,t.lng,a,o);e.dataset.distance=l.toString(),l>5?n.dataset.distance=l.toFixed(0).toString():n.dataset.distance=l.toFixed(2).toString(),l<1?n.innerText=`${(1e3*l).toFixed(0)} m`:n.innerText=`${l.toFixed(0)} km`}})},eS=(e,t)=>y(function*(){var l;if(b&&!w||!t||!e)return null;let r=null!=(l=e.dataset.key)?l:"";if(""===r)return null;let a="https://maps.googleapis.com/maps/api/geocode/json?key="+r+"&address="+t,o=eL(a);return null!==o&&"undefined"!==o?JSON.parse(o):fetch(a).then(e=>e.json()).then(e=>(eq(a,e.results[0]),e.results[0]))})(),eL=e=>"u">typeof localStorage?localStorage.getItem(e):null,eq=(e,t)=>{"u">typeof localStorage&&localStorage.setItem(e,JSON.stringify(t))},e_=()=>{(0,d.C3)()?(0,c.sf)(0,window.innerHeight/5):(0,c.sf)(0,0)},ew=e=>`${e.name}${e.zip}${e.city}`,eb=(e,t=!1)=>{let l=`
2    <a
3      href="https://www.google.com/maps/dir/?api=1&destination=${e.posLat},${e.posLng}"
4      class="button button--icon-only location-overview__route-button"
5      target="_blank"
6      rel="noopener noreferrer"
7    >
8      ${(0,p.b)("directions")}
9    </a>`,r=`
10  <li class="location-overview__list-item"
11    data-id="${e.id}"
12    data-services="${e.services.join(",")}"
13    data-search-value="${ew(e)}"
14  >
15    <a
16      href="#${o()(e.slug+"-"+e.id)}"
17      data-lat="${e.posLat}"
18      data-lng="${e.posLng}"
19      data-slug="${e.slug}"
20      data-search-value="${ew(e)}"
21      class="${R} no-style"
22    >
23      <div class="location-overview__address-tag-wrapper">
24        ${(0,$.V)(e.minutesLeft)}
25        ${(0,h.I)("","distance",!1,'<div class="location-overview__item-distance"></div>')}
26      </div>
27      <h4 class="${T}__item-name">${e.name}</h4>
28      <div class="${T}__item-address">
29        ${e.address}<br>
30        ${e.zip} ${e.city}<br>
31      </div>
32    </a>
33    ${t?l:""}
34    <a
35      href="${e.url}"
36      class="location-overview__detail-link button button--icon-only button--teaser-icon button--just-link"
37    >
38      ${(0,p.b)("chevron-right")}
39    </a>
40  </li>`;return(0,d.bf)(r)}}}]);
41//# sourceMappingURL=9476.fd0de05ee8986e6a.min.js.map

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.