@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
1 lines • 148 kB
JavaScript
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4654,7136],{4146:(e,t,r)=>{r.d(t,{A:()=>b});var i=r(90237),o=r(78888),s=r(49186),n=r(65529),a=r(4902),l=r(92474),u=r(53966),p=r(74887),c=r(84952),d=r(10107),y=(r(44208),r(87811),r(40608)),m=r(5443),h=r(16930),f=r(92602),g=r(64272);let v=0,b=class extends(n.A.EventedMixin(a.A.IdentifiableMixin(l.A))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new m.A(-180,-90,180,90,h.A.WGS84),this.id=Date.now().toString(16)+"-layer-"+v++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.persistenceEnabled=!1,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=h.A.WGS84,this.title=null,this.type=null,this.url=null,this.visibilityTimeExtent=null,this.visible=!0}static async fromArcGISServerUrl(e){const t="string"==typeof e?{url:e}:e;return(await r.e(7982).then(r.bind(r,27982))).fromUrl(t)}static fromPortalItem(e){return async function(e){const t="portalItem"in e?e:{portalItem:e},{fromItem:i}=await r.e(5613).then(r.bind(r,45613));try{return await i(t)}catch(e){const r=t?.portalItem,i=r?.id||"unset",o=r?.portal?.url||f.A.portalUrl;throw u.A.getLogger("esri.layers.support.fromPortalItem").error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+o+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch((e=>{(0,p.zf)(e)||u.A.getLogger(this).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}')`,{error:e})}))}destroy(){const e=this.parent;if(e){const t=this;"layers"in e&&e.layers.includes(t)?e.layers.remove(t):"tables"in e&&e.tables.includes(t)?e.tables.remove(t):"baseLayers"in e&&e.baseLayers.includes(t)?e.baseLayers.remove(t):"referenceLayers"in e&&e.referenceLayers.includes(t)&&e.referenceLayers.remove(t),this._set("parent",null)}}get effectiveVisible(){let e=this.visible;const t=this.parent;return e&&t&&"effectiveVisible"in t&&(e&&=t.effectiveVisible),e}get hasAttributionData(){return null!=this.attributionDataUrl}get parsedUrl(){return(0,c.An)(this.url)}createLayerView(e,t){return Promise.reject(new s.A("layer:create-layer-view","Layer does not support creating a layer view"))}async fetchAttributionData(){const e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,o.A)(e,{query:{f:"json"},responseType:"json"})).data;throw new s.A("layer:no-attribution-data","Layer does not have attribution data")}};(0,i._)([(0,d.MZ)({type:String})],b.prototype,"attributionDataUrl",void 0),(0,i._)([(0,d.MZ)({readOnly:!0})],b.prototype,"effectiveVisible",null),(0,i._)([(0,d.MZ)({type:m.A})],b.prototype,"fullExtent",void 0),(0,i._)([(0,d.MZ)({readOnly:!0})],b.prototype,"hasAttributionData",null),(0,i._)([(0,d.MZ)({type:String,clonable:!1})],b.prototype,"id",void 0),(0,i._)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"legendEnabled",void 0),(0,i._)([(0,d.MZ)({type:["show","hide","hide-children"]})],b.prototype,"listMode",void 0),(0,i._)([(0,d.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0})],b.prototype,"opacity",void 0),(0,i._)([(0,d.MZ)({clonable:!1})],b.prototype,"parent",void 0),(0,i._)([(0,d.MZ)({readOnly:!0})],b.prototype,"parsedUrl",null),(0,i._)([(0,d.MZ)({type:Boolean,readOnly:!0})],b.prototype,"persistenceEnabled",void 0),(0,i._)([(0,d.MZ)({type:Boolean})],b.prototype,"popupEnabled",void 0),(0,i._)([(0,d.MZ)({type:Boolean})],b.prototype,"attributionVisible",void 0),(0,i._)([(0,d.MZ)({type:h.A})],b.prototype,"spatialReference",void 0),(0,i._)([(0,d.MZ)({type:String})],b.prototype,"title",void 0),(0,i._)([(0,d.MZ)({readOnly:!0,json:{read:!1}})],b.prototype,"type",void 0),(0,i._)([(0,d.MZ)()],b.prototype,"url",void 0),(0,i._)([(0,d.MZ)({type:g.T})],b.prototype,"visibilityTimeExtent",void 0),(0,i._)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"visible",void 0),b=(0,i._)([(0,y.$)("esri.layers.Layer")],b)},4197:(e,t,r)=>{r.d(t,{jh:()=>o,l5:()=>n,xm:()=>s});var i=r(34275);function o(e,t=!1){return e<=i.y9?t?new Array(e).fill(0):new Array(e):new Float64Array(e)}function s(e){return((0,i.iu)(e)?e.byteLength/8:e.length)<=i.y9?Array.from(e):new Float64Array(e)}function n(e,t,r){return Array.isArray(e)?e.slice(t,t+r):e.subarray(t,t+r)}},6797:(e,t,r)=>{r.d(t,{Mj:()=>d,Ui:()=>m,w2:()=>y});var i=r(69622),o=r(5503),s=r(88620);const n=new Set(["esri.Color","esri.portal.Portal","esri.symbols.support.Symbol3DAnchorPosition2D","esri.symbols.support.Symbol3DAnchorPosition3D"]);function a(e){return e instanceof i.A}function l(e){return e instanceof o.A?Object.keys(e.items):a(e)?(0,s.oY)(e).keys():e?Object.keys(e):[]}function u(e,t){return e instanceof o.A?e.items[t]:e[t]}function p(e){return e?e.declaredClass:null}function c(e,t){const r=e.diff;if(r&&"function"==typeof r)return r(e,t);const i=l(e),o=l(t);if(0===i.length&&0===o.length)return;if(!i.length||!o.length||function(e,t){return!(!Array.isArray(e)||!Array.isArray(t))&&e.length!==t.length}(e,t))return{type:"complete",oldValue:e,newValue:t};const s=o.filter((e=>!i.includes(e))),d=i.filter((e=>!o.includes(e))),y=i.filter((r=>o.includes(r)&&u(e,r)!==u(t,r))).concat(s,d).sort(),m=p(e);if(m&&n.has(m)&&y.length)return{type:"complete",oldValue:e,newValue:t};let h;const f=a(e)&&a(t);for(const i of y){const o=u(e,i),s=u(t,i);let n;if((f||"function"!=typeof o&&"function"!=typeof s)&&o!==s&&(null!=o||null!=s)){if(r&&r[i]&&"function"==typeof r[i])n=r[i]?.(o,s);else if(o instanceof Date&&s instanceof Date){if(o.getTime()===s.getTime())continue;n={type:"complete",oldValue:o,newValue:s}}else n="object"==typeof o&&"object"==typeof s&&p(o)===p(s)?c(o,s):{type:"complete",oldValue:o,newValue:s};null!=n&&(null!=h?h.diff[i]=n:h={type:"partial",diff:{[i]:n}})}}return h}function d(e,t){return function(e,t){if(null==e)return!1;const r=t.split(".");let i=e;for(const e of r){if("complete"===i.type)return!0;if("partial"!==i.type)return!1;{const t=i.diff[e];if(!t)return!1;i=t}}return!0}(e,t)}function y(e,t){if(!e)return!1;if("partial"===e.type){const r=Object.keys(e.diff);return 1===r.length&&r[0]===t}return!1}function m(e,t){if("function"!=typeof e&&"function"!=typeof t&&(null!=e||null!=t))return null==e||null==t||"object"==typeof e&&"object"==typeof t&&p(e)!==p(t)?{type:"complete",oldValue:e,newValue:t}:c(e,t)}},8303:(e,t,r)=>{r.d(t,{A:()=>_});var i=r(90237),o=r(92602),s=r(70333),n=r(78888),a=r(60999),l=r(49186),u=r(53966),p=r(97768),c=r(74887),d=r(84952),y=r(10107),m=(r(44208),r(87811),r(36005)),h=r(40608),f=r(43937),g=r(77548),v=r(20655),b=r(80812),w=r(41318),T=r(10407);const _=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,p.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new b.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:i}=await r.e(1204).then(r.bind(r,41204));return(0,c.Te)(t),await i({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,c.zf)(e)||u.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch((e=>((0,c.QP)(e),!0))))}async setUserPrivileges(e,t){if(!o.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:i},content:{updateItem:o}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",i),this._set("userHasUpdateItemPrivileges",o)}catch(e){(0,c.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const i=!s.id?.findCredential(this.url),o=e===r.id;if(o&&r.portal.user)return this._getUserPrivileges(r,i);let n,a;if(o)n=r.portal.url;else try{n=await(0,g.wI)(this.url,t)}catch(e){(0,c.QP)(e)}if(!n||!(0,d.b8)(n,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(s.id?.getCredential(`${n}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,c.QP)(e)}const l=!0,u=!1,p=!1;if(!a)return{features:{edit:l,fullEdit:u},content:{updateItem:p}};try{if(o?await r.reload():(r=new b.default({id:e,portal:{url:n}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,i)}catch(e){(0,c.QP)(e)}return{features:{edit:l,fullEdit:u},content:{updateItem:p}}}_getUserPrivileges(e,t){const r=(0,T.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,c.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?s.id?.findCredential(this.url):null;if(!t)return!0;const r=S.credential===t?S.user:await this._fetchEditingUser(e);return S.credential=t,S.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const r=s.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;const i=`${r.owningSystemUrl}/sharing/rest`,o=v.A.getDefault();if(o&&o.loaded&&(0,d.S8)(o.restUrl)===(0,d.S8)(i))return o.user;const l=`${i}/community/self`,u=null!=e?e.signal:null,p=await(0,a.Ke)((0,n.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:u}));return p.ok?w.A.fromJSON(p.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,i=this.portalItem?.id&&(this.portalItem.portal||v.A.getDefault());return r&&i&&!(0,d.ut)(i.restUrl,r.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,i._)([(0,y.MZ)({type:b.default})],t.prototype,"portalItem",null),(0,i._)([(0,m.w)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,i._)([(0,f.K)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,i._)([(0,y.MZ)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,i._)([(0,y.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,i._)([(0,y.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,i._)([(0,y.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,i._)([(0,h.$)("esri.layers.mixins.PortalLayer")],t),t},S={credential:null,user:null}},17136:(e,t,r)=>{r.d(t,{O7:()=>S,el:()=>_});var i=r(92602),o=r(49186),s=r(53966),n=r(39829),a=r(82799),l=r(80754),u=r(21325),p=r(28735),c=r(78888),d=r(65864),y=r(2272),m=r(84952),h=r(92300);const f=()=>s.A.getLogger("esri.geometry.support.normalizeUtils");function g(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function b(e,t,r){if(t){const t=function(e,t){if(!(e instanceof a.A||e instanceof n.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw f().error(e),new o.A("internal:geometry",e)}const r=(0,l.r8)(e),i=[];for(const e of r){const r=[];i.push(r),r.push([e[0][0],e[0][1]]);for(let i=0;i<e.length-1;i++){const o=e[i][0],s=e[i][1],n=e[i+1][0],a=e[i+1][1],l=Math.sqrt((n-o)*(n-o)+(a-s)*(a-s)),u=(a-s)/l,p=(n-o)/l,c=l/t;if(c>1){for(let e=1;e<=c-1;e++){const i=e*t,n=p*i+o,a=u*i+s;r.push([n,a])}const e=(l+Math.floor(c-1)*t)/2,i=p*e+o,n=u*e+s;r.push([i,n])}r.push([n,a])}}return function(e){return"polygon"===e.type}(e)?new n.A({rings:i,spatialReference:e.spatialReference}):new a.A({paths:i,spatialReference:e.spatialReference})}(e,1e6);e=(0,p.ci)(t,!0)}return r&&(e=(0,l.kS)(e,r)),e}function w(e,t,r){if(Array.isArray(e)){const i=e[0];if(i>t){const r=(0,l.kd)(i,t);e[0]=i+r*(-2*t)}else if(i<r){const t=(0,l.kd)(i,r);e[0]=i+t*(-2*r)}}else{const i=e.x;if(i>t){const r=(0,l.kd)(i,t);e=e.clone().offset(r*(-2*t),0)}else if(i<r){const t=(0,l.kd)(i,r);e=e.clone().offset(t*(-2*r),0)}}return e}function T(e,t){let r=-1;for(let i=0;i<t.cutIndexes.length;i++){const o=t.cutIndexes[i],s=t.geometries[i],n=(0,l.r8)(s);for(let e=0;e<n.length;e++){const t=n[e];t.some((r=>{if(r[0]<180)return!0;{let r=0;for(let e=0;e<t.length;e++){const i=t[e][0];r=i>r?i:r}r=Number(r.toFixed(9));const i=-360*(0,l.kd)(r,180);for(let r=0;r<t.length;r++){const t=s.getPoint(e,r);s.setPoint(e,r,t.clone().offset(i,0))}return!0}}))}if(o===r){if(g(e))for(const t of(0,l.r8)(s))e[o]=e[o].addRing(t);else if(v(e))for(const t of(0,l.r8)(s))e[o]=e[o].addPath(t)}else r=o,e[o]=s}return e}async function _(e,t,r){if(!Array.isArray(e))return _([e],t);t&&"string"!=typeof t&&f().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const o="string"==typeof t?t:t?.url??i.A.geometryServiceUrl;let s,g,v,S,M,A,O,N,I=0;const Z=[],D=[];for(const t of e)if(null!=t)if(s||(s=t.spatialReference,g=(0,u.Vp)(s),v=s.isWebMercator,A=v?102100:4326,S=l.j7[A].maxX,M=l.j7[A].minX,O=l.j7[A].plus180Line,N=l.j7[A].minus180Line),g)if("mesh"===t.type)D.push(t);else if("point"===t.type)D.push(w(t.clone(),S,M));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map((e=>w(e,S,M))),D.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,g);D.push(e.rings?new n.A(e):e)}else if(t.extent){const e=t.extent,r=(0,l.kd)(e.xmin,M)*(2*S);let i=0===r?t.clone():(0,l.kS)(t.clone(),r);e.offset(r,0);let{xmin:o,xmax:s}=e;o=Number(o.toFixed(9)),s=Number(s.toFixed(9)),e.intersects(O)&&s!==S?(I=s>I?s:I,i=b(i,v),Z.push(i),D.push("cut")):e.intersects(N)&&o!==M?(I=s*(2*S)>I?s*(2*S):I,i=b(i,v,360),Z.push(i),D.push("cut")):D.push(i)}else D.push(t.clone());else D.push(t);else D.push(t);let j=(0,l.kd)(I,S),C=-90;const F=j,x=new a.A;for(;j>0;){const e=360*j-180;x.addPath([[e,C],[e,-1*C]]),C*=-1,j--}if(Z.length>0&&F>0){const t=T(Z,await async function(e,t,r,i){const o=(0,y.Dl)(e),s=t[0].spatialReference,n={...i,responseType:"json",query:{...o.query,f:"json",sr:(0,u.YX)(s),target:JSON.stringify({geometryType:(0,d.$B)(t[0]),geometries:t}),cutter:JSON.stringify(r)}},a=await(0,c.A)(o.path+"/cut",n),{cutIndexes:l,geometries:p=[]}=a.data;return{cutIndexes:l,geometries:p.map((e=>{const t=(0,d.rS)(e);return t.spatialReference=s,t}))}}(o,Z,x,r)),i=[],s=[];for(let r=0;r<D.length;r++){const o=D[r];if("cut"!==o)s.push(o);else{const o=t.shift(),n=e[r];null!=n&&"polygon"===n.type&&n.rings&&n.rings.length>1&&o.rings.length>=n.rings.length?(i.push(o),s.push("simplify")):s.push(v?(0,p.Gh)(o):o)}}if(!i.length)return s;const n=await async function(e,t,r){const i="string"==typeof e?(0,m.An)(e):e,o=t[0].spatialReference,s=(0,d.$B)(t[0]),n={...r,query:{...i.query,f:"json",sr:(0,u.YX)(o),geometries:JSON.stringify((0,h.X)(t))}},{data:a}=await(0,c.A)(i.path+"/simplify",n);return(0,h.V)(a.geometries,s,o)}(o,i,r),a=[];for(let e=0;e<s.length;e++){const t=s[e];"simplify"!==t?a.push(t):a.push(v?(0,p.Gh)(n.shift()):n.shift())}return a}const B=[];for(let e=0;e<D.length;e++){const t=D[e];if("cut"!==t)B.push(t);else{const e=Z.shift();B.push(!0===v?(0,p.Gh)(e):e)}}return B}function S(e,t,r){const i=(0,u.Vp)(r);if(null==i)return e;const[o,s]=i.valid,n=2*s;let a=0,l=0;t>s?a=Math.ceil(Math.abs(t-s)/n):t<o&&(a=-Math.ceil(Math.abs(t-o)/n)),e>s?l=Math.ceil(Math.abs(e-s)/n):e<o&&(l=-Math.ceil(Math.abs(e-o)/n));let p=e+(a-l)*n;const c=p-t;return c>s?p-=n:c<o&&(p+=n),p}},24097:(e,t,r)=>{r.d(t,{K:()=>i});const i={type:String,json:{read:{source:"token"},write:{target:"token"}}}},25036:(e,t,r)=>{r.d(t,{j:()=>n});var i=r(90237),o=r(10107),s=(r(44208),r(53966),r(87811),r(40608));const n=e=>{let t=class extends e{constructor(){super(...arguments),this.minScale=0,this.maxScale=0}get effectiveScaleRange(){const e={minScale:this.minScale,maxScale:this.maxScale},t=this.parent;t&&"effectiveScaleRange"in t&&function(e,t){e.minScale=e.minScale>0?t.minScale>0?Math.min(e.minScale,t.minScale):e.minScale:t.minScale,e.maxScale=e.maxScale>0?t.maxScale>0?Math.max(e.maxScale,t.maxScale):e.maxScale:t.maxScale}(e,t.effectiveScaleRange);const r=this._get("effectiveScaleRange");return r&&r.minScale===e.minScale&&r.maxScale===e.maxScale?r:e}};return(0,i._)([(0,o.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"minScale",void 0),(0,i._)([(0,o.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"maxScale",void 0),(0,i._)([(0,o.MZ)({readOnly:!0})],t.prototype,"effectiveScaleRange",null),t=(0,i._)([(0,s.$)("esri.layers.mixins.ScaleRangeLayer")],t),t}},27865:(e,t,r)=>{r.d(t,{O9:()=>s,dw:()=>n,mj:()=>o});var i=r(59247);function o(e,t){const r=e.length>t.length?e:t;return(e.length>t.length?t:e).every(((e,t)=>e.type===r[t].type))}function s(e,t){const r=e.length>t.length?e:t,o=e.length>t.length?t:e;for(let e=o.length;e<r.length;e++)o.push((0,i.sK)(r[e]))}function n(e){const t=e[0];return!!t&&"type"in t}},46130:(e,t,r)=>{r.d(t,{v:()=>o});var i=r(76553);function o(e){e?.writtenProperties&&e.writtenProperties.forEach((({target:e,propName:t,newOrigin:r})=>{(0,i.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)}))}},46140:(e,t,r)=>{r.d(t,{R:()=>o});var i=r(49186);let o=class e{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new i.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new e(this.major,this.minor,this._context)}static parse(t,r=""){const[o,s]=t.split("."),n=/^\s*\d+\s*$/;if(!o?.match||!n.test(o))throw new i.A((r&&r+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:t});if(!s?.match||!n.test(s))throw new i.A((r&&r+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:t});const a=parseInt(o,10),l=parseInt(s,10);return new e(a,l,r)}}},54339:(e,t,r)=>{function i(e,t){switch(t.type){case"object-id":case"unique-id-simple":return e.attributes[t.fieldName];case"unique-id-composite":{const r=[];for(const i of t.fieldNames)r.push(e.attributes[i]??null);return JSON.stringify(r)}}}function o(e,t){if("uniqueIdFields"in t&&t.uniqueIdFields?.length){if(1===t.uniqueIdFields.length)return e.attributes?.[t.uniqueIdFields[0]];const r=t.uniqueIdFields.map((t=>e.attributes?.[t]));return JSON.stringify(r)}return"objectIdField"in t&&t.objectIdField?e.attributes?.[t.objectIdField]:null}r.d(t,{W:()=>i,r:()=>o})},55674:(e,t,r)=>{r.d(t,{Ad:()=>y,Gj:()=>f,QY:()=>d,lL:()=>g,xR:()=>m});var i=r(66131),o=r(49186),s=(r(44208),r(44729)),n=r(15032),a=r(65864),l=r(95466),u=r(43668),p=r(98623);const c=["geometry","scale","timeProperties"];function d(e,t){if(null!=t)for(const r of c)t.hasArcadeDependency(r)&&e.add(r);return e}function y(e,t){return h.create(e,t,null,["$feature","$view"])}function m(e,t,r){return h.create(e,t,r,["$feature","$view","$config"])}class h{static async create(e,t,r,i){const{arcade:s,Dictionary:n}=await(0,u.l)();let a;try{a=s.parseScript(e)}catch(t){throw new o.A("arcade-bad-expression","Failed to parse arcade script",{script:e,error:t})}const l=s.scriptUsesGeometryEngine(a);l&&await s.enableGeometrySupport(),await s.loadDependentModules(new Set,a,null,!1,l);const p={vars:i.reduce(((e,t)=>({...e,[t]:null})),{}),spatialReference:t,useAsync:!1},c=s.compileScript(a,p);let d=null;null!=r&&(d=new n(r),d.immutable=!0);const y=new n;return y.immutable=!1,y.setField("scale",0),new h(e,s,a,c,t,y,d,n)}constructor(e,t,r,i,o,s,n,a){this.script=e,this._arcade=t,this._syntaxTree=r,this._compiled=i,this._spatialReference=o,this._viewDict=s,this._configDict=n,this._dictionaryCtor=a,this._dependencies=new Map,this._featureReader=new f,this._dependencies.set("geometry",t.scriptTouchesGeometry(this._syntaxTree)),this._dependencies.set("scale",this._arcade.referencesMember(this._syntaxTree,"scale")),this._dependencies.set("timeProperties",this._arcade.scriptUsesViewProperties(this._syntaxTree,["timeProperties"]))}evaluate(e,t){const r=t.$view?.timeZone;if(t.$view){let e;if(this._viewDict.setField("scale",t.$view.scale),null!=t.$view.timeProperties){const{currentStart:o,currentEnd:s}=t.$view.timeProperties;e=new this._dictionaryCtor({currentStart:null!=o?null!=r?i.lY.epochToArcadeDate(o,r):i.lY.unknownEpochToArcadeDate(o):void 0,currentEnd:null!=s?null!=r?i.lY.epochToArcadeDate(s,r):i.lY.unknownEpochToArcadeDate(s):void 0,startIncluded:!0,endIncluded:!0})}this._viewDict.setField("timeProperties",e)}return this._compiled({vars:{$view:this._viewDict,$config:this._configDict,$feature:e},spatialReference:this._spatialReference,timeZone:r})}repurposeFeature(e,t){return this._featureReader.bind(e,t,this._spatialReference),this._featureReader}references(e){return this._dependencies.get(e)??!1}}class f{constructor(){this._boundTarget=null,this._boundSchema={fields:null,fieldsIndex:null,spatialReference:null,get geometryType(){return null},get objectIdField(){return null}},this.arcadeDeclaredClass="esri.arcade.Feature",this._contextTimeZone=null}bind(e,t,r){const i=t??new l.A(g(e.attributes));this._boundTarget=e,this._boundSchema.fields=i.fields,this._boundSchema.fieldsIndex=i,this._boundSchema.spatialReference=r}_getField(e){return this._boundSchema.fieldsIndex.get(e)}get contextTimeZone(){return this._contextTimeZone}set contextTimeZone(e){this._contextTimeZone=e}readArcadeFeature(){return this}hasField(e){return this._boundSchema.fieldsIndex.has(e)}geometry(){if("fromJSON"in this._boundTarget)return this._boundTarget.geometry;const e=(0,a.rS)(this._boundTarget.geometry);if(e){if(!this._boundSchema.spatialReference)throw new Error("InternalError: Expected spatial reference to be defined");e.spatialReference=this._boundSchema.spatialReference}return e}isUnknownDateTimeField(e){return this._boundSchema.fieldsIndex.getTimeZone(e)===p.L5}field(e,t=!0){const r=this._getField(e);if(r){const t=this._boundTarget.attributes[r.name];if(null==t)return null;switch(r.type){case"date-only":case"esriFieldTypeDateOnly":return s.n.fromReader(t);case"time-only":case"esriFieldTypeTimeOnly":return n.k.fromReader(t);case"esriFieldTypeTimestampOffset":case"timestamp-offset":return i.lY.fromReaderAsTimeStampOffset(t);case"date":case"esriFieldTypeDate":return this.isUnknownDateTimeField(e)?i.lY.unknownEpochToArcadeDate(t):i.lY.epochToArcadeDate(t,this.contextTimeZone??p.qU);default:return t}}if(t)throw new Error(`Field ${e} does not exist`);return null}setField(e,t){throw new Error("Unable to update feature attribute values, feature is readonly")}keys(){return this._boundSchema.fieldsIndex.fields.map((e=>e.name))}castToText(e=!1){return JSON.stringify(this._boundTarget)}gdbVersion(){return null}fullSchema(){return this._boundSchema}castAsJson(e=null){return{attributes:this._boundTarget.attributes,geometry:!0===e?.keepGeometryType?this.geometry():this.geometry()?.toJSON()??null}}castAsJsonAsync(e=null,t=null){return Promise.resolve(this.castAsJson(t))}}function g(e){const t=[];for(const r in e)t.push({name:r,alias:r,type:"string"==typeof e[r]?"esriFieldTypeString":"esriFieldTypeDouble"});return t}},59247:(e,t,r)=>{r.d(t,{bv:()=>l,Fk:()=>u,yG:()=>p,$b:()=>c,Nd:()=>d,jm:()=>y,sK:()=>f});var i=r(40876),o=r(90629);function s(){const e=new Float32Array(16);return e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}const n=s();Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:n,clone:function(e){const t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},create:s,fromValues:function(e,t,r,i,o,s,n,a,l,u,p,c,d,y,m,h){const f=new Float32Array(16);return f[0]=e,f[1]=t,f[2]=r,f[3]=i,f[4]=o,f[5]=s,f[6]=n,f[7]=a,f[8]=l,f[9]=u,f[10]=p,f[11]=c,f[12]=d,f[13]=y,f[14]=m,f[15]=h,f}},Symbol.toStringTag,{value:"Module"}));var a=r(58083);class l{constructor(e,t,r){this.strength=e,this.radius=t,this.threshold=r,this.type="bloom"}interpolate(e,t,r){this.strength=m(e.strength,t.strength,r),this.radius=m(e.radius,t.radius,r),this.threshold=m(e.threshold,t.threshold,r)}clone(){return new l(this.strength,this.radius,this.threshold)}toJSON(){return{type:"bloom",radius:h(this.radius),strength:this.strength,threshold:this.threshold}}}class u{constructor(e){this.radius=e,this.type="blur"}interpolate(e,t,r){this.radius=Math.round(m(e.radius,t.radius,r))}clone(){return new u(this.radius)}toJSON(){return{type:"blur",radius:h(this.radius)}}}class p{constructor(e,t){this.type=e,this.amount=t,"invert"!==this.type&&"grayscale"!==this.type&&"sepia"!==this.type||(this.amount=Math.min(this.amount,1))}get colorMatrix(){return this._colorMatrix||this._updateMatrix(),this._colorMatrix}interpolate(e,t,r){this.amount=m(e.amount,t.amount,r),this._updateMatrix()}clone(){return new p(this.type,this.amount)}toJSON(){return{type:this.type,amount:this.amount}}_updateMatrix(){const e=this._colorMatrix||s();switch(this.type){case"brightness":this._colorMatrix=((e,t)=>{const r=(0,a.hZ)(e,t,0,0,0,0,t,0,0,0,0,t,0,0,0,0,1);return(0,a.mg)(r,r)})(e,this.amount);break;case"contrast":this._colorMatrix=((e,t)=>{const r=(0,a.hZ)(e,t,0,0,.5-.5*t,0,t,0,.5-.5*t,0,0,t,.5-.5*t,0,0,0,1);return(0,a.mg)(r,r)})(e,this.amount);break;case"grayscale":this._colorMatrix=(e=>{const t=1-this.amount,r=(0,a.hZ)(e,.2126+.7874*t,.7152-.7152*t,.0722-.0722*t,0,.2126-.2126*t,.7152+.2848*t,.0722-.0722*t,0,.2126-.2126*t,.7152-.7152*t,.0722+.9278*t,0,0,0,0,1);return(0,a.mg)(r,r)})(e);break;case"invert":this._colorMatrix=((e,t)=>{const r=1-2*t,i=(0,a.hZ)(e,r,0,0,t,0,r,0,t,0,0,r,t,0,0,0,1);return(0,a.mg)(i,i)})(e,this.amount);break;case"saturate":this._colorMatrix=((e,t)=>{const r=(0,a.hZ)(e,.213+.787*t,.715-.715*t,.072-.072*t,0,.213-.213*t,.715+.285*t,.072-.072*t,0,.213-.213*t,.715-.715*t,.072+.928*t,0,0,0,0,1);return(0,a.mg)(r,r)})(e,this.amount);break;case"sepia":this._colorMatrix=(e=>{const t=1-this.amount,r=(0,a.hZ)(e,.393+.607*t,.769-.769*t,.189-.189*t,0,.349-.349*t,.686+.314*t,.168-.168*t,0,.272-.272*t,.534-.534*t,.131+.869*t,0,0,0,0,1);return(0,a.mg)(r,r)})(e)}}}class c{constructor(e,t,r,i){this.offsetX=e,this.offsetY=t,this.blurRadius=r,this.color=i,this.type="drop-shadow"}interpolate(e,t,r){this.offsetX=m(e.offsetX,t.offsetX,r),this.offsetY=m(e.offsetY,t.offsetY,r),this.blurRadius=m(e.blurRadius,t.blurRadius,r),this.color[0]=Math.round(m(e.color[0],t.color[0],r)),this.color[1]=Math.round(m(e.color[1],t.color[1],r)),this.color[2]=Math.round(m(e.color[2],t.color[2],r)),this.color[3]=m(e.color[3],t.color[3],r)}clone(){return new c(this.offsetX,this.offsetY,this.blurRadius,[...this.color])}toJSON(){const e=[...this.color];return e[3]*=255,{type:"drop-shadow",xoffset:h(this.offsetX),yoffset:h(this.offsetY),blurRadius:h(this.blurRadius),color:e}}}class d{constructor(e){this.angle=e,this.type="hue-rotate"}get colorMatrix(){return this._colorMatrix||this._updateMatrix(),this._colorMatrix}interpolate(e,t,r){this.angle=m(e.angle,t.angle,r),this._updateMatrix()}clone(){return new d(this.angle)}toJSON(){return{type:"hue-rotate",angle:this.angle}}_updateMatrix(){const e=this._colorMatrix||s();this._colorMatrix=((e,t)=>{const r=Math.sin(t*Math.PI/180),i=Math.cos(t*Math.PI/180),o=(0,a.hZ)(e,.213+.787*i-.213*r,.715-.715*i-.715*r,.072-.072*i+.928*r,0,.213-.213*i+.143*r,.715+.285*i+.14*r,.072-.072*i-.283*r,0,.213-.213*i-.787*r,.715-.715*i+.715*r,.072+.928*i+.072*r,0,0,0,0,1);return(0,a.mg)(o,o)})(e,this.angle)}}class y{constructor(e){this.amount=e,this.type="opacity",this.amount=Math.min(this.amount,1)}interpolate(e,t,r){this.amount=m(e.amount,t.amount,r)}clone(){return new y(this.amount)}toJSON(){return{type:"opacity",amount:this.amount}}}function m(e,t,r){return e+(t-e)*r}function h(e){return Math.round(1e3*(0,o.PN)(e))/1e3}function f(e){switch(e.type){case"grayscale":case"sepia":case"invert":return new p(e.type,0);case"saturate":case"brightness":case"contrast":return new p(e.type,1);case"opacity":return new y(1);case"hue-rotate":return new d(0);case"blur":return new u(0);case"drop-shadow":return new c(0,0,0,[...(0,i.TS)("transparent")]);case"bloom":return new l(0,0,1)}}},61760:(e,t,r)=>{r.d(t,{PU:()=>n,YW:()=>l,ex:()=>o,hv:()=>a,zp:()=>s}),r(34727);var i=r(90629);r(87317),r(91829);const o=2.4;function s(e){return(0,i.PN)(e*o)}function n(e){return(0,i.Lz)(e)/o}function a(e,t,r){const i=Math.sqrt(e**2+t**2)/r;return i>1?0:3/(Math.PI*r**2)*(1-i**2)**2}function l(e){return"function"==typeof e?e:e?t=>+t[e]:()=>1}},63074:(e,t,r)=>{r.d(t,{LF:()=>p,dM:()=>c,sU:()=>l});var i=r(90237),o=r(10107),s=(r(44208),r(53966),r(87811),r(40608)),n=r(89317),a=r(76369);const l={type:["average","color-burn","color-dodge","color","darken","destination-atop","destination-in","destination-out","destination-over","difference","exclusion","hard-light","hue","invert","lighten","lighter","luminosity","minus","multiply","normal","overlay","plus","reflect","saturation","screen","soft-light","source-atop","source-in","source-out","vivid-light","xor"],nonNullable:!0,json:{read:!1,write:!1,origins:{"web-map":{read:!0,write:{layerContainerTypes:n.K}},"portal-item":{read:!0,write:{layerContainerTypes:n.K}}}}},u={read:{reader:a.LF},write:{allowNull:!0,writer:a.M9,layerContainerTypes:n.K}},p={json:{read:!1,write:!1,origins:{"web-map":u,"portal-item":u}}},c=e=>{let t=class extends e{constructor(){super(...arguments),this.blendMode="normal",this.effect=null}};return(0,i._)([(0,o.MZ)(l)],t.prototype,"blendMode",void 0),(0,i._)([(0,o.MZ)(p)],t.prototype,"effect",void 0),t=(0,i._)([(0,s.$)("esri.layers.mixins.BlendLayer")],t),t}},64185:(e,t,r)=>{r.r(t),r.d(t,{default:()=>_t});var i=r(90237),o=r(92602),s=r(52106),n=r(13874),a=r(5503),l=r(49186),u=r(53966),p=r(92071),c=r(93637),d=r(74887),y=r(36708),m=r(83047),h=r(84952),f=r(10107),g=(r(44208),r(87811),r(36005)),v=r(40608),b=r(43937),w=r(46130),T=r(5443),_=r(48526),S=r(98988),M=r(16930),A=r(21325),O=r(4146),N=r(63074),I=r(16131),Z=r(8303),D=r(25036),j=r(60694),C=r(25482),F=r(53930),x=r(33910);let B=class extends C.A{constructor(e){super(e),this.break=new F.A({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}}),this.first=new F.A({color:[0,255,0],size:20,outline:{color:[255,255,255],width:4}}),this.unlocated=new F.A({color:[255,0,0],size:12,outline:{color:[255,255,255],width:3}}),this.last=new F.A({color:[255,0,0],size:20,outline:{color:[255,255,255],width:4}}),this.middle=new F.A({color:[51,51,51],size:12,outline:{color:[0,122,194],width:3}}),this.waypoint=new F.A({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}})}};(0,i._)([(0,f.MZ)({types:x.wC})],B.prototype,"break",void 0),(0,i._)([(0,f.MZ)({types:x.wC})],B.prototype,"first",void 0),(0,i._)([(0,f.MZ)({types:x.wC})],B.prototype,"unlocated",void 0),(0,i._)([(0,f.MZ)({types:x.wC})],B.prototype,"last",void 0),(0,i._)([(0,f.MZ)({types:x.wC})],B.prototype,"middle",void 0),(0,i._)([(0,f.MZ)({types:x.wC})],B.prototype,"waypoint",void 0),B=(0,i._)([(0,v.$)("esri.layers.support.RouteStopSymbols")],B);var E=r(94985),P=r(31593);let L=class extends C.A{constructor(e){super(e),this.directionLines=new P.A({color:[0,122,194],width:6}),this.directionPoints=new F.A({color:[255,255,255],size:6,outline:{color:[0,122,194],width:2}}),this.pointBarriers=new F.A({style:"x",size:10,outline:{color:[255,0,0],width:3}}),this.polygonBarriers=new E.A({color:[255,170,0,.6],outline:{width:7.5,color:[255,0,0,.6]}}),this.polylineBarriers=new P.A({width:7.5,color:[255,85,0,.7]}),this.routeInfo=new P.A({width:8,color:[20,89,127]}),this.stops=new B}};(0,i._)([(0,f.MZ)({types:x.Y7})],L.prototype,"directionLines",void 0),(0,i._)([(0,f.MZ)({types:x.wC})],L.prototype,"directionPoints",void 0),(0,i._)([(0,f.MZ)({types:x.wC})],L.prototype,"pointBarriers",void 0),(0,i._)([(0,f.MZ)({types:x.Ac})],L.prototype,"polygonBarriers",void 0),(0,i._)([(0,f.MZ)({types:x.Y7})],L.prototype,"polylineBarriers",void 0),(0,i._)([(0,f.MZ)({types:x.Y7})],L.prototype,"routeInfo",void 0),(0,i._)([(0,f.MZ)({type:B})],L.prototype,"stops",void 0),L=(0,i._)([(0,v.$)("esri.layers.support.RouteSymbols")],L);var R=r(20655),J=r(80812),U=r(10407),k=r(65494),$=r(78888),V=r(2272),W=r(93223),q=r(2073);let G=class extends C.A{constructor(e){super(e),this.dataType=null,this.name=null,this.parameterNames=null,this.restrictionUsageParameterName=null,this.timeNeutralAttributeName=null,this.trafficSupport=null,this.units=null,this.usageType=null}};(0,i._)([(0,f.MZ)({type:String})],G.prototype,"dataType",void 0),(0,i._)([(0,W.e)(q.et,{ignoreUnknown:!1})],G.prototype,"name",void 0),(0,i._)([(0,f.MZ)({type:[String]})],G.prototype,"parameterNames",void 0),(0,i._)([(0,f.MZ)({type:String})],G.prototype,"restrictionUsageParameterName",void 0),(0,i._)([(0,W.e)(q.Mm,{ignoreUnknown:!1})],G.prototype,"timeNeutralAttributeName",void 0),(0,i._)([(0,f.MZ)({type:String})],G.prototype,"trafficSupport",void 0),(0,i._)([(0,W.e)(q.dn)],G.prototype,"units",void 0),(0,i._)([(0,W.e)(q.WU)],G.prototype,"usageType",void 0),G=(0,i._)([(0,v.$)("esri.rest.support.NetworkAttribute")],G);const z=G;let Y=class extends C.A{constructor(e){super(e),this.buildTime=null,this.name=null,this.networkAttributes=null,this.networkSources=null,this.state=null}};(0,i._)([(0,f.MZ)({type:Number})],Y.prototype,"buildTime",void 0),(0,i._)([(0,f.MZ)({type:String})],Y.prototype,"name",void 0),(0,i._)([(0,f.MZ)({type:[z]})],Y.prototype,"networkAttributes",void 0),(0,i._)([(0,f.MZ)()],Y.prototype,"networkSources",void 0),(0,i._)([(0,f.MZ)({type:String})],Y.prototype,"state",void 0),Y=(0,i._)([(0,v.$)("esri.rest.support.NetworkDataset")],Y);const K=Y;var H=r(69540);let X=class extends(H.A.ClonableMixin(C.A)){constructor(e){super(e),this.attributeParameterValues=null,this.description=null,this.distanceAttributeName=null,this.id=null,this.impedanceAttributeName=null,this.name=null,this.restrictionAttributeNames=null,this.simplificationTolerance=null,this.simplificationToleranceUnits=null,this.timeAttributeName=null,this.type=null,this.useHierarchy=null,this.uturnAtJunctions=null}readId(e,t){return t.id??t.itemId??null}readRestrictionAttributes(e,t){const{restrictionAttributeNames:r}=t;return null==r?null:r.map((e=>q.OC.fromJSON(e)))}writeRestrictionAttributes(e,t,r){null!=e&&(t[r]=e.map((e=>q.OC.toJSON(e))))}};(0,i._)([(0,f.MZ)({type:[Object],json:{write:!0}})],X.prototype,"attributeParameterValues",void 0),(0,i._)([(0,f.MZ)({type:String,json:{write:!0}})],X.prototype,"description",void 0),(0,i._)([(0,W.e)(q.dd,{ignoreUnknown:!1})],X.prototype,"distanceAttributeName",void 0),(0,i._)([(0,f.MZ)({type:String,json:{write:!0}})],X.prototype,"id",void 0),(0,i._)([(0,g.w)("id",["id","itemId"])],X.prototype,"readId",null),(0,i._)([(0,W.e)(q.et,{ignoreUnknown:!1})],X.prototype,"impedanceAttributeName",void 0),(0,i._)([(0,f.MZ)({type:String,json:{write:!0}})],X.prototype,"name",void 0),(0,i._)([(0,f.MZ)({type:[String],json:{write:!0}})],X.prototype,"restrictionAttributeNames",void 0),(0,i._)([(0,g.w)("restrictionAttributeNames")],X.prototype,"readRestrictionAttributes",null),(0,i._)([(0,b.K)("restrictionAttributeNames")],X.prototype,"writeRestrictionAttributes",null),(0,i._)([(0,f.MZ)({type:Number,json:{write:{allowNull:!0}}})],X.prototype,"simplificationTolerance",void 0),(0,i._)([(0,W.e)(q.hY)],X.prototype,"simplificationToleranceUnits",void 0),(0,i._)([(0,W.e)(q.Mm,{ignoreUnknown:!1})],X.prototype,"timeAttributeName",void 0),(0,i._)([(0,W.e)(q.ow)],X.prototype,"type",void 0),(0,i._)([(0,f.MZ)({type:Boolean,json:{write:!0}})],X.prototype,"useHierarchy",void 0),(0,i._)([(0,W.e)(q.hE)],X.prototype,"uturnAtJunctions",void 0),X=(0,i._)([(0,v.$)("esri.rest.support.TravelMode")],X);let Q=class extends C.A{constructor(e){super(e),this.accumulateAttributeNames=null,this.attributeParameterValues=null,this.currentVersion=null,this.defaultTravelMode=null,this.directionsLanguage=null,this.directionsLengthUnits=null,this.directionsSupportedLanguages=null,this.directionsTimeAttribute=null,this.hasZ=null,this.impedance=null,this.networkDataset=null,this.supportedTravelModes=null}readAccumulateAttributes(e){return null==e?null:e.map((e=>q.et.fromJSON(e)))}writeAccumulateAttributes(e,t,r){e?.length&&(t[r]=e.map((e=>q.et.toJSON(e))))}get capabilities(){return{supportsNow:(this.currentVersion??10)>=10.81}}readDefaultTravelMode(e,t){const r=t.supportedTravelModes?.find((({id:e})=>e===t.defaultTravelMode))??t.supportedTravelModes?.find((({itemId:e})=>e===t.defaultTravelMode));return r?X.fromJSON(r):null}};function ee(e,t,r,i){i[r]=[t.length,t.length+e.length],e.forEach((e=>{t.push(e.geometry)}))}async function te(e,t,r){if(!e)throw new l.A("network-service:missing-url","Url to Network service is missing");const i=(0,V.jV)({f:"json",token:t},r),{data:o}=await(0,$.A)(e,i),s=o.currentVersion>=10.4?async function(e,t,r){try{const i=(0,V.jV)({f:"json",token:t},r),o=(0,h.UC)(e)+"/retrieveTravelModes",{data:{supportedTravelModes:s,defaultTravelMode:n}}=await(0,$.A)(o,i);return{supportedTravelModes:s,defaultTravelMode:n}}catch(e){throw new l.A("network-service:retrieveTravelModes","Could not get to the NAServer's retrieveTravelModes.",{error:e})}}(e,t,r):async function(e,t){const r=(0,V.jV)({f:"json"},t),{data:i}=await(0,$.A)(e.replace(/\/rest\/.*$/i,"/info"),r);if(!i?.owningSystemUrl)return{supportedTravelModes:[],defaultTravelMode:null};const{owningSystemUrl:o}=i,s=(0,h.UC)(o)+"/sharing/rest/portals/self",{data:n}=await(0,$.A)(s,r),a=(0,c.wc)("helperServices.routingUtilities.url",n);if(!a)return{supportedTravelModes:[],defaultTravelMode:null};const l=(0,V.Dl)(o),u=/\/solve$/i.test(l.path)?"Route":/\/solveclosestfacility$/i.test(l.path)?"ClosestFacility":"ServiceAreas",p=(0,V.jV)({f:"json",serviceName:u},t),d=(0,h.UC)(a)+"/GetTravelModes/execute",y=await(0,$.A)(d,p),m=[];let f=null;if(y?.data?.results?.length){const e=y.data.results;for(const t of e)if("supportedTravelModes"===t.paramName){if(t.value?.features)for(const{attributes:e}of t.value.features)if(e){const t=JSON.parse(e.TravelMode);m.push(t)}}else"defaultTravelMode"===t.paramName&&(f=t.value)}return{supportedTravelModes:m,defaultTravelMode:f}}(e,r),{defaultTravelMode:n,supportedTravelModes:a}=await s;return o.defaultTravelMode=n,o.supportedTravelModes=a,Q.fromJSON(o)}(0,i._)([(0,f.MZ)()],Q.prototype,"accumulateAttributeNames",void 0),(0,i._)([(0,g.w)("accumulateAttributeNames")],Q.prototype,"readAccumulateAttributes",null),(0,i._)([(0,b.K)("accumulateAttributeNames")],Q.prototype,"writeAccumulateAttributes",null),(0,i._)([(0,f.MZ)()],Q.prototype,"attributeParameterValues",void 0),(0,i._)([(0,f.MZ)()],Q.prototype,"capabilities",null),(0,i._)([(0,f.MZ)()],Q.prototype,"currentVersion",void 0),(0,i._)([(0,f.MZ)()],Q.prototype,"defaultTravelMode",void 0),(0,i._)([(0,g.w)("defaultTravelMode",["defaultTravelMode","supportedTravelModes"])],Q.prototype,"readDefaultTravelMode",null),(0,i._)([(0,f.MZ)()],Q.prototype,"directionsLanguage",void 0),(0,i._)([(0,W.e)(q.Z7)],Q.prototype,"directionsLengthUnits",void 0),(0,i._)([(0,f.MZ)()],Q.prototype,"directionsSupportedLanguages",void 0),(0,i._)([(0,W.e)(q.Mm,{ignoreUnknown:!1})],Q.prototype,"directionsTimeAttribute",void 0),(0,i._)([(0,f.MZ)()],Q.prototype,"hasZ",void 0),(0,i._)([(0,W.e)(q.et,{ignoreUnknown:!1})],Q.prototype,"impedance",void 0),(0,i._)([(0,f.MZ)({type:K})],Q.prototype,"networkDataset",void 0),(0,i._)([(0,f.MZ)({type:[X]})],Q.prototype,"supportedTravelModes",void 0),Q=(0,i._)([(0,v.$)("esri.rest.support.NetworkServiceDescription")],Q);var re=r(16649),ie=r(17136);function oe(e,t){if(null==e)return null;const r={},i=new RegExp(`^${t}`,"i");for(const o of Object.keys(e))if(i.test(o)){const i=o.slice(t.length);r[q.et.fromJSON(i)]=e[o]}return r}function se(e,t,r){if(null!=e){t.attributes||(t.attributes={});for(const i in e){const o=q.et.toJSON(i);t.attributes[`${r}${o}`]=e[i]}}}function ne(e){const t={};for(const r of Object.keys(e)){const i=r;t[q.et.fromJSON(i)]=e[r]}return t}function ae(e){const t={};for(const r of Object.keys(e)){const i=r;t[q.et.toJSON(i)]=e[r]}return t}function le(e,t){return null==e||null==t?null:Math.round((e-t)/6e4)}function ue(e){const t=e.toJSON(),r=t;return r.accumulateAttributeNames&&=t.accumulateAttributeNames?.join(),r.attributeParameterValues&&=JSON.stringify(t.attributeParameterValues),r.barriers&&=JSON.stringify(t.barriers),r.outSR&&=t.outSR?.wkid,r.overrides&&=JSON.stringify(t.overrides),r.polygonBarriers&&=JSON.stringify(t.polygonBarriers),r.polylineBarriers&&=JSON.stringify(t.polylineBarriers),r.restrictionAttributeNames&&=t.restrictionAttributeNames?.join(),r.stops&&=JSON.stringify(t.stops),r.travelMode&&=JSON.stringify(t.travelMode),r}var pe=r(22671),ce=r(4576),de=r(66552),ye=r(37807);const me=new de.J({0:"informative",1:"process-definition",2:"process-start",3:"process-stop",50:"warning",100:"error",101:"empty",200:"abort"});let he=class extends ye.A{constructor(e){super(e),this.type=null}};(0,i._)([(0,f.MZ)({type:String,json:{read:me.read,write:me.write}})],he.prototype,"type",void 0),he=(0,i._)([(0,v.$)("esri.rest.support.NAMessage")],he);const fe=he;var ge=r(82799),ve=r(86738);let be=class extends C.A{constructor(e){super(e)}};(0,i._)([(0,f.MZ)({json:{read:{source:"string"}}})],be.prototype,"text",void 0),(0,i._)([(0,W.e)(q.Ec,{name:"stringType"})],be.prototype,"type",void 0),be=(0,i._)([(0,v.$)("esri.rest.support.DirectionsString")],be);const we=be;let Te=class extends C.A{constructor(e){super(e),this.arriveTime=null,this.arriveTimeOffset=null,this.geometry=null,this.strings=null}readArriveTimeOffset(e,t){return le(t.ETA,t.arriveTimeUTC)}readGeometry(e,t){return ve.A.fromJSON(t.point)}};(0,i._)([(0,f.MZ)({type:Date,json:{read:{source:"arriveTimeUTC"}}})],Te.prototype,"arriveTime",void 0),(0,i._)([(0,f.MZ)()],Te.prototype,"arriveTimeOffset",void 0),(0,i._)([(0,g.w)("arriveTimeOffset",["arriveTimeUTC","ETA"])],Te.prototype,"readArriveTimeOffset",null),(0,i._)([(0,f.MZ)({type:ve.A})],Te.prototype,"geometry",void 0),(0,i._)([(0,g.w)("geometry",["point"])],Te.prototype,"readGeometry",null),(0,i._)([(0,f.MZ)({type:[we]})],Te.prototype,"strings",void 0),Te=(0,i._)([(0,v.$)("esri.rest.support.DirectionsEvent")],Te);const _e=Te;let Se=class extends s.A{constructor(e){super(e),this.events=null,this.geometry=null,this.strings=null}readGeometry(e,t){const r=function(e){if(null==e||""===e)return null;let t=0,r=0,i=0,o=0;const s=[];let n,a,l,u,p,c,d,y,m=0,h=0,f=0;if(p=e.match(/((\+|-)[^+\-|]+|\|)/g),p||(p=[]),0===parseInt(p[m],32)){m=2;const e=parseInt(p[m],32);m++,c=parseInt(p[m],32),m++,1&e&&(h=p.indexOf("|")+1,d=parseInt(p[h],32),h++),2&e&&(f=p.indexOf("|",h)+1,y=parseInt(p[f],32),f++)}else c=parseInt(p[m],32),m++;for(;m<p.length&&"|"!==p[m];){n=parseInt(p[m],32)+t,m++,t=n,a=parseInt(p[m],32)+r,m++,r=a;const e=[n/c,a/c];h&&(u=parseInt(p[h],32)+i,h++,i=u,e.push(u/d)),f&&(l=parseInt(p[f],32)+o,f++,o=l,e.push(l/y)),s.push(e)}return{paths:[s],hasZ:h>0,hasM:f>0}}(t.compressedGeometry);return null!=r?ge.A.fromJSON(r):null}};(0,i._)([(0,f.MZ)({type:[_e]})],Se.prototype,"events",void 0),(0,i._)([(0,f.MZ)({type:ge.A})],Se.prototype,"geometry",void 0),(0,i._)([(0,g.w)("geometry",["compressedGeometry"])],Se.prototype,"readGeometry",null),(0,i._)([(0,f.MZ)({type:[we]})],Se.prototype,"strings",void 0),Se=(0,i._)([(0,v.$)("esri.rest.support.DirectionsFeature")],Se);const Me=Se;let Ae=class extends pe.A{constructor(e){super(e),this.extent=null,this.features=[],this.geometryType="polyline",this.routeId=null,this.routeName=null,this.totalDriveTime=null,this.totalLength=null,this.totalTime=null}readFeatures(e,t){if(!e)return[];const r=t.summary.envelope.spatialReference??t.spatialReference,i=r&&M.A.fromJSON(r);return e.map((e=>{const t=Me.fromJSON(e);if(null!=t.geometry&&(t.geometry.spatialReference=i),null!=t.events)for(const e of t.events)null!=e.geometry&&(e.geometry.spatialReference=i);return t}))}get mergedGeometry(){return this.features?function(e,t){if(0===e.length)return new ge.A({spatialReference:t});const r=[];for(const t of e)for(const e of t.paths)r.push(...e);const i=[];r.forEach(((e,t)=>{0!==t&&e[0]===r[t-1][0]&&e[1]===r[t-1][1]||i.push(e)}));const{hasM:o,hasZ:s}=e[0];return new ge.A({hasM:o,hasZ:s,paths:[i],spatialReference:t})}(this.features.map((({geometry:e})=>e)),this.extent.spatialReference):null}get strings(){return this.features.flatMap((({strings:e})=>e)).filter(ce.Ru)}};(0,i._)([(0,f.MZ)({type:T.A,json:{read:{source:"summary.envelope"}}})],Ae.prototype,"extent",void 0),(0,i._)([(0,f.MZ)({nonNullable:!0})],Ae.prototype,"features",void 0),(0,i._)([(0,g.w)("features")],Ae.prototype,"readFeatures",null),(0,i._)([(0,f.MZ)()],Ae.prototype,"geometryType",void 0),(0,i._)([(0,f.MZ)({readOnly:!0})],Ae.prototype,"mergedGeometry",null),(0,i._)([(0,f.MZ)()],Ae.prototype,"routeId",void 0),(0,i._)([(0,f.MZ)()],Ae.prototype,"routeName",void 0),(0,i._)([(0,f.MZ)({value:null,readOnly:!0})],Ae.prototype,"strings",null),(0,i._)([(0,f.MZ)({json:{read:{source:"summary.totalDriveTime"}}})],Ae.prototype,"totalDriveTime",void 0),(0,i._)([(0,f.MZ)({json:{read:{source:"summary.totalLength"}}})],Ae.prototype,"totalLength",void 0),(0,i._)([(0,f.MZ)({json:{read:{source:"summary.totalTime"}}})],Ae.prototype,"totalTime",void 0),Ae=(0,i._)([(0,v.$)("esri.rest.support.DirectionsFeatureSet")],Ae);const Oe=Ae;let Ne=class extends C.A{constructor(e){super(e),this.directionLines=null,this.directionPoints=null,this.directions=null,this.route=null,this.routeName=null,this.stops=null,this.traversedEdges=null,this.traversedJunctions=null,this.traversedTurns=null}};(0,i._)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"directionLines",void 0),(0,i._)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"directionPoints",void 0),(0,i._)([(0,f.MZ)({type:Oe,json:{write:!0}})],Ne.prototype,"directions",void 0),(0,i._)([(0,f.MZ)({type:s.A,json:{write:!0}})],Ne.prototype,"route",void 0),(0,i._)([(0,f.MZ)({type:String,json:{write:!0}})],Ne.prototype,"routeName",void 0),(0,i._)([(0,f.MZ)({type:[s.A],json:{write:!0}})],Ne.prototype,"stops",void 0),(0,i._)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"traversedEdges",void 0),(0,i._)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"traversedJunctions",void 0),(0,i._)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"traversedTurns",void 0),Ne=(0,i._)([(0,v.$)("esri.rest.support.RouteResult")],Ne);const Ie=Ne;function Ze(e){return e?pe.A.fromJSON(e).features.filter(ce.Ru):[]}let De=class extends C.A{constructor(e){super(e),this.checksum=null,this.messages=null,this.pointBarriers=null,this.polylineBarriers=null,this.polygonBarriers=null,this.routeResults=null}readPointBarriers(e,t){return Ze(t.barriers)}readPolylineBarriers(e){return Ze(e)}readPolygonBarriers(e){return Ze(e)}};function je(e){return e instanceof pe.A}async function Ce(e,t,r){const i=[],o=[],s={},n={},a=(0,V.Dl)(e),{path:l}=a;je(t.stops)&&ee(t.stops.features,o,"stops.features",s),je(t.pointBarriers)&&ee(t.pointBarriers.features,o,"pointBarriers.features",s),je(t.polylineBarriers)&&ee(t.polylineBarriers.features,o,"polylineBarriers.features",s),je(t.polygonBarriers)&&ee(t.polygonBarriers.features,o,"polygonBarriers.features",s);const p=await(0,ie.el)(o);for(const e in s){const t=s[e];i.push(e),n[e]=p.slice(t[0],t[1])}if(function(e,t){for(let r=0;r<t.length;r++){const i=e[t[r]];if(i&&i.length)for(const e of i)if(null!=e&&e.hasZ)return!0}return!1}(n,i)){let e=null;try{e=await te(l,t.apiKey,r)}catch{}e&&!e.hasZ&&function(e,t){for(let r=0;r<t.length;r++){const i=e[t[r]];if(i&&i.length)for(const e of i)e.z=void 0}u.A.getLogger("esri.rest.networkService").warnOnce("The remote Network Analysis service is powered by a network dataset which is not Z-aware.\nZ-coordinates of the input geometry are ignored.")}(n,i)}for(const e in n)n[e].forEach(((r,i)=>{(0,re.Jt)(t,e)[i].geometry=r}));const c={...r,query:{...a.query,...ue(t),f:"json"}},d=l.endsWith("/solve")?l:`${l}/solve`,{data:y}=await(0,$.A)(d,c);return function(e){const{barriers:t,checksum:r,directionLines:i,directionPoints:o,directions:s,messages:n,polygonBarriers:a,polylineBarriers:l,routes:u,stops:p,traversedEdges:c,traversedJunctions:d,traversedTurns:y}=e,m=e=>{const t=f.find((t=>t.routeName===e));if(null!=t)return t;const r={routeId:f.length+1,routeName:e};return f.push(r),r},h=e=>{const t=f.find((t=>t.routeId===e));if(null!=t)return t;const r={routeId:e,routeName:null};return f.push(r),r},f=[];u?.features.forEach(((e,t)=>{e.geometry.spatialReference=u.spatialReference??void 0;const r=e.attributes.Name,i=t+1;f.push({routeId:i,routeName:r,route:e})})),s?.forEach((e=>{const{routeName:t}=e;m(t).directions=e}));const g=p?.features.every((e=>null==e.attributes.RouteName))&&f.length>0?f[0].routeName:null;return p?.features.forEach((e=>{e.geometry&&(e.geometry.spatialReference??=p.spatialReference??void 0);const t=g??e.attributes.RouteName,r=m(t);r.stops??=[],r.stops.push(e)})),i?.features.forEach((e=>{const t=e.attributes.RouteID,r=h(t),{geometryType:o,spatialReference:s}=i;r.directionLines??={features:[],geometryType:o,spatialReference:s},r.directionLines.features.push(e)})),o?.features.forEach((e=>{const t=e.attributes.RouteID,r=h(t),{geometryType:i,spatialReference:s}=o;r.directionPoints??={features:[],geometryType:i,spatialReference:s},r.directionPoints.features.push(e)})),c?.feature