PageSourceSearch

https://hagergroup.com/_next/static/chunks/769-4e82b8eddc937a20.js

js hagergroup.com collected 2026-10-01 15:29:13 UTC 27,373 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[769],{9378:function(e){e.exports=function e(t,n){if(t===n)return!0;if(t&&n&&"object"==typeof t&&"object"==typeof n){if(t.constructor!==n.constructor)return!1;if(Array.isArray(t)){if((r=t.length)!=n.length)return!1;for(o=r;0!=o--;)if(!e(t[o],n[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((r=(i=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(o=r;0!=o--;)if(!Object.prototype.hasOwnProperty.call(n,i[o]))return!1;for(o=r;0!=o--;){var r,o,i,s=i[o];if(!e(t[s],n[s]))return!1}return!0}return t!=t&&n!=n}},2931:function(e,t,n){n.d(t,{D5:function(){return M},Rt:function(){return U},Sx:function(){return S},_Q:function(){return j},kY:function(){return P},un:function(){return f}});var r=n(2784),o=n(8316),i=n(9378);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(null,arguments)}function a(e,t){if(null==e)return{};var n={};for(var r in e)if(({}).hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}function l(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}let u={NOT_LOADED:"NOT_LOADED",LOADING:"LOADING",LOADED:"LOADED",FAILED:"FAILED",AUTH_FAILURE:"AUTH_FAILURE"};class d{static async load(e,t){var n;let r=e.libraries?e.libraries.split(","):[],o=this.serializeParams(e);this.listeners.push(t),null!=(n=window.google)&&null!=(n=n.maps)&&n.importLibrary?(this.serializedApiParams||(this.loadingStatus=u.LOADED),this.notifyLoadingStatusListeners()):(this.serializedApiParams=o,this.initImportLibrary(e)),this.serializedApiParams&&this.serializedApiParams!==o&&console.warn("[google-maps-api-loader] The maps API has already been loaded with different parameters and will not be loaded again. Refresh the page for new values to have effect.");let i=["maps",...r];await Promise.all(i.map(e=>google.maps.importLibrary(e)))}static serializeParams(e){return[e.v,e.key,e.language,e.region,e.authReferrerPolicy,e.solutionChannel].join("/")}static initImportLibrary(e){if(window.google||(window.google={}),window.google.maps||(window.google.maps={}),window.google.maps.importLibrary){console.error("[google-maps-api-loader-internal]: initImportLibrary must only be called once");return}let t=null,n=()=>t||(t=new Promise((t,n)=>{var r;let o=document.createElement("script"),i=new URLSearchParams;for(let[t,n]of Object.entries(e)){let e=t.replace(/[A-Z]/g,e=>"_"+e[0].toLowerCase());i.set(e,String(n))}i.set("loading","async"),i.set("callback","__googleMapsCallback__"),o.async=!0,o.src="https://maps.googleapis.com/maps/api/js?"+i.toString(),o.nonce=(null==(r=document.querySelector("script[nonce]"))?void 0:r.nonce)||"",o.onerror=()=>{this.loadingStatus=u.FAILED,this.notifyLoadingStatusListeners(),n(Error("The Google Maps JavaScript API could not load."))},window.__googleMapsCallback__=()=>{this.loadingStatus=u.LOADED,this.notifyLoadingStatusListeners(),t()},window.gm_authFailure=()=>{this.loadingStatus=u.AUTH_FAILURE,this.notifyLoadingStatusListeners()},this.loadingStatus=u.LOADING,this.notifyLoadingStatusListeners(),document.head.append(o)}));google.maps.importLibrary=e=>n().then(()=>google.maps.importLibrary(e))}static notifyLoadingStatusListeners(){for(let e of this.listeners)e(this.loadingStatus)}}d.loadingStatus=u.NOT_LOADED,d.serializedApiParams=void 0,d.listeners=[];let c=["onLoad","onError","apiKey","version","libraries"],h=["children"],p=r.createContext(null),f=e=>{let{children:t}=e,n=a(e,h),{mapInstances:o,addMapInstance:i,removeMapInstance:u,clearMapInstances:f}=function(){let[e,t]=(0,r.useState)({}),n=(e,n="default")=>{t(t=>s({},t,{[n]:e}))},o=(e="default")=>{t(t=>a(t,[e].map(l)))},i=()=>{t({})};return{mapInstances:e,addMapInstance:n,removeMapInstance:o,clearMapInstances:i}}(),{status:g,loadedLibraries:m,importLibrary:y}=function(e){let{onLoad:t,onError:n,apiKey:o,version:i,libraries:l=[]}=e,u=a(e,c),[h,p]=(0,r.useState)(d.loadingStatus),[f,g]=(0,r.useReducer)((e,t)=>e[t.name]?e:s({},e,{[t.name]:t.value}),{}),m=(0,r.useMemo)(()=>null==l?void 0:l.join(","),[l]),y=(0,r.useMemo)(()=>JSON.stringify(s({apiKey:o,version:i},u)),[o,i,u]),v=(0,r.useCallback)(async e=>{var t;if(f[e])return f[e];
1if(!(null!=(t=google)&&null!=(t=t.maps)&&t.importLibrary))throw Error("[api-provider-internal] importLibrary was called before google.maps.importLibrary was defined.");let n=await window.google.maps.importLibrary(e);return g({name:e,value:n}),n},[f]);return(0,r.useEffect)(()=>{(async()=>{try{let e=s({key:o},u);for(let t of(i&&(e.v=i),(null==m?void 0:m.length)>0&&(e.libraries=m),(void 0===e.channel||e.channel<0||e.channel>999)&&delete e.channel,void 0===e.solutionChannel?e.solutionChannel="GMP_visgl_rgmlibrary_v1_default":""===e.solutionChannel&&delete e.solutionChannel,await d.load(e,e=>p(e)),["core","maps",...l]))await v(t);t&&t()}catch(e){n?n(e):console.error("<ApiProvider> failed to load the Google Maps JavaScript API",e)}})()},[o,m,y]),{status:h,loadedLibraries:f,importLibrary:v}}(n),v=(0,r.useMemo)(()=>({mapInstances:o,addMapInstance:i,removeMapInstance:u,clearMapInstances:f,status:g,loadedLibraries:m,importLibrary:y}),[o,i,u,f,g,m,y]);return r.createElement(p.Provider,{value:v},t)},g={onBoundsChanged:"bounds_changed",onCenterChanged:"center_changed",onClick:"click",onContextmenu:"contextmenu",onDblclick:"dblclick",onDrag:"drag",onDragend:"dragend",onDragstart:"dragstart",onHeadingChanged:"heading_changed",onIdle:"idle",onIsFractionalZoomEnabledChanged:"isfractionalzoomenabled_changed",onMapCapabilitiesChanged:"mapcapabilities_changed",onMapTypeIdChanged:"maptypeid_changed",onMousemove:"mousemove",onMouseout:"mouseout",onMouseover:"mouseover",onProjectionChanged:"projection_changed",onRenderingTypeChanged:"renderingtype_changed",onTilesLoaded:"tilesloaded",onTiltChanged:"tilt_changed",onZoomChanged:"zoom_changed",onCameraChanged:"bounds_changed"},m=["bounds_changed","center_changed","heading_changed","tilt_changed","zoom_changed"],y=["click","contextmenu","dblclick","mousemove","mouseout","mouseover"],v=Object.keys(g),b=new Set(["backgroundColor","clickableIcons","controlSize","disableDefaultUI","disableDoubleClickZoom","draggable","draggableCursor","draggingCursor","fullscreenControl","fullscreenControlOptions","gestureHandling","headingInteractionEnabled","isFractionalZoomEnabled","keyboardShortcuts","mapTypeControl","mapTypeControlOptions","mapTypeId","maxZoom","minZoom","noClear","panControl","panControlOptions","restriction","rotateControl","rotateControlOptions","scaleControl","scaleControlOptions","scrollwheel","streetView","streetViewControl","streetViewControlOptions","styles","tiltInteractionEnabled","zoomControl","zoomControlOptions"]);function E(){var e;return(null==(e=(0,r.useContext)(p))?void 0:e.status)||u.NOT_LOADED}function _(e){return e&&"object"==typeof e&&"lat"in e&&"lng"in e&&Number.isFinite(e.lat)&&Number.isFinite(e.lng)?e:e.toJSON()}let w=()=>r.createElement("div",{style:{position:"absolute",top:0,left:0,bottom:0,right:0,zIndex:999,display:"flex",flexFlow:"column nowrap",textAlign:"center",justifyContent:"center",fontSize:".8rem",color:"rgba(0,0,0,0.6)",background:"#dddddd",padding:"1rem 1.5rem"}},r.createElement("h2",null,"Error: AuthFailure"),r.createElement("p",null,"A problem with your API key prevents the map from rendering correctly. Please make sure the value of the ",r.createElement("code",null,"APIProvider.apiKey")," prop is correct. Check the error-message in the console for further details."));function C(){let e=E();return e===u.LOADED}let O=["id","defaultBounds","defaultCenter","defaultZoom","defaultHeading","defaultTilt","reuseMaps","renderingType","colorScheme"],T=["padding"];class L{static has(e){return this.entries[e]&&this.entries[e].length>0}static pop(e){return this.entries[e]&&this.entries[e].pop()||null}static push(e,t){this.entries[e]||(this.entries[e]=[]),this.entries[e].push(t)}}L.entries={};let A=r.createContext(null),M=e=>{let{children:t,id:n,className:o,style:l}=e,d=(0,r.useContext)(p),c=E();if(!d)throw Error("<Map> can only be used inside an <ApiProvider> component.");let[h,f,M]=function(e,t){let n=C(),[o,i]=(0,r.useState)(null),[l,u]=function(){let[e,t]=(0,r.useState)(null),n=(0,r.useCallback)(e=>t(e),[t]);return[e,n]}(),d=function(e){let t=function(){let[,e]=(0,r.useReducer)(e=>e+1,0);return e}(),n=(0,r.useRef)({center:{lat:0,lng:0},heading:0,tilt:0,zoom:0});return(0,r.useEffect)(()=>
1{if(!e)return;let r=google.maps.event.addListener(e,"bounds_changed",()=>{(function(e,t){let n=e.getCenter(),r=e.getZoom(),o=e.getHeading()||0,i=e.getTilt()||0,s=e.getBounds();n&&s&&Number.isFinite(r)||console.warn("[useTrackedCameraState] at least one of the values from the map returned undefined. This is not expected to happen. Please report an issue at https://github.com/visgl/react-google-maps/issues/new"),Object.assign(t.current,{center:(null==n?void 0:n.toJSON())||{lat:0,lng:0},zoom:r||0,heading:o,tilt:i})})(e,n),t()});return()=>r.remove()},[e,t]),n}(o),{id:c,defaultBounds:h,defaultCenter:p,defaultZoom:f,defaultHeading:g,defaultTilt:m,reuseMaps:y,renderingType:v,colorScheme:b}=e,E=a(e,O),_=void 0!==e.zoom||void 0!==e.defaultZoom,w=void 0!==e.center||void 0!==e.defaultCenter;for(let e of(h||_&&w||console.warn("<Map> component is missing configuration. You have to provide zoom and center (via the `zoom`/`defaultZoom` and `center`/`defaultCenter` props) or specify the region to show using `defaultBounds`. See https://visgl.github.io/react-google-maps/docs/api-reference/components/map#required"),!E.center&&p&&(E.center=p),!E.zoom&&Number.isFinite(f)&&(E.zoom=f),!E.heading&&Number.isFinite(g)&&(E.heading=g),!E.tilt&&Number.isFinite(m)&&(E.tilt=m),Object.keys(E)))void 0===E[e]&&delete E[e];let A=(0,r.useRef)(void 0);return(0,r.useEffect)(()=>{let r,o;if(!l||!n)return;let{addMapInstance:u,removeMapInstance:p}=t,{mapId:f}=e,g=`${f||"default"}:${v||"default"}:${b||"LIGHT"}`;if(y&&L.has(g)?(r=(o=L.pop(g)).getDiv(),l.appendChild(r),o.setOptions(E),setTimeout(()=>o.setCenter(o.getCenter()),0)):((r=document.createElement("div")).style.height="100%",l.appendChild(r),o=new google.maps.Map(r,s({},E,v?{renderingType:v}:{},b?{colorScheme:b}:{}))),i(o),u(o,c),h){let{padding:e}=h,t=a(h,T);o.fitBounds(t,e)}else _&&w||o.fitBounds({east:180,west:-180,south:-90,north:90});if(A.current){let{mapId:e,cameraState:t}=A.current;e!==f&&o.setOptions(t)}return()=>{A.current={mapId:f,cameraState:d.current},r.remove(),y?L.push(g,o):google.maps.event.clearInstanceListeners(o),i(null),p(c)}},[l,n,c,e.mapId,e.renderingType,e.colorScheme]),[o,u,d]}(e,d);!function(e,t,n){let o=n.center?_(n.center):null,i=null,s=null;o&&Number.isFinite(o.lat)&&Number.isFinite(o.lng)&&(i=o.lat,s=o.lng);let a=Number.isFinite(n.zoom)?n.zoom:null,l=Number.isFinite(n.heading)?n.heading:null,u=Number.isFinite(n.tilt)?n.tilt:null;(0,r.useLayoutEffect)(()=>{if(!e)return;let n={},r=!1;null!==i&&null!==s&&(t.current.center.lat!==i||t.current.center.lng!==s)&&(n.center={lat:i,lng:s},r=!0),null!==a&&t.current.zoom!==a&&(n.zoom=a,r=!0),null!==l&&t.current.heading!==l&&(n.heading=l,r=!0),null!==u&&t.current.tilt!==u&&(n.tilt=u,r=!0),r&&e.moveCamera(n)})}(h,M,e),function(e,t){for(let n of v){let o=t[n],i=g[n];(0,r.useEffect)(()=>{if(!e||!o)return;let t=google.maps.event.addListener(e,i,t=>{o(function(e,t,n){let r={type:e,map:t,detail:{},stoppable:!1,stop:()=>{}};if(m.includes(e)){let e=r,n=t.getCenter(),o=t.getZoom(),i=t.getHeading()||0,s=t.getTilt()||0,a=t.getBounds();return n&&a&&Number.isFinite(o)||console.warn("[createEvent] at least one of the values from the map returned undefined. This is not expected to happen. Please report an issue at https://github.com/visgl/react-google-maps/issues/new"),e.detail={center:(null==n?void 0:n.toJSON())||{lat:0,lng:0},zoom:o||0,heading:i,tilt:s,bounds:(null==a?void 0:a.toJSON())||{north:90,east:180,south:-90,west:-180}},e}if(y.includes(e)){var o;if(!n)throw Error("[createEvent] mouse events must provide a srcEvent");let e=r;return e.domEvent=n.domEvent,e.stoppable=!0,e.stop=()=>n.stop(),e.detail={latLng:(null==(o=n.latLng)?void 0:o.toJSON())||null,placeId:n.placeId},e}return r}(i,e,t))});return()=>t.remove()},[e,i,o])}}(h,e),function(e,t){let n={},o=Object.keys(t);for(let e of o)b.has(e)&&(n[e]=t[e]);!function(e,t){let n=(0,r.useRef)(void 0);n.current&&i(t,n.current)||(n.current=t),(0,r.useEffect)(e,n.current)}(()=>{e&&e.setOptions(n)},[n])}(h,e);let I=function(e,t){let{viewport:n,viewState:o}=t;return(0,r.useLayoutEffect)(()=>{if(!e||!o)return;let{latitude:t,longitude:n,bearing:r,pitch:i,zoom:s}=o;e.moveCamera({center:{lat:t,lng:n},heading:r,tilt:i,zoom:s+1})},[e,o]),!!n}(h,e),S=!!e.controlled;(0,r.useEffect)(()=>
1{if(h)return I&&h.setOptions({disableDefaultUI:!0}),(I||S)&&h.setOptions({gestureHandling:"none",keyboardShortcuts:!1}),()=>{h.setOptions({gestureHandling:e.gestureHandling,keyboardShortcuts:e.keyboardShortcuts})}},[h,I,S,e.gestureHandling,e.keyboardShortcuts]);let P=e.center?_(e.center):null,x=null,k=null;P&&Number.isFinite(P.lat)&&Number.isFinite(P.lng)&&(x=P.lat,k=P.lng);let N=(0,r.useMemo)(()=>{var t,n,r,o,i;return{center:{lat:null!=(t=x)?t:0,lng:null!=(n=k)?n:0},zoom:null!=(r=e.zoom)?r:0,heading:null!=(o=e.heading)?o:0,tilt:null!=(i=e.tilt)?i:0}},[x,k,e.zoom,e.heading,e.tilt]);(0,r.useLayoutEffect)(()=>{if(!h||!S)return;h.moveCamera(N);let e=h.addListener("bounds_changed",()=>{h.moveCamera(N)});return()=>e.remove()},[h,S,N]);let D=(0,r.useMemo)(()=>s({width:"100%",height:"100%",position:"relative",zIndex:I?-1:0},l),[l,I]),F=(0,r.useMemo)(()=>({map:h}),[h]);return c===u.AUTH_FAILURE?r.createElement("div",{style:s({position:"relative"},o?{}:D),className:o},r.createElement(w,null)):r.createElement("div",s({ref:f,"data-testid":"map",style:o?void 0:D,className:o},n?{id:n}:{}),h?r.createElement(A.Provider,{value:F},t):null)};M.deckGLViewProps=!0;let I=new Set,S=(e=null)=>{let t=(0,r.useContext)(p),{map:n}=(0,r.useContext)(A)||{};if(null===t)return!function(...e){let t=JSON.stringify(e);I.has(t)||(I.add(t),console.error(...e))}("useMap(): failed to retrieve APIProviderContext. Make sure that the <APIProvider> component exists and that the component you are calling `useMap()` from is a sibling of the <APIProvider>."),null;let{mapInstances:o}=t;return null!==e?o[e]||null:n||o.default||null};function P(e){let t=C(),n=(0,r.useContext)(p);return(0,r.useEffect)(()=>{t&&n&&n.importLibrary(e)},[t,n,e]),(null==n?void 0:n.loadedLibraries[e])||null}function x(e,t,n){(0,r.useEffect)(()=>{if(!e||!t||!n)return;let r=google.maps.event.addListener(e,t,n);return()=>r.remove()},[e,t,n])}function k(e,t,n){(0,r.useEffect)(()=>{e&&(e[t]=n)},[e,t,n])}function N(e,t,n){(0,r.useEffect)(()=>{if(e&&t&&n)return e.addEventListener(t,n),()=>e.removeEventListener(t,n)},[e,t,n])}function D(e){return e.nodeType===Node.ELEMENT_NODE}let F=r.createContext(null),z={TOP_LEFT:["0%","0%"],TOP_CENTER:["50%","0%"],TOP:["50%","0%"],TOP_RIGHT:["100%","0%"],LEFT_CENTER:["0%","50%"],LEFT_TOP:["0%","0%"],LEFT:["0%","50%"],LEFT_BOTTOM:["0%","100%"],RIGHT_TOP:["100%","0%"],RIGHT:["100%","50%"],RIGHT_CENTER:["100%","50%"],RIGHT_BOTTOM:["100%","100%"],BOTTOM_LEFT:["0%","100%"],BOTTOM_CENTER:["50%","100%"],BOTTOM:["50%","100%"],BOTTOM_RIGHT:["100%","100%"],CENTER:["50%","50%"]},R=({children:e,styles:t,className:n,anchorPoint:o})=>{let[i,s]=null!=o?o:z.BOTTOM,a=`-${i}`,l=`-${s}`;i.trimStart().startsWith("-")&&(a=i.substring(1)),s.trimStart().startsWith("-")&&(l=s.substring(1));let u=`translate(50%, 100%) translate(${a}, ${l})`;return r.createElement("div",{style:{transform:u}},r.createElement("div",{className:n,style:t},e))},j=(0,r.forwardRef)((e,t)=>{let{children:n,style:i,className:s,anchorPoint:a}=e,[l,u]=function(e){let[t,n]=(0,r.useState)(null),[o,i]=(0,r.useState)(null),s=S(),a=P("marker"),{children:l,onClick:u,className:d,onMouseEnter:c,onMouseLeave:h,onDrag:p,onDragStart:f,onDragEnd:g,collisionBehavior:m,clickable:y,draggable:v,position:b,title:E,zIndex:_}=e,w=r.Children.count(l);return(0,r.useEffect)(()=>{if(!s||!a)return;let e=new a.AdvancedMarkerElement;e.map=s,n(e);let t=null;return w>0&&((t=document.createElement("div")).isCustomMarker=!0,e.content=t,i(t)),()=>{var r;e.map=null,null==(r=t)||r.remove(),n(null),i(null)}},[s,a,w]),(0,r.useEffect)(()=>{null!=t&&t.content&&D(t.content)&&!(w>0)&&(t.content.className=null!=d?d:"")},[t,d,w]),k(t,"position",b),k(t,"title",null!=E?E:""),k(t,"zIndex",_),k(t,"collisionBehavior",m),(0,r.useEffect)(()=>{t&&(void 0!==v?t.gmpDraggable=v:p||f||g?t.gmpDraggable=!0:t.gmpDraggable=!1)},[t,v,p,g,f]),(0,r.useEffect)(()=>{if(!t)return;let e=void 0!==y||!!u||!!c||!!h;t.gmpClickable=e,e&&null!=t&&t.content&&D(t.content)&&(t.content.style.pointerEvents="none",t.content.firstElementChild&&(t.content.firstElementChild.style.pointerEvents="all"))},[t,y,u,c,h]),x(t,"click",u),x(t,"drag",p),x(t,"dragstart",f),x(t,"dragend",g),N(null==t?void 0:t.element,"mouseenter",c),N(null==t?void 0:t.element,"mouseleave",h),[t,o]}(e),d=(0,r.useMemo)(()=>l?{marker:l}:null,[l]);return((0,r.useImperativeHandle)(t,()=>l,[l]),u)?r.createElement(F.Provider,{value:d},(0,o.createPortal)(r.createElement(R,{anchorPoint:a,styles:i,className:s},n),u)):null});function U(){let[e,t]=(0,r.useState)(null),n=(0,r.useCallback)(e=>{t(e)},[]);return[n,e]}let Z=["onClick","onDrag","onDragStart","onDragEnd","onMouseOver","onMouseOut"];(0,r.forwardRef)((e,t)=>{let n=function(e){let[t,n]=(0,r.useState)(null),o=S(),{onClick:i,onDrag:s,onDragStart:l,onDragEnd:u,onMouseOver:d,onMouseOut:c}=e,h=a(e,Z),{position:p,draggable:f}=h;return(0,r.useEffect)(()=>
1{if(!o){void 0===o&&console.error("<Marker> has to be inside a Map component.");return}let e=new google.maps.Marker(h);return e.setMap(o),n(e),()=>{e.setMap(null),n(null)}},[o]),(0,r.useEffect)(()=>{if(!t)return;let e=google.maps.event;return i&&e.addListener(t,"click",i),s&&e.addListener(t,"drag",s),l&&e.addListener(t,"dragstart",l),u&&e.addListener(t,"dragend",u),d&&e.addListener(t,"mouseover",d),c&&e.addListener(t,"mouseout",c),t.setDraggable(!!f),()=>{e.clearInstanceListeners(t)}},[t,f,i,s,l,u,d,c]),(0,r.useEffect)(()=>{t&&h&&t.setOptions(h)},[t,h]),(0,r.useEffect)(()=>{!f&&p&&t&&t.setPosition(p)},[f,p,t]),t}(e);return(0,r.useImperativeHandle)(t,()=>n,[n]),r.createElement(r.Fragment,null)})},3427:function(e,t,n){var r;n.d(t,{Z:function(){return c}});let o=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class i{static from(e){if(!(e instanceof ArrayBuffer))throw Error("Data must be an instance of ArrayBuffer.");let[t,n]=new Uint8Array(e,0,2);if(219!==t)throw Error("Data does not appear to be in a KDBush format.");let r=n>>4;if(1!==r)throw Error(`Got v${r} data when expected v1.`);let s=o[15&n];if(!s)throw Error("Unrecognized array type.");let[a]=new Uint16Array(e,2,1),[l]=new Uint32Array(e,4,1);return new i(l,a,s,e)}constructor(e,t=64,n=Float64Array,r){if(isNaN(e)||e<0)throw Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+t,2),65535),this.ArrayType=n,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;let i=o.indexOf(this.ArrayType),s=2*e*this.ArrayType.BYTES_PER_ELEMENT,a=e*this.IndexArrayType.BYTES_PER_ELEMENT,l=(8-a%8)%8;if(i<0)throw Error(`Unexpected typed array class: ${n}.`);r&&r instanceof ArrayBuffer?(this.data=r,this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+a+l,2*e),this._pos=2*e,this._finished=!0):(this.data=new ArrayBuffer(8+s+a+l),this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+a+l,2*e),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+i]),new Uint16Array(this.data,2,1)[0]=t,new Uint32Array(this.data,4,1)[0]=e)}add(e,t){let n=this._pos>>1;return this.ids[n]=n,this.coords[this._pos++]=e,this.coords[this._pos++]=t,n}finish(){let e=this._pos>>1;if(e!==this.numItems)throw Error(`Added ${e} items when expected ${this.numItems}.`);return function e(t,n,r,o,i,a){if(i-o<=r)return;let l=o+i>>1;(function e(t,n,r,o,i,a){for(;i>o;){if(i-o>600){let s=i-o+1,l=r-o+1,u=Math.log(s),d=.5*Math.exp(2*u/3),c=.5*Math.sqrt(u*d*(s-d)/s)*(l-s/2<0?-1:1),h=Math.max(o,Math.floor(r-l*d/s+c)),p=Math.min(i,Math.floor(r+(s-l)*d/s+c));e(t,n,r,h,p,a)}let l=n[2*r+a],u=o,d=i;for(s(t,n,o,r),n[2*i+a]>l&&s(t,n,o,i);u<d;){for(s(t,n,u,d),u++,d--;n[2*u+a]<l;)u++;for(;n[2*d+a]>l;)d--}n[2*o+a]===l?s(t,n,o,d):s(t,n,++d,i),d<=r&&(o=d+1),r<=d&&(i=d-1)}})(t,n,l,o,i,a),e(t,n,r,o,l-1,1-a),e(t,n,r,l+1,i,1-a)}(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,t,n,r){if(!this._finished)throw Error("Data not yet indexed - call index.finish().");let{ids:o,coords:i,nodeSize:s}=this,a=[0,o.length-1,0],l=[];for(;a.length;){let u=a.pop()||0,d=a.pop()||0,c=a.pop()||0;if(d-c<=s){for(let s=c;s<=d;s++){let a=i[2*s],u=i[2*s+1];a>=e&&a<=n&&u>=t&&u<=r&&l.push(o[s])}continue}let h=c+d>>1,p=i[2*h],f=i[2*h+1];p>=e&&p<=n&&f>=t&&f<=r&&l.push(o[h]),(0===u?e<=p:t<=f)&&(a.push(c),a.push(h-1),a.push(1-u)),(0===u?n>=p:r>=f)&&(a.push(h+1),a.push(d),a.push(1-u))}return l}within(e,t,n){if(!this._finished)throw Error("Data not yet indexed - call index.finish().");let{ids:r,coords:o,nodeSize:i}=this,s=[0,r.length-1,0],a=[],u=n*n;for(;s.length;){let d=s.pop()||0,c=s.pop()||0,h=s.pop()||0;if(c-h<=i){for(let n=h;n<=c;n++)l(o[2*n],o[2*n+1],e,t)<=u&&a.push(r[n]);continue}let p=h+c>>1,f=o[2*p],g=o[2*p+1];l(f,g,e,t)<=u&&a.push(r[p]),(0===d?e-n<=f:t-n<=g)&&(s.push(h),s.push(p-1),s.push(1-d)),(0===d?e+n>=f:t+n>=g)&&(s.push(p+1),s.push(c),s.push(1-d))}return a}}function s(e,t,n,r){a(e,n,r),a(t,2*n,2*r),a(t,2*n+1,2*r+1)}function a(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}function l(e,t,n,r){let o=e-n,i=t-r;return o*o+i*i}let u={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:e=>e},d=Math.fround||(r=new Float32Array(1),e=>(r[0]=+e,r[0]));class c{constructor(e){this.options=Object.assign(Object.create(u),e),this.trees=Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){let{log:t,minZoom:n,maxZoom:r}=this.options;t&&console.time("total time");let o=`prepare ${e.length} points`;t&&console.time(o),this.points=e;let i=[];for(let t=0;t<e.length;t++){let n=e[t];if(!n.geometry)continue;let[r,o]=n.geometry.coordinates,s=d(f(r)),a=d(g(o));i.push(s,a,1/0,t,-1,1),this.options.reduce&&i.push(0)}let s=this.trees[r+1]=this._createTree(i);t&&console.timeEnd(o);for(let e=r;e>=n;e--){let n=+Date.now();s=this.trees[e]=this._createTree(this._cluster(s,e)),t&&console.log("z%d: %d clusters in %dms",e,s.numItems,+Date.now()-n)}return t&&console.timeEnd("total time"),this}getClusters(e,t){let n=((e[0]+180)%360+360)%360-180,r=Math.max(-90,Math.min(90,e[1])),o=180===e[2]?180:((e[2]+180)%360+360)%360-180,i=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)n=-180,o=180;else if(n>o){let e=this.getClusters([n,r,180,i],t),s=this.getClusters([-180,r,o,i],t);return e.concat(s)}let s=this.trees[this._limitZoom(t)],a=s.range(f(n),g(i),f(o),g(r)),l=s.data,u=[];for(let e of a){let t=this.stride*e;u.push(l[t+5]>1?h(l,t,this.clusterProps):this.points[l[t+3]])}return u}getChildren(e){let t=this._getOriginId(e),n=this._getOriginZoom(e),r="No cluster with the specified id.",o=this.trees[n];if(!o)throw Error(r);let i=o.data;if(t*this.stride>=i.length)throw Error(r);let s=this.options.radius/(this.options.extent*Math.pow(2,n-1)),a=i[t*this.stride],l=i[t*this.stride+1],u=o.within(a,l,s),d=[];for(let t of u){let n=t*this.stride;i[n+4]===e&&d.push(i[n+5]>1?h(i,n,this.clusterProps):this.points[i[n+3]])}if(0===d.length)throw Error(r);return d}
1getLeaves(e,t,n){t=t||10,n=n||0;let r=[];return this._appendLeaves(r,e,t,n,0),r}getTile(e,t,n){let r=this.trees[this._limitZoom(e)],o=Math.pow(2,e),{extent:i,radius:s}=this.options,a=s/i,l=(n-a)/o,u=(n+1+a)/o,d={features:[]};return this._addTileFeatures(r.range((t-a)/o,l,(t+1+a)/o,u),r.data,t,n,o,d),0===t&&this._addTileFeatures(r.range(1-a/o,l,1,u),r.data,o,n,o,d),t===o-1&&this._addTileFeatures(r.range(0,l,a/o,u),r.data,-1,n,o,d),d.features.length?d:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){let n=this.getChildren(e);if(t++,1!==n.length)break;e=n[0].properties.cluster_id}return t}_appendLeaves(e,t,n,r,o){let i=this.getChildren(t);for(let t of i){let i=t.properties;if(i&&i.cluster?o+i.point_count<=r?o+=i.point_count:o=this._appendLeaves(e,i.cluster_id,n,r,o):o<r?o++:e.push(t),e.length===n)break}return o}_createTree(e){let t=new i(e.length/this.stride|0,this.options.nodeSize,Float32Array);for(let n=0;n<e.length;n+=this.stride)t.add(e[n],e[n+1]);return t.finish(),t.data=e,t}_addTileFeatures(e,t,n,r,o,i){for(let s of e){let e,a,l,u;let d=s*this.stride,c=t[d+5]>1;if(c)e=p(t,d,this.clusterProps),a=t[d],l=t[d+1];else{let n=this.points[t[d+3]];e=n.properties;let[r,o]=n.geometry.coordinates;a=f(r),l=g(o)}let h={type:1,geometry:[[Math.round(this.options.extent*(a*o-n)),Math.round(this.options.extent*(l*o-r))]],tags:e};void 0!==(u=c||this.options.generateId?t[d+3]:this.points[t[d+3]].id)&&(h.id=u),i.features.push(h)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){let{radius:n,extent:r,reduce:o,minPoints:i}=this.options,s=n/(r*Math.pow(2,t)),a=e.data,l=[],u=this.stride;for(let n=0;n<a.length;n+=u){if(a[n+2]<=t)continue;a[n+2]=t;let r=a[n],d=a[n+1],c=e.within(a[n],a[n+1],s),h=a[n+5],p=h;for(let e of c){let n=e*u;a[n+2]>t&&(p+=a[n+5])}if(p>h&&p>=i){let e,i=r*h,s=d*h,f=-1,g=((n/u|0)<<5)+(t+1)+this.points.length;for(let r of c){let l=r*u;if(a[l+2]<=t)continue;a[l+2]=t;let d=a[l+5];i+=a[l]*d,s+=a[l+1]*d,a[l+4]=g,o&&(e||(e=this._map(a,n,!0),f=this.clusterProps.length,this.clusterProps.push(e)),o(e,this._map(a,l)))}a[n+4]=g,l.push(i/p,s/p,1/0,g,-1,p),o&&l.push(f)}else{for(let e=0;e<u;e++)l.push(a[n+e]);if(p>1)for(let e of c){let n=e*u;if(!(a[n+2]<=t)){a[n+2]=t;for(let e=0;e<u;e++)l.push(a[n+e])}}}}return l}_getOriginId(e){return e-this.points.length>>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,t,n){if(e[t+5]>1){let r=this.clusterProps[e[t+6]];return n?Object.assign({},r):r}let r=this.points[e[t+3]].properties,o=this.options.map(r);return n&&o===r?Object.assign({},o):o}}function h(e,t,n){return{type:"Feature",id:e[t+3],properties:p(e,t,n),geometry:{type:"Point",coordinates:[(e[t]-.5)*360,360*Math.atan(Math.exp((180-360*e[t+1])*Math.PI/180))/Math.PI-90]}}}function p(e,t,n){let r=e[t+5],o=r>=1e4?`${Math.round(r/1e3)}k`:r>=1e3?`${Math.round(r/100)/10}k`:r,i=e[t+6],s=-1===i?{}:Object.assign({},n[i]);return Object.assign(s,{cluster:!0,cluster_id:e[t+3],point_count:r,point_count_abbreviated:o})}function f(e){return e/360+.5}function g(e){let t=Math.sin(e*Math.PI/180),n=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return n<0?0:n>1?1:n}}}]);

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.