@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
1 lines • 20.6 kB
JavaScript
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2303,9397],{17136(e,t,n){n.d(t,{Y_:()=>F,O7:()=>x,el:()=>M});var r=n(92602),s=n(69052),o=n(49186),i=n(53966),c=n(39829),a=n(82799),u=n(16930),l=n(80754),h=n(21325),f=n(28735),g=n(11254),d=n(60408),p=n(65864),y=n(2272),m=n(84952),w=n(92300);const _=()=>i.A.getLogger("esri.geometry.support.normalizeUtils");function b(e){return"polygon"===e[0].type}function S(e){return"polyline"===e[0].type}function k(e,t,n){if(t){const t=function(e,t){if(!(e instanceof a.A||e instanceof c.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw _().error(e),new o.A("internal:geometry",e)}const n=(0,l.r8)(e),r=[];for(const e of n){const n=[];r.push(n),n.push([e[0][0],e[0][1]]);for(let r=0;r<e.length-1;r++){const s=e[r][0],o=e[r][1],i=e[r+1][0],c=e[r+1][1],a=Math.sqrt((i-s)*(i-s)+(c-o)*(c-o)),u=(c-o)/a,l=(i-s)/a,h=a/t;if(h>1){for(let e=1;e<=h-1;e++){const r=e*t,i=l*r+s,c=u*r+o;n.push([i,c])}const e=(a+Math.floor(h-1)*t)/2,r=l*e+s,i=u*e+o;n.push([r,i])}n.push([i,c])}}return function(e){return"polygon"===e.type}(e)?new c.A({rings:r,spatialReference:e.spatialReference}):new a.A({paths:r,spatialReference:e.spatialReference})}(e,1e6);e=(0,f.ci)(t,!0)}return n&&(e=(0,l.kS)(e,n)),e}function A(e,t,n){if(Array.isArray(e)){const r=e[0];if(r>t){const n=(0,l.kd)(r,t);e[0]=r+n*(-2*t)}else if(r<n){const t=(0,l.kd)(r,n);e[0]=r+t*(-2*n)}}else{const r=e.x;if(r>t){const n=(0,l.kd)(r,t);e=e.clone().offset(n*(-2*t),0)}else if(r<n){const t=(0,l.kd)(r,n);e=e.clone().offset(t*(-2*n),0)}}return e}function v(e,t){let n=-1;for(let r=0;r<t.cutIndexes.length;r++){const s=t.cutIndexes[r],o=t.geometries[r],i=(0,l.r8)(o);for(let e=0;e<i.length;e++){const t=i[e];t.some(n=>{if(n[0]<180)return!0;{let n=0;for(let e=0;e<t.length;e++){const r=t[e][0];n=r>n?r:n}n=Number(n.toFixed(9));const r=-360*(0,l.kd)(n,180);for(let n=0;n<t.length;n++){const t=o.getPoint(e,n);o.setPoint(e,n,t.clone().offset(r,0))}return!0}})}if(s===n){if(b(e))for(const t of(0,l.r8)(o))e[s]=e[s].addRing(t);else if(S(e))for(const t of(0,l.r8)(o))e[s]=e[s].addPath(t)}else n=s,e[s]=o}return e}async function M(e,t,n){if(!Array.isArray(e))return M([e],t);t&&"string"!=typeof t&&_().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const s="string"==typeof t?t:t?.url??r.A.geometryServiceUrl;let o,i,u,b,S,x,R,F,C=0;const P=[],L=[];for(const t of e)if(null!=t)if(o||(o=t.spatialReference,i=(0,h.Vp)(o),u=o.isWebMercator,x=u?102100:4326,b=l.j7[x].maxX,S=l.j7[x].minX,R=l.j7[x].plus180Line,F=l.j7[x].minus180Line),i)if("mesh"===t.type)L.push(t);else if("point"===t.type)L.push(A(t.clone(),b,S));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>A(e,b,S)),L.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,i);L.push(e.rings?new c.A(e):e)}else if(t.extent){const e=t.extent,n=(0,l.kd)(e.xmin,S)*(2*b);let r=0===n?t.clone():(0,l.kS)(t.clone(),n);e.offset(n,0);let{xmin:s,xmax:o}=e;s=Number(s.toFixed(9)),o=Number(o.toFixed(9)),e.intersects(R)&&o!==b?(C=o>C?o:C,r=k(r,u),P.push(r),L.push("cut")):e.intersects(F)&&s!==S?(C=o*(2*b)>C?o*(2*b):C,r=k(r,u,360),P.push(r),L.push("cut")):L.push(r)}else L.push(t.clone());else L.push(t);else L.push(t);let W=(0,l.kd)(C,b),q=-90;const N=W,j=new a.A;for(;W>0;){const e=360*W-180;j.addPath([[e,q],[e,-1*q]]),q*=-1,W--}if(P.length>0&&N>0){const t=v(P,await async function(e,t,n,r){const s=(0,y.Dl)(e),o=t[0].spatialReference,i={...r,responseType:"json",query:{...s.query,f:"json",sr:(0,h.YX)(o),target:JSON.stringify({geometryType:(0,d.$B)(t[0]),geometries:t}),cutter:JSON.stringify(n)}},c=await(0,g.A)(s.path+"/cut",i),{cutIndexes:a,geometries:u=[]}=c.data;return{cutIndexes:a,geometries:u.map(e=>{const t=(0,p.rS)(e);return t.spatialReference=o,t})}}(s,P,j,n)),r=[],o=[];for(let n=0;n<L.length;n++){const s=L[n];if("cut"!==s)o.push(s);else{const s=t.shift(),i=e[n];null!=i&&"polygon"===i.type&&i.rings&&i.rings.length>1&&s.rings.length>=i.rings.length?(r.push(s),o.push("simplify")):o.push(u?(0,f.Gh)(s):s)}}if(!r.length)return o;const i=await async function(e,t,n){const r="string"==typeof e?(0,m.An)(e):e,s=t[0].spatialReference,o=(0,d.$B)(t[0]),i={...n,query:{...r.query,f:"json",sr:(0,h.YX)(s),geometries:JSON.stringify((0,w.X)(t))}},{data:c}=await(0,g.A)(r.path+"/simplify",i);return(0,w.V)(c.geometries,o,s)}(s,r,n),c=[];for(let e=0;e<o.length;e++){const t=o[e];"simplify"!==t?c.push(t):c.push(u?(0,f.Gh)(i.shift()):i.shift())}return c}const O=[];for(let e=0;e<L.length;e++){const t=L[e];if("cut"!==t)O.push(t);else{const e=P.shift();O.push(!0===u?(0,f.Gh)(e):e)}}return O}function x(e,t,n){const r=(0,h.Vp)(n);if(null==r)return e;const[s,o]=r.valid,i=2*o;let c=0,a=0;t>o?c=Math.ceil(Math.abs(t-o)/i):t<s&&(c=-Math.ceil(Math.abs(t-s)/i)),e>o?a=Math.ceil(Math.abs(e-o)/i):e<s&&(a=-Math.ceil(Math.abs(e-s)/i));let u=e+(c-a)*i;const l=u-t;return l>o?u-=i:l<s&&(u+=i),u}function R(e){const t=(0,h.Vp)(e);if(null==t)return null;const[n,r]=t.valid;return new s.hr(n,r)}const F=R(u.A.WGS84);R(u.A.WebMercator)},30624(e,t,n){n.r(t),n.d(t,{createConnection:()=>A});var r=n(5482),s=n(11254),o=n(49186),i=n(53966),c=n(74887),a=n(84952),u=n(91429),l=n(16930),h=n(65864),f=n(62815),g=n(65529);let d=class extends g.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new o.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,r.Cg)([(0,u.MZ)({readOnly:!0})],d.prototype,"connectionError",null),d=(0,r.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],d);let p=class extends d{constructor(e){super({}),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:n,sourceSpatialReference:r}=e;this._config=e,this._featureZScaler=(0,f.N)(t,r,n),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,n=0){try{if(this.destroyed)return;const t=(0,a.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(r){const s=t/1e3;return this._config.maxReconnectionAttempts&&n>=this._config.maxReconnectionAttempts?(i.A.getLogger(this).error(new o.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.A.getLogger(this).error(new o.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${s}s`,r)),await(0,c.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),n+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.A.getLogger(this).error(new o.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,n)=>{const r=new WebSocket(e);r.onopen=()=>{if(r.onopen=null,this.destroyed)return r.onclose=null,void r.close();r.onclose=e=>this._onClose(e),r.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(r),t(r)},r.onclose=e=>{r.onopen=r.onclose=null,n(e)}})}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const n=(0,c.Tw)(),r=t.onmessage,{filter:s,outFields:a,spatialReference:u}=this._config;return n.timeout(e),t.onmessage=e=>{let c=null;try{c=JSON.parse(e.data)}catch(e){}c&&"object"==typeof c||(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),n.reject(),this.destroy()),c.spatialReference?.wkid!==u?.wkid&&(i.A.getLogger(this).error(new o.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${u.wkid}`,e.data)),n.reject(),this.destroy()),"json"!==c.format&&(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),n.reject(),this.destroy()),s&&c.filter!==s&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set filter, but server doesn't support it")),a&&c.outFields!==a&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=r;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],n.resolve()},t.send(JSON.stringify({filter:s,outFields:a,format:"json",spatialReference:{wkid:u.wkid}})),n.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,r.Cg)([(0,u.MZ)()],p.prototype,"connectionStatus",null),(0,r.Cg)([(0,u.MZ)()],p.prototype,"errorString",void 0),p=(0,r.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],p);var y=n(80893),m=n(61956);const w={maxQueryDepth:5,maxRecordCountFactor:3};let _=class extends p{constructor(e){super({...w,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:n,outFields:r}=this._config;this.destroyed||this._setFilter(n,r)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},n=(0,s.A)(e.path,{query:t,responseType:"json"}),r=(await n).data;return this._serviceDefinition=r,r}_fetchWebSocketUrl(e,t){const n=e[0],{urls:r,token:s}=n,o=this._inferWebSocketBaseUrl(r);return(0,a.a6)(`${o}/subscribe`,{outSR:""+t.wkid,token:s})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.A.getLogger(this).error(new o.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const n=this._websocket;if(null==n||null==e&&null==t)return;const r=JSON.stringify({filter:this._serializeFilter(e,t)});let s=!1;const a=(0,c.Tw)();return n.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),a.reject(t.error)),this._setWebSocketJSONParseHandler(n),s=!0,a.resolve())},n.send(r),setTimeout(()=>{s||(this.destroyed||this._websocket!==n||i.A.getLogger(this).error(new o.A("geoevent-connection","Server timed out when setting filter")),a.reject())},1e4),a.promise}_serializeFilter(e,t){const n={};if(null==e&&null==t)return n;if(e?.geometry)try{const t=(0,h.rS)(e.geometry);if("extent"!==t.type)throw new o.A("geoevent-connection",`Expected extent but found type ${t.type}`);n.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(n.where=e.where),null!=t&&(n.outFields=t.join(",")),n}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,n=e.attributes[t],r=this._relatedFeatures.get(n);if(!r)return i.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:s,geometry:c}=r;for(const t in s)e.attributes[t]=s[t];return c&&(e.geometry=c),e.geometry||e.centroid||i.A.getLogger(this).error(new o.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,n=this._queryRelatedFeatures(e),r=this._queryArchive(t);await n;const s=await r;if(!s)return;for(const e of s.features)this.onFeature(this._enrich(e))}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([n.e(7632),n.e(3508),n.e(6554),n.e(2869),n.e(3910),n.e(9953),n.e(4903),n.e(1214),n.e(8399),n.e(1017),n.e(4674),n.e(6606),n.e(9784),n.e(7609),n.e(812),n.e(9550)]).then(n.bind(n,29784))).default)({url:e}),{capabilities:r}=await t.load(),s=r.query.supportsMaxRecordCountFactor,o=r.query.supportsPagination,i=r.query.supportsCentroid,c=this._config.maxRecordCountFactor,a=t.capabilities.query.maxRecordCount,u=s?a*c:a,h=new m.A;if(h.outFields=this._config.outFields??["*"],h.where=this._config.filter?.where??"1=1",h.returnGeometry=!0,h.returnExceededLimitFeatures=!0,h.outSpatialReference=l.A.fromJSON(this._config.spatialReference),i&&(h.returnCentroid=!0),s&&(h.maxRecordCountFactor=c),o)return h.num=u,t.destroy(),this._queryPages(e,h);const f=await(0,y.eW)(e,h,this._config.sourceSpatialReference);return t.destroy(),f}async _queryPages(e,t,n=[],r=0){t.start=null!=t.num?r*t.num:null;const s=await(0,y.eW)(e,t,this._config.sourceSpatialReference);return s.exceededTransferLimit&&r<(this._config.maxQueryDepth??0)?(s.features.forEach(e=>n.push(e)),this._queryPages(e,t,n,r+1)):(n.forEach(e=>s.features.push(e)),s)}_addRelatedFeatures(e){const t=new Map,n=e.features,r=this._serviceDefinition.relatedFeatures.joinField;for(const e of n){const n=e.attributes[r];t.set(n,e)}this._relatedFeatures=t}};_=(0,r.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],_);var b=n(64108);let S=class extends d{constructor(e){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:n,sourceSpatialReference:r}=e;this._featureZScaler=(0,f.N)(t,r,n)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function k(e,t){if(null==e&&null==t)return null;const n={};return null!=t&&(n.geometry=t),null!=e&&(n.where=e),n}function A(e,t,n,r,s,o,i,c,a){const u={source:e,sourceSpatialReference:t,spatialReference:n,geometryType:r,filter:k(s,o),maxReconnectionAttempts:i,maxReconnectionInterval:c,customParameters:a};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new p(u):new _(u):new S(u)}(0,r.Cg)([(0,u.MZ)()],S.prototype,"connectionStatus",void 0),(0,r.Cg)([(0,u.MZ)()],S.prototype,"errorString",void 0),S=(0,r.Cg)([(0,b.$)("esri.layers.support.ClientSideConnection")],S)},58501(e,t,n){n.d(t,{q:()=>s});var r=n(62815);function s(e,t,n){if(!n?.features||!n.hasZ)return;const s=(0,r.N)(n.geometryType,t,e.outSpatialReference);if(s)for(const e of n.features)s(e.geometry)}},62815(e,t,n){n.d(t,{N:()=>c,d:()=>a});var r=n(86211),s=n(73941),o=n(21325),i=n(52006);function c(e,t,n){const r=a(t,n);if(1!==r)switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){null!=e?.z&&(e.z*=t)}(e,r);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e){if(e.curvePaths)for(const n of e.curvePaths)for(const e of n){const n=(0,i.yP)(e);n.length>2&&(n[2]*=t)}if(e.paths)for(const n of e.paths)for(const e of n)e.length>2&&(e[2]*=t)}}(e,r);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e){if(e.curveRings)for(const n of e.curveRings)for(const e of n){const n=(0,i.yP)(e);n.length>2&&(n[2]*=t)}if(e.rings)for(const n of e.rings)for(const e of n)e.length>2&&(e[2]*=t)}}(e,r);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const n of e.points)n.length>2&&(n[2]*=t)}(e,r);case"extent":case"esriGeometryEnvelope":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,r);default:return}}function a(e,t){return null==e||null==t||t.vcsWkid||(0,o.aI)(e,t)||(0,s.xP)(e)||(0,s.xP)(t)?1:(0,r.G9)(e)/(0,r.G9)(t)}},69052(e,t,n){n.d(t,{hr:()=>s,ie:()=>a,uC:()=>c});var r=n(34727);class s{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,n=!1){return o(this.range,this.min,this.max,e,t,n)}clamp(e,t=0){return(0,r.qE)(e-t,this.min,this.max)+t}monotonic(e,t,n){return e<t?t:t+i(this.range,e-t,n)}minimalMonotonic(e,t,n){return o(this.range,e,e+this.range,t,n)}center(e,t,n){return t=this.monotonic(e,t,n),this.normalize((e+t)/2,n)}diff(e,t,n){return this.monotonic(e,t,n)-e}shortestSignedDiff(e,t){e=this.normalize(e);const n=(t=this.normalize(t))-e,r=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(n)<Math.abs(r)?n:r}contains(e,t,n){return t=this.minimalMonotonic(e,t),(n=this.minimalMonotonic(e,n))>e&&n<t}}function o(e,t,n,r,s=0,o=!1){return(r-=s)<t?r+=i(e,t-r):r>n&&(r-=i(e,r-n)),o&&r===n&&(r=t),r+s}function i(e,t,n=0){return Math.ceil((t-n)/e)*e+n}const c=new s(0,2*Math.PI),a=(new s(-Math.PI,Math.PI),new s(0,360))},69397(e,t,n){n.d(t,{Qf:()=>a,Qh:()=>i,RS:()=>s,Ul:()=>g,lM:()=>o,qK:()=>l});var r=n(34275);const s=16;function o(e){if(!e)return 0;let t=l;for(const n in e)e.hasOwnProperty(n)&&(t+=c(e[n],!1));return t}function i(e){if(!e)return 0;if("number"==typeof e[0])return a(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return u(e,8);let n=h;for(let r=0;r<t;r++)n+=c(e[r]);return n}(e);let t=l;for(const n in e)e.hasOwnProperty(n)&&(t+=c(e[n]));return t}function c(e,t=!0){switch(typeof e){case"object":return t?i(e):l;case"string":return function(e){return 32+e.length}(e);case"number":return s;case"boolean":return 4;default:return 8}}function a(...e){return e.reduce((e,t)=>e+(t?(0,r.iu)(t)?t.byteLength+f:Array.isArray(t)?u(t,s):0:0),0)}function u(e,t){return h+e.length*t}const l=32,h=16,f=145,g=64},80754(e,t,n){n.d(t,{j7:()=>i,kS:()=>a,kd:()=>c,r8:()=>u});var r=n(82799),s=n(16930),o=n(60408);const i={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new r.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator}),minus180Line:new r.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new r.A({paths:[[[180,-180],[180,180]]],spatialReference:s.A.WGS84}),minus180Line:new r.A({paths:[[[-180,-180],[-180,180]]],spatialReference:s.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function a(e,t){const n=u(e);for(const e of n)for(const n of e)n[0]+=t;return e}function u(e){return(0,o.Bi)(e)?e.rings:e.paths}},92300(e,t,n){n.d(t,{V:()=>i,X:()=>o});var r=n(60408),s=n(65864);function o(e){return{geometryType:(0,r.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function i(e,t,n){const r=(0,s.xD)(t);return e.map(e=>{const t=r.fromJSON(e);return t.spatialReference=n,t})}}}]);