@arcgis/core 5.0.0-next.44 → 5.0.0-next.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/bf5f9da0837ed09729c6.js +316 -0
- package/assets/esri/core/workers/chunks/{7c08c0824ad354177787.js → d7878fba02814adaf19f.js} +1 -1
- package/chunks/GaussianSplat.glsl.js +2 -2
- package/config.js +1 -1
- package/core/urlUtils.d.ts +1 -0
- package/core/workers/workerFactory.js +1 -1
- package/interfaces.d.ts +26 -7
- package/kernel.js +1 -1
- package/package.json +2 -2
- package/rest/print.js +1 -1
- package/rest/support/LegendLayer.js +1 -1
- package/support/revision.js +1 -1
- package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/DirectRenderer.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/RenderCommandContext.js +1 -1
- package/views/3d/layers/graphics/pipeline/symbolization/IconSymbolLayerRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/MergedBuffer.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/PerBufferData.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/PerOriginData.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/VaoWriter.js +1 -1
- package/views/3d/webgl-engine/shaders/GaussianSplatColorTechnique.js +5 -0
- package/views/3d/webgl-engine/shaders/GaussianSplatDepthTechnique.js +5 -0
- package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
- package/widgets/FeatureTable/AttachmentsColumn.js +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
- package/widgets/FeatureTable/Grid/Column.js +1 -1
- package/widgets/FeatureTable/Grid/EditorColumn.js +1 -1
- package/widgets/FeatureTable/Grid/Grid.js +1 -1
- package/widgets/FeatureTable/Grid/GridViewModel.js +1 -1
- package/widgets/FeatureTable/support/FeatureStore.js +1 -1
- package/widgets/Print/CustomTemplate.js +1 -1
- package/widgets/Print/PrintViewModel.js +1 -1
- package/widgets/Print/TemplateOptions.js +1 -1
- package/widgets/Print.js +1 -1
- package/assets/esri/core/workers/chunks/ea3cba01c60d9bc72719.js +0 -316
|
@@ -1,316 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[89,7548],{620:(e,t,r)=>{r.d(t,{O_:()=>s,vA:()=>n}),r(48163),r(87317),(0,r(91829).vt)();class i{constructor(e){this.message=e}toString(){return`AssertException: ${this.message}`}}function n(e,t="Assertion"){if(!e){const e=new Error(t).stack;throw new i(`${t} at ${e}`)}}function s(e,t,r,i){let n,s=(r[0]-e[0])/t[0],o=(i[0]-e[0])/t[0];s>o&&(n=s,s=o,o=n);let a=(r[1]-e[1])/t[1],l=(i[1]-e[1])/t[1];if(a>l&&(n=a,a=l,l=n),s>l||a>o)return!1;a>s&&(s=a),l<o&&(o=l);let c=(r[2]-e[2])/t[2],u=(i[2]-e[2])/t[2];return c>u&&(n=c,c=u,u=n),!(s>u||c>o||(u<o&&(o=u),o<0))}},2272:(e,t,r)=>{r.d(t,{Dl:()=>c,gf:()=>d,jV:()=>l,lF:()=>u});var i=r(92602),n=r(70333),s=r(4718),o=r(84952),a=r(926);function l(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function c(e){return"string"==typeof e?(0,o.An)(e):(0,s.o8)(e)}function u(e,t,r){const i={};for(const n in e){if("declaredClass"===n)continue;const s=e[n];if(null!=s&&"function"!=typeof s)if(Array.isArray(s))i[n]=s.map(e=>u(e));else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(r?.[n]);i[n]=t?e:JSON.stringify(e)}else i[n]=t?s:JSON.stringify(s);else i[n]=s}return i}async function d(e,t,s){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.CG)(e)??n.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!n.id&&i.A.request.useIdentity&&await Promise.all([r.e(7330),r.e(168),r.e(148)]).then(r.bind(r,50148));const l=await n.id.getCredential(e,s);return l?.token}},4146:(e,t,r)=>{r.d(t,{A:()=>b});var i=r(31635),n=r(11254),s=r(49186),o=r(65529),a=r(4902),l=r(92474),c=r(53966),u=r(74887),d=r(84952),h=r(91429),f=r(5443),p=r(16930),m=r(92602),y=r(79677);let g=0,b=class extends((0,o.Zt)((0,a.s)(l.x_))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new f.A(-180,-90,180,90,p.A.WGS84),this.id=Date.now().toString(16)+"-layer-"+g++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.persistenceEnabled=!1,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=p.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 Promise.all([r.e(812),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 Promise.all([r.e(812),r.e(5613),r.e(5710)]).then(r.bind(r,45613));try{return await i(t)}catch(e){const r=t?.portalItem,i=r?.id||"unset",n=r?.portal?.url||m.A.portalUrl;throw c.A.getLogger("esri.layers.support.fromPortalItem").error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+n+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch(e=>{(0,u.zf)(e)||c.A.getLogger(this).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}')`,{error:e})})}destroy(){const{parent:e}=this;e&&(this.parent=null,e.removeChildLayer?.(this))}get effectiveVisible(){return this.visible&&(this.parent?.effectiveVisible??!0)}get hasAttributionData(){return null!=this.attributionDataUrl}get loaded(){return super.loaded}removeFromParent(){const{parent:e}=this;e&&(e.removeChildLayer?.(this),this.parent=null)}get parsedUrl(){return(0,d.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,n.A)(e,{query:{f:"json"},responseType:"json"})).data;throw new s.A("layer:no-attribution-data","Layer does not have attribution data")}};(0,i.Cg)([(0,h.MZ)({type:String})],b.prototype,"attributionDataUrl",void 0),(0,i.Cg)([(0,h.MZ)({readOnly:!0})],b.prototype,"effectiveVisible",null),(0,i.Cg)([(0,h.MZ)({type:f.A})],b.prototype,"fullExtent",void 0),(0,i.Cg)([(0,h.MZ)({readOnly:!0})],b.prototype,"hasAttributionData",null),(0,i.Cg)([(0,h.MZ)({type:String,clonable:!1})],b.prototype,"id",void 0),(0,i.Cg)([(0,h.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,h.MZ)({type:["show","hide","hide-children"]})],b.prototype,"listMode",void 0),(0,i.Cg)([(0,h.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0})],b.prototype,"opacity",void 0),(0,i.Cg)([(0,h.MZ)({clonable:!1})],b.prototype,"parent",void 0),(0,i.Cg)([(0,h.MZ)({readOnly:!0})],b.prototype,"parsedUrl",null),(0,i.Cg)([(0,h.MZ)({type:Boolean,readOnly:!0})],b.prototype,"persistenceEnabled",void 0),(0,i.Cg)([(0,h.MZ)({type:Boolean})],b.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,h.MZ)({type:Boolean})],b.prototype,"attributionVisible",void 0),(0,i.Cg)([(0,h.MZ)({type:p.A})],b.prototype,"spatialReference",void 0),(0,i.Cg)([(0,h.MZ)({type:String})],b.prototype,"title",void 0),(0,i.Cg)([(0,h.MZ)({readOnly:!0,json:{read:!1}})],b.prototype,"type",void 0),(0,i.Cg)([(0,h.MZ)()],b.prototype,"url",void 0),(0,i.Cg)([(0,h.MZ)({type:y.A})],b.prototype,"visibilityTimeExtent",void 0),(0,i.Cg)([(0,h.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"visible",void 0),b=(0,i.Cg)([(0,h.$K)("esri.layers.Layer")],b)},4902:(e,t,r)=>{r.d(t,{s:()=>o});var i=r(31635),n=r(64108);let s=0;const o=e=>{const t=e;let r=class extends t{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+s++})}};return r=(0,i.Cg)([(0,n.$)("esri.core.Identifiable")],r),r};o(class{})},6797:(e,t,r)=>{r.d(t,{Ui:()=>h});var i=r(69622),n=r(7762),s=r(88620);const o=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 n.A?Object.keys(e.items):a(e)?(0,s.oY)(e).keys():e?Object.keys(e):[]}function c(e,t){return e instanceof n.A?e.items[t]:e[t]}function u(e){return e?e.declaredClass:null}function d(e,t){const r=e.diff;if(r&&"function"==typeof r)return r(e,t);const i=l(e),n=l(t);if(0===i.length&&0===n.length)return;if(!i.length||!n.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=n.filter(e=>!i.includes(e)),h=i.filter(e=>!n.includes(e)),f=i.filter(r=>n.includes(r)&&c(e,r)!==c(t,r)).concat(s,h).sort(),p=u(e);if(p&&o.has(p)&&f.length)return{type:"complete",oldValue:e,newValue:t};let m;const y=a(e)&&a(t);for(const i of f){const n=c(e,i),s=c(t,i);let o;if((y||"function"!=typeof n&&"function"!=typeof s)&&n!==s&&(null!=n||null!=s)){if(r&&r[i]&&"function"==typeof r[i])o=r[i]?.(n,s);else if(n instanceof Date&&s instanceof Date){if(n.getTime()===s.getTime())continue;o={type:"complete",oldValue:n,newValue:s}}else o="object"==typeof n&&"object"==typeof s&&u(n)===u(s)?d(n,s):{type:"complete",oldValue:n,newValue:s};null!=o&&(null!=m?m.diff[i]=o:m={type:"partial",diff:{[i]:o}})}}return m}function h(e,t){if("function"!=typeof e&&"function"!=typeof t&&(null!=e||null!=t))return null==e||null==t||"object"==typeof e&&"object"==typeof t&&u(e)!==u(t)?{type:"complete",oldValue:e,newValue:t}:d(e,t)}},8631:(e,t,r)=>{r.d(t,{rS:()=>h,gK:()=>d}),r(44208);var i,n=r(53177),s=r(76357),o=r(31635),a=r(91429),l=r(93223);let c=class extends s.A{static{i=this}constructor(e){super(e),this.type="inherited"}clone(){return new i}};(0,o.Cg)([(0,l.e)({inherited:"inherited"})],c.prototype,"type",void 0),c=i=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],c);var u=r(41628);const d={key:"type",base:s.A,typeMap:{range:u.A,"coded-value":n.A,inherited:c}};function h(e){if(!e?.type)return null;switch(e.type){case"range":return u.A.fromJSON(e);case"codedValue":return n.A.fromJSON(e);case"inherited":return c.fromJSON(e)}return null}},13030:(e,t,r)=>{r.d(t,{Y$:()=>g,XW:()=>y,qB:()=>P,Qt:()=>Z,My:()=>J,bf:()=>G,jZ:()=>S,j0:()=>A,Sx:()=>T,E$:()=>I,h:()=>j,P:()=>U,SL:()=>O,dy:()=>re,gH:()=>_,ZD:()=>b,si:()=>B,mJ:()=>X,UL:()=>K,D6:()=>k,Yi:()=>V,An:()=>N,LC:()=>R,xs:()=>w,EC:()=>v,Xm:()=>E,Vp:()=>W,zD:()=>ee,m8:()=>$,nS:()=>z,H$:()=>H,eI:()=>D,td:()=>ie,Eq:()=>C,jz:()=>x,Aj:()=>M,E7:()=>Q,Y4:()=>te,TX:()=>Y,Uz:()=>L,ml:()=>q,XP:()=>F});var i=r(34727),n=r(87317),s=r(91829),o=r(20498);class a{static{this.ElementCount=9}constructor(e,t,r=0,i,n){this.TypedArrayConstructor=e,this.elementCount=9;const s=this.TypedArrayConstructor;void 0===i&&(i=9*s.BYTES_PER_ELEMENT);const o=0===t.byteLength?0:r;this.typedBuffer=null==n?new s(t,o):new s(t,o,(n-r)/s.BYTES_PER_ELEMENT),this.typedBufferStride=i/s.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(e,t,r=this.count-t){const i=this.typedBuffer.byteOffset+t*this.stride;return new e(this.buffer,i,this.stride,i+r*this.stride)}getMat(e,t){let r=e*this.typedBufferStride;for(let e=0;e<9;e++)t[e]=this.typedBuffer[r++];return t}setMat(e,t){let r=e*this.typedBufferStride;for(let e=0;e<9;e++)this.typedBuffer[r++]=t[e]}get(e,t){return this.typedBuffer[e*this.typedBufferStride+t]}set(e,t,r){this.typedBuffer[e*this.typedBufferStride+t]=r}copyFrom(e,t,r){const i=this.typedBuffer,n=t.typedBuffer;let s=e*this.typedBufferStride,o=r*t.typedBufferStride;for(let e=0;e<9;++e)i[s++]=n[o++]}get buffer(){return this.typedBuffer.buffer}}class l{static{this.ElementCount=16}constructor(e,t,r=0,i,n){this.TypedArrayConstructor=e,this.elementCount=16;const s=this.TypedArrayConstructor;void 0===i&&(i=16*s.BYTES_PER_ELEMENT);const o=0===t.byteLength?0:r;this.typedBuffer=null==n?new s(t,o):new s(t,o,(n-r)/s.BYTES_PER_ELEMENT),this.typedBufferStride=i/s.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(e,t,r=this.count-t){const i=this.typedBuffer.byteOffset+t*this.stride;return new e(this.buffer,i,this.stride,i+r*this.stride)}getMat(e,t){let r=e*this.typedBufferStride;for(let e=0;e<16;e++)t[e]=this.typedBuffer[r++];return t}setMat(e,t){let r=e*this.typedBufferStride;for(let e=0;e<16;e++)this.typedBuffer[r++]=t[e]}get(e,t){return this.typedBuffer[e*this.typedBufferStride+t]}set(e,t,r){this.typedBuffer[e*this.typedBufferStride+t]=r}copyFrom(e,t,r){this.copyFromTypedBuffer(e,t.typedBuffer,r*t.typedBufferStride)}copyFromTypedBuffer(e,t,r){const i=this.typedBuffer;let n=e*this.typedBufferStride;for(let e=0;e<16;++e)i[n++]=t[r++]}get buffer(){return this.typedBuffer.buffer}}class c{static{this.ElementCount=1}constructor(e,t,r=0,i,n){this.TypedArrayConstructor=e,this.elementCount=1;const s=this.TypedArrayConstructor;void 0===i&&(i=s.BYTES_PER_ELEMENT);const o=0===t.byteLength?0:r;this.typedBuffer=null==n?new s(t,o):new s(t,o,(n-r)/s.BYTES_PER_ELEMENT),this.stride=i,this.typedBufferStride=i/s.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride)}sliceBuffer(e,t,r=this.count-t){const i=this.typedBuffer.byteOffset+t*this.stride;return new e(this.buffer,i,this.stride,i+r*this.stride)}get(e){return this.typedBuffer[e*this.typedBufferStride]}set(e,t){this.typedBuffer[e*this.typedBufferStride]=t}get buffer(){return this.typedBuffer.buffer}}var u=r(37585);class d{static{this.ElementCount=2}constructor(e,t,r=0,i,n){this.TypedArrayConstructor=e,this.start=r,this.elementCount=2;const s=this.TypedArrayConstructor;void 0===i&&(i=2*s.BYTES_PER_ELEMENT);const o=0===t.byteLength?0:r;this.typedBuffer=null==n?new s(t,o):new s(t,o,(n-r)/s.BYTES_PER_ELEMENT),this.typedBufferStride=i/s.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(e,t,r=this.count-t){const i=this.typedBuffer.byteOffset+t*this.stride;return new e(this.buffer,i,this.stride,i+r*this.stride)}getVec(e,t){return e*=this.typedBufferStride,(0,u.hZ)(t,this.typedBuffer[e],this.typedBuffer[e+1])}setVec(e,t){e*=this.typedBufferStride,this.typedBuffer[e++]=t[0],this.typedBuffer[e]=t[1]}get(e,t){return this.typedBuffer[e*this.typedBufferStride+t]}set(e,t,r){this.typedBuffer[e*this.typedBufferStride+t]=r}setValues(e,t,r){e*=this.typedBufferStride,this.typedBuffer[e++]=t,this.typedBuffer[e]=r}copyFrom(e,t,r){const i=this.typedBuffer,n=t.typedBuffer;let s=e*this.typedBufferStride,o=r*t.typedBufferStride;i[s++]=n[o++],i[s]=n[o]}get buffer(){return this.typedBuffer.buffer}}var h=r(38954);class f{static{this.ElementCount=3}constructor(e,t,r=0,i,n){this.TypedArrayConstructor=e,this.elementCount=3;const s=this.TypedArrayConstructor;void 0===i&&(i=3*s.BYTES_PER_ELEMENT);const o=0===t.byteLength?0:r;this.typedBuffer=null==n?new s(t,o):new s(t,o,(n-r)/s.BYTES_PER_ELEMENT),this.typedBufferStride=i/s.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(e,t,r=this.count-t){const i=this.typedBuffer.byteOffset+t*this.stride;return new e(this.buffer,i,this.stride,i+r*this.stride)}getVec(e,t){return e*=this.typedBufferStride,(0,h.h)(t,this.typedBuffer[e],this.typedBuffer[e+1],this.typedBuffer[e+2])}setVec(e,t){e*=this.typedBufferStride,this.typedBuffer[e++]=t[0],this.typedBuffer[e++]=t[1],this.typedBuffer[e]=t[2]}get(e,t){return this.typedBuffer[e*this.typedBufferStride+t]}set(e,t,r){this.typedBuffer[e*this.typedBufferStride+t]=r}setValues(e,t,r,i){e*=this.typedBufferStride,this.typedBuffer[e++]=t,this.typedBuffer[e++]=r,this.typedBuffer[e]=i}copyFrom(e,t,r){const i=this.typedBuffer,n=t.typedBuffer;let s=e*this.typedBufferStride,o=r*t.typedBufferStride;i[s++]=n[o++],i[s++]=n[o++],i[s]=n[o]}get buffer(){return this.typedBuffer.buffer}}class p{static{this.ElementCount=4}constructor(e,t,r=0,i,n){this.TypedArrayConstructor=e,this.start=r,this.elementCount=4;const s=this.TypedArrayConstructor;void 0===i&&(i=4*s.BYTES_PER_ELEMENT);const o=0===t.byteLength?0:r;this.typedBuffer=null==n?new s(t,o):new s(t,o,(n-r)/s.BYTES_PER_ELEMENT),this.typedBufferStride=i/s.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(e,t,r=this.count-t){const i=this.typedBuffer.byteOffset+t*this.stride;return new e(this.buffer,i,this.stride,i+r*this.stride)}getVec(e,t){return e*=this.typedBufferStride,(0,n.c)(t,this.typedBuffer[e++],this.typedBuffer[e++],this.typedBuffer[e++],this.typedBuffer[e])}setVec(e,t){e*=this.typedBufferStride,this.typedBuffer[e++]=t[0],this.typedBuffer[e++]=t[1],this.typedBuffer[e++]=t[2],this.typedBuffer[e]=t[3]}get(e,t){return this.typedBuffer[e*this.typedBufferStride+t]}set(e,t,r){this.typedBuffer[e*this.typedBufferStride+t]=r}setValues(e,t,r,i,n){e*=this.typedBufferStride,this.typedBuffer[e++]=t,this.typedBuffer[e++]=r,this.typedBuffer[e++]=i,this.typedBuffer[e]=n}copyFrom(e,t,r){const i=this.typedBuffer,n=t.typedBuffer;let s=e*this.typedBufferStride,o=r*t.typedBufferStride;i[s++]=n[o++],i[s++]=n[o++],i[s++]=n[o++],i[s]=n[o]}get buffer(){return this.typedBuffer.buffer}}var m=r(620);class y extends c{constructor(e,t=0,r,i){(0,m.vA)(o.SX),super((0,o.pX)(),e,t,r,i),this.elementType="f16"}static{this.ElementType="f16"}}class g extends c{constructor(e,t=0,r,i){super(Float32Array,e,t,r,i),this.elementType="f32"}static{this.ElementType="f32"}}class b extends d{constructor(e,t=0,r,i){(0,m.vA)(o.SX),super((0,o.pX)(),e,t,r,i),this.elementType="f16"}slice(e,t){return this.sliceBuffer(b,e,t)}static{this.ElementType="f16"}}class _ extends d{constructor(e,t=0,r,i){super(Float32Array,e,t,r,i),this.elementType="f32"}slice(e,t){return this.sliceBuffer(_,e,t)}static{this.ElementType="f32"}}class v extends f{constructor(e,t=0,r,i){(0,m.vA)(o.SX),super((0,o.pX)(),e,t,r,i),this.elementType="f16"}slice(e,t){return this.sliceBuffer(v,e,t)}static{this.ElementType="f16"}}class w extends f{constructor(e,t=0,r,i){super(Float32Array,e,t,r,i),this.elementType="f32"}slice(e,t){return this.sliceBuffer(w,e,t)}static fromTypedArray(e,t){return new w(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}static{this.ElementType="f32"}}class x extends p{constructor(e,t=0,r,i){(0,m.vA)(o.SX),super((0,o.pX)(),e,t,r,i),this.elementType="f16"}slice(e,t){return this.sliceBuffer(x,e,t)}static{this.ElementType="f16"}}class C extends p{constructor(e,t=0,r,i){super(Float32Array,e,t,r,i),this.elementType="f32"}slice(e,t){return this.sliceBuffer(C,e,t)}static{this.ElementType="f32"}}class S extends a{constructor(e,t=0,r,i){super(Float32Array,e,t,r,i),this.elementType="f32"}slice(e,t){return this.sliceBuffer(S,e,t)}static{this.ElementType="f32"}}class A extends a{constructor(e,t=0,r,i){super(Float64Array,e,t,r,i),this.elementType="f64"}slice(e,t){return this.sliceBuffer(A,e,t)}static{this.ElementType="f64"}}class T extends l{constructor(e,t=0,r,i){super(Float32Array,e,t,r,i),this.elementType="f32"}slice(e,t){return this.sliceBuffer(T,e,t)}static{this.ElementType="f32"}}class I extends l{constructor(e,t=0,r,i){super(Float64Array,e,t,r,i),this.elementType="f64"}slice(e,t){return this.sliceBuffer(I,e,t)}static{this.ElementType="f64"}}class P extends c{constructor(e,t=0,r,i){super(Float64Array,e,t,r,i),this.elementType="f64"}slice(e,t){return this.sliceBuffer(P,e,t)}static{this.ElementType="f64"}}class B extends d{constructor(e,t=0,r,i){super(Float64Array,e,t,r,i),this.elementType="f64"}slice(e,t){return this.sliceBuffer(B,e,t)}static{this.ElementType="f64"}}class E extends f{constructor(e,t=0,r,i){super(Float64Array,e,t,r,i),this.elementType="f64"}slice(e,t){return this.sliceBuffer(E,e,t)}static fromTypedArray(e,t){return new E(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}static{this.ElementType="f64"}}class M extends p{constructor(e,t=0,r,i){super(Float64Array,e,t,r,i),this.elementType="f64"}slice(e,t){return this.sliceBuffer(M,e,t)}static{this.ElementType="f64"}}class O extends c{constructor(e,t=0,r,i){super(Uint8Array,e,t,r,i),this.elementType="u8"}slice(e,t){return this.sliceBuffer(O,e,t)}static{this.ElementType="u8"}}class R extends d{constructor(e,t=0,r,i){super(Uint8Array,e,t,r,i),this.elementType="u8"}slice(e,t){return this.sliceBuffer(R,e,t)}static{this.ElementType="u8"}}class D extends f{constructor(e,t=0,r,i){super(Uint8Array,e,t,r,i),this.elementType="u8"}slice(e,t){return this.sliceBuffer(D,e,t)}static fromTypedArray(e,t){return new D(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}static{this.ElementType="u8"}}class F extends p{constructor(e,t=0,r,i){super(Uint8Array,e,t,r,i),this.elementType="u8"}slice(e,t){return this.sliceBuffer(F,e,t)}static{this.ElementType="u8"}}class j extends c{constructor(e,t=0,r,i){super(Uint16Array,e,t,r,i),this.elementType="u16"}slice(e,t){return this.sliceBuffer(j,e,t)}static{this.ElementType="u16"}}class V extends d{constructor(e,t=0,r,i){super(Uint16Array,e,t,r,i),this.elementType="u16"}slice(e,t){return this.sliceBuffer(V,e,t)}static{this.ElementType="u16"}}class z extends f{constructor(e,t=0,r,i){super(Uint16Array,e,t,r,i),this.elementType="u16"}slice(e,t){return this.sliceBuffer(z,e,t)}static{this.ElementType="u16"}}class L extends p{constructor(e,t=0,r,i){super(Uint16Array,e,t,r,i),this.elementType="u16"}slice(e,t){return this.sliceBuffer(L,e,t)}static{this.ElementType="u16"}}class U extends c{constructor(e,t=0,r,i){super(Uint32Array,e,t,r,i),this.elementType="u32"}slice(e,t){return this.sliceBuffer(U,e,t)}static{this.ElementType="u32"}}class N extends d{constructor(e,t=0,r,i){super(Uint32Array,e,t,r,i),this.elementType="u32"}slice(e,t){return this.sliceBuffer(N,e,t)}static{this.ElementType="u32"}}class H extends f{constructor(e,t=0,r,i){super(Uint32Array,e,t,r,i),this.elementType="u32"}slice(e,t){return this.sliceBuffer(H,e,t)}static{this.ElementType="u32"}}class q extends p{constructor(e,t=0,r,i){super(Uint32Array,e,t,r,i),this.elementType="u32"}slice(e,t){return this.sliceBuffer(q,e,t)}static{this.ElementType="u32"}}class G extends c{constructor(e,t=0,r,i){super(Int8Array,e,t,r,i),this.elementType="i8"}slice(e,t){return this.sliceBuffer(G,e,t)}static{this.ElementType="i8"}}class k extends d{constructor(e,t=0,r,i){super(Int8Array,e,t,r,i),this.elementType="i8"}slice(e,t){return this.sliceBuffer(k,e,t)}static{this.ElementType="i8"}}class $ extends f{constructor(e,t=0,r,i){super(Int8Array,e,t,r,i),this.elementType="i8"}slice(e,t){return this.sliceBuffer($,e,t)}static{this.ElementType="i8"}}class Y extends p{constructor(e,t=0,r,i){super(Int8Array,e,t,r,i),this.elementType="i8"}slice(e,t){return this.sliceBuffer(Y,e,t)}static{this.ElementType="i8"}}class Z extends c{constructor(e,t=0,r,i){super(Int16Array,e,t,r,i),this.elementType="i16"}slice(e,t){return this.sliceBuffer(Z,e,t)}static{this.ElementType="i16"}}class X extends d{constructor(e,t=0,r,i){super(Int16Array,e,t,r,i),this.elementType="i16"}slice(e,t){return this.sliceBuffer(X,e,t)}static{this.ElementType="i16"}}class W extends f{constructor(e,t=0,r,i){super(Int16Array,e,t,r,i),this.elementType="i16"}slice(e,t){return this.sliceBuffer(W,e,t)}static{this.ElementType="i16"}}class Q extends p{constructor(e,t=0,r,i){super(Int16Array,e,t,r,i),this.elementType="i16"}slice(e,t){return this.sliceBuffer(Q,e,t)}static{this.ElementType="i16"}}class J extends c{constructor(e,t=0,r,i){super(Int32Array,e,t,r,i),this.elementType="i32"}slice(e,t){return this.sliceBuffer(J,e,t)}static{this.ElementType="i32"}}class K extends d{constructor(e,t=0,r,i){super(Int32Array,e,t,r,i),this.elementType="i32"}slice(e,t){return this.sliceBuffer(K,e,t)}static{this.ElementType="i32"}}class ee extends f{constructor(e,t=0,r,i){super(Int32Array,e,t,r,i),this.elementType="i32"}slice(e,t){return this.sliceBuffer(ee,e,t)}static{this.ElementType="i32"}}class te extends p{constructor(e,t=0,r,i){super(Int32Array,e,t,r,i),this.elementType="i32"}slice(e,t){return this.sliceBuffer(te,e,t)}static{this.ElementType="i32"}}class re extends O{constructor(e,t=0,r,i){super(e,t,r,i)}get(e){return this.typedBuffer[e*this.typedBufferStride]/255}set(e,t){this.typedBuffer[e*this.typedBufferStride]=Math.round(255*(0,i.qE)(t,0,1))}slice(e,t){return this.sliceBuffer(re,e,t)}}class ie extends F{constructor(e,t=0,r,i){super(e,t,r,i)}getVec(e,t){return(0,n.s)(t,super.getVec(e,t),1/255)}setVec(e,t){(0,n.m)(ne,(0,n.b)(ne,t,s.uY),s.Un),(0,n.s)(ne,ne,255),(0,n.r)(ne,ne),super.setVec(e,ne)}get(e,t){return super.get(e,t)/255}set(e,t,r){super.set(e,t,Math.round(255*(0,i.qE)(r,0,1)))}setValues(e,t,r,i,s){(0,n.c)(ne,t,r,i,s),this.setVec(e,ne)}slice(e,t){return this.sliceBuffer(ie,e,t)}}const ne=(0,s.vt)()},13259:(e,t,r)=>{r.d(t,{H:()=>F,b:()=>B,c:()=>M,f:()=>R});var i=r(37585),n=r(48163),s=r(91829),o=r(79258),a=r(76591),l=r(36782),c=r(47522),u=r(40268),d=r(63578),h=r(50832),f=r(42593),p=r(42398),m=r(63365),y=r(52587),g=r(20693),b=r(47286),_=r(14314),v=r(81961),w=r(71988),x=r(33094),C=r(20304),S=r(31821),A=r(12791),T=r(63761),I=r(14113),P=r(49788);function B(e){const t=new I.N5;if(t.include(u.Q,e),t.vertex.include(a.rA,e),e.occlusionPass)return t.include(d.I,e),t;const{output:r,oitPass:n,signedDistanceFieldEnabled:B,occlusionTestEnabled:R,horizonCullingEnabled:F,pixelSnappingEnabled:j,hasEmission:V,hasScreenSizePerspective:z,debugDrawLabelBorder:L,hasVVSize:U,hasVVColor:N,hasRotation:H,occludedFragmentFade:q,sampleSignedDistanceFieldTexelCenter:G}=e;t.include(y.Y6),t.include(p.A,e),t.include(l.g,e),R&&t.include(h.y);const{vertex:k,fragment:$}=t;$.include(m.a),t.varyings.add("vcolor","vec4"),t.varyings.add("vtc","vec2"),t.varyings.add("vsize","vec2");const Y=8===r,Z=Y&&R;Z&&t.varyings.add("voccluded","float"),k.uniforms.add(new _.I("viewport",e=>e.camera.fullViewport),new b.G("screenOffset",(e,t)=>(0,i.hZ)(O,2*e.screenOffset[0]*t.camera.pixelRatio,2*e.screenOffset[1]*t.camera.pixelRatio)),new b.G("anchorPosition",e=>M(e)),new w.E("materialColor",e=>e.color),new C.m("materialRotation",e=>e.rotation),new T.N("tex",e=>e.texture)),(0,g.Nz)(k),B&&(k.uniforms.add(new w.E("outlineColor",e=>e.outlineColor)),$.uniforms.add(new w.E("outlineColor",e=>E(e)?e.outlineColor:s.uY),new C.m("outlineSize",e=>E(e)?e.outlineSize:0))),F&&k.uniforms.add(new v.V("pointDistanceSphere",(e,t)=>{const r=t.camera.eye,i=e.origin;return(0,s.fA)(i[0]-r[0],i[1]-r[1],i[2]-r[2],o.$O.radius)})),j&&k.include(c.K),z&&((0,y.pM)(k),(0,y.OH)(k)),L&&t.varyings.add("debugBorderCoords","vec4"),t.attributes.add("uv0","vec2"),t.attributes.add("uvi","vec4"),t.attributes.add("color","vec4"),t.attributes.add("size","vec2"),t.attributes.add("rotation","float"),(U||N)&&t.attributes.add("featureAttribute","vec4"),k.code.add(F?S.H`bool behindHorizon(vec3 posModel) {
|
|
2
|
-
vec3 camToEarthCenter = pointDistanceSphere.xyz - localOrigin;
|
|
3
|
-
vec3 camToPos = pointDistanceSphere.xyz + posModel;
|
|
4
|
-
float earthRadius = pointDistanceSphere.w;
|
|
5
|
-
float a = dot(camToPos, camToPos);
|
|
6
|
-
float b = dot(camToPos, camToEarthCenter);
|
|
7
|
-
float c = dot(camToEarthCenter, camToEarthCenter) - earthRadius * earthRadius;
|
|
8
|
-
return b > 0.0 && b < a && b * b > a * c;
|
|
9
|
-
}`:S.H`bool behindHorizon(vec3 posModel) { return false; }`),k.main.add(S.H`
|
|
10
|
-
ProjectHUDAux projectAux;
|
|
11
|
-
vec4 posProj = projectPositionHUD(projectAux);
|
|
12
|
-
forwardObjectAndLayerIdColor();
|
|
13
|
-
|
|
14
|
-
if (rejectBySlice(projectAux.posModel)) {
|
|
15
|
-
// Project outside of clip plane
|
|
16
|
-
gl_Position = vec4(1e038, 1e038, 1e038, 1.0);
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
if (behindHorizon(projectAux.posModel)) {
|
|
21
|
-
// Project outside of clip plane
|
|
22
|
-
gl_Position = vec4(1e038, 1e038, 1e038, 1.0);
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
vec2 inputSize;
|
|
27
|
-
${(0,S.If)(z,S.H`
|
|
28
|
-
inputSize = screenSizePerspectiveScaleVec2(size, projectAux.absCosAngle, projectAux.distanceToCamera, screenSizePerspective);
|
|
29
|
-
vec2 screenOffsetScaled = screenSizePerspectiveScaleVec2(screenOffset, projectAux.absCosAngle, projectAux.distanceToCamera, screenSizePerspectiveAlignment);`,S.H`
|
|
30
|
-
inputSize = size;
|
|
31
|
-
vec2 screenOffsetScaled = screenOffset;`)}
|
|
32
|
-
${(0,S.If)(U,S.H`inputSize *= vvScale(featureAttribute).xx;`)}
|
|
33
|
-
|
|
34
|
-
vec2 combinedSize = inputSize * pixelRatio;
|
|
35
|
-
vec4 quadOffset = vec4(0.0);
|
|
36
|
-
|
|
37
|
-
${(0,S.If)(R,S.H`
|
|
38
|
-
bool visible = testHUDVisibility(posProj);
|
|
39
|
-
if (!visible) {
|
|
40
|
-
vtc = vec2(0.0);
|
|
41
|
-
${(0,S.If)(L,"debugBorderCoords = vec4(0.5, 0.5, 1.5 / combinedSize);")}
|
|
42
|
-
return;
|
|
43
|
-
}`)}
|
|
44
|
-
${(0,S.If)(Z,S.H`voccluded = visible ? 0.0 : 1.0;`)}
|
|
45
|
-
`);const X=S.H`
|
|
46
|
-
vec2 uv = mix(uvi.xy, uvi.zw, bvec2(uv0));
|
|
47
|
-
vec2 texSize = vec2(textureSize(tex, 0));
|
|
48
|
-
uv = mix(vec2(1.0), uv / texSize, lessThan(uv, vec2(${D})));
|
|
49
|
-
quadOffset.xy = (uv0 - anchorPosition) * 2.0 * combinedSize;
|
|
50
|
-
|
|
51
|
-
${(0,S.If)(H,S.H`
|
|
52
|
-
float angle = radians(materialRotation + rotation);
|
|
53
|
-
float cosAngle = cos(angle);
|
|
54
|
-
float sinAngle = sin(angle);
|
|
55
|
-
mat2 rotate = mat2(cosAngle, -sinAngle, sinAngle, cosAngle);
|
|
56
|
-
|
|
57
|
-
quadOffset.xy = rotate * quadOffset.xy;
|
|
58
|
-
`)}
|
|
59
|
-
|
|
60
|
-
quadOffset.xy = (quadOffset.xy + screenOffsetScaled) / viewport.zw * posProj.w;
|
|
61
|
-
`,W=j?B?S.H`posProj = alignToPixelOrigin(posProj, viewport.zw) + quadOffset;`:S.H`posProj += quadOffset;
|
|
62
|
-
if (inputSize.x == size.x) {
|
|
63
|
-
posProj = alignToPixelOrigin(posProj, viewport.zw);
|
|
64
|
-
}`:S.H`posProj += quadOffset;`;k.main.add(S.H`
|
|
65
|
-
${X}
|
|
66
|
-
${N?"vcolor = interpolateVVColor(featureAttribute.y) * materialColor;":"vcolor = color / 255.0 * materialColor;"}
|
|
67
|
-
|
|
68
|
-
${(0,S.If)(9===r,S.H`vcolor.a = 1.0;`)}
|
|
69
|
-
|
|
70
|
-
bool alphaDiscard = vcolor.a < ${S.H.float(P.Q)};
|
|
71
|
-
${(0,S.If)(B,`alphaDiscard = alphaDiscard && outlineColor.a < ${S.H.float(P.Q)};`)}
|
|
72
|
-
if (alphaDiscard) {
|
|
73
|
-
// "early discard" if both symbol color (= fill) and outline color (if applicable) are transparent
|
|
74
|
-
gl_Position = vec4(1e38, 1e38, 1e38, 1.0);
|
|
75
|
-
return;
|
|
76
|
-
} else {
|
|
77
|
-
${W}
|
|
78
|
-
gl_Position = posProj;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
vtc = uv;
|
|
82
|
-
|
|
83
|
-
${(0,S.If)(L,S.H`debugBorderCoords = vec4(uv01, 1.5 / combinedSize);`)}
|
|
84
|
-
vsize = inputSize;
|
|
85
|
-
`),$.uniforms.add(new T.N("tex",e=>e.texture)),q&&!Y&&$.uniforms.add(new A.x("depthMap",e=>e.mainDepth),new x.U("occludedOpacity",e=>e.hudOccludedFragmentOpacity));const Q=L?S.H`(isBorder > 0.0 ? 0.0 : ${S.H.float(P.Q)})`:S.H.float(P.Q),J=S.H`
|
|
86
|
-
${(0,S.If)(L,S.H`float isBorder = float(any(lessThan(debugBorderCoords.xy, debugBorderCoords.zw)) || any(greaterThan(debugBorderCoords.xy, 1.0 - debugBorderCoords.zw)));`)}
|
|
87
|
-
|
|
88
|
-
vec2 samplePos = vtc;
|
|
89
|
-
|
|
90
|
-
${(0,S.If)(G,S.H`
|
|
91
|
-
float txSize = float(textureSize(tex, 0).x);
|
|
92
|
-
float texelSize = 1.0 / txSize;
|
|
93
|
-
|
|
94
|
-
// Calculate how much we have to add/subtract to/from each texel to reach the size of an onscreen pixel
|
|
95
|
-
vec2 scaleFactor = (vsize - txSize) * texelSize;
|
|
96
|
-
samplePos += (vec2(1.0, -1.0) * texelSize) * scaleFactor;`)}
|
|
97
|
-
|
|
98
|
-
${B?S.H`
|
|
99
|
-
vec4 fillPixelColor = vcolor;
|
|
100
|
-
|
|
101
|
-
// Get distance in output units (i.e. pixels)
|
|
102
|
-
|
|
103
|
-
float sdf = texture(tex, samplePos).r;
|
|
104
|
-
float pixelDistance = sdf * vsize.x;
|
|
105
|
-
|
|
106
|
-
// Create smooth transition from the icon into its outline
|
|
107
|
-
float fillAlphaFactor = clamp(0.5 - pixelDistance, 0.0, 1.0);
|
|
108
|
-
fillPixelColor.a *= fillAlphaFactor;
|
|
109
|
-
|
|
110
|
-
if (outlineSize > 0.25) {
|
|
111
|
-
vec4 outlinePixelColor = outlineColor;
|
|
112
|
-
float clampedOutlineSize = min(outlineSize, 0.5*vsize.x);
|
|
113
|
-
|
|
114
|
-
// Create smooth transition around outline
|
|
115
|
-
float outlineAlphaFactor = clamp(0.5 - (abs(pixelDistance) - 0.5*clampedOutlineSize), 0.0, 1.0);
|
|
116
|
-
outlinePixelColor.a *= outlineAlphaFactor;
|
|
117
|
-
|
|
118
|
-
if (
|
|
119
|
-
outlineAlphaFactor + fillAlphaFactor < ${Q} ||
|
|
120
|
-
fillPixelColor.a + outlinePixelColor.a < ${S.H.float(P.Q)}
|
|
121
|
-
) {
|
|
122
|
-
discard;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
// perform un-premultiplied over operator (see https://en.wikipedia.org/wiki/Alpha_compositing#Description)
|
|
126
|
-
float compositeAlpha = outlinePixelColor.a + fillPixelColor.a * (1.0 - outlinePixelColor.a);
|
|
127
|
-
vec3 compositeColor = vec3(outlinePixelColor) * outlinePixelColor.a +
|
|
128
|
-
vec3(fillPixelColor) * fillPixelColor.a * (1.0 - outlinePixelColor.a);
|
|
129
|
-
|
|
130
|
-
${(0,S.If)(!Y,S.H`fragColor = vec4(compositeColor, compositeAlpha);`)}
|
|
131
|
-
} else {
|
|
132
|
-
if (fillAlphaFactor < ${Q}) {
|
|
133
|
-
discard;
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
${(0,S.If)(!Y,S.H`fragColor = premultiplyAlpha(fillPixelColor);`)}
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
// visualize SDF:
|
|
140
|
-
// fragColor = vec4(clamp(-pixelDistance/vsize.x*2.0, 0.0, 1.0), clamp(pixelDistance/vsize.x*2.0, 0.0, 1.0), 0.0, 1.0);
|
|
141
|
-
`:S.H`
|
|
142
|
-
vec4 texColor = texture(tex, samplePos, -0.5);
|
|
143
|
-
if (texColor.a < ${Q}) {
|
|
144
|
-
discard;
|
|
145
|
-
}
|
|
146
|
-
${(0,S.If)(!Y,S.H`fragColor = texColor * premultiplyAlpha(vcolor);`)}
|
|
147
|
-
`}
|
|
148
|
-
|
|
149
|
-
${(0,S.If)(q&&!Y,S.H`
|
|
150
|
-
float zSample = texelFetch(depthMap, ivec2(gl_FragCoord.xy), 0).x;
|
|
151
|
-
if (zSample < gl_FragCoord.z) {
|
|
152
|
-
fragColor *= occludedOpacity;
|
|
153
|
-
}
|
|
154
|
-
`)}
|
|
155
|
-
|
|
156
|
-
${(0,S.If)(!Y&&L,S.H`fragColor = mix(fragColor, vec4(1.0, 0.0, 1.0, 1.0), isBorder * 0.5);`)}
|
|
157
|
-
`;switch(r){case 0:t.outputs.add("fragColor","vec4",0),V&&t.outputs.add("fragEmission","vec4",1),1===n&&t.outputs.add("fragAlpha","float",V?2:1),$.main.add(S.H`
|
|
158
|
-
${J}
|
|
159
|
-
${(0,S.If)(2===n,S.H`fragColor.rgb /= fragColor.a;`)}
|
|
160
|
-
${(0,S.If)(V,S.H`fragEmission = vec4(0.0);`)}
|
|
161
|
-
${(0,S.If)(1===n,S.H`fragAlpha = fragColor.a;`)}`);break;case 9:$.main.add(S.H`
|
|
162
|
-
${J}
|
|
163
|
-
outputObjectAndLayerIdColor();`);break;case 8:t.include(f.Q,e),$.main.add(S.H`
|
|
164
|
-
${J}
|
|
165
|
-
outputHighlight(${(0,S.If)(Z,S.H`voccluded == 1.0`,S.H`false`)});`)}return t}function E(e){return e.outlineColor[3]>0&&e.outlineSize>0}function M(e){return e.textureIsSignedDistanceField?(t=e.anchorPosition,r=e.distanceFieldBoundingBox,n=O,(0,i.hZ)(n,t[0]*(r[2]-r[0])+r[0],t[1]*(r[3]-r[1])+r[1])):(0,i.C)(O,e.anchorPosition),O;var t,r,n}const O=(0,n.vt)(),R=32e3,D=S.H.float(R),F=Object.freeze(Object.defineProperty({__proto__:null,build:B,calculateAnchorPosition:M,fullUV:R},Symbol.toStringTag,{value:"Module"}))},16215:(e,t,r)=>{r.d(t,{S:()=>n,Y:()=>i});const i=Symbol("BasemapInstance");function n(e){return null!=e&&"object"==typeof e&&i in e}},18251:(e,t,r)=>{r.d(t,{A:()=>c});var i=r(31635),n=r(69540),s=r(25482),o=r(91429),a=r(51850),l=r(93223);let c=class extends((0,n.OU)(s.o)){constructor(e){super(e),this.type="local",this.origin=(0,a.vt)()}};(0,i.Cg)([(0,l.e)({local:"local"},{readOnly:!0})],c.prototype,"type",void 0),(0,i.Cg)([(0,o.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],c.prototype,"origin",void 0),c=(0,i.Cg)([(0,o.$K)("esri.geometry.support.MeshLocalVertexSpace")],c)},20437:(e,t,r)=>{r.d(t,{A:()=>p});var i,n=r(31635),s=r(66552),o=r(25482),a=r(91429),l=r(56507),c=r(8631),u=r(98453),d=r(36005),h=r(93223);const f=new s.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let p=class extends o.o{static{i=this}constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(e,{description:t}){let r=null;try{r=t?JSON.parse(t):null}catch(e){}return r?.value??null}readValueType(e,{description:t}){let r=null;try{r=t?JSON.parse(t):null}catch(e){}return r?f.fromJSON(r.fieldValueType):null}clone(){return new i({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"alias",void 0),(0,n.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],p.prototype,"defaultValue",void 0),(0,n.Cg)([(0,a.MZ)()],p.prototype,"description",void 0),(0,n.Cg)([(0,d.w)("description")],p.prototype,"readDescription",null),(0,n.Cg)([(0,a.MZ)({types:c.gK,json:{read:{reader:c.rS},write:!0}})],p.prototype,"domain",void 0),(0,n.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"editable",void 0),(0,n.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],p.prototype,"length",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"name",void 0),(0,n.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"nullable",void 0),(0,n.Cg)([(0,h.e)(u.m)],p.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)()],p.prototype,"valueType",void 0),(0,n.Cg)([(0,d.w)("valueType",["description"])],p.prototype,"readValueType",null),(0,n.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],p.prototype,"visible",void 0),p=i=(0,n.Cg)([(0,a.$K)("esri.layers.support.Field")],p)},20498:(e,t,r)=>{r.d(t,{SX:()=>s,pX:()=>n});let i=globalThis.Float16Array;function n(){return i}let s=!!i},27615:(e,t,r)=>{r.d(t,{CK:()=>l,Hq:()=>a,MW:()=>c,TE:()=>u,yJ:()=>d});var i=r(38954),n=r(86738),s=r(95696),o=r(18251);function a(e){return null!=e.origin}function l(e){return a(e.vertexSpace)}function c(e,t){if(!a(e))return null;const[r,i,s]=e.origin;return new n.A({x:r,y:i,z:s,spatialReference:t})}function u(e,t){const{x:r,y:i,z:n,spatialReference:a}=e,l=[r,i,n??0];return"local"===(t?.vertexSpace??function(e){return e.isGeographic||e.isWebMercator?"local":"georeferenced"}(a))?new o.A({origin:l}):new s.A({origin:l})}function d(e,t){return e.type===t.type&&(e.origin===t.origin||null!=e.origin&&null!=t.origin&&(0,i.m)(e.origin,t.origin))}},31756:(e,t,r)=>{r.d(t,{j:()=>s});var i=r(86211),n=r(79258);const s={unknown:1,inches:(0,i.oU)(1,"meters","inches"),feet:(0,i.oU)(1,"meters","feet"),"us-feet":(0,i.oU)(1,"meters","us-feet"),yards:(0,i.oU)(1,"meters","yards"),miles:(0,i.oU)(1,"meters","miles"),"nautical-miles":(0,i.oU)(1,"meters","nautical-miles"),millimeters:(0,i.oU)(1,"meters","millimeters"),centimeters:(0,i.oU)(1,"meters","centimeters"),decimeters:(0,i.oU)(1,"meters","decimeters"),meters:(0,i.oU)(1,"meters","meters"),kilometers:(0,i.oU)(1,"meters","kilometers"),"decimal-degrees":1/(0,i.vl)(1,"meters",n.$O.radius)}},32587:(e,t,r)=>{r.d(t,{A:()=>s});var i=r(62788),n=r(95488);class s{constructor(e){this._observable=new n.I,this._notifyPending=!1,this._batchDepth=0,this._map=new Map(e)}get size(){return(0,i.gc)(this._observable),this._map.size}batch(e){try{this._batchDepth++,e()}finally{this._batchDepth--,this._notifyPending&&0===this._batchDepth&&(this._notifyPending=!1,this._notify())}}clear(){this._map.size>0&&(this._map.clear(),this._notify())}delete(e){const t=this._map.delete(e);return t&&this._notify(),t}entries(){return(0,i.gc)(this._observable),this._map.entries()}forEach(e,t){(0,i.gc)(this._observable),this._map.forEach((r,i)=>e.call(t,r,i,this),t)}get(e){return(0,i.gc)(this._observable),this._map.get(e)}has(e){return(0,i.gc)(this._observable),this._map.has(e)}keys(){return(0,i.gc)(this._observable),this._map.keys()}set(e,t){return this._map.set(e,t),this._notify(),this}transformValues(e,t=this._map.keys()){this.batch(()=>{for(const r of t){if(!this._map.has(r))continue;const t=this._map.get(r),i=e(t,r);i!==t&&this.set(r,i)}})}values(){return(0,i.gc)(this._observable),this._map.values()}[Symbol.iterator](){return(0,i.gc)(this._observable),this._map[Symbol.iterator]()}[Symbol.dispose](){this._observable.destroy()}get[Symbol.toStringTag](){return this._map[Symbol.toStringTag]}_notify(){this._batchDepth>0?this._notifyPending=!0:this._observable.notify()}}},36708:(e,t,r)=>{r.d(t,{C_:()=>h,OH:()=>m,Vh:()=>y,on:()=>d,pc:()=>g,wB:()=>l,z7:()=>c});var i=r(37955),n=r(36563),s=r(97768),o=r(74887),a=r(14012);function l(e,t,r={}){return u(e,t,r,f)}function c(e,t,r={}){return u(e,t,r,p)}function u(e,t,r={},i){let n=null;const o=r.once?(e,r)=>{i(e)&&((0,s.xt)(n),t(e,r))}:(e,r)=>{i(e)&&t(e,r)};if(n=(0,a.Cn)(e,o,r.sync,r.equals),r.initial){const t=e();o(t,t)}return n}function d(e,t,r,o={}){let a=null,c=null,u=null;function d(){a&&c&&(c.remove(),o.onListenerRemove?.(a),a=null,c=null)}function h(e){o.once&&o.once&&(0,s.xt)(u),r(e)}const f=l(e,(e,r)=>{d(),(0,i.wb)(e)&&(a=e,c=(0,i.on)(e,t,h),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return u=(0,n.hA)(()=>{f.remove(),d()}),u}function h(e,t){return function(e,t,r){if((0,o.G4)(r))return Promise.reject((0,o.NK)());const i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,s.xt)(a)}return new Promise((i,s)=>{a=(0,n.vE)([(0,o.u7)(r,()=>{l(),s((0,o.NK)())}),u(e,e=>{l(),i(e)},{sync:!1,once:!0},t??f)])})}(e,p,t)}function f(e){return!0}function p(e){return!!e}r(80559);const m={sync:!0},y={initial:!0},g={sync:!0,initial:!0}},39357:(e,t,r)=>{r.d(t,{H:()=>a});var i,n=r(31635),s=r(25482),o=r(91429);let a=i=class extends s.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new i({name:this.name,code:this.code})}};(0,n.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,n.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=i=(0,n.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},40268:(e,t,r)=>{r.d(t,{Q:()=>d,R:()=>u});var i=r(35640),n=r(52587),s=r(20693),o=r(14314),a=r(33094),l=r(20304),c=r(31821);const u=.5;function d(e,t){e.include(n.Y6),e.attributes.add("position","vec3"),e.attributes.add("normal","vec3"),e.attributes.add("centerOffsetAndDistance","vec4");const r=e.vertex;(0,s.NB)(r,t),(0,s.yu)(r,t),r.uniforms.add(new o.I("viewport",e=>e.camera.fullViewport),new l.m("polygonOffset",e=>e.shaderPolygonOffset),new a.U("aboveGround",e=>e.camera.aboveGround?1:-1)),t.hasVerticalOffset&&(0,i.VQ)(r),r.code.add(c.H`struct ProjectHUDAux {
|
|
166
|
-
vec3 posModel;
|
|
167
|
-
vec3 posView;
|
|
168
|
-
vec3 vnormal;
|
|
169
|
-
float distanceToCamera;
|
|
170
|
-
float absCosAngle;
|
|
171
|
-
};`),r.code.add(c.H`
|
|
172
|
-
float applyHUDViewDependentPolygonOffset(float pointGroundDistance, float absCosAngle, inout vec3 posView) {
|
|
173
|
-
float pointGroundSign = ${t.terrainDepthTest?c.H.float(0):c.H`sign(pointGroundDistance)`};
|
|
174
|
-
if (pointGroundSign == 0.0) {
|
|
175
|
-
pointGroundSign = aboveGround;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
// aboveGround is -1 if camera is below ground, 1 if above ground
|
|
179
|
-
// groundRelative is 1 if both camera and symbol are on the same side of the ground, -1 otherwise
|
|
180
|
-
float groundRelative = aboveGround * pointGroundSign;
|
|
181
|
-
|
|
182
|
-
// view angle dependent part of polygon offset emulation: we take the absolute value because the sign that is
|
|
183
|
-
// dropped is instead introduced using the ground-relative position of the symbol and the camera
|
|
184
|
-
if (polygonOffset > .0) {
|
|
185
|
-
float cosAlpha = clamp(absCosAngle, 0.01, 1.0);
|
|
186
|
-
float tanAlpha = sqrt(1.0 - cosAlpha * cosAlpha) / cosAlpha;
|
|
187
|
-
float factor = (1.0 - tanAlpha / viewport[2]);
|
|
188
|
-
|
|
189
|
-
// same side of the terrain
|
|
190
|
-
if (groundRelative > 0.0) {
|
|
191
|
-
posView *= factor;
|
|
192
|
-
}
|
|
193
|
-
// opposite sides of the terrain
|
|
194
|
-
else {
|
|
195
|
-
posView /= factor;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
return groundRelative;
|
|
200
|
-
}
|
|
201
|
-
`),t.draped&&!t.hasVerticalOffset||(0,s.S7)(r),t.draped||(r.uniforms.add(new a.U("perDistancePixelRatio",e=>Math.tan(e.camera.fovY/2)/(e.camera.fullViewport[2]/2))),r.code.add(c.H`
|
|
202
|
-
void applyHUDVerticalGroundOffset(vec3 normalModel, inout vec3 posModel, inout vec3 posView) {
|
|
203
|
-
float distanceToCamera = length(posView);
|
|
204
|
-
|
|
205
|
-
// Compute offset in world units for a half pixel shift
|
|
206
|
-
float pixelOffset = distanceToCamera * perDistancePixelRatio * ${c.H.float(u)};
|
|
207
|
-
|
|
208
|
-
// Apply offset along normal in the direction away from the ground surface
|
|
209
|
-
vec3 modelOffset = normalModel * aboveGround * pixelOffset;
|
|
210
|
-
|
|
211
|
-
// Apply the same offset also on the view space position
|
|
212
|
-
vec3 viewOffset = (viewNormal * vec4(modelOffset, 1.0)).xyz;
|
|
213
|
-
|
|
214
|
-
posModel += modelOffset;
|
|
215
|
-
posView += viewOffset;
|
|
216
|
-
}
|
|
217
|
-
`)),t.screenCenterOffsetUnitsEnabled&&(0,s.Nz)(r),t.hasScreenSizePerspective&&(0,n.OH)(r),r.code.add(c.H`
|
|
218
|
-
vec4 projectPositionHUD(out ProjectHUDAux aux) {
|
|
219
|
-
vec3 centerOffset = centerOffsetAndDistance.xyz;
|
|
220
|
-
float pointGroundDistance = centerOffsetAndDistance.w;
|
|
221
|
-
|
|
222
|
-
aux.posModel = position;
|
|
223
|
-
aux.posView = (view * vec4(aux.posModel, 1.0)).xyz;
|
|
224
|
-
aux.vnormal = normal;
|
|
225
|
-
${t.draped?"":"applyHUDVerticalGroundOffset(aux.vnormal, aux.posModel, aux.posView);"}
|
|
226
|
-
|
|
227
|
-
// Screen sized offset in world space, used for example for line callouts
|
|
228
|
-
// Note: keep this implementation in sync with the CPU implementation, see
|
|
229
|
-
// - MaterialUtil.verticalOffsetAtDistance
|
|
230
|
-
// - HUDMaterial.applyVerticalOffsetTransformation
|
|
231
|
-
|
|
232
|
-
aux.distanceToCamera = length(aux.posView);
|
|
233
|
-
|
|
234
|
-
vec3 viewDirObjSpace = normalize(cameraPosition - aux.posModel);
|
|
235
|
-
float cosAngle = dot(aux.vnormal, viewDirObjSpace);
|
|
236
|
-
|
|
237
|
-
aux.absCosAngle = abs(cosAngle);
|
|
238
|
-
|
|
239
|
-
${t.hasScreenSizePerspective&&(t.hasVerticalOffset||t.screenCenterOffsetUnitsEnabled)?"vec3 perspectiveFactor = screenSizePerspectiveScaleFactor(aux.absCosAngle, aux.distanceToCamera, screenSizePerspectiveAlignment);":""}
|
|
240
|
-
|
|
241
|
-
${t.hasVerticalOffset?t.hasScreenSizePerspective?"float verticalOffsetScreenHeight = applyScreenSizePerspectiveScaleFactorFloat(verticalOffset.x, perspectiveFactor);":"float verticalOffsetScreenHeight = verticalOffset.x;":""}
|
|
242
|
-
|
|
243
|
-
${t.hasVerticalOffset?c.H`
|
|
244
|
-
float worldOffset = clamp(verticalOffsetScreenHeight * verticalOffset.y * aux.distanceToCamera, verticalOffset.z, verticalOffset.w);
|
|
245
|
-
vec3 modelOffset = aux.vnormal * worldOffset;
|
|
246
|
-
aux.posModel += modelOffset;
|
|
247
|
-
vec3 viewOffset = (viewNormal * vec4(modelOffset, 1.0)).xyz;
|
|
248
|
-
aux.posView += viewOffset;
|
|
249
|
-
// Since we elevate the object, we need to take that into account
|
|
250
|
-
// in the distance to ground
|
|
251
|
-
pointGroundDistance += worldOffset;`:""}
|
|
252
|
-
|
|
253
|
-
float groundRelative = applyHUDViewDependentPolygonOffset(pointGroundDistance, aux.absCosAngle, aux.posView);
|
|
254
|
-
|
|
255
|
-
${t.screenCenterOffsetUnitsEnabled?"":c.H`
|
|
256
|
-
// Apply x/y in view space, but z in screen space (i.e. along posView direction)
|
|
257
|
-
aux.posView += vec3(centerOffset.x, centerOffset.y, 0.0);
|
|
258
|
-
|
|
259
|
-
// Same material all have same z != 0.0 condition so should not lead to
|
|
260
|
-
// branch fragmentation and will save a normalization if it's not needed
|
|
261
|
-
if (centerOffset.z != 0.0) {
|
|
262
|
-
aux.posView -= normalize(aux.posView) * centerOffset.z;
|
|
263
|
-
}
|
|
264
|
-
`}
|
|
265
|
-
|
|
266
|
-
vec4 posProj = proj * vec4(aux.posView, 1.0);
|
|
267
|
-
|
|
268
|
-
${t.screenCenterOffsetUnitsEnabled?t.hasScreenSizePerspective?"float centerOffsetY = applyScreenSizePerspectiveScaleFactorFloat(centerOffset.y, perspectiveFactor);":"float centerOffsetY = centerOffset.y;":""}
|
|
269
|
-
|
|
270
|
-
${t.screenCenterOffsetUnitsEnabled?"posProj.xy += vec2(centerOffset.x, centerOffsetY) * pixelRatio * 2.0 / viewport.zw * posProj.w;":""}
|
|
271
|
-
|
|
272
|
-
// constant part of polygon offset emulation
|
|
273
|
-
posProj.z -= groundRelative * polygonOffset * posProj.w;
|
|
274
|
-
return posProj;
|
|
275
|
-
}
|
|
276
|
-
`)}},41628:(e,t,r)=>{r.d(t,{A:()=>l});var i,n=r(31635),s=r(91429),o=r(76357),a=r(93223);let l=class extends o.A{static{i=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new i({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,n.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,r){t[r]=[this.minValue||0,e]},isRequired:!0}}})],l.prototype,"maxValue",void 0),(0,n.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,r){t[r]=[e,this.maxValue||0]},isRequired:!0}}})],l.prototype,"minValue",void 0),(0,n.Cg)([(0,a.e)({range:"range"})],l.prototype,"type",void 0),l=i=(0,n.Cg)([(0,s.$K)("esri.layers.support.RangeDomain")],l)},47522:(e,t,r)=>{r.d(t,{K:()=>s});var i=r(32976),n=r(31821);function s(e){e.uniforms.add(new i.o("alignPixelEnabled",e=>e.alignPixelEnabled)),e.code.add(n.H`vec4 alignToPixelCenter(vec4 clipCoord, vec2 widthHeight) {
|
|
277
|
-
if (!alignPixelEnabled)
|
|
278
|
-
return clipCoord;
|
|
279
|
-
vec2 xy = vec2(0.500123) + 0.5 * clipCoord.xy / clipCoord.w;
|
|
280
|
-
vec2 pixelSz = vec2(1.0) / widthHeight;
|
|
281
|
-
vec2 ij = (floor(xy * widthHeight) + vec2(0.5)) * pixelSz;
|
|
282
|
-
vec2 result = (ij * 2.0 - vec2(1.0)) * clipCoord.w;
|
|
283
|
-
return vec4(result, clipCoord.zw);
|
|
284
|
-
}`),e.code.add(n.H`vec4 alignToPixelOrigin(vec4 clipCoord, vec2 widthHeight) {
|
|
285
|
-
if (!alignPixelEnabled)
|
|
286
|
-
return clipCoord;
|
|
287
|
-
vec2 xy = vec2(0.5) + 0.5 * clipCoord.xy / clipCoord.w;
|
|
288
|
-
vec2 pixelSz = vec2(1.0) / widthHeight;
|
|
289
|
-
vec2 ij = floor((xy + 0.5 * pixelSz) * widthHeight) * pixelSz;
|
|
290
|
-
vec2 result = (ij * 2.0 - vec2(1.0)) * clipCoord.w;
|
|
291
|
-
return vec4(result, clipCoord.zw);
|
|
292
|
-
}`)}},50498:(e,t,r)=>{r.d(t,{Ye:()=>d,gy:()=>u,yR:()=>h});var i=r(66552),n=r(5443),s=r(91075),o=r(48526),a=r(86738),l=r(39829),c=r(82799);const u=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),d=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),h={base:s.A,key:"type",typeMap:{extent:n.A,multipoint:o.A,point:a.A,polyline:c.A,polygon:l.A}}},50832:(e,t,r)=>{r.d(t,{y:()=>l});var i=r(47522),n=r(14314),s=r(33094),o=r(31821),a=r(12791);function l(e){e.vertex.uniforms.add(new s.U("renderTransparentlyOccludedHUD",e=>0===e.hudRenderStyle?1:1===e.hudRenderStyle?0:.75),new n.I("viewport",e=>e.camera.fullViewport),new a.x("hudVisibilityTexture",e=>e.hudVisibility?.getTexture())),e.vertex.include(i.K),e.vertex.code.add(o.H`bool testHUDVisibility(vec4 posProj) {
|
|
293
|
-
vec4 posProjCenter = alignToPixelCenter(posProj, viewport.zw);
|
|
294
|
-
vec4 occlusionPixel = texture(hudVisibilityTexture, .5 + .5 * posProjCenter.xy / posProjCenter.w);
|
|
295
|
-
if (renderTransparentlyOccludedHUD > 0.5) {
|
|
296
|
-
return occlusionPixel.r * occlusionPixel.g > 0.0 && occlusionPixel.g * renderTransparentlyOccludedHUD < 1.0;
|
|
297
|
-
}
|
|
298
|
-
return occlusionPixel.r * occlusionPixel.g > 0.0 && occlusionPixel.g == 1.0;
|
|
299
|
-
}`)}},52106:(e,t,r)=>{r.d(t,{A:()=>w});var i,n=r(31635),s=r(37838),o=r(69540),a=r(51447),l=r(25482),c=r(53966),u=r(36708),d=r(24326),h=r(91429),f=r(12195),p=r(65864),m=r(50498),y=r(55156),g=r(60950),b=r(54339),_=r(33910);function v(e){if(null==e)return null;const t={};for(const r in e){const i=e[r];i&&(t[r]=i.toJSON())}return 0!==Object.keys(t).length?t:null}let w=class extends((0,o.OU)(l.o)){static{i=this}constructor(e){super(e),this.isAggregate=!1,this.layer=null,this.origin=null,this.sourceLayer=null,this._version=0,Object.defineProperty(this,"uid",{value:(0,d.c)(),configurable:!0}),Object.defineProperty(this,"_lastMeshTransform",{value:{},configurable:!0,writable:!0,enumerable:!1}),arguments.length>1&&(0,a.eF)(c.A.getLogger(this),"Graphic",{version:"4.30"})}initialize(){this._watchMeshGeometryChanges()}set aggregateGeometries(e){const t=this._get("aggregateGeometries");JSON.stringify(t)!==JSON.stringify(e)&&this._set("aggregateGeometries",e)}set attributes(e){const t=this._get("attributes");t!==e&&(this._set("attributes",e),this._notifyLayer("attributes",t,e))}set geometry(e){const t=this._get("geometry");t!==e&&(this._set("geometry",e),"mesh"!==e?.type&&this._notifyLayer("geometry",t,e))}set popupTemplate(e){const t=this._get("popupTemplate");t!==e&&(this._set("popupTemplate",e),this._notifyLayer("popupTemplate",t,e))}set symbol(e){const t=this._get("symbol");t!==e&&(this._set("symbol",e),this._notifyLayer("symbol",t,e))}get version(){return this._version}set visible(e){const t=this._get("visible");t!==e&&(this._set("visible",e),this._notifyLayer("visible",t,e))}cloneShallow(){return new i({aggregateGeometries:this.aggregateGeometries,attributes:this.attributes,geometry:this.geometry,isAggregate:this.isAggregate,layer:this.layer,popupTemplate:this.popupTemplate,sourceLayer:this.sourceLayer,symbol:this.symbol,visible:this.visible,origin:this.origin})}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;const t=(0,g.E_)(this.origin);if(t)return t.popupTemplate??(e?t.defaultPopupTemplate:null)??null;const r=this.origin&&"layer"in this.origin?this.origin.layer:null;for(const t of[r,this.sourceLayer,this.layer])if(t&&"object"==typeof t){if("popupTemplate"in t&&t.popupTemplate)return t.popupTemplate;if(e&&"defaultPopupTemplate"in t&&null!=t.defaultPopupTemplate)return t.defaultPopupTemplate}return null}getAttribute(e){return this.attributes?.[e]}setAttribute(e,t){if(this.attributes){const r=this.getAttribute(e);this.attributes[e]=t,this._notifyLayer("attributes",r,t,e)}else this.attributes={[e]:t}}getObjectId(){const e=(0,y.I)(this.origin);if(e)return(0,b.r)(this,e);const t=this.sourceLayer??this.layer;return t?(0,b.r)(this,t):null}getGlobalId(){const e=(0,y.I)(this.origin);if(e?.globalIdField)return this.getAttribute(e.globalIdField);const t=this.sourceLayer??this.layer;return t&&"globalIdField"in t&&t.globalIdField?this.getAttribute(t.globalIdField):null}toJSON(){return{aggregateGeometries:v(this.aggregateGeometries),geometry:null!=this.geometry?this.geometry.toJSON():null,symbol:null!=this.symbol?this.symbol.toJSON():null,attributes:(0,f.W)(this.attributes)?this.attributes.toJSON():{...this.attributes},popupTemplate:this.popupTemplate?.toJSON()??null}}notifyMeshTransformChanged(e={}){const{geometry:t}=this;if("mesh"===t?.type){const r={origin:t.origin,transform:t.transform};this._notifyLayer("origin-transform",r,r,e.action)}}_notifyLayer(e,t,r,i){if(this._version++,!this.layer||!("graphicChanged"in this.layer))return;const n={graphic:this,property:e,oldValue:t,newValue:r};"origin-transform"===e&&(n.action=i),"attributes"===e&&(n.attributeName=i),this.layer.graphicChanged(n)}_watchMeshGeometryChanges(){this.addHandles([(0,u.z7)(()=>"mesh"===this.geometry?.type&&this.geometry.vertexSpace.origin?{localMatrix:this.geometry.transform?.localMatrix,origin:this.geometry.vertexSpace.origin}:void 0,({localMatrix:e,origin:t})=>{this._lastMeshTransform.localMatrix===e&&this._lastMeshTransform.origin===t||(this._lastMeshTransform.localMatrix=e,this._lastMeshTransform.origin=t,this.notifyMeshTransformChanged())}),(0,u.z7)(()=>"mesh"===this.geometry?.type?{vertexAttributes:this.geometry.vertexAttributes}:void 0,()=>{const e=this.geometry;"mesh"===e?.type&&e.vertexSpace.origin?(this._lastMeshTransform.localMatrix=e.transform?.localMatrix,this._lastMeshTransform.origin=e.vertexSpace.origin):(this._lastMeshTransform.localMatrix=void 0,this._lastMeshTransform.origin=void 0),this._notifyLayer("geometry",this.geometry,this.geometry)},{equals:(e,t)=>e===t,sync:!0})])}};(0,n.Cg)([(0,h.MZ)({value:null,json:{read:function(e){if(!e)return null;const t={};for(const r in e){const i=(0,p.rS)(e[r]);i&&(t[r]=i)}return 0!==Object.keys(t).length?t:null}}})],w.prototype,"aggregateGeometries",null),(0,n.Cg)([(0,h.MZ)({value:null})],w.prototype,"attributes",null),(0,n.Cg)([(0,h.MZ)({value:null,types:m.yR,json:{read:p.rS}})],w.prototype,"geometry",null),(0,n.Cg)([(0,h.MZ)({type:Boolean})],w.prototype,"isAggregate",void 0),(0,n.Cg)([(0,h.MZ)({clonable:!1})],w.prototype,"layer",void 0),(0,n.Cg)([(0,h.MZ)({clonable:"reference"})],w.prototype,"origin",void 0),(0,n.Cg)([(0,h.MZ)({type:s.A,value:null})],w.prototype,"popupTemplate",null),(0,n.Cg)([(0,h.MZ)({clonable:"reference"})],w.prototype,"sourceLayer",void 0),(0,n.Cg)([(0,h.MZ)({value:null,types:_.Es})],w.prototype,"symbol",null),(0,n.Cg)([(0,h.MZ)({clonable:!1,json:{read:!1,write:!1}})],w.prototype,"_version",void 0),(0,n.Cg)([(0,h.MZ)({type:Boolean,value:!0})],w.prototype,"visible",null),w=i=(0,n.Cg)([(0,h.$K)("esri.Graphic")],w)},53177:(e,t,r)=>{r.d(t,{A:()=>u});var i,n=r(31635),s=r(4718),o=r(91429),a=r(39357),l=r(76357),c=r(93223);let u=class extends l.A{static{i=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const r=String(e);this.codedValues.some(e=>(String(e.code)===r&&(t=e.name),!!t))}return t}clone(){return new i({codedValues:(0,s.o8)(this.codedValues),name:this.name})}};(0,n.Cg)([(0,o.MZ)({type:[a.H],json:{write:{isRequired:!0}}})],u.prototype,"codedValues",void 0),(0,n.Cg)([(0,c.e)({codedValue:"coded-value"})],u.prototype,"type",void 0),u=i=(0,n.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],u)},55156:(e,t,r)=>{r.d(t,{I:()=>n,e:()=>i});const i=Symbol("idFieldsProviderSymbol");function n(e){return(t=e)&&i in t?e[i]:void 0;var t}},55674:(e,t,r)=>{r.d(t,{Ad:()=>f,Gj:()=>y,QY:()=>h,lL:()=>g,xR:()=>p});var i=r(66131),n=r(49186),s=(r(44208),r(44729)),o=r(15032),a=r(65864),l=r(95466),c=r(43668),u=r(98623);const d=["geometry","scale","timeProperties"];function h(e,t){if(null!=t)for(const r of d)t.hasArcadeDependency(r)&&e.add(r);return e}function f(e,t){return m.create(e,t,null,["$feature","$view"])}function p(e,t,r){return m.create(e,t,r,["$feature","$view","$config"])}class m{static async create(e,t,r,i){const{arcade:s,Dictionary:o}=await(0,c.l)();let a;try{a=s.parseScript(e)}catch(t){throw new n.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 u={vars:i.reduce((e,t)=>({...e,[t]:null}),{}),spatialReference:t,useAsync:!1},d=s.compileScript(a,u);let h=null;null!=r&&(h=new o(r),h.immutable=!0);const f=new o;return f.immutable=!1,f.setField("scale",0),new m(e,s,a,d,t,f,h,o)}constructor(e,t,r,i,n,s,o,a){this.script=e,this._arcade=t,this._syntaxTree=r,this._compiled=i,this._spatialReference=n,this._viewDict=s,this._configDict=o,this._dictionaryCtor=a,this._dependencies=new Map,this._featureReader=new y,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:n,currentEnd:s}=t.$view.timeProperties;e=new this._dictionaryCtor({currentStart:null!=n?null!=r?i.lY.epochToArcadeDate(n,r):i.lY.unknownEpochToArcadeDate(n):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 y{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}_hasGeometry(){return null!=this._boundTarget.geometry}isUnknownDateTimeField(e){return this._boundSchema.fieldsIndex.getTimeZone(e)===u.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 o.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??u.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)}isEmpty(){return this._boundSchema.fields.length<=0&&!this._hasGeometry()}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}},58501:(e,t,r)=>{r.d(t,{q:()=>n});var i=r(62815);function n(e,t,r){if(!r?.features||!r.hasZ)return;const n=(0,i.N)(r.geometryType,t,e.outSpatialReference);if(n)for(const e of r.features)n(e.geometry)}},63578:(e,t,r)=>{r.d(t,{I:()=>o});var i=r(47522),n=r(96598),s=r(31821);function o(e,t){const{vertex:r,fragment:o}=e;e.include(n.Z,t),r.include(i.K),r.main.add(s.H`vec4 posProjCenter;
|
|
300
|
-
if (dot(position, position) > 0.0) {
|
|
301
|
-
ProjectHUDAux projectAux;
|
|
302
|
-
vec4 posProj = projectPositionHUD(projectAux);
|
|
303
|
-
posProjCenter = alignToPixelCenter(posProj, viewport.zw);
|
|
304
|
-
forwardViewPosDepth(projectAux.posView);
|
|
305
|
-
vec3 vpos = projectAux.posModel;
|
|
306
|
-
if (rejectBySlice(vpos)) {
|
|
307
|
-
posProjCenter = vec4(1e038, 1e038, 1e038, 1.0);
|
|
308
|
-
}
|
|
309
|
-
} else {
|
|
310
|
-
posProjCenter = vec4(1e038, 1e038, 1e038, 1.0);
|
|
311
|
-
}
|
|
312
|
-
gl_Position = posProjCenter;
|
|
313
|
-
gl_PointSize = 1.0;`),o.main.add(s.H`fragColor = vec4(1);
|
|
314
|
-
if(discardByTerrainDepth()) {
|
|
315
|
-
fragColor.g = 0.5;
|
|
316
|
-
}`)}},64183:(e,t,r)=>{r.r(t),r.d(t,{default:()=>Bi});var i=r(31635),n=r(65529),s=r(74887),o=r(36708),a=r(91429),l=r(5443),c=r(91218),u=r(16930),d=r(56390),h=r(61956),f=r(65494);class p{constructor(e,t,r){this.renderCommandContext=e,this.renderCommandBuffer=t,this.pipelineStateCommands=r}append(e){this.appendRenderCommands(e.renderCommandBuffer),this.appendPipelineStateCommands(e.pipelineStateCommands)}appendRenderCommands(e){this.renderCommandBuffer.commands.push(...e.commands),this.renderCommandBuffer.transferList.push(...e.transferList)}appendPipelineStateCommand(e){this.pipelineStateCommands.push(e)}appendPipelineStateCommands(e){for(const t of e)this.appendPipelineStateCommand(t)}async execute(){for(const e of this.pipelineStateCommands)e();await this.renderCommandContext.dispatchRenderCommands(this.renderCommandBuffer)}static create(e,t=[]){return new p(e,e.createRenderCommandBuffer(),t)}}var m=r(68197),y=r(18574),g=r(87403),b=r(28975);function _(){return new y.A({material:new b.N({color:new m.A("red")})})}var v=r(9093),w=r(51850),x=r(91829),C=r(6847),S=r(86211),A=r(58083),T=r(87317),I=r(70328),P=r(19419),B=(r(12359),r(95108),r(27615),r(52106),r(44208));r(4718),r(34275),r(65864);var E=r(37585),M=r(48163),O=r(34727),R=r(26857);new Map,(()=>{let e="";for(let t=32;t<127;t++)e+=String.fromCharCode(t)})();const D=[];{const e=16;for(let t=0;t<360;t+=360/e)D.push([Math.cos(Math.PI*t/180),Math.sin(Math.PI*t/180)])}Object.freeze({left:0,center:.5,right:1});const F=Object.freeze({"bottom-left":(0,M.fA)(0,0),bottom:(0,M.fA)(.5,0),"bottom-right":(0,M.fA)(1,0),left:(0,M.fA)(0,.5),center:(0,M.fA)(.5,.5),right:(0,M.fA)(1,.5),"top-left":(0,M.fA)(0,1),top:(0,M.fA)(.5,1),"top-right":(0,M.fA)(1,1)});var j=r(9762),V=r(27993);function z(e){const{featureCount:t}=e;if(0===t)return new Uint32Array;const r=new Uint32Array(t);return e.getObjectIdsArray(r),r}function L(e){const{featureCount:t}=e;if(0===t)return new Float64Array;const r=new Float64Array(3*t);return e.getCoordinatesArray(r),r}function U(e,t){const r=t.viewSpatialReference,i=t.renderSpatialReference,{extent:n}=e,s=(0,P.gX)(n),o=(0,w.vt)();return(0,V.F)([s[0],s[1],0],r,o,i),o}var N=r(97146);function H(e){const t=new Map;for(const[r,i]of e)t.set(r,{...i,indices:(0,N.Dg)(i.indices)});return t}r(46859);var q=r(63907);const G=(0,x.CN)(.25,.25,.75,.75);function k(e){return"cross"===e||"x"===e}function $(e,t=128,r=.5*t,i=0){switch(e){case"circle":default:return function(e,t){const r=e/2-.5;return Q(e,X(r,r,t/2))}(t,r);case"square":return function(e,t){return Y(e,t,!1)}(t,r);case"cross":return function(e,t,r=0){return Z(e,t,!1,r)}(t,r,i);case"x":return function(e,t,r=0){return Z(e,t,!0,r)}(t,r,i);case"kite":return function(e,t){return Y(e,t,!0)}(t,r);case"triangle":return function(e,t){return Q(e,W(e/2,t,t/2))}(t,r);case"arrow":return function(e,t){const r=t,i=t/2,n=e/2,s=.8*r,o=X(n,(e-t)/2-s,Math.sqrt(s*s+i*i)),a=W(n,r,i);return Q(e,(e,t)=>Math.max(a(e,t),-o(e,t)))}(t,r)}}function Y(e,t,r){return r&&(t/=Math.SQRT2),Q(e,(i,n)=>{let s=i-.5*e+.25,o=.5*e-n-.75;if(r){const e=(s+o)/Math.SQRT2;o=(o-s)/Math.SQRT2,s=e}return Math.max(Math.abs(s),Math.abs(o))-.5*t})}function Z(e,t,r,i=0){t-=i,r&&(t*=Math.SQRT2);const n=.5*t;return Q(e,(t,s)=>{let o,a=t-.5*e,l=.5*e-s-1;if(r){const e=(a+l)/Math.SQRT2;l=(l-a)/Math.SQRT2,a=e}return a=Math.abs(a),l=Math.abs(l),o=a>l?a>n?Math.sqrt((a-n)*(a-n)+l*l):l:l>n?Math.sqrt(a*a+(l-n)*(l-n)):a,o-=i/2,o})}function X(e,t,r){return(i,n)=>{const s=i-e,o=n-t;return Math.sqrt(s*s+o*o)-r}}function W(e,t,r){const i=Math.sqrt(t*t+r*r);return(n,s)=>{const o=Math.abs(n-e)-r,a=s-e+t/2+.75,l=(t*o+r*a)/i,c=-a;return Math.max(l,c)}}function Q(e,t){const r=new Float32Array(e*e);for(let i=0;i<e;i++)for(let n=0;n<e;n++)r[n+e*i]=t(n,i)/e;return r}var J=r(46610);class K{constructor(e,t){this._context=null,this._symbolLayer=null,this._draped=!1,this._loaded=!1,this._loadingPromise=null,this._iconTextureID=null,this._materialId=null,this._context=t,this._symbolLayer=e}get loaded(){return this._loaded}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}_destroy(){this._iconTextureID=null}async _load(){const e=this._context.renderCommandContext,t=await e.createTexture(()=>function(e,t=128,r=.5*t,i=0){return{data:$(e,t,r,i),parameters:{mipmap:!1,wrap:{s:33071,t:33071},width:t,height:t,noUnpackFlip:!0,dataType:q.ld.FLOAT,pixelFormat:6403,internalFormat:q.H0.R16F,reloadable:!0}}}("circle"));this._iconTextureID=t;const r={anchorPosition:F.center,occlusionTest:!0,hasSlicePlane:!1,color:this._getFillColor(),outlineColor:this._getOutlineColor(),outlineSize:1,distanceFieldBoundingBox:G,textureId:t,textureIsSignedDistanceField:!0,sampleSignedDistanceFieldTexelCenter:k("circle")},i=new Uint8Array(8),n=255;i[0]=0,i[1]=0,i[2]=0,i[3]=n,i[4]=n,i[5]=0,i[6]=n,i[7]=n,this._materialId=await e.createMaterial({type:"hud",parameters:r}),await e.createDirectRenderer(this._materialId),await e.setBaseInstance(this._materialId,{data:i.buffer,elementCount:4}),this._loaded=!0}async createAddCommand(e){const{_materialId:t,_context:r}=this,{renderCommandContext:i}=r;if(null==t)throw new Error("expected material not to be null");const n=await this._createGeometry(e);if(null==n)return r.createPipelineCommand();const s=U(e,r);return r.createPipelineCommand(i.addDirectRendererGeometry(e.id,n,s,!0))}async _createGeometry(e){const{_materialId:t,_context:r}=this,{mainThreadDelegate:i}=r,{featureCount:n}=e;if(0===n||null==t)return null;const s=z(e),o=L(e),a=function(e,t){const r=e.length/3,i=t.viewSpatialReference,n=t.renderSpatialReference,s=new Float64Array(3*r);if(!(0,j.projectBuffer)(e,i,0,s,n,0,r))throw new Error("Failed to project coordinates");return s}(await i.applyElevationAlignmentTo(o),r),l=new Float64Array([0,0,1]),c=new Float64Array([255,255,255,255]),u=new Float64Array([24,24]),d=new Float64Array([0,0,0,1]),h=new Float64Array([0]),f=new Uint32Array(n);for(let e=0;e<n;++e)f[e]=e;const p=new Uint32Array(n);for(let e=0;e<n;++e)p[e]=0;const m=[["position",new J.n(a,f,3,!0)],["normal",new J.n(l,p,3,!0)],["color",new J.n(c,p,4,!0)],["rotation",new J.n(h,p,1,!0)],["size",new J.n(u,p,2,!0)],["centerOffsetAndDistance",new J.n(d,p,4,!0)]],y=new Uint8Array(n);return e.getVisibilityArray(y),{attributes:H(m),olidColor:void 0,transformation:(0,v.vt)(),materialId:t,objectIds:s,visibilities:y}}async createRemoveCommand(e){const{_materialId:t,_context:r}=this,i=r.renderCommandContext;return null==t?r.createPipelineCommand():r.createPipelineCommand(i.removeDirectRendererGeometryBuffer(t,e))}async createUpdateVisibilityCommand(e){const{_materialId:t,_context:r}=this,i=r.renderCommandContext;if(null==t)return r.createPipelineCommand();const n=new Uint8Array(e.featureCount);return e.getVisibilityArray(n),r.createPipelineCommand(i.updateVisibility(t,e.id,n))}async createUpdateLayerViewOpacityCommand(e){const{_context:t,_materialId:r}=this,i=t.renderCommandContext;return null==r?t.createPipelineCommand():t.createPipelineCommand(i.updateMaterial({type:"hud",materialId:r,parameters:{color:this._getFillColor(),outlineColor:this._getOutlineColor()}}))}async createUpdateElevationCommand(e){const{_materialId:t,_context:r}=this,{renderCommandContext:i}=r,{featureCount:n,id:s}=e;if(null==t||0===n)return r.createPipelineCommand();const o=await this._createGeometry(e);if(null==o)return r.createPipelineCommand();const a=U(e,r);return r.createPipelineCommand(i.updateDirectRendererGeometry(s,o,a,!0))}async createDestroyCommand(){const{_iconTextureID:e,_context:t}=this,r=t.renderCommandContext;let i;return i=null!=e?await r.releaseTexture(e):p.create(r),i.appendPipelineStateCommand(()=>this._destroy()),i}_getOutlineColor(){const e=this._getLayerOpacity(),t=this._symbolLayer,r=t?.outline?.color;if(null!=r){const t=m.A.toUnitRGB(r),i=r.a*e;return[t[0],t[1],t[2],i]}return[0,0,0,0]}_getFillColor(){if(function(e){return null!=e&&("cross"===e||"x"===e)}(this._getPrimitive()))return te;const e=null==this._getPrimitive(),t=this._symbolLayer?.material?.color;return this._getCombinedOpacityAndColor(t,{hasIntrinsicColor:e})}_getLayerOpacity(){return this._context.layerViewInfo.fullOpacity}_getCombinedOpacity(e,t=ee){const r=this._draped?1:this._getLayerOpacity();return e?r*e.a:t.hasIntrinsicColor?r:0}_getCombinedOpacityAndColor(e,t=ee){const r=this._getCombinedOpacity(e,t);return function(e,t,r=null){const i=(0,x.o8)(x.Un);return null!=e&&(i[0]=e[0],i[1]=e[1],i[2]=e[2],e.length>3&&(i[3]=e[3])),null!=t&&(i[3]=t),r&&(0,T.s)(i,i,r),i}(null!=e?m.A.toUnitRGB(e):w.Un,r)}_getPrimitive(){return e=this._symbolLayer,e.resource?.href?null:e.resource?.primitive??C.r;var e}}const ee={hasIntrinsicColor:!1},te=x.uY;class re{constructor(e,t){this._loaded=!1,this._loadingPromise=null,this._context=null,this._symbol=null,this._symbolLayerRenderers=[],this._context=t,this._symbol=e}_destroy(){}get loaded(){return this._loaded}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const{_context:e,_symbol:t,_symbolLayerRenderers:r}=this,i=[];for(const n of t.symbolLayers){const t=e.symbolRendererFactory.createSymbolRendererFromSymbolLayer(n);null!=t&&(i.push(t.load()),r.push(t))}await Promise.all(i),this._loaded=!0}async createDestroyCommand(){const{_context:e,_symbolLayerRenderers:t}=this,r=[];for(const e of t)r.push(e.createDestroyCommand());const i=e.joinPipelineCommands(await Promise.all(r));return i.appendPipelineStateCommand(()=>this._destroy()),i}async createAddCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,i=[];for(const t of r)i.push(t.createAddCommand(e));return t.joinPipelineCommands(await Promise.all(i))}async createRemoveCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,i=[];for(const t of r)i.push(t.createRemoveCommand(e));return t.joinPipelineCommands(await Promise.all(i))}async createUpdateVisibilityCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,i=[];for(const t of r)i.push(t.createUpdateVisibilityCommand(e));return t.joinPipelineCommands(await Promise.all(i))}async createUpdateLayerViewOpacityCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,i=[];for(const t of r)i.push(t.createUpdateLayerViewOpacityCommand(e));return t.joinPipelineCommands(await Promise.all(i))}async createUpdateElevationCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,i=[];for(const t of r)i.push(t.createUpdateElevationCommand(e));return t.joinPipelineCommands(await Promise.all(i))}}class ie{constructor(e,t){this._symbol=null,this._featureData=new Map,this._loaded=!1,this._loadingPromise=null,this._renderer=null,this._context=t,this._renderer=e}async load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const{_renderer:e,_context:t}=this;this._symbol=t.symbolRendererFactory.createSymbolRendererFromSymbol(e.symbol),this._loaded=!0}get loaded(){return this._loaded}async createAddCommand(e){const t=this._context,r=await this._provisionSymbol(),i=null==r?t.createPipelineCommand():await r.createAddCommand(e);return i.appendPipelineStateCommand(()=>this._featureData.set(e.id,e)),i}async createRemoveCommand(e){const t=this._context,r=await this._provisionSymbol(),i=null==r?t.createPipelineCommand():await r.createRemoveCommand(e);return i.appendPipelineStateCommand(()=>this._featureData.delete(e)),i}async createUpdateVisibilityCommand(e){const t=this._context,r=await this._provisionSymbol();return null==r?t.createPipelineCommand():await r.createUpdateVisibilityCommand(e)}async createUpdateLayerViewOpacityCommand(e){const t=this._context,r=await this._provisionSymbol();return null==r?t.createPipelineCommand():await r.createUpdateLayerViewOpacityCommand(e)}async createUpdateElevationCommand(){const{_featureData:e,_context:t}=this,r=await this._provisionSymbol();if(null==r)return t.createPipelineCommand();const i=[];for(const t of e.values())i.push(r.createUpdateElevationCommand(t));const n=await Promise.all(i);return t.joinPipelineCommands(n)}async createDestroyCommand(){const{_symbol:e,_context:t,_featureData:r}=this;if(!e)return t.createPipelineCommand();const i=[];for(const e of r.keys())i.push(this.createRemoveCommand(e));i.push(e.createDestroyCommand());const n=await Promise.all(i);return t.joinPipelineCommands(n)}async _provisionSymbol(){const e=this._symbol;return e?(e.loaded||await e.load(),e):null}}var ne=r(48353),se=r(30809),oe=r(8887),ae=r(38954),le=r(72385),ce=(r(4197),r(11868)),ue=r(27921),de=r(71351),he=r(73941);function fe(e,t){const r=e[t],i=e[t+1],n=e[t+2];return Math.sqrt(r*r+i*i+n*n)}function pe(e,t){const r=e[t],i=e[t+1],n=e[t+2],s=1/Math.sqrt(r*r+i*i+n*n);e[t]*=s,e[t+1]*=s,e[t+2]*=s}function me(e,t,r){e[t]*=r,e[t+1]*=r,e[t+2]*=r}r(37539),r(20498),r(87170),(0,M.vt)(),(0,M.vt)();var ye=r(620);r(78754);const ge=new Array(36);for(let e=0;e<6;e++)for(let t=0;t<6;t++)ge[6*e+t]=e;const be=new Array(36);for(let e=0;e<6;e++)be[6*e]=0,be[6*e+1]=1,be[6*e+2]=2,be[6*e+3]=2,be[6*e+4]=3,be[6*e+5]=0;const _e=(0,le.fA)(-.5,0,-.5),ve=(0,le.fA)(.5,0,-.5),we=(0,le.fA)(0,0,.5),xe=(0,le.fA)(0,.5,0),Ce=(0,le.vt)(),Se=(0,le.vt)(),Ae=(0,le.vt)(),Te=(0,le.vt)(),Ie=(0,le.vt)();(0,ae.e)(Ce,_e,xe),(0,ae.e)(Se,_e,ve),(0,ae.f)(Ae,Ce,Se),(0,ae.n)(Ae,Ae),(0,ae.e)(Ce,ve,xe),(0,ae.e)(Se,ve,we),(0,ae.f)(Te,Ce,Se),(0,ae.n)(Te,Te),(0,ae.e)(Ce,we,xe),(0,ae.e)(Se,we,_e),(0,ae.f)(Ie,Ce,Se),(0,ae.n)(Ie,Ie),Ae[0],Ae[1],Ae[2],Te[0],Te[1],Te[2],Ie[0],Ie[1],Ie[2],(0,w.vt)();var Pe=r(4576),Be=r(69397);r(6867),r(87582);var Ee=r(57917);function Me(e,t){const r=(e,r,i=!1)=>({levels:e.map(e=>{const n=H(r(e.tesselation));return i&&function(e){const t=e,r=t.get("position").data,i=t.get("normal").data;if(i){const t=Oe(e,"normal").data;for(let e=0;e<i.length;e+=3){const r=i[e+1];t[e+1]=-i[e+2],t[e+2]=r}}if(r){const t=Oe(e,"position").data;for(let e=0;e<r.length;e+=3){const i=r[e+1];t[e+1]=-r[e+2],t[e+2]=i}}}(n),{components:[{attributes:n,olidColor:void 0,transformation:null,materialId:t,visibilities:new Uint8Array([1]),objectIds:new Uint32Array([-1])}],minScreenSpaceRadius:e.minScreenSpaceRadius}})});switch(e){case"cone":return r(Re,e=>function(e,t,r,i,n=!0,s=!0){let o=0;const a=t,l=e;let c=(0,le.fA)(0,o,0),u=(0,le.fA)(0,o+l,0),d=(0,le.fA)(0,-1,0),h=(0,le.fA)(0,1,0);i&&(o=l,u=(0,le.fA)(0,0,0),c=(0,le.fA)(0,o,0),d=(0,le.fA)(0,1,0),h=(0,le.fA)(0,-1,0));const f=[u,c],p=[d,h],m=r+2,y=Math.sqrt(l*l+a*a);if(i)for(let e=r-1;e>=0;e--){const t=e*(2*Math.PI/r),i=(0,le.fA)(Math.cos(t)*a,o,Math.sin(t)*a);f.push(i);const n=(0,le.fA)(l*Math.cos(t)/y,-a/y,l*Math.sin(t)/y);p.push(n)}else for(let e=0;e<r;e++){const t=e*(2*Math.PI/r),i=(0,le.fA)(Math.cos(t)*a,o,Math.sin(t)*a);f.push(i);const n=(0,le.fA)(l*Math.cos(t)/y,a/y,l*Math.sin(t)/y);p.push(n)}const g=new Array,b=new Array;if(n){for(let e=3;e<f.length;e++)g.push(1),g.push(e-1),g.push(e),b.push(0),b.push(0),b.push(0);g.push(f.length-1),g.push(2),g.push(1),b.push(0),b.push(0),b.push(0)}if(s){for(let e=3;e<f.length;e++)g.push(e),g.push(e-1),g.push(0),b.push(e),b.push(e-1),b.push(1);g.push(0),g.push(2),g.push(f.length-1),b.push(1),b.push(2),b.push(p.length-1)}const _=(0,ce.oe)(3*m);for(let e=0;e<m;e++)_[3*e]=f[e][0],_[3*e+1]=f[e][1],_[3*e+2]=f[e][2];const v=(0,ce.oe)(3*m);for(let e=0;e<m;e++)v[3*e]=p[e][0],v[3*e+1]=p[e][1],v[3*e+2]=p[e][2];return[["position",new J.n(_,g,3,!0)],["normal",new J.n(v,b,3,!0)]]}(1,.5,e,!1),!0);case"sphere":return r([{tesselation:0,minScreenSpaceRadius:0},{tesselation:1,minScreenSpaceRadius:8},{tesselation:2,minScreenSpaceRadius:16},{tesselation:3,minScreenSpaceRadius:50},{tesselation:4,minScreenSpaceRadius:250}],e=>function(e,t,r){const i=e;let n,s;if(r)n=[0,-1,0,1,0,0,0,0,1,-1,0,0,0,0,-1,0,1,0],s=[0,1,2,0,2,3,0,3,4,0,4,1,1,5,2,2,5,3,3,5,4,4,5,1];else{const e=i*(1+Math.sqrt(5))/2;n=[-i,e,0,i,e,0,-i,-e,0,i,-e,0,0,-i,e,0,i,e,0,-i,-e,0,i,-e,e,0,-i,e,0,i,-e,0,-i,-e,0,i],s=[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1]}for(let t=0;t<n.length;t+=3)me(n,t,e/fe(n,t));let o={};function a(t,r){t>r&&([t,r]=[r,t]);const i=t.toString()+"."+r.toString();if(o[i])return o[i];let s=n.length;return n.length+=3,function(e,t,r,i,n,s=t){(n=n||e)[s]=e[t]+r[i],n[s+1]=e[t+1]+r[i+1],n[s+2]=e[t+2]+r[i+2]}(n,3*t,n,3*r,n,s),me(n,s,e/fe(n,s)),s/=3,o[i]=s,s}for(let e=0;e<t;e++){const e=s.length,t=new Array(4*e);for(let r=0;r<e;r+=3){const e=s[r],i=s[r+1],n=s[r+2],o=a(e,i),l=a(i,n),c=a(n,e),u=4*r;t[u]=e,t[u+1]=o,t[u+2]=c,t[u+3]=i,t[u+4]=l,t[u+5]=o,t[u+6]=n,t[u+7]=c,t[u+8]=l,t[u+9]=o,t[u+10]=l,t[u+11]=c}s=t,o={}}const l=(0,ce.Wz)(n);for(let e=0;e<l.length;e+=3)pe(l,e);return[["position",new J.n((0,ce.Wz)(n),s,3,!0)],["normal",new J.n(l,s,3,!0)]]}(.5,e,!0));case"cube":case"inverted-cone":case"cylinder":case"tetrahedron":case"diamond":throw new Error("not implemented");default:return}}function Oe(e,t){let r=e.get(t);return r&&!r.exclusive&&(r={...r,exclusive:!0,data:(0,Ee.S)(r.data)},e.set(t,r)),r}const Re=[{tesselation:6,minScreenSpaceRadius:0},{tesselation:18,minScreenSpaceRadius:7},{tesselation:64,minScreenSpaceRadius:65}];var De=r(2495),Fe=r(74810);class je{constructor(e,t){this._loaded=!1,this._loadingPromise=null,this._primitiveMaterialId=null,this._lodRendererId=null,this._context=null,this._symbolLayer=null,this._primitive=null,this._context=t,this._symbolLayer=e}_destroy(){this._lodRendererId=null,this._primitiveMaterialId=null}get loaded(){return this._loaded}get _isPrimitive(){return null!=this._primitive}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const e=this._context.renderCommandContext,t=this._getLayerOpacity();let r={usePBR:!0,isSchematic:!0,mrrFactors:Fe.Bt,ambient:w.Un,diffuse:w.Un,hasSlicePlane:!1,castShadows:!0,layerOpacity:t,offsetTransparentBackfaces:!1,screenSizePerspective:{}};if(r.externalColor=x.Un,r.instanced=!0,this._isPrimitive){const e=new De.fs;e.layerOpacity=t,r={...r,cullFace:Ve((0,De.ty)(e))}}const i=await e.createMaterial({type:"default",parameters:r}),n=this._symbolLayer.resource;this._primitive=n&&function(e){switch(e){case"sphere":case"cube":case"diamond":case"cylinder":case"cone":case"inverted-cone":case"tetrahedron":return!0}return!1}(n?.primitive)?n.primitive:se.r;const s=Me(this._primitive,i);this._lodRendererId=await e.createLodRenderer(s),this._primitiveMaterialId=i,this._loaded=!0}async createDestroyCommand(){const{_lodRendererId:e,_primitiveMaterialId:t,_context:r}=this,i=r.renderCommandContext,n=[];return null!=e&&n.push(i.destroyLodRenderer(e)),null!=t&&n.push(i.destroyMaterial(t)),new p(i,i.mergeRenderCommandBuffers(n),[()=>this._destroy()])}async createAddCommand(e){const t=this._context,{renderCommandContext:r,mainThreadDelegate:i}=t;if(null==this._lodRendererId)throw new Error("expected lod renderer id to not be null");const{featureCount:n}=e;if(0===n)return t.createPipelineCommand();const s=this._isPrimitive,o=this._primitive||se.r,a=(0,I.vt)((0,oe.Fq)(o)),l=(0,w.ci)((0,I.Ej)(a)),c=(0,w.ci)((0,oe.Bb)(l,{isPrimitive:s,width:100,depth:null,height:null})),u=new Float64Array(16*n),d=new Float64Array(16*n),h=L(e),f=await i.applyElevationAlignmentTo(h);for(let e=0;e<n;++e){const t=e,r=f[3*e+0],i=f[3*e+1],n=f[3*e+2],s=this._computeGlobalTransform(r,i,n,this._context.viewSpatialReference,Ue),o=this._computeLocalTransform(c,l,Le);this._writeMatrixToTypedBuffer(u,t,o),this._writeMatrixToTypedBuffer(d,t,s)}const p=z(e),m=new Uint8Array(n);e.getVisibilityArray(m);const y={featureIds:new Uint32Array(p),visibility:m,localTransforms:u,globalTransforms:d};return t.createPipelineCommand(r.addLodInstances(this._lodRendererId,e.id,y))}async createRemoveCommand(e){const{_context:t,_lodRendererId:r}=this,i=t.renderCommandContext;return null==r?t.createPipelineCommand():t.createPipelineCommand(i.removeLodInstances(r,e))}async createUpdateVisibilityCommand(e){const{_lodRendererId:t,_context:r}=this,i=r.renderCommandContext;if(null==t)return r.createPipelineCommand();const n=new Uint8Array(e.featureCount);return e.getVisibilityArray(n),r.createPipelineCommand(i.updateVisibility(t,e.id,n))}async createUpdateLayerViewOpacityCommand(e){const{_context:t}=this,r=t.renderCommandContext,i=this._primitiveMaterialId;if(null==i)return t.createPipelineCommand();const n=this._getLayerOpacity();let s={layerOpacity:n};if(this._isPrimitive){const e=new De.fs;e.layerOpacity=n,s={...s,cullFace:Ve((0,De.ty)(e))}}return t.createPipelineCommand(r.updateMaterial({type:"default",materialId:i,parameters:s}))}async createUpdateElevationCommand(e){const{_context:t,_lodRendererId:r}=this,{renderCommandContext:i,mainThreadDelegate:n}=t,{featureCount:s,id:o}=e;if(null==r||0===s)return t.createPipelineCommand();const a=new Float64Array(16*s),l=L(e),c=await n.applyElevationAlignmentTo(l);for(let e=0;e<s;++e){const t=e,r=c[3*e+0],i=c[3*e+1],n=c[3*e+2],s=this._computeGlobalTransform(r,i,n,this._context.viewSpatialReference,Ue);this._writeMatrixToTypedBuffer(a,t,s)}return t.createPipelineCommand(i.updateLodInstancesData(r,o,a))}_writeMatrixToTypedBuffer(e,t,r){let i=16*t;for(let t=0;t<16;t++)e[i++]=r[t]}_computeGlobalTransform(e,t,r,i,n){return ze[0]=e,ze[1]=t,ze[2]=r,(0,ne.l)(i,ze,n,this._context.renderSpatialReference),n}_computeLocalTransform(e,t,r){return(0,A.D_)(r),this._applyObjectScale(e,t,r),r}_applyObjectScale(e,t,r){const i=function(e=w.Un,t,r,i=1){const n=new Array(3);if(null==t||null==r)n[0]=1,n[1]=1,n[2]=1;else{let i,s=0;for(let o=2;o>=0;o--){const a=e[o],l=null!=a,c=0===o&&!i&&!l,u=r[o];let d;"symbol-value"===a||c?d=0!==u?t[o]/u:1:l&&"proportional"!==a&&isFinite(a)&&(d=0!==u?a/u:1),null!=d&&(n[o]=d,i=d,s=Math.max(s,Math.abs(d)))}for(let e=2;e>=0;e--)null==n[e]?n[e]=i:0===n[e]&&(n[e]=.001*s)}for(let e=2;e>=0;e--)n[e]/=i;return(0,w.ci)(n)}(e,e,t,this._context.renderCoordsHelper.unitInMeters);1===i[0]&&1===i[1]&&1===i[2]||(0,A.hs)(r,r,i)}_getLayerOpacity(){return this._context.layerViewInfo.fullOpacity}}function Ve(e){return e?0:2}const ze=(0,w.vt)(),Le=(0,v.vt)(),Ue=(0,v.vt)();class Ne{constructor(e,t){this._symbols=new Array,this._featureDataPartitioning=new Map,this._loaded=!1,this._loadingPromise=null,this._renderer=null,this._context=t,this._renderer=e}async load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){this._symbols[0]=new K(_(),this._context),this._symbols[1]=new je(new g.A,this._context),this._loaded=!0}get loaded(){return this._loaded}async createAddCommand(e){const t=this._context,r=this._partition(e),i=await Promise.all(r.map(async({index:e,features:t})=>{const r=await this._provisionSymbol(e);return await(r?.createAddCommand(t))})),n=t.joinPipelineCommands(i);return n.appendPipelineStateCommand(()=>this._featureDataPartitioning.set(e.id,r)),n}async createRemoveCommand(e){const{_featureDataPartitioning:t,_context:r}=this,i=r.renderCommandContext,n=t.get(e);if(null==n)return new p(i,i.createRenderCommandBuffer(),[]);const s=await Promise.all(n.map(async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createRemoveCommand(t.id))})),o=r.joinPipelineCommands(s);return o.appendPipelineStateCommand(()=>t.delete(e)),o}async createUpdateVisibilityCommand(e){const{_featureDataPartitioning:t,_context:r}=this,i=r.renderCommandContext,n=t.get(e.id);if(null==n)return new p(i,i.createRenderCommandBuffer(),[]);const s=await Promise.all(n.map(async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createUpdateVisibilityCommand(t))}));return r.joinPipelineCommands(s)}async createUpdateLayerViewOpacityCommand(e){const t=this._context,r=[];for(let t=0;t<this._symbols.length;++t){const i=this._symbols[t];null!=i&&i.loaded&&r.push(i.createUpdateLayerViewOpacityCommand(e))}const i=await Promise.all(r);return t.joinPipelineCommands(i)}async createUpdateElevationCommand(){const{_featureDataPartitioning:e,_context:t}=this,r=[];for(const t of e.values()){const e=t.map(async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createUpdateElevationCommand(t))});r.push(...e)}const i=await Promise.all(r);return t.joinPipelineCommands(i)}async createDestroyCommand(){const{_featureDataPartitioning:e,_context:t}=this,r=[];for(const t of e.keys())r.push(this.createRemoveCommand(t));for(const e of this._symbols)r.push(e.createDestroyCommand());const i=await Promise.all(r);return t.joinPipelineCommands(i)}async _provisionSymbol(e){if(null==e)return null;const t=this._symbols[e];return t?(t.loaded||await t.load(),t):null}_getLoadedSymbol(e){if(null==e)return null;const t=this._symbols[e];return null!=t&&t.loaded?t:null}_partition(e){const t=z(e);if(null==t)throw new Error("unable to fetch objectIds");const{featureCount:r}=e,i=[[],[]];for(let e=0;e<r;++e)i[t[e]%2].push(e);return i.map((t,r)=>new He(r,e.subset(new Uint32Array(t)))).filter(e=>e.features.featureCount>0)}}class He{constructor(e,t){this.index=e,this.features=t}}class qe{constructor(e,t,r,i,n,s,o){this.viewSpatialReference=e,this.renderSpatialReference=t,this.mainThreadDelegate=r,this.renderCoordsHelper=i,this.renderCommandContext=n,this.layerInfo=s,this.layerViewInfo=o,this.symbolRendererFactory=new Ge(this)}createPipelineCommand(e=this.renderCommandContext.createRenderCommandBuffer(),t=[]){return new p(this.renderCommandContext,e,t)}joinPipelineCommands(e){return 0===e.length?this.createPipelineCommand():e.filter(e=>null!=e).reduce((e,t)=>(e.append(t),e))}}class Ge{constructor(e){this.context=e}createSymbolRendererFromJSON(e){const t=(0,f.L)(e??ke)??void 0;if(!t)throw new Error("Failed to create renderer");const r=t.type;switch(r){case"simple":return new ie(t,this.context);case"unique-value":return new Ne(t,this.context);default:return console.warn(`Unable to create symbolrenderer for renderer of ${r}`),this.createSymbolRendererFromJSON(ke)}}createSymbolRendererFromSymbol(e){const t=e?.type;switch(t){case"point-3d":return new re(e,this.context);case"picture-marker":case"simple-marker":return new K(_(),this.context);default:return console.warn(`Unable to create symbolrenderer for symbol of ${t}`),null}}createSymbolRendererFromSymbolLayer(e){const t=e.type;return"icon"===t?new K(e,this.context):(console.warn(`Unable to create symbolrenderer for symbolLayer of ${t}`),null)}}const ke={type:"simple"};var $e=r(69622),Ye=r(60999),Ze=r(32587),Xe=r(76030),We=r(24326);function Qe(e=""){return`${e}${(0,We.c)()}`}new Float64Array(3);class Je{constructor(e,t){this._parent=e,this._subsetIndices=t,this.id=Qe(`featureDataSubset-${e.id}-`)}get tileId(){return this._parent.tileId}get extent(){return this._parent.extent}get featureCount(){return this._subsetIndices.length}get usedMemory(){return this._parent.usedMemory+Be.qK+this._subsetIndices.byteLength}get isFullyEnabled(){for(const e of this._subsetIndices)if(!this._parent.getEnabled(e))return!1;return!0}getObjectId(e){return this._parent.getObjectId(this._subsetIndices[e])}getAttribute(e,t){return this._parent.getAttribute(this._subsetIndices[e],t)}getAttributeAsTimestamp(e,t){return this._parent.getAttribute(this._subsetIndices[e],t)}getAttributes(e){return this._parent.getAttributes(this._subsetIndices[e])}getCoordinates(e,t,r){return this._parent.getCoordinates(this._subsetIndices[e],t,r)}getOptimizedGeometry(e){return this._parent.getOptimizedGeometry(this._subsetIndices[e])}getCentroid(e,t){return this._parent.getCentroid(this._subsetIndices[e],t)}getBounds(e){return this._parent.getBounds(this._subsetIndices[e])}getBoundingBox(e){return this._parent.getBoundingBox(this._subsetIndices[e])}getObjectIdsArray(e,t,r){return this._parent.getObjectIdsArray(e,this._translatedIndices(t),r)}getCoordinatesArray(e,t,r){return this._parent.getCoordinatesArray(e,this._translatedIndices(t),r)}objectIds(e){return this._parent.objectIds(this._translatedIndices(e))}subset(e){const{_subsetIndices:t}=this,r=new Uint32Array(e.length);for(let i=0;i<r.length;++i)r[i]=t[e[i]];return new Je(this._parent,r)}disableObjectIds(e){if(0===e.size)return;const{featureCount:t}=this,r=new Array;for(let i=0;i<t;++i)this.getEnabled(i)&&e.has(this.getObjectId(i))&&r.push(i);if(0!==r.length)for(const e of r)this.setEnabled(e,!1)}setEnabled(e,t){this._parent.setEnabled(this._subsetIndices[e],t)}getEnabled(e){return this._parent.getEnabled(this._subsetIndices[e])}enableAll(){const{_subsetIndices:e,_parent:t}=this;for(const r of e)t.setEnabled(r,!0)}getVisibilityArray(e,t,r){return this._parent.getVisibilityArray(e,this._translatedIndices(t),r)}enabledObjectIds(e){return this._parent.enabledObjectIds(this._translatedIndices(e))}*_translatedIndices(e){const{_subsetIndices:t}=this;if(null!=e)for(const r of e)yield t[r];else yield*t}}class Ke{constructor(e){this._tile=e,this.id=Qe(`featureData-${e.id}-`),this._enabled=new Array(e.featureCount).fill(!0)}get tileId(){return this._tile.id}get featureCount(){return this._tile.featureCount}get usedMemory(){return Be.qK+(0,Be.$B)(this.id)}get extent(){return this._tile.descriptor.extent}get isFullyEnabled(){return this._enabled.every(e=>e)}getObjectId(e){return this._tile.getObjectId(e)}getAttribute(e,t){return this._tile.getAttribute(e,t)}getAttributeAsTimestamp(e,t){return this._tile.getAttribute(e,t)}getAttributes(e){return this._tile.getAttributes(e)}getCoordinates(e,t,r){return this._tile.getCoordinates(e,t,r)}getOptimizedGeometry(e){return this._tile.getOptimizedGeometry(e)}getCentroid(e,t){return this._tile.getCentroid(e,t)}getBounds(e){return this._tile.getBounds(e)}getBoundingBox(e){return this._tile.getBoundingBox(e)}getObjectIdsArray(e,t,r){return this._tile.getObjectIdsArray(e,t,r)}getCoordinatesArray(e,t,r){return this._tile.getCoordinatesArray(e,t,r)}objectIds(e){return this._tile.objectIds(e)}subset(e){return new Je(this,e)}disableObjectIds(e){if(0===e.size)return;const{_enabled:t}=this,r=new Array;for(const i of this._allFeatureIndices())t[i]&&e.has(this.getObjectId(i))&&r.push(i);if(0!==r.length)for(const e of r)t[e]=!1}setEnabled(e,t){this._enabled[e]=t}getEnabled(e){return this._enabled[e]}enableAll(){this._enabled.fill(!0)}getVisibilityArray(e,t=this._allFeatureIndices(),r=0){const{_enabled:i}=this;for(const n of t)e[r++]=Number(i[n]);return r}*enabledObjectIds(e=this._allFeatureIndices()){const{_enabled:t}=this;for(const r of e)t[r]&&(yield this.getObjectId(r))}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}}let et=class extends $e.A{constructor(e){super(e),this.extent=null,this._tileHandles=new Ze.A,this._wanted=new Ze.A,this._updateRequested=!1,this._synchronizationTask=null,this._requestedTiles=new Array}destroy(){this._tileHandles.clear(),this._wanted.clear()}get updating(){return this._updateRequested||!(this._synchronizationTask?.finished??1)}get _boundingRect(){const{extent:e}=this;return null==e?null:(0,P.VY)(e)}get _missingTiles(){const e=new Array,t=this._wanted,r=this._tileHandles;for(const i of t.values())null==r.get(i.id)?.featureData&&e.push(i);return e}onTileTreeChange({tiles:e}){this._requestedTiles=e,this._scheduleTilesSync()}_scheduleTilesSync(){if(this._updateRequested)return;this._updateRequested=!0;const e=this._synchronizationTask,t=(0,Ye.UT)(async()=>{try{await(0,o.C_)(()=>e?.finished??!0),await(0,Xe.NO)(),this._updateRequested=!1,await this._synchronizeTiles()}finally{this._synchronizationTask===t&&(this._synchronizationTask=null)}});this._synchronizationTask=t}async _synchronizeTiles(){const e=this._requestedTiles,t=this._tileHandles,r=new Array;for(const i of e)t.has(i.id)||r.push(i);const i=new Array;for(const r of t.values()){const{id:t}=r;e.every(e=>e.id!==t)&&i.push(r.descriptor)}const n=this._tileHandles,{_boundingRect:s}=this,o=null!=s?r.filter(e=>!e.extent||(0,P.HY)(s,e.extent)):r,a=this._wanted,l=new Array;for(const{id:e}of i)a.delete(e);for(const e of o)a.set(e.id,e);const c=this._missingTiles;for(const e of i){const{id:t}=e;if(c.some(t=>tt(t,e)||tt(e,t)))continue;const r=n.get(t);null!=r&&l.push(this._removeTile(r))}for(const e of o)l.push(this._addTile(e));const u=await Promise.allSettled(l);for(const e of u)"rejected"===e.status&&console.error(e.reason)}forEachTile(e){for(const t of this._tileHandles.values()){const r=t.featureData;null!=r&&e(r)}}*loadedTiles(){for(const e of this._tileHandles.values()){const t=e.featureData;null!=t&&(yield t)}}async _removeTile(e){e.loadTask.abort(),this._tileHandles.delete(e.id),this._validate();const{featureData:t}=e;if(null!=t){const e={stack:[],error:void 0,hasError:!1};try{(0,i.mS)(e,await this.tileLocks.lock([t.tileId]),!1);const r=await this.createRemoveCommand(t.id);await(r?.execute())}catch(t){e.error=t,e.hasError=!0}finally{(0,i.hk)(e)}}}async _addTile(e){const{_tileHandles:t}=this,r=t.get(e.id);if(null!=r){if(!it(r)||r.featureData.isFullyEnabled)return;return r.featureData.enableAll(),void await this._onTileLoad(r)}const i=new rt(e,(0,Ye.UT)(async t=>{const r=await this.loadTile(e,t);return(0,s.Te)(t),new Ke(r)}));this._tileHandles.set(i.id,i);try{await i.loadTask.promise}catch(e){return void(0,s.jH)(e)}(function(e){if(!it(e))throw new Error})(i),await this._onTileLoad(i)}async _onTileLoad(e){const t={stack:[],error:void 0,hasError:!1};try{const{_wanted:r,_tileHandles:n,_missingTiles:s}=this,o=e.descriptor,a=new Array,l=new Array,c=new Array,u=new Set;for(const t of n.values()){if(t===e)continue;const{descriptor:i,id:c}=t;if(!r.has(c)&&!s.some(e=>tt(e,i)||tt(i,e))){n.delete(c),t.loadTask.abort();const{featureData:e}=t;null!=e&&a.push(e);continue}if(it(t)){if(tt(o,i)){const e=t.featureData;for(const t of e.objectIds())u.add(t)}if(tt(i,o)){const{featureData:e}=t;l.push(e)}}}u.size>0&&(e.featureData.disableObjectIds(u),this._validateRemoval(e.featureData,u)),this._validate(),c.push(e.featureData);const d=[...c,...a,...l].map(e=>e.tileId);if((0,i.mS)(t,await this.tileLocks.lock(d),!1),0!==l.length){const t=e.featureData,r=new Set(t.objectIds());for(const e of l)e.disableObjectIds(r),this._validateRemoval(e,r)}const h=a.map(e=>this.createRemoveCommand(e.id)),f=c.map(e=>this.createAddCommand(e)),p=l.map(e=>this.createUpdateCommand(e)),m=function(e){return 0===e.length?null:e.reduce((e,t)=>(e.append(t),e))}((await Promise.all([...h,...f,...p])).filter(Pe.Ru));await(m?.execute())}catch(e){t.error=e,t.hasError=!0}finally{(0,i.hk)(t)}}_validate(){if(!(0,B.A)("feature-pipeline-3d-test-validation"))return;const e=new Array;for(const t of this._tileHandles.values()){if(!it(t))continue;const{featureData:r}=t;e.push({featureData:r,objectIds:new Set(r.enabledObjectIds())})}for(let t=0;t<e.length;++t){const{featureData:r,objectIds:i}=e[t];for(let n=t+1;n<e.length;++n){const{featureData:t,objectIds:s}=e[n];for(const e of s)if(i.has(e))throw new Error(`${r.id} and ${t.id} both contain ${e}.`)}}}_validateRemoval(e,t){if((0,B.A)("feature-pipeline-3d-test-validation"))for(const r of e.enabledObjectIds())if(t.has(r))throw new Error(`Failed to remove ${r} from ${e.id}!`)}};function tt({lij:[e,t,r]},{lij:[i,n,s]}){const o=i-e;return o>=0&&t===n>>o&&r===s>>o}(0,i.Cg)([(0,a.MZ)()],et.prototype,"updating",null),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],et.prototype,"loadTile",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],et.prototype,"createAddCommand",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],et.prototype,"createRemoveCommand",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],et.prototype,"createUpdateCommand",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],et.prototype,"tileLocks",void 0),(0,i.Cg)([(0,a.MZ)()],et.prototype,"extent",void 0),(0,i.Cg)([(0,a.MZ)()],et.prototype,"_boundingRect",null),(0,i.Cg)([(0,a.MZ)()],et.prototype,"_missingTiles",null),(0,i.Cg)([(0,a.MZ)()],et.prototype,"_updateRequested",void 0),(0,i.Cg)([(0,a.MZ)()],et.prototype,"_synchronizationTask",void 0),et=(0,i.Cg)([(0,a.$K)("esri.views.3d.layers.graphics.pipeline.Tile3DManager")],et);class rt{constructor(e,t){this.descriptor=e,this.loadTask=t}get id(){return this.descriptor.id}get featureData(){return this.loadTask.value}}function it(e){return null!=e.featureData}var nt=r(36563);class st{constructor(){this._previousActions=new Map}async lock(e){const{_previousActions:t}=this,r=e.map(e=>t.get(e)).filter(Pe.Ru),i=Promise.allSettled(r),n=(0,s.Tw)(),o=(0,nt.hA)(()=>n.resolve()),a=n.promise.finally(()=>{for(const r of e)t.get(r)===a&&t.delete(r)});for(const r of e)t.set(r,a);return await i,(0,nt.Bf)(o)}}var ot=r(75503),at=r(27647);class lt{constructor(e,t){this._index=e,this._view=t}get usedMemory(){return Be.qK+Be.RS}getObjectId(){return this._view.getObjectId(this._index)}getAttribute(e){return this._view.getAttribute(this._index,e)}getAttributeAsTimestamp(e){return this._view.getAttributeAsTimestamp(this._index,e)}getAttributes(){return this._view.getAttributes(this._index)}getOptimizedGeometry(){return this._view.getOptimizedGeometry(this._index)}getCentroid(e){return this._view.getCentroid(this._index,e)}getBounds(){return this._view.getBounds(this._index)}getBoundingBox(){return this._view.getBoundingBox(this._index)}cloneWithGeometry(e){return new ct(this._index,this._view,e)}}class ct extends lt{constructor(e,t,r){super(e,t),this._geometryOverride=r}getOptimizedGeometry(){return this._geometryOverride}getCentroid(e){return(0,at.Q)(this._geometryOverride)}}class ut{constructor(e,t){this.featureData=e,this.bounds=t}}class dt{constructor(){this._tileBounds=new Map,this.events=new n.bk,this.featureAdapter=ht.shared}get usedMemory(){return Be.qK+Be.qK*this._tileBounds.size}addTile(e){const{featureCount:t}=e;if(0===t)return;const r=new ot.wq(9,t=>e.getBounds(t)),i=new Array;for(let e=0;e<t;++e)i[e]=e;r.load(i),this._tileBounds.set(e.id,new ut(e,r)),this.events.emit("changed")}removeTile(e){this._tileBounds.delete(e),this.events.emit("changed")}clear(){this._tileBounds.clear(),this.events.emit("changed")}forEach(e){for(const{featureData:t,bounds:r}of this._tileBounds.values())r.all(r=>{t.getEnabled(r)&&e(new lt(r,t))})}forEachInBounds(e,t){ft.minX=e[0],ft.minY=e[1],ft.maxX=e[2],ft.maxY=e[3];for(const{featureData:e,bounds:r}of this._tileBounds.values())r.search(ft,r=>{e.getEnabled(r)&&t(new lt(r,e))})}forEachBounds(e,t){for(const r of e)t(r.getBoundingBox())}getFullExtent(e){let t=1/0,r=1/0,i=-1/0,n=-1/0;for(const{bounds:e}of this._tileBounds.values()){const{minX:s,minY:o,maxX:a,maxY:l}=e.toJSON();t=Math.min(t,s),r=Math.min(r,o),i=Math.min(i,a),n=Math.min(n,l)}return{xmin:t,ymin:r,xmax:i,ymax:n,spatialReference:e}}}class ht{static{this.shared=new ht}getObjectId(e){return e.getObjectId()}getAttribute(e,t){return e.getAttribute(t)}getAttributeAsTimestamp(e,t){return e.getAttributeAsTimestamp(t)}getAttributes(e){return e.getAttributes()}getGeometry(e){return e.getOptimizedGeometry()}getCentroid(e,t){return e.getCentroid(t)}cloneWithGeometry(e,t){return e.cloneWithGeometry(t)}}const ft=new ot.EC;var pt=r(80893);class mt{constructor(e,t,r){this.descriptor=e,this._pages=t,this._pageSize=r;const i=Be.ez+t.reduce((e,{usedMemory:t})=>e+t,0),n=3*Be.RS;this.usedMemory=Be.qK+i+n,this.featureCount=t.reduce((e,t)=>e+t.featureCount,0)}get id(){return this.descriptor.id}getObjectId(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getObjectId(r)}getAttribute(e,t){const{pageIndex:r,featurePageIndex:i}=this._translateIndex(e);return this._pages[r].getAttribute(i,t)}getAttributeAsTimestamp(e,t){const{pageIndex:r,featurePageIndex:i}=this._translateIndex(e);return this._pages[r].getAttributeAsTimestamp(i,t)}getAttributes(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getAttributes(r)}getCoordinates(e,t,r){const{pageIndex:i,featurePageIndex:n}=this._translateIndex(e);this._pages[i].getCoordinates(n,t,r)}getOptimizedGeometry(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getOptimizedGeometry(r)}getCentroid(e,t){const{pageIndex:r,featurePageIndex:i}=this._translateIndex(e);return this._pages[r].getCentroid(i,t)}getBounds(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getBounds(r)}getBoundingBox(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getBoundingBox(r)}getObjectIdsArray(e,t=this._allFeatureIndices(),r=0){let i=r;for(const{page:r,indices:n}of this._batchPageIndices(t))i=r.getObjectIdsArray(e,n,i);return i}getCoordinatesArray(e,t=this._allFeatureIndices(),r=0){let i=r;for(const{page:r,indices:n}of this._batchPageIndices(t))i=r.getCoordinatesArray(e,n,i);return i}*objectIds(e=this._allFeatureIndices()){for(const{page:t,indices:r}of this._batchPageIndices(e))for(const e of t.objectIds(r))yield e}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}_translateIndex(e){const{_pageSize:t}=this;return{pageIndex:Math.floor(e/t),featurePageIndex:e%t}}*_batchPageIndices(e){const t=new Array;{let r=0,i=new Array;for(const n of e){const{pageIndex:e,featurePageIndex:s}=this._translateIndex(n);r!==e&&(0!==i.length&&t.push({pageIndex:r,indices:i}),r=e,i=[]),i.push(s)}0!==i.length&&t.push({pageIndex:r,indices:i})}const{_pages:r}=this;for(const{pageIndex:e,indices:i}of t)yield{page:r[e],indices:i}}}var yt=r(49186),gt=r(51624),bt=r(62577),_t=r(92722),vt=r(95466),wt=r(53655);class xt{constructor(e){this._reader=new gt.A(new Uint8Array(e),new DataView(e)),this._index=function(e){for(;e.next();){if(2===e.tag())return Ct(e.getMessage());e.skip()}At()}(this._reader)}get featureCount(){return this._index.featureIndices.length}get exceededTransferLimit(){return this._index.exceededTransferLimit}get usedMemory(){return this._reader.usedMemory}getObjectId(e){return this.getAttribute(e,this._index.objectIdFieldName)}getAttribute(e,t){const{_index:{fieldsIndex:r,attributeIndices:i}}=this,n=r.get(t)?.index;if(null==n)return;const s=i[e*r.fields.length+n],o=this._reader;return o.move(s),Tt(o)}getAttributeAsTimestamp(e,t){const r=this.getAttribute(e,t);return"string"==typeof r?new Date(r).getTime():"number"==typeof r||null==r?r:null}getAttributes(e){const{_index:{fieldsIndex:t,attributeIndices:r}}=this,i=e*t.fields.length,n=this._reader,s={};for(const e of t.fields){const t=r[i+e.index];n.move(t),s[e.name]=Tt(n)}return s}getCoordinates(e,t,r=0){const i=this._reader,{transform:n,featureIndices:s}=this._index,{scale:o,translate:a}=n;i.move(s[e]),this._readCoordinates(o,a,t,r)}getOptimizedGeometry(e){const t=(0,w.vt)();return this.getCoordinates(e,t),new _t.A([],t,!0,!1)}getCentroid(e,{hasZ:t,hasM:r}){this.getCoordinates(e,It);const[i,n,s]=It,o=[i,n];return t&&(o[3]=s),r&&(o[t?4:3]=0),new _t.A([],o,t,r)}getBounds(e){this.getCoordinates(e,It);const[t,r]=It,i=new ot.EC;return i.minX=t,i.minY=r,i.maxX=t,i.maxY=r,i}getBoundingBox(e){this.getCoordinates(e,It);const[t,r,i]=It;return(0,I.fA)(t,r,i,t,r,i)}getObjectIdsArray(e,t=this._allFeatureIndices(),r=0){const i=this._reader,{objectIdFieldName:n,attributeIndices:s,fieldsIndex:o}=this._index,a=o.get(n).index,l=o.fields.length;for(const n of t){const t=s[n*l+a];i.move(t),e[r++]=Tt(i)}return r}getCoordinatesArray(e,t=this._allFeatureIndices(),r=0){const i=this._reader,{transform:n,featureIndices:s}=this._index,{scale:o,translate:a}=n;for(const n of t){const t=s[n];i.move(t),r=this._readCoordinates(o,a,e,r)}return r}*objectIds(e=this._allFeatureIndices()){const t=this._reader,{objectIdFieldName:r,attributeIndices:i,fieldsIndex:n}=this._index,s=n.get(r).index,o=n.fields.length;for(const r of e){const e=i[r*o+s];t.move(e),yield Tt(t)}}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}_readCoordinates([e,t,r],[i,n,s],o,a){const l=this._reader,c=l.getLength(),u=l.pos()+c;for(;l.pos()<u&&l.next();)switch(l.tag()){case 2:{const c=l.getLength(),u=l.pos()+c;for(;l.pos()<u&&l.next();)3===l.tag()?(l.getUInt32(),o[a++]=i+e*l.getSInt64(),o[a++]=n+t*l.getSInt64(),o[a++]=s+r*l.getSInt64()):l.skip();break}default:l.skip()}return a}}function Ct(e){for(;e.next();){if(1===e.tag())return St(e.getMessage());e.skip()}At()}function St(e){let t,r,i=!1,n=!1,s=0;const o=new Array,a=new Array,l=new Array;for(;e.next();)switch(e.tag()){case 1:r=e.getString();break;case 7:0!==e.getEnum()&&At();break;case 9:i=e.getBool()??!1;break;case 12:t=(0,bt.Q1)(e.processMessage(wt.ae));break;case 13:{const t=e.processMessage(wt.cn);t.index=s++,o.push(t);break}case 15:{a.push(e.pos());const t=e.getUInt32(),r=e.pos()+t;for(;e.pos()<r&&e.next();)1===e.tag()?(l.push(e.pos()),e.skip()):e.skip();break}case 10:n=e.getBool()??!1;break;default:e.skip()}const c=new vt.A(o);return null!=t&&n&&null!=r&&c.has(r)||At(),{transform:t,exceededTransferLimit:i,fieldsIndex:c,objectIdFieldName:r,featureIndices:a,attributeIndices:l}}function At(){const e=new yt.A("pbf-parsing-failed","Error while parsing PBF",new Error);throw console.error(e),e}function Tt(e){const t=e.getLength(),r=e.pos()+t;for(;e.pos()<r&&e.next();)switch(e.tag()){case 1:return e.getString();case 2:return e.getFloat();case 3:return e.getDouble();case 4:return e.getSInt32();case 5:return e.getUInt32();case 6:return e.getInt64();case 7:return e.getUInt64();case 8:return e.getSInt64();case 9:return e.getBool();default:return e.skip(),null}return null}const It=(0,w.vt)();class Pt{constructor(e,t,r,i,n){this.spatialReference=e,this.url=r,this.objectIdField=i,this.capabilities=n;const{supportsMaxRecordCountFactor:s,maxRecordCount:o}=this.capabilities.query,a=s?4:1,l=(o??8e3)*a;this._pageSize=Math.min(8e3,l);const c=t.clone();c.cacheHint=!0,c.resultType="tile",c.outSpatialReference=e,c.returnGeometry=!0,c.returnZ=!0,c.maxRecordCountFactor=a,c.num=this._pageSize,c.outFields=[i],this._baseQuery=c}async fetch(e,t){const{spatialReference:r,_pageSize:i}=this,n=(0,P.w1)(e.extent,r),o=this._baseQuery.clone();o.geometry=n;const a=new Array;let l=0,c=!1,u=1;for(;!c;){const e=[];for(let r=0;r<u;++r)e.push(this._fetchPage(o,l++,t));const r=await Promise.all(e);(0,s.Te)(t);for(const e of r){const t=0!==e.featureCount;c||=!e.exceededTransferLimit||!t,t&&a.push(e)}u=Math.min(u+1,4)}return new mt(e,a,i)}async _fetchPage(e,t,r){const i=e.clone();i.start=t*this._pageSize;const n=await(0,pt.kS)(this.url,i,{signal:r});return(0,s.Te)(r),new xt(n)}}var Bt=r(29920),Et=r(77690),Mt=r(29242);var Ot=r(13030),Rt=r(78662),Dt=r(49255),Ft=r(40268),jt=r(25634),Vt=r(11725),zt=r(77194),Lt=r(59907),Ut=r(43616),Nt=r(13259),Ht=r(4431),qt=r(1843),Gt=r(13840),kt=r(42958),$t=r(16943),Yt=r(33524),Zt=r(90644),Xt=r(85079);let Wt=class extends kt.w{constructor(e,t){super(e,t,(0,Xt._u)([Jt,tr()].map(Ht.U))),this.shader=new Gt.r(Nt.H,()=>r.e(8241).then(r.bind(r,48241))),this.primitiveType=t.occlusionPass?q.WR.POINTS:q.WR.TRIANGLE_STRIP}initializePipeline(e){const{oitPass:t,hasEmission:r,hasPolygonOffset:i,draped:n,output:s,depthTestEnabled:o,occlusionPass:a}=e,l=o&&!n&&!(1===t)&&!a&&!(8===s);return(0,Zt.Ey)({blending:(0,Dt._o)(s)?(0,Yt.Yf)(t,!0):null,depthTest:o&&!n?{func:515}:null,depthWrite:l?Zt.Uy:null,drawBuffers:(0,Yt.Sv)(t,r),colorWrite:Zt.kn,polygonOffset:i?Qt:null})}};Wt=(0,i.Cg)([(0,a.$K)("esri.views.3d.webgl-engine.shaders.HUDMaterialTechnique")],Wt);const Qt={factor:0,units:-4},Jt=(0,qt.BP)().vec2u8("uv0",{glNormalized:!0}),Kt=(0,qt.BP)().vec3f("position").vec3f("normal").vec4i16("uvi").vec4u8("color").vec2f("size").f32("rotation").vec4f("centerOffsetAndDistance").vec4f("featureAttribute"),er=Kt.clone().vec4u8("olidColor");function tr(){return(0,$t.E)()?er:Kt}var rr=r(51976),ir=r(2451);class nr extends ir.E{constructor(e){super(),this.spherical=e,this.screenCenterOffsetUnitsEnabled=!1,this.occlusionTestEnabled=!0,this.signedDistanceFieldEnabled=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.hasVVSize=!1,this.hasVVColor=!1,this.hasVerticalOffset=!1,this.hasScreenSizePerspective=!1,this.hasRotation=!1,this.debugDrawLabelBorder=!1,this.hasPolygonOffset=!1,this.depthTestEnabled=!0,this.pixelSnappingEnabled=!0,this.draped=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.occlusionPass=!1,this.occludedFragmentFade=!1,this.horizonCullingEnabled=!0,this.isFocused=!0,this.olidColorInstanced=!1,this.textureCoordinateType=0,this.emissionSource=0,this.discardInvisibleFragments=!0,this.hasVVInstancing=!1,this.snowCover=!1}}(0,i.Cg)([(0,rr.W)()],nr.prototype,"screenCenterOffsetUnitsEnabled",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"occlusionTestEnabled",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"signedDistanceFieldEnabled",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"sampleSignedDistanceFieldTexelCenter",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"hasVVSize",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"hasVVColor",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"hasVerticalOffset",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"hasScreenSizePerspective",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"hasRotation",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"debugDrawLabelBorder",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"hasPolygonOffset",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"depthTestEnabled",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"pixelSnappingEnabled",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"draped",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"terrainDepthTest",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"cullAboveTerrain",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"occlusionPass",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"occludedFragmentFade",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"horizonCullingEnabled",void 0),(0,i.Cg)([(0,rr.W)()],nr.prototype,"isFocused",void 0);var sr=r(49788);class or extends Vt.i{constructor(e,t){super(e,Er),this.produces=new Map([[14,e=>(0,Dt.Lc)(e)&&!this.parameters.drawAsLabel],[15,e=>(0,Dt.Lc)(e)&&this.parameters.drawAsLabel],[13,()=>this.parameters.occlusionTest],[19,e=>this.parameters.draped&&(0,Dt.Lc)(e)]]),this._visible=!0,this._configuration=new nr(t)}getConfiguration(e,t){const r=this.parameters.draped;return super.getConfiguration(e,t,this._configuration),this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.hasVerticalOffset=!!this.parameters.verticalOffset,this._configuration.hasScreenSizePerspective=!!this.parameters.screenSizePerspective,this._configuration.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits,this._configuration.hasPolygonOffset=this.parameters.polygonOffset,this._configuration.draped=r,this._configuration.occlusionTestEnabled=this.parameters.occlusionTest,this._configuration.pixelSnappingEnabled=this.parameters.pixelSnappingEnabled,this._configuration.signedDistanceFieldEnabled=this.parameters.textureIsSignedDistanceField,this._configuration.sampleSignedDistanceFieldTexelCenter=this.parameters.sampleSignedDistanceFieldTexelCenter,this._configuration.hasRotation=this.parameters.hasRotation,this._configuration.hasVVSize=!!this.parameters.vvSize,this._configuration.hasVVColor=!!this.parameters.vvColor,this._configuration.occlusionPass=13===t.slot,this._configuration.occludedFragmentFade=!r&&this.parameters.occludedFragmentFade,this._configuration.horizonCullingEnabled=this.parameters.horizonCullingEnabled,this._configuration.isFocused=this.parameters.isFocused,this._configuration.depthTestEnabled=this.parameters.depthEnabled||13===t.slot,(0,Dt._o)(e)&&(this._configuration.debugDrawLabelBorder=!!R.b.LABELS_SHOW_BORDER),this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}intersect(e,t,r,i,n,s){const{options:{selectionMode:o,hud:a,excludeLabels:l},point:c,camera:u}=r,{parameters:d}=this;if(!o||!a||l&&d.isLabel||!e.visible||!c||!u)return;const h=e.attributes.get("featureAttribute"),f=null==h?null:(0,x.ci)(h.data,Sr),{scaleX:p,scaleY:m}=Or(f,d,u.pixelRatio);(0,Et.z0)(br,t),e.attributes.has("featureAttribute")&&function(e){const t=e[0],r=e[1],i=e[2],n=e[3],s=e[4],o=e[5],a=e[6],l=e[7],c=e[8],u=1/Math.sqrt(t*t+r*r+i*i),d=1/Math.sqrt(n*n+s*s+o*o),h=1/Math.sqrt(a*a+l*l+c*c);e[0]=t*u,e[1]=r*u,e[2]=i*u,e[3]=n*d,e[4]=s*d,e[5]=o*d,e[6]=a*h,e[7]=l*h,e[8]=c*h}(br);const y=e.attributes.get("position"),g=e.attributes.get("size"),b=e.attributes.get("normal"),_=e.attributes.get("rotation"),v=e.attributes.get("centerOffsetAndDistance");(0,ye.vA)(y.size>=3);const C=(0,Nt.c)(d),S="screen"===this.parameters.centerOffsetUnits;for(let e=0;e<y.data.length/y.size;e++){const i=e*y.size;(0,ae.h)(dr,y.data[i],y.data[i+1],y.data[i+2]),(0,ae.p)(dr,dr,t),(0,ae.p)(dr,dr,u.viewMatrix);const n=e*v.size;if((0,ae.h)(xr,v.data[n],v.data[n+1],v.data[n+2]),!S&&(dr[0]+=xr[0],dr[1]+=xr[1],0!==xr[2])){const e=xr[2];(0,ae.n)(xr,dr),(0,ae.e)(dr,dr,(0,ae.j)(xr,xr,e))}const o=e*b.size;if((0,ae.h)(hr,b.data[o],b.data[o+1],b.data[o+2]),lr(hr,br,u,Ar),Rr(this.parameters,dr,Ar,u,ur),u.applyProjection(dr,fr),fr[0]>-1){S&&(xr[0]||xr[1])&&(fr[0]+=xr[0]*u.pixelRatio,0!==xr[1]&&(fr[1]+=ur.alignmentEvaluator.apply(xr[1])*u.pixelRatio),u.unapplyProjection(fr,dr)),fr[0]+=this.parameters.screenOffset[0]*u.pixelRatio,fr[1]+=this.parameters.screenOffset[1]*u.pixelRatio,fr[0]=Math.floor(fr[0]),fr[1]=Math.floor(fr[1]);const t=e*g.size;Pr[0]=g.data[t],Pr[1]=g.data[t+1],ur.evaluator.applyVec2(Pr,Pr);const i=Tr*u.pixelRatio;let n=0;d.textureIsSignedDistanceField&&(n=Math.min(d.outlineSize,.5*Pr[0])*u.pixelRatio/2),Pr[0]*=p,Pr[1]*=m;const o=e*_.size,a=d.rotation+_.data[o];if(cr(c,fr[0],fr[1],Pr,i,n,a,d,C)){const e=r.ray;if((0,ae.p)(mr,dr,(0,A.B8)(vr,u.viewMatrix)),fr[0]=c[0],fr[1]=c[1],u.unprojectFromRenderScreen(fr,dr)){const t=(0,w.vt)();(0,ae.d)(t,e.direction);const r=1/(0,ae.b)(t);(0,ae.j)(t,t,r),s((0,ae.C)(e.origin,dr)*r,t,-1,mr)}}}}}intersectDraped(e,t,r,i,n){const s=e.attributes.get("position"),o=e.attributes.get("size"),a=e.attributes.get("rotation"),l=this.parameters,c=(0,Nt.c)(l),u=e.attributes.get("featureAttribute"),d=null==u?null:(0,x.ci)(u.data,Sr),{scaleX:h,scaleY:f}=Or(d,l,e.screenToWorldRatio),p=Ir*e.screenToWorldRatio;for(let t=0;t<s.data.length/s.size;t++){const u=t*s.size,d=s.data[u],m=s.data[u+1],y=t*o.size;Pr[0]=o.data[y],Pr[1]=o.data[y+1];let g=0;l.textureIsSignedDistanceField&&(g=Math.min(l.outlineSize,.5*Pr[0])*e.screenToWorldRatio/2),Pr[0]*=h,Pr[1]*=f;const b=t*a.size,_=l.rotation+a.data[b];cr(r,d,m,Pr,p,g,_,l,c)&&i(n.distance,n.normal,-1)}}createBufferWriter(){return new Mr}applyShaderOffsetsView(e,t,r,i,n,s,o){const a=lr(t,r,n,Ar);return this._applyVerticalGroundOffsetView(e,a,n,o),Rr(this.parameters,o,a,n,s),this._applyPolygonOffsetView(o,a,i[3],n,o),this._applyCenterOffsetView(o,i,o),o}applyShaderOffsetsNDC(e,t,r,i,n){return this._applyCenterOffsetNDC(e,t,r,i),null!=n&&(0,ae.d)(n,i),this._applyPolygonOffsetNDC(i,t,r,i),i}_applyPolygonOffsetView(e,t,r,i,n){const s=i.aboveGround?1:-1;let o=Math.sign(r);0===o&&(o=s);const a=s*o;if(this.parameters.shaderPolygonOffset<=0)return(0,ae.d)(n,e);const l=(0,O.qE)(Math.abs(t.cosAngle),.01,1),c=1-Math.sqrt(1-l*l)/l/i.viewport[2];return(0,ae.j)(n,e,a>0?c:1/c),n}_applyVerticalGroundOffsetView(e,t,r,i){const n=(0,ae.b)(e),s=r.aboveGround?1:-1,o=r.computeRenderPixelSizeAtDist(n)*Ft.R,a=(0,ae.j)(dr,t.normal,s*o);return(0,ae.i)(i,e,a),i}_applyCenterOffsetView(e,t,r){const i="screen"!==this.parameters.centerOffsetUnits;return r!==e&&(0,ae.d)(r,e),i&&(r[0]+=t[0],r[1]+=t[1],t[2]&&((0,ae.n)(hr,r),(0,ae.a)(r,r,(0,ae.j)(hr,hr,t[2])))),r}_applyCenterOffsetNDC(e,t,r,i){const n="screen"!==this.parameters.centerOffsetUnits;return i!==e&&(0,ae.d)(i,e),n||(i[0]+=t[0]/r.fullWidth*2,i[1]+=t[1]/r.fullHeight*2),i}_applyPolygonOffsetNDC(e,t,r,i){const n=this.parameters.shaderPolygonOffset;if(e!==i&&(0,ae.d)(i,e),n){const e=r.aboveGround?1:-1,s=e*Math.sign(t[3]);i[2]-=(s||e)*n}return i}set visible(e){this._visible=e}get visible(){const{color:e,outlineSize:t,outlineColor:r}=this.parameters,i=e[3]>=sr.Q||t>=sr.Q&&r[3]>=sr.Q;return this._visible&&i}createGLMaterial(e){return new ar(e)}calculateRelativeScreenBounds(e,t,r=(0,P.vt)()){return function(e,t,r,i){i[0]=e.anchorPosition[0]*-t[0]+e.screenOffset[0]*r,i[1]=e.anchorPosition[1]*-t[1]+e.screenOffset[1]*r}(this.parameters,e,t,r),r[2]=r[0]+e[0],r[3]=r[1]+e[1],r}}class ar extends jt.m8{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.getTechnique(Wt,e)}}function lr(e,t,r,i){return function(e){return(t=e)instanceof Float32Array&&t.length>=16||function(e){return Array.isArray(e)&&e.length>=16}(e);var t}(t)&&(t=(0,Et.z0)(_r,t)),(0,ae.t)(i.normal,e,t),(0,ae.p)(i.normal,i.normal,r.viewInverseTransposeMatrix),i.cosAngle=(0,ae.g)(pr,Br),i}function cr(e,t,r,i,n,s,o,a,l){let c=t-n-i[0]*l[0],u=c+i[0]+2*n,d=r-n-i[1]*l[1],h=d+i[1]+2*n;const f=a.distanceFieldBoundingBox;return a.textureIsSignedDistanceField&&null!=f&&(c+=i[0]*f[0],d+=i[1]*f[1],u-=i[0]*(1-f[2]),h-=i[1]*(1-f[3]),c-=s,u+=s,d-=s,h+=s),(0,E.hZ)(gr,t,r),(0,E.e$)(yr,e,gr,(0,O.kU)(o)),yr[0]>c&&yr[0]<u&&yr[1]>d&&yr[1]<h}const ur=new zt.fc,dr=(0,w.vt)(),hr=(0,w.vt)(),fr=(0,x.vt)(),pr=(0,w.vt)(),mr=(0,w.vt)(),yr=(0,M.vt)(),gr=(0,M.vt)(),br=(0,Mt.vt)(),_r=(0,Mt.vt)(),vr=(0,v.vt)(),wr=(0,x.vt)(),xr=(0,w.vt)(),Cr=(0,w.vt)(),Sr=(0,x.vt)(),Ar={normal:pr,cosAngle:0},Tr=1,Ir=2,Pr=(0,M.fA)(0,0),Br=(0,w.fA)(0,0,1);class Er extends jt.NV{constructor(){super(...arguments),this.renderOccluded=1,this.isDecoration=!1,this.color=(0,x.CN)(1,1,1,1),this.polygonOffset=!1,this.anchorPosition=(0,M.fA)(.5,.5),this.screenOffset=[0,0],this.shaderPolygonOffset=1e-5,this.textureIsSignedDistanceField=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.outlineColor=(0,x.CN)(1,1,1,1),this.outlineSize=0,this.distanceFieldBoundingBox=(0,x.vt)(),this.rotation=0,this.hasRotation=!1,this.vvSizeEnabled=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.hasSlicePlane=!1,this.pixelSnappingEnabled=!0,this.occlusionTest=!0,this.occludedFragmentFade=!1,this.horizonCullingEnabled=!1,this.centerOffsetUnits="world",this.drawAsLabel=!1,this.depthEnabled=!0,this.isFocused=!0,this.focusStyle="bright",this.draped=!1,this.isLabel=!1}get hasVVSize(){return!!this.vvSize}get hasVVColor(){return!!this.vvColor}get hasVVOpacity(){return!!this.vvOpacity}}class Mr{constructor(){this.layout=Jt,this.instanceLayout=tr()}elementCount(e){return e.get("position").indices.length}elementCountBaseInstance(e){return e.get("uv0").indices.length}write(e,t,r,i,n,s){const{position:o,normal:a,color:l,size:c,rotation:u,centerOffsetAndDistance:d,featureAttribute:h,uvi:f}=n;(0,Lt.Hk)(r.get("position"),e,o,s),(0,Lt.p1)(r.get("normal"),t,a,s);const p=r.get("position").indices.length;let m=0,y=0,g=Nt.f,b=Nt.f;const _=r.get("uvi")?.data;_&&_.length>=4&&(m=_[0],y=_[1],g=_[2],b=_[3]);for(let e=0;e<p;++e){const t=s+e;f.setValues(t,m,y,g,b)}if((0,Lt.tb)(r.get("color"),4,l,s),(0,Lt.Ue)(r.get("size"),c,s),(0,Lt.uO)(r.get("rotation"),u,s),r.get("centerOffsetAndDistance")?(0,Lt.Ut)(r.get("centerOffsetAndDistance"),d,s):(0,Lt.Pq)(d,s,p),r.get("featureAttribute")?(0,Lt.Ut)(r.get("featureAttribute"),h,s):(0,Lt.Pq)(h,s,p),null!=i){const e=r.get("position")?.indices;if(e){const t=e.length,r=n.getField("olidColor",Ot.XP);(0,Lt.vx)(i,r,t,s)}}return{numVerticesPerItem:1,numItems:p}}writeBaseInstance(e,t){const{uv0:r}=t;(0,Lt.Ue)(e.get("uv0"),r,0)}intersect(e,t,r,i,n,s,o){const{options:{selectionMode:a,hud:l,excludeLabels:c},point:u,camera:d}=i;if(!a||!l||c&&t.isLabel||!u)return;const h=this.instanceLayout.createView(e),{position:f,normal:p,rotation:m,size:y,featureAttribute:g,centerOffsetAndDistance:b}=h,_="screen"===t.centerOffsetUnits,v=(0,Nt.c)(t);if(null==f||null==p||null==m||null==y||null==b||null==d)return;const x=null==g?null:g.getVec(0,Sr),{scaleX:C,scaleY:S}=Or(x,t,d.pixelRatio),T=f.count;for(let e=0;e<T;e++){if(f.getVec(e,dr),null!=r&&(0,ae.i)(dr,dr,r),(0,ae.p)(dr,dr,d.viewMatrix),b.getVec(e,wr),(0,ae.h)(xr,wr[0],wr[1],wr[2]),!_&&(dr[0]+=xr[0],dr[1]+=xr[1],0!==xr[2])){const e=xr[2];(0,ae.n)(xr,dr),(0,ae.e)(dr,dr,(0,ae.j)(xr,xr,e))}if(p.getVec(e,hr),lr(hr,br,d,Ar),Rr(t,dr,Ar,d,ur),d.applyProjection(dr,fr),fr[0]>-1){_&&(xr[0]||xr[1])&&(fr[0]+=xr[0]*d.pixelRatio,0!==xr[1]&&(fr[1]+=ur.alignmentEvaluator.apply(xr[1])*d.pixelRatio),d.unapplyProjection(fr,dr)),fr[0]+=t.screenOffset[0]*d.pixelRatio,fr[1]+=t.screenOffset[1]*d.pixelRatio,fr[0]=Math.floor(fr[0]),fr[1]=Math.floor(fr[1]),y.getVec(e,Pr),ur.evaluator.applyVec2(Pr,Pr);const r=Tr*d.pixelRatio;let n=0;t.textureIsSignedDistanceField&&(n=Math.min(t.outlineSize,.5*Pr[0])*d.pixelRatio/2),Pr[0]*=C,Pr[1]*=S;const s=m.get(e),a=t.rotation+s;if(cr(u,fr[0],fr[1],Pr,r,n,a,t,v)){const t=i.ray;if((0,ae.p)(mr,dr,(0,A.B8)(vr,d.viewMatrix)),fr[0]=u[0],fr[1]=u[1],d.unprojectFromRenderScreen(fr,dr)){const r=(0,w.vt)();(0,ae.d)(r,t.direction);const i=1/(0,ae.b)(r);(0,ae.j)(r,r,i),o((0,ae.C)(t.origin,dr)*i,r,e,mr)}}}}}}function Or(e,t,r){return null==e||null==t.vvSize?{scaleX:r,scaleY:r}:((0,Rt.VC)(Cr,t,e),{scaleX:Cr[0]*r,scaleY:Cr[1]*r})}function Rr(e,t,r,i,n){if(!e.verticalOffset?.screenLength){const i=(0,ae.b)(t);return n.update(r.cosAngle,i,e.screenSizePerspective,e.screenSizePerspectiveMinPixelReferenceSize,e.screenSizePerspectiveAlignment,null),t}const s=(0,ae.b)(t),o=e.screenSizePerspectiveAlignment??e.screenSizePerspective,a=(0,Ut.kE)(i,s,e.verticalOffset,r.cosAngle,o,e.screenSizePerspectiveMinPixelReferenceSize);return n.update(r.cosAngle,s,e.screenSizePerspective,e.screenSizePerspectiveMinPixelReferenceSize,e.screenSizePerspectiveAlignment,null),(0,ae.j)(r.normal,r.normal,a),(0,ae.i)(t,t,r.normal)}class Dr{constructor(e,t){this._mainThreadDelegate=t,this._bufferWriters=new Map,this.globalViewingMode=1===e}createRenderCommandBuffer(e=[],t=[]){return{commands:e,transferList:t}}mergeRenderCommandBuffers(e){const t=this.createRenderCommandBuffer();for(const r of e)null!=r&&(t.commands.push(...r.commands),t.transferList.push(...r.transferList));return t}async createTexture(e){const{data:t,parameters:r}=e();return await this._mainThreadDelegate.createTexture(t,r)}async releaseTexture(e){const t=this._destroyTexture(e);return new p(this,t,[])}_destroyTexture(e){return{commands:[{id:"destroy-texture",textureId:e}],transferList:[]}}async createMaterial(e){const{type:t,parameters:r}=e,i=Qe("material");let n,s;switch(t){case"default":n=new De.$U(e.parameters,{spherical:this.globalViewingMode}),s={type:t,materialId:i,parameters:e.parameters};break;case"hud":n=new or(r,this.globalViewingMode),s={type:t,materialId:i,parameters:e.parameters}}return this._bufferWriters.set(i,n.createBufferWriter()),await this._mainThreadDelegate.createMaterial(s),i}destroyMaterial(e){return{commands:[{id:"destroy-material",materialId:e}],transferList:[]}}updateMaterial(e){return{commands:[{...e,id:"update-material"}],transferList:[]}}async createDirectRenderer(e){return await this._mainThreadDelegate.createDirectRenderer(e),e}async destroyDirectRenderer(e){await this._mainThreadDelegate.destroyDirectRenderer(e)}addDirectRendererGeometry(e,t,r,i){const{materialId:n}=t;if(null==this._bufferWriters.get(n))throw new Error(`no bufferwriter found for material ${n}`);const{renderGeometryBuffer:s,renderGeometryBufferItems:o}=this.createRenderGeometryBuffer(t,r,i);return this.addDirectRendererGeometryBuffer(n,e,s,o,r)}updateDirectRendererGeometry(e,t,r,i){const{materialId:n}=t;if(null==this._bufferWriters.get(n))throw new Error(`no bufferwriter found for material ${n}`);const{renderGeometryBuffer:s,renderGeometryBufferItems:o}=this.createRenderGeometryBuffer(t,r,i);return this.updateDirectRendererGeometryBuffer(n,e,s,o,r)}addDirectRendererGeometryBuffer(e,t,r,i,n){const{objectIds:s,visibilities:o}=i;return{commands:[{id:"add-direct-renderer-geometry-buffer",rendererId:e,groupId:t,renderGeometryBuffer:r,renderGeometryBufferItems:i,localOrigin:n}],transferList:[r.data,s.buffer,o.buffer]}}updateDirectRendererGeometryBuffer(e,t,r,i,n){const{objectIds:s,visibilities:o}=i;return{commands:[{id:"update-direct-renderer-geometry-buffer",rendererId:e,groupId:t,renderGeometryBuffer:r,renderGeometryBufferItems:i,localOrigin:n}],transferList:[r.data,s.buffer,o.buffer]}}removeDirectRendererGeometryBuffer(e,t){return{commands:[{id:"remove-direct-renderer-geometry-buffer",rendererId:e,groupId:t}],transferList:[]}}async createLodRenderer(e){const t=Qe("lod-renderer"),r=new Set,i={levels:e.levels.map(e=>({components:e.components.map(e=>{const t=e.attributes.get("position");if(!t||0===t.indices.length)throw new Error("positions attribute expected");const i=(0,N.tM)(t.indices.length/3),n=new Bt.j(i,3,t);if(null==this._bufferWriters.get(e.materialId))throw new Error("writer not found");const{renderGeometryBuffer:s}=this.createRenderGeometryBuffer(e,null);return r.add(s.data),{materialId:e.materialId,renderGeometryBuffer:s,boundingInfo:{bbMax:n.bbMax,bbMin:n.bbMin}}}),minScreenSpaceRadius:e.minScreenSpaceRadius}))};return await this._mainThreadDelegate.createLodRenderer(t,i,Array.from(r)),t}destroyLodRenderer(e){return{commands:[{id:"destroy-lod-renderer",rendererId:e}],transferList:[]}}addLodInstances(e,t,r){return{commands:[{id:"add-lod-instances",rendererId:e,groupId:t,data:r}],transferList:[r.featureIds.buffer,r.globalTransforms.buffer,r.localTransforms.buffer,r.visibility.buffer]}}removeLodInstances(e,t){return{commands:[{id:"remove-lod-instances",rendererId:e,groupId:t}],transferList:[]}}updateLodInstancesData(e,t,r){return{commands:[{id:"update-lod-instance-data",rendererId:e,groupId:t,globalTransforms:r}],transferList:[r.buffer]}}updateVisibility(e,t,r){return{commands:[{id:"update-visibility",rendererId:e,groupId:t,visibility:r}],transferList:[r.buffer]}}async dispatchRenderCommands(e){0!==e.commands.length&&await this._mainThreadDelegate.executeRenderCommands(e)}createRenderGeometryBuffer(e,t,r){const{materialId:i,visibilities:n,objectIds:s}=e,o=this._bufferWriters.get(i);if(null==o)throw new Error("no registered bufferWriter for material found");let a=null;if(e.transformation&&t)(0,A.C)(Fr,e.transformation),Fr[12]-=t[0],Fr[13]-=t[1],Fr[14]-=t[2],a=Fr;else{if(t)throw new Error("not implemented");e.transformation&&(a=e.transformation)}let l=null;a&&((0,A.B8)(jr,Fr),(0,A.mg)(jr,jr),l=jr);const c=e.attributes,u=o.elementCount(c),d=r?o.instanceLayout:o.layout;if(!d)throw new Error("Missing layout");const h=d.stride/4;u>Math.floor(Vr/h)&&console.warn("geometry with very large number of elements encountered");const f=d.createBuffer(u),p=o.write(a,l,c,e.olidColor,f,0);if(null==p)throw new Error("Bufferwriter.write does not provide item information.");if(n.length!==p.numItems||s.length!==p.numItems)throw new Error("Unexpected mismatch between number of RenderGeometryBufferItems and provided objectIds/visibility flags.");return{renderGeometryBuffer:{data:f.buffer,elementCount:u},renderGeometryBufferItems:{objectIds:s,visibilities:n,ranges:{numVertices:p.numVerticesPerItem,numItems:p.numItems}}}}async setBaseInstance(e,t){await this._mainThreadDelegate.setBaseInstance(e,t)}}const Fr=(0,v.vt)(),jr=(0,v.vt)(),Vr=4194304;var zr=r(98764),Lr=r(65806);const Ur=(0,w.vt)();var Nr=r(53966),Hr=r(4341),qr=r(11964),Gr=r(44280),kr=r(32114);const $r=()=>Nr.A.getLogger("esri.views.3d.support.geometryUtils.boundedPlane");function Yr(e=di){return{plane:(0,ue.vt)(e.plane),origin:(0,w.o8)(e.origin),basis1:(0,w.o8)(e.basis1),basis2:(0,w.o8)(e.basis2)}}function Zr(e,t=Yr()){return Xr(e.origin,e.basis1,e.basis2,t)}function Xr(e,t,r,i=Yr()){return(0,ae.d)(i.origin,e),(0,ae.d)(i.basis1,t),(0,ae.d)(i.basis2,r),Wr(i),function(e,t){Math.abs((0,ae.g)(e.basis1,e.basis2)/((0,ae.b)(e.basis1)*(0,ae.b)(e.basis2)))>1e-6&&$r().warn(t,"Provided basis vectors are not perpendicular"),Math.abs((0,ae.g)(e.basis1,oi(e)))>1e-6&&$r().warn(t,"Basis vectors and plane normal are not perpendicular"),Math.abs(-(0,ae.g)(oi(e),e.origin)-e.plane[3])>1e-6&&$r().warn(t,"Plane offset is not consistent with plane origin")}(i,"fromValues()"),i}function Wr(e){(0,ue.mR)(e.basis2,e.basis1,e.origin,e.plane)}function Qr(e,t,r){e!==r&&Zr(e,r);const i=(0,ae.j)(kr.rq.get(),oi(e),t);return(0,ae.i)(r.origin,r.origin,i),r.plane[3]-=t,r}function Jr(e,t=Yr()){const r=(e[2]-e[0])/2,i=(e[3]-e[1])/2;return(0,ae.h)(t.origin,e[0]+r,e[1]+i,0),(0,ae.h)(t.basis1,r,0,0),(0,ae.h)(t.basis2,0,i,0),(0,ue.fA)(0,0,1,0,t.plane),t}function Kr(e,t,r){return!!(0,ue.Ui)(e.plane,t,r)&&ai(e,r)}function ei(e,t,r){const i=hi.get();ui(e,t,i,hi.get());let n=Number.POSITIVE_INFINITY;for(const s of yi){const o=ci(e,s,fi.get()),a=kr.rq.get();if((0,ue.T7)(i,o,a)){const e=(0,ae.D)(kr.rq.get(),t.origin,a),i=Math.abs((0,O.XM)((0,ae.g)(t.direction,e)));i<n&&(n=i,(0,ae.d)(r,a))}}return n===Number.POSITIVE_INFINITY?ti(e,t,r):r}function ti(e,t,r){if(Kr(e,t,r))return r;const i=hi.get(),n=hi.get();ui(e,t,i,n);let s=Number.POSITIVE_INFINITY;for(const o of yi){const a=ci(e,o,fi.get()),l=kr.rq.get();if((0,ue.gv)(i,a,l)){const e=(0,de.kb)(t,l);if(!(0,ue.Tj)(n,l))continue;e<s&&(s=e,(0,ae.d)(r,l))}}return ni(e,t.origin)<s&&ri(e,t.origin,r),r}function ri(e,t,r){const i=(0,ue._I)(e.plane,t,kr.rq.get()),n=(0,qr.H6)(li(e,e.basis1),i,-1,1,kr.rq.get()),s=(0,qr.H6)(li(e,e.basis2),i,-1,1,kr.rq.get());return(0,ae.e)(r,(0,ae.i)(kr.rq.get(),n,s),e.origin),r}function ii(e,t,r){const{origin:i,basis1:n,basis2:s}=e,o=(0,ae.e)(kr.rq.get(),t,i),a=(0,Gr.gr)(n,o),l=(0,Gr.gr)(s,o),c=(0,Gr.gr)(oi(e),o);return(0,ae.h)(r,a,l,c)}function ni(e,t){const r=ii(e,t,kr.rq.get()),{basis1:i,basis2:n}=e,s=(0,ae.b)(i),o=(0,ae.b)(n),a=Math.max(Math.abs(r[0])-s,0),l=Math.max(Math.abs(r[1])-o,0),c=r[2];return a*a+l*l+c*c}function si(e,t){const r=-e.plane[3];return(0,Gr.gr)(oi(e),t)-r}function oi(e){return(0,ue.Qj)(e.plane)}function ai(e,t){const r=(0,ae.e)(kr.rq.get(),t,e.origin),i=(0,ae.E)(e.basis1),n=(0,ae.E)(e.basis2),s=(0,ae.g)(e.basis1,r),o=(0,ae.g)(e.basis2,r);return-s-i<0&&s-i<0&&-o-n<0&&o-n<0}function li(e,t){const r=fi.get();return(0,ae.d)(r.origin,e.origin),(0,ae.d)(r.vector,t),r}function ci(e,t,r){const{basis1:i,basis2:n,origin:s}=e,o=(0,ae.j)(kr.rq.get(),i,t.origin[0]),a=(0,ae.j)(kr.rq.get(),n,t.origin[1]);(0,ae.i)(r.origin,o,a),(0,ae.i)(r.origin,r.origin,s);const l=(0,ae.j)(kr.rq.get(),i,t.direction[0]),c=(0,ae.j)(kr.rq.get(),n,t.direction[1]);return(0,ae.j)(r.vector,(0,ae.i)(l,l,c),2),r}function ui(e,t,r,i){const n=oi(e);(0,ue.mR)(n,t.direction,t.origin,r),(0,ue.mR)((0,ue.Qj)(r),n,t.origin,i)}const di={plane:(0,ue.vt)(),origin:(0,w.fA)(0,0,0),basis1:(0,w.fA)(1,0,0),basis2:(0,w.fA)(0,1,0)},hi=new Hr.I(ue.vt),fi=new Hr.I(qr.vt),pi=(0,w.vt)(),mi=new Hr.I(()=>Yr()),yi=[{origin:[-1,-1],direction:[1,0]},{origin:[1,-1],direction:[0,1]},{origin:[1,1],direction:[-1,0]},{origin:[-1,1],direction:[0,-1]}],gi=(0,v.vt)(),bi=(0,v.vt)(),_i=Object.freeze(Object.defineProperty({__proto__:null,altitudeAt:si,axisAt:function(e,t,r,i){return function(e,t,r){switch(t){case 0:(0,ae.d)(r,e.basis1),(0,ae.n)(r,r);break;case 1:(0,ae.d)(r,e.basis2),(0,ae.n)(r,r);break;case 2:(0,ae.d)(r,oi(e))}return r}(e,r,i)},cameraFrustumCoverage:function(e,t){return(t-e)/t},closestPoint:ti,closestPointOnSilhouette:ei,copy:Zr,copyWithoutVerify:function(e,t){(0,ae.d)(t.origin,e.origin),(0,ae.d)(t.basis1,e.basis1),(0,ae.d)(t.basis2,e.basis2),(0,ue.C)(t.plane,e.plane)},create:Yr,distance:function(e,t){return Math.sqrt(ni(e,t))},distance2:ni,distanceToSilhouette:function(e,t){let r=Number.NEGATIVE_INFINITY;for(const i of yi){const n=ci(e,i,fi.get()),s=(0,qr.kb)(n,t);s>r&&(r=s)}return Math.sqrt(r)},elevate:Qr,equals:function(e,t){return(0,ae.m)(e.basis1,t.basis1)&&(0,ae.m)(e.basis2,t.basis2)&&(0,ae.m)(e.origin,t.origin)},extrusionContainsPoint:function(e,t){return(0,ue.Tj)(e.plane,t)&&ai(e,t)},fromAABoundingRect:Jr,fromValues:Xr,getExtent:function(e,t){const r=e.basis1[0],i=e.basis2[1],[n,s]=e.origin;return(0,P.fA)(n-r,s-i,n+r,s+i,t)},intersectRay:Kr,intersectRayClosestSilhouette:function(e,t,r){if(Kr(e,t,r))return r;const i=ei(e,t,kr.rq.get());return(0,ae.i)(r,t.origin,(0,ae.j)(kr.rq.get(),t.direction,(0,ae.C)(t.origin,i)/(0,ae.b)(t.direction))),r},normal:oi,projectPoint:ri,projectPointLocal:ii,rotate:function(e,t,r,i){return e!==i&&Zr(e,i),(0,A.$0)(bi,t,r),(0,ae.p)(i.basis1,e.basis1,bi),(0,ae.p)(i.basis2,e.basis2,bi),Wr(i),i},setAltitudeAt:function(e,t,r,i){const n=si(e,t),s=(0,ae.j)(pi,oi(e),r-n);return(0,ae.i)(i,t,s),i},setExtent:function(e,t,r){return Jr(t,r),Qr(r,si(e,e.origin),r),r},transform:function(e,t,r){return e!==r&&Zr(e,r),(0,A.B8)(gi,t),(0,A.mg)(gi,gi),(0,ae.p)(r.basis1,e.basis1,gi),(0,ae.p)(r.basis2,e.basis2,gi),(0,ae.p)((0,ue.Qj)(r.plane),(0,ue.Qj)(e.plane),gi),(0,ae.p)(r.origin,e.origin,t),(0,ue.mP)(r.plane,r.plane,r.origin),r},up:di,updateUnboundedPlane:Wr,wrap:function(e,t,r){const i=mi.get();return i.origin=e,i.basis1=t,i.basis2=r,i.plane=(0,ue.LV)(0,0,0,0),Wr(i),i}},Symbol.toStringTag,{value:"Module"}));var vi=r(94008);function wi(e,t,r=function(e){return{operations:e,value:e.create()}}(e)){return r.operations=e,e.copy(t,r.value),r}const xi=2**50;function Ci(e,t,r,i){return e.operations.setAltitudeAt(e.value,t,r,i)}function Si(e,t,r){return e.operations.elevate(e.value,t,r.value)}const Ai=(0,w.vt)();function Ti(e){return"point"===e.type}(0,w.vt)();class Ii{constructor(e,t,r,i){this.viewingMode=e,this.spatialReference=t,this.unitInMeters=r,this._coordinateSystem=i,this._tmpCoordinateSystem=function(e){const{value:t,operations:r}=e;return{operations:r,value:r.create(t)}}(i),this.referenceEllipsoid=(0,he.tO)(t),this.sphericalPCPF=(0,zr.lO)(t)}set extent(e){e&&function(e,t,r){e.operations.setExtent(e.value,t,r.value)}(this._coordinateSystem,e,this._coordinateSystem)}get extent(){return e=this._coordinateSystem,t=(0,P.vt)(),e.operations.getExtent(e.value,t),t;var e,t}getAltitude(e){return function(e,t){return e.operations.altitudeAt(e.value,t)}(this._coordinateSystem,e)}setAltitude(e,t,r=e){return Ci(this._coordinateSystem,r,t,e)}setAltitudeOfTransformation(e,t){var r,i,n,s;r=this._coordinateSystem,n=e,(i=t)!==(s=t)&&(0,A.C)(s,i),(0,ae.h)(Ai,s[12],s[13],s[14]),Ci(r,Ai,n,Ai),s[12]=Ai[0],s[13]=Ai[1],s[14]=Ai[2]}worldUpAtPosition(e,t){return function(e,t,r){return e.operations.axisAt(e.value,t,2,r)}(this._coordinateSystem,e,t)}worldBasisAtPosition(e,t,r){return function(e,t,r,i){return e.operations.axisAt(e.value,t,r,i)}(this._coordinateSystem,e,t,r)}basisMatrixAtPosition(e,t){const r=this.worldBasisAtPosition(e,0,kr.rq.get()),i=this.worldBasisAtPosition(e,1,kr.rq.get()),n=this.worldBasisAtPosition(e,2,kr.rq.get());return(0,A.hZ)(t,r[0],r[1],r[2],0,i[0],i[1],i[2],0,n[0],n[1],n[2],0,0,0,0,1),t}headingAtPosition(e,t){const r=this.worldUpAtPosition(e,kr.rq.get()),i=this.worldBasisAtPosition(e,1,kr.rq.get()),n=(0,Gr.EJ)(t,i,r);return(0,O.KJ)(n)}intersectManifoldClosestSilhouette(e,t,r){return Si(this._coordinateSystem,t,this._tmpCoordinateSystem),function(e,t,r){e.operations.intersectRayClosestSilhouette(e.value,t,r)}(this._tmpCoordinateSystem,e,r),r}intersectManifold(e,t,r){Si(this._coordinateSystem,t,this._tmpCoordinateSystem);const i=kr.rq.get();return function(e,t,r){return e.operations.intersectRay(e.value,t,r)}(this._tmpCoordinateSystem,e,i)?(0,ae.d)(r,i):null}intersectInfiniteManifold(e,t,r){if(1===this.viewingMode)return this.intersectManifold(e,t,r);Si(this._coordinateSystem,t,this._tmpCoordinateSystem);const i=this._tmpCoordinateSystem.value,n=kr.rq.get();return(0,ue.Ui)(i.plane,e,n)?(0,ae.d)(r,n):null}toRenderCoords(e,t,r){return Ti(e)?(0,Lr.g)(e,t,this.spatialReference):(0,V.F)(e,t,r,this.spatialReference)}fromRenderCoords(e,t,r=null){return Ti(t)?(null!=r&&(t.spatialReference=r),function(e,t,r){return!!(0,V.F)(e,t,Ur,r.spatialReference)&&(r.x=Ur[0],r.y=Ur[1],r.z=Ur[2],!0)}(e,this.spatialReference,t)?t:null):(0,V.F)(e,this.spatialReference,t,r)?t:null}static create(e,t){switch(e){case 2:return new Ii(2,t,(0,S.GA)(t),wi(_i,Xr([0,0,0],[xi,0,0],[0,xi,0])));case 1:return new Ii(1,t,1,function(e){return wi(vi.XG,new vi.iy(0,0,0,(0,he.tO)(e).radius))}(t))}}static renderUnitScaleFactor(e,t){return(0,S.KX)(e)/(0,S.KX)(t)}}let Pi=class extends n.nJ{constructor(){super(...arguments),this.remoteClient=null,this._featureStore=new dt,this._tileLocks=new st,this._tileManager=null,this._renderer=null,this._fetcher=null,this._queryEngine=null,this._defaultQueryJSON=null,this._mainThreadDelegate=null,this._viewSpatialReference=null,this._renderCommandContext=null,this._context=null}get updating(){return this._tileManager.updating}destroy(){this._featureStore.clear(),this._tileManager?.destroy()}async setup({viewSpatialReference:e,renderSpatialReference:t,viewingMode:r,layerInfo:i,layerViewInfo:n}){const s=u.A.fromJSON(e);this._viewSpatialReference=s;const a=u.A.fromJSON(t);this._fetcher=new Pt(this._viewSpatialReference,h.A.fromJSON(i.baseQuery),i.url,i.objectIdField,i.capabilities),this._queryEngine=new d.do({hasZ:!0,hasM:!1,geometryType:"esriGeometryPoint",featureIdInfo:{type:"object-id",fieldName:i.objectIdField},fieldsIndex:i.fieldIndex,availableFields:[i.objectIdField],spatialReference:e,featureStore:this._featureStore,timeInfo:i.timeInfo}),this._mainThreadDelegate={createTexture:async(e,t)=>{const r={data:e,parameters:t};return await this.remoteClient.invoke("createTexture",r,{transferList:[e.buffer]})},releaseTexture:async e=>{const t={uid:e};await this.remoteClient.invoke("releaseTexture",t)},createMaterial:async e=>{const t={materialJSON:e};await this.remoteClient.invoke("createMaterial",t)},destroyMaterial:async e=>{const t={materialId:e};await this.remoteClient.invoke("destroyMaterial",t)},createDirectRenderer:async e=>{const t={materialId:e};await this.remoteClient.invoke("createDirectRenderer",t)},destroyDirectRenderer:async e=>{const t={materialId:e};await this.remoteClient.invoke("destroyDirectRenderer",t)},createLodRenderer:async(e,t,r)=>{const i={rendererId:e,lodRenderGeometry:t};await this.remoteClient.invoke("createLoDRenderer",i,{transferList:r})},destroyLodRenderer:async e=>{const t={rendererId:e};await this.remoteClient.invoke("destroyLoDRenderer",t)},executeRenderCommands:async e=>{const t={commands:e.commands};await this.remoteClient.invoke("dispatchRenderCommands",t,{transferList:e.transferList})},applyElevationAlignmentTo:async e=>{const t={mapPoints:e};return await this.remoteClient.invoke("applyElevationAlignment",t,{transferList:[e.buffer]})},setBaseInstance:async(e,t)=>{const r={rendererId:e,baseInstance:t};await this.remoteClient.invoke("setBaseInstance",r,{transferList:null!=t?[t.data]:void 0})}};const f=Ii.create(r,a),p=new Dr(r,this._mainThreadDelegate);this._renderCommandContext=p;const m=new qe(s,a,this._mainThreadDelegate,f,p,i,n);this._context=m,this._renderer=m.symbolRendererFactory.createSymbolRendererFromJSON(i.renderer),this._defaultQueryJSON=new h.A({outSpatialReference:s}).toJSON();let y=null;if(null!=i.fullExtent){const e=l.A.fromJSON(i.fullExtent);await(0,c.initializeProjection)(e.spatialReference,s),y=(0,c.project)(e,s)}return this._tileManager=new et({loadTile:(e,t)=>this._fetcher.fetch(e,t),createAddCommand:(e,t)=>this._createAddFeatureDataCommand(e,t),createRemoveCommand:e=>this._createRemoveFeatureDataCommand(e),createUpdateCommand:(e,t)=>this._createUpdateFeatureDataVisibilityCommand(e,t),tileLocks:this._tileLocks,extent:y}),this.addHandles((0,o.wB)(()=>this.updating,e=>{this.emit("notify-updating",{updating:e})}),o.Vh),null!=this._renderer&&await this._renderer.load(),Ei}async executeQuery(e,t){return{result:await this._queryEngine.executeQuery(this._ensureQuery(e),t)}}async executeQueryForIds(e,t){const r=await this._queryEngine.executeQueryForIdSet(this._ensureQuery(e),t);return{result:Array.from(r)}}async executeQueryForCount(e,t){return{result:await this._queryEngine.executeQueryForCount(this._ensureQuery(e),t)}}async executeQueryForExtent(e,t){return{result:await this._queryEngine.executeQueryForExtent(this._ensureQuery(e),t)}}async executeQueryForLatestObservations(e,t){return{result:await this._queryEngine.executeQueryForLatestObservations(this._ensureQuery(e),t)}}async executeAttributeBinsQuery(e,t){return{result:await this._queryEngine.executeAttributeBinsQuery(e,t)}}onTileTreeChange(e){return this._tileManager.onTileTreeChange(e),Promise.resolve(Ei)}async onElevationChange(e){return Ei}async onLayerViewOpacityChange(e){const{_context:t,_renderer:r}=this;if(t.layerViewInfo.fullOpacity=e,null==r)return Ei;const i=await r.createUpdateLayerViewOpacityCommand(e);return await i.execute(),Ei}async onRendererChange(e){const{_context:t}=this,r=t.symbolRendererFactory.createSymbolRendererFromJSON(e);await r.load();const n=this._renderer;this._renderer=r;const s=[...this._tileManager.loadedTiles()],o=s.map(e=>e.tileId);{const e={stack:[],error:void 0,hasError:!1};try{(0,i.mS)(e,await this._tileLocks.lock(o),!1);const a=s.flatMap(e=>[n.createRemoveCommand(e.id),r.createAddCommand(e)]),l=await Promise.all(a),c=t.joinPipelineCommands(l);await c.execute()}catch(t){e.error=t,e.hasError=!0}finally{(0,i.hk)(e)}}const a=await n.createDestroyCommand();return await a.execute(),Ei}async _createAddFeatureDataCommand(e,t){const r=this._featureStore,i=this._renderer;let n;return n=null!=i?await i.createAddCommand(e):p.create(this._renderCommandContext),(0,s.Te)(t),n.appendPipelineStateCommand(()=>{r.addTile(e)}),n}async _createRemoveFeatureDataCommand(e){const t=this._featureStore,r=this._renderer;let i;return i=null!=r?await r.createRemoveCommand(e):p.create(this._renderCommandContext),i.appendPipelineStateCommand(()=>{t.removeTile(e)}),i}async _createUpdateFeatureDataVisibilityCommand(e,t){const r=this._renderer;let i;return i=null!=r?await r.createUpdateVisibilityCommand(e):p.create(this._renderCommandContext),(0,s.Te)(t),i}_ensureQuery(e){return e??this._defaultQueryJSON}};(0,i.Cg)([(0,a.MZ)()],Pi.prototype,"updating",null),Pi=(0,i.Cg)([(0,a.$K)("esri.views.3d.layers.graphics.pipeline.Feature3DPipelineWorker")],Pi);const Bi=Pi,Ei={result:void 0}},65215:(e,t,r)=>{r.d(t,{H:()=>i,R:()=>n});class i{constructor(e){this.layerViewUid=e}}class n extends i{constructor(e,t){super(e),this.graphicUid=t}}},65494:(e,t,r)=>{r.d(t,{L:()=>l,r:()=>o});var i=r(67076),n=r(90360),s=r(41214);function o(e,t){return l(e,null,t)}const a=(0,n.C)({types:s.Hg});function l(e,t,r){return e?e&&(e.styleName||e.styleUrl)&&"uniqueValue"!==e.type?(r?.messages&&r.messages.push(new i.A("renderer:unsupported","Only UniqueValueRenderer can be referenced from a web style, but found '"+e.type+"'",{definition:e,context:r})),null):a(e,t,r):null}},72385:(e,t,r)=>{function i(){return new Float32Array(3)}function n(e){const t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function s(e,t,r){const i=new Float32Array(3);return i[0]=e,i[1]=t,i[2]=r,i}function o(){return i()}function a(){return s(1,1,1)}function l(){return s(1,0,0)}function c(){return s(0,1,0)}function u(){return s(0,0,1)}r.d(t,{fA:()=>s,o8:()=>n,vt:()=>i});const d=o(),h=a(),f=l(),p=c(),m=u();Object.freeze(Object.defineProperty({__proto__:null,ONES:h,UNIT_X:f,UNIT_Y:p,UNIT_Z:m,ZEROS:d,clone:n,create:i,fromValues:s,ones:a,unitX:l,unitY:c,unitZ:u,zeros:o},Symbol.toStringTag,{value:"Module"}))},73681:(e,t,r)=>{r.d(t,{n:()=>l});var i=r(49186),n=r(53966),s=r(46140),o=r(95466),a=r(55674);class l{static async from(e,t,r){const o=e.dictionary_version?s.R.parse(e.dictionary_version):null,u=new Set(e.itemsNames),d={};if(t)for(const e in t)d[e]=t[e];if(e.authoringInfo.configuration)for(const t of e.authoringInfo.configuration)d.hasOwnProperty(t.name)||(d[t.name]=t.value);const h=new Set(e.authoringInfo.symbol);for(const e of Object.keys(r))h.delete(e);h.size&&n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("missing-fields: fieldMap entries for the following symbol fields are missing",{symbolFields:h});const f=await(0,a.xR)(e.expression,null,d);if(!f)throw new i.A("dictionary-renderer:expression-error","Unable to create dictionary renderer expression");const p=!o||!o.greaterEqual(4,0);p&&n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("Dictionary script does not support native field types. Applying fallback",{version:o});const m=new c(r,p);return new l(p,u,f,m)}constructor(e,t,r,i){this._requiresFieldCoercionToString=e,this._itemNames=t,this._compiled=r,this._reader=i}get itemNames(){return this._itemNames}evaluate(e,t,r,i){try{return this._reader.bind(e,r,i),this._compiled.evaluate(this._reader,{$view:{scale:t}})}catch(e){n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("arcade: dictionary script evaluation failed",{error:e})}return null}createDictionaryFieldsIndex(e){if(!this._requiresFieldCoercionToString)return new o.A(e);const t=e.map(e=>({...e,type:"esriFieldTypeString"}));return new o.A(t)}}class c extends a.Gj{constructor(e,t){super(),this._fieldMap=e,this._requiresFieldCoercionToString=t}_getField(e){const t=this._fieldMap[e]??e;return this._boundSchema.fieldsIndex.get(t)}field(e){if(!this._requiresFieldCoercionToString)return super.field(e,!1);const t=this._getField(e);return null==t||null==this._boundTarget.attributes[t.name]?"":""+this._boundTarget.attributes[t.name]}}},75503:(e,t,r)=>{r.d(t,{EC:()=>A,wq:()=>a});var i=r(4576),n=r(21818),s=(r(44208),r(15142)),o=r(11006);class a{constructor(e=9,t){this._compareMinX=h,this._compareMinY=f,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),w.prune(),x.prune(),C.prune(),S.prune()}all(e){l(this._data,e)}search(e,t){let r=this._data;const i=this._toBBox;if(_(e,r))for(w.clear();r;){for(let n=0,s=r.children.length;n<s;n++){const s=r.children[n],o=r.leaf?i(s):s;_(e,o)&&(r.leaf?t(s):b(e,o)?l(s,t):w.push(s))}r=w.pop()}}collides(e){let t=this._data;const r=this._toBBox;if(!_(e,t))return!1;for(w.clear();t;){for(let i=0,n=t.children.length;i<n;i++){const n=t.children[i],s=t.leaf?r(n):n;if(_(e,s)){if(t.leaf||b(e,s))return!0;w.push(n)}}t=w.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,r=e.length;t<r;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new I([]),this}remove(e){if(!e)return this;let t,r=this._data,s=null,o=0,a=!1;const l=this._toBBox(e);for(C.clear(),S.clear();r||C.length>0;){if(r||(r=C.pop(),s=C.data[C.length-1],o=S.pop()??0,a=!0),r.leaf&&(t=(0,i.qh)(r.children,(0,n.zI)(e),r.children.length,r.indexHint),-1!==t))return r.children.splice(t,1),C.push(r),this._condense(C),this;a||r.leaf||!b(r,l)?s?(o++,r=s.children[o],a=!1):r=null:(C.push(r),S.push(o),o=0,s=r,r=r.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,r,i){const n=r-t+1;let s=this._maxEntries;if(n<=s){const i=new I(e.slice(t,r+1));return c(i,this._toBBox),i}i||(i=Math.ceil(Math.log(n)/Math.log(s)),s=Math.ceil(n/s**(i-1)));const o=new P([]);o.height=i;const a=Math.ceil(n/s),l=a*Math.ceil(Math.sqrt(s));v(e,t,r,l,this._compareMinX);for(let n=t;n<=r;n+=l){const t=Math.min(n+l-1,r);v(e,n,t,a,this._compareMinY);for(let r=n;r<=t;r+=a){const n=Math.min(r+a-1,t);o.children.push(this._build(e,r,n,i-1))}}return c(o,this._toBBox),o}_insert(e,t,r){const i=this._toBBox,n=r?e:i(e);C.clear();const s=function(e,t,r,i){for(;i.push(t),!0!==t.leaf&&i.length-1!==r;){let r,i=1/0,n=1/0;for(let s=0,o=t.children.length;s<o;s++){const o=t.children[s],a=p(o),l=y(e,o)-a;l<n?(n=l,i=a<i?a:i,r=o):l===n&&a<i&&(i=a,r=o)}t=r||t.children[0]}return t}(n,this._data,t,C);for(s.children.push(e),d(s,n);t>=0&&C.data[t].children.length>this._maxEntries;)this._split(C,t),t--;!function(e,t,r){for(let i=r;i>=0;i--)d(t.data[i],e)}(n,C,t)}_split(e,t){const r=e.data[t],i=r.children.length,n=this._minEntries;this._chooseSplitAxis(r,n,i);const s=this._chooseSplitIndex(r,n,i);if(!s)return;const o=r.children.splice(s,r.children.length-s),a=r.leaf?new I(o):new P(o);a.height=r.height,c(r,this._toBBox),c(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(r,a)}_splitRoot(e,t){this._data=new P([e,t]),this._data.height=e.height+1,c(this._data,this._toBBox)}_chooseSplitIndex(e,t,r){let i,n,s;i=n=1/0;for(let o=t;o<=r-t;o++){const t=u(e,0,o,this._toBBox),a=u(e,o,r,this._toBBox),l=g(t,a),c=p(t)+p(a);l<i?(i=l,s=o,n=c<n?c:n):l===i&&c<n&&(n=c,s=o)}return s}_chooseSplitAxis(e,t,r){const i=e.leaf?this._compareMinX:h,n=e.leaf?this._compareMinY:f;this._allDistMargin(e,t,r,i)<this._allDistMargin(e,t,r,n)&&e.children.sort(i)}_allDistMargin(e,t,r,i){e.children.sort(i);const n=this._toBBox,s=u(e,0,t,n),o=u(e,r-t,r,n);let a=m(s)+m(o);for(let i=t;i<r-t;i++){const t=e.children[i];d(s,e.leaf?n(t):t),a+=m(s)}for(let i=r-t-1;i>=t;i--){const t=e.children[i];d(o,e.leaf?n(t):t),a+=m(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const r=e.data[t];if(0===r.children.length)if(t>0){const n=e.data[t-1],s=n.children;s.splice((0,i.qh)(s,r,s.length,n.indexHint),1)}else this.clear();else c(r,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let r=e;for(x.clear();r;){if(!0===r.leaf)for(const e of r.children)t((0,n.zI)(e));else x.pushArray(r.children);r=x.pop()??null}}function c(e,t){u(e,0,e.children.length,t,e)}function u(e,t,r,i,n){n||(n=new I([])),n.minX=1/0,n.minY=1/0,n.maxX=-1/0,n.maxY=-1/0;for(let s,o=t;o<r;o++)s=e.children[o],d(n,e.leaf?i(s):s);return n}function d(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function h(e,t){return e.minX-t.minX}function f(e,t){return e.minY-t.minY}function p(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function m(e){return e.maxX-e.minX+(e.maxY-e.minY)}function y(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function g(e,t){const r=Math.max(e.minX,t.minX),i=Math.max(e.minY,t.minY),n=Math.min(e.maxX,t.maxX),s=Math.min(e.maxY,t.maxY);return Math.max(0,n-r)*Math.max(0,s-i)}function b(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function _(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function v(e,t,r,i,n){const s=[t,r];for(;s.length;){const t=s.pop(),r=s.pop();if(t-r<=i)continue;const a=r+Math.ceil((t-r)/i/2)*i;(0,o.q)(e,a,r,t,n),s.push(r,a,a,t)}}const w=new s.A,x=new s.A,C=new s.A,S=new s.A({deallocator:void 0});class A{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class T extends A{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class I extends T{constructor(e){super(),this.children=e,this.leaf=!0}}class P extends T{constructor(e){super(),this.children=e,this.leaf=!1}}},76357:(e,t,r)=>{r.d(t,{A:()=>c});var i=r(31635),n=r(66552),s=r(25482),o=r(91429),a=r(93223);const l=new n.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let c=class extends s.o{constructor(e){super(e),this.name=null,this.type=null}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],c.prototype,"name",void 0),(0,i.Cg)([(0,a.e)(l),(0,o.MZ)({json:{write:{isRequired:!0}}})],c.prototype,"type",void 0),c=(0,i.Cg)([(0,o.$K)("esri.layers.support.Domain")],c)},77548:(e,t,r)=>{r.d(t,{Gh:()=>g,tk:()=>f,BR:()=>h,wI:()=>d,G$:()=>m,$x:()=>p,Ov:()=>l,UC:()=>s,W_:()=>c,OP:()=>y,TU:()=>a,XX:()=>o,jy:()=>u});var i=r(70333),n=r(11254);function s(e){return null!=e&&"object"==typeof e&&"type"in e&&"knowledge-graph-sublayer"===e.type}r(7762),r(84952),r(36563),r(36708),r(4146),new WeakMap,r(16215);const o={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function a(e){const t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function l(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function c(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}function u(e){return function(e){return null!=e&&"object"==typeof e&&"type"in e&&"feature"===e.type}(e)&&function(e){return"feature"===e?.type&&"feature-layer"===e.source?.type}(e)}async function d(e,t){const r=i.id?.findServerInfo(e);if(null!=r?.currentVersion)return r.owningSystemUrl||null;const s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;const o=`${e.slice(0,s)}/rest/info`,a=null!=t?t.signal:null,{data:l}=await(0,n.A)(o,{query:{f:"json"},responseType:"json",signal:a});return l?.owningSystemUrl||null}function h(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"catalog":case"catalog-footprint":case"csv":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function f(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":case"knowledge-graph-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}function p(e,t){return null}function m(e){return null}function y(e){return!e||"Feature Service"===e.type&&!e.sourceUrl}function g(e,t){if(!t||!y(e))return;const r=(e.url,null);r&&(e.url=r)}},79677:(e,t,r)=>{r.d(t,{A:()=>d});var i,n=r(31635),s=r(25482),o=r(88930),a=r(91429),l=r(98623),c=r(36005),u=r(43937);let d=class extends s.o{static{i=this}static get allTime(){return h}static get empty(){return f}static fromArray(e){return new i({start:null!=e[0]?new Date(e[0]):e[0],end:null!=e[1]?new Date(e[1]):e[1]})}constructor(e){super(e),this.end=null,this.start=null}readEnd(e,t){return null!=t.end?new Date(t.end):null}writeEnd(e,t){t.end=e?.getTime()??null}get isAllTime(){return this.equals(i.allTime)}get isEmpty(){return this.equals(i.empty)}readStart(e,t){return null!=t.start?new Date(t.start):null}writeStart(e,t){t.start=e?.getTime()??null}clone(){return new i({end:this.end,start:this.start})}equals(e){if(!e)return!1;const t=this.start?.getTime()??this.start,r=this.end?.getTime()??this.end,i=e.start?.getTime()??e.start,n=e.end?.getTime()??e.end;return t===i&&r===n}expandTo(e,t=l.qU){if(this.isEmpty||this.isAllTime)return this.clone();let r=this.start;r&&(r=(0,o.lL)(r,e,t));let n=this.end;if(n){const r=(0,o.lL)(n,e,t);n=n.getTime()===r.getTime()?r:(0,o.S1)(r,1,e,t)}return new i({start:r,end:n})}intersection(e){if(!e)return this.clone();if(this.isEmpty||e.isEmpty)return i.empty;if(this.isAllTime)return e.clone();if(e.isAllTime)return this.clone();const t=this.start?.getTime()??-1/0,r=this.end?.getTime()??1/0,n=e.start?.getTime()??-1/0,s=e.end?.getTime()??1/0;let o,a;return n>=t&&n<=r?o=n:t>=n&&t<=s&&(o=t),r>=n&&r<=s?a=r:s>=t&&s<=r&&(a=s),null==o||null==a||isNaN(o)||isNaN(a)?i.empty:new i({start:o===-1/0?null:new Date(o),end:a===1/0?null:new Date(a)})}offset(e,t,r=l.qU){if(this.isEmpty||this.isAllTime)return this.clone();const n=new i,{start:s,end:a}=this;return null!=s&&(n.start=(0,o.S1)(s,e,t,r)),null!=a&&(n.end=(0,o.S1)(a,e,t,r)),n}toArray(){return this.isEmpty?[void 0,void 0]:[this.start?.getTime()??null,this.end?.getTime()??null]}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return h.clone();const t=null!=this.start&&null!=e.start?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,r=null!=this.end&&null!=e.end?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new i({start:t,end:r})}};(0,n.Cg)([(0,a.MZ)({type:Date,json:{write:{allowNull:!0}}})],d.prototype,"end",void 0),(0,n.Cg)([(0,c.w)("end")],d.prototype,"readEnd",null),(0,n.Cg)([(0,u.K)("end")],d.prototype,"writeEnd",null),(0,n.Cg)([(0,a.MZ)({readOnly:!0,json:{read:!1}})],d.prototype,"isAllTime",null),(0,n.Cg)([(0,a.MZ)({readOnly:!0,json:{read:!1}})],d.prototype,"isEmpty",null),(0,n.Cg)([(0,a.MZ)({type:Date,json:{write:{allowNull:!0}}})],d.prototype,"start",void 0),(0,n.Cg)([(0,c.w)("start")],d.prototype,"readStart",null),(0,n.Cg)([(0,u.K)("start")],d.prototype,"writeStart",null),d=i=(0,n.Cg)([(0,a.$K)("esri.time.TimeExtent")],d);const h=new d,f=new d({start:void 0,end:void 0})},81961:(e,t,r)=>{r.d(t,{V:()=>n});var i=r(74333);class n extends i.n{constructor(e,t,r){super(e,"vec4",2,(i,n,s)=>i.setUniform4fv(e,t(n,s),r))}}},87582:(e,t,r)=>{r(6867),r(65215).R},95696:(e,t,r)=>{r.d(t,{A:()=>c});var i,n=r(31635),s=r(69540),o=r(25482),a=r(91429),l=r(93223);let c=class extends((0,s.OU)(o.o)){static{i=this}constructor(e){super(e),this.type="georeferenced",this.origin=null}static{this.absolute=new i}};(0,n.Cg)([(0,l.e)({georeferenced:"georeferenced"},{readOnly:!0})],c.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],nonNullable:!1,json:{write:!0}})],c.prototype,"origin",void 0),c=i=(0,n.Cg)([(0,a.$K)("esri.geometry.support.MeshGeoreferencedVertexSpace")],c)},96576:(e,t,r)=>{r.d(t,{A:()=>d});var i,n=r(31635),s=r(4718),o=r(91429),a=r(92438),l=r(63988),c=r(49849),u=r(93223);let d=i=class extends((0,l.h)(a.A)){constructor(e){super(e),this.description=null,this.label=null,this.symbol=null,this.type="simple"}async collectRequiredFields(e,t){await Promise.all([this.collectSymbolFields(e,t),this.collectVVRequiredFields(e,t)])}async collectSymbolFields(e,t){await Promise.all(this.symbols.map(r=>r.collectRequiredFields(e,t)))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}get symbols(){return this.symbol?[this.symbol]:[]}getAttributeHash(){return this.visualVariables?.reduce((e,t)=>e+t.getAttributeHash(),"")??""}getMeshHash(){return this.symbols.reduce((e,t)=>e+JSON.stringify(t),"")}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new i({description:this.description,label:this.label,symbol:(0,s.o8)(this.symbol),visualVariables:(0,s.o8)(this.visualVariables),authoringInfo:(0,s.o8)(this.authoringInfo)})}};(0,n.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],d.prototype,"description",void 0),(0,n.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,n.Cg)([(0,o.MZ)(c.Wp)],d.prototype,"symbol",void 0),(0,n.Cg)([(0,u.e)({simple:"simple"})],d.prototype,"type",void 0),d=i=(0,n.Cg)([(0,o.$K)("esri.renderers.SimpleRenderer")],d)},98453:(e,t,r)=>{r.d(t,{m:()=>i});const i=new(r(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})}}]);
|