@arcgis/core 4.27.0-next.20230321 → 4.27.0-next.20230322

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.
Files changed (136) hide show
  1. package/analysis/LineOfSightAnalysisObserver.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/02b6227c156ee0d8eb66.js +1 -0
  4. package/assets/esri/core/workers/chunks/{7e0c65aa61c2ff0c3504.js → 1c98b92933a48cf96c1e.js} +1 -1
  5. package/assets/esri/core/workers/chunks/321f272d4c7ed6b0cb46.js +1 -0
  6. package/assets/esri/core/workers/chunks/47bd558e2ce89f47f908.js +1 -0
  7. package/assets/esri/core/workers/chunks/76d6c1fc25f02bcf258e.js +1 -0
  8. package/assets/esri/core/workers/chunks/{c5d872adce711ec61ede.js → 8980c5dc389c27368b73.js} +1 -1
  9. package/assets/esri/core/workers/chunks/8d0143c0ff009b98a31f.js +1 -0
  10. package/assets/esri/core/workers/chunks/{6acaf28cba5d49a98fb6.js → 91b292f310f06a0cbf72.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{ff9efa829497557ec26a.js → aa4640a0207e0be224e2.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{92951b85676df776961f.js → ab8139e3a875a8b8dab9.js} +23 -25
  13. package/assets/esri/core/workers/chunks/{c8cd3fde6d8d43ddb954.js → b6cdf4daf07d9e55f61e.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{6b14673a4afd6ef81487.js → c76cabd2d2510a653dff.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{4be7647605300e07e843.js → c90fff7e28ba5b443b11.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{e637e47000f4dc48054d.js → cc7f4fd20443a2acf0f1.js} +1 -1
  17. package/assets/esri/core/workers/chunks/d19e9fab4f4fb765c6a3.js +1 -0
  18. package/assets/esri/core/workers/chunks/d9ef4891c8b0bdd90f5b.js +1 -0
  19. package/assets/esri/core/workers/chunks/{d92d6a43270fb0d366b4.js → de4f5c48efbcee82c3c1.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{32f9b488915a4a8864e5.js → f8b9e0c1671e55b61904.js} +1 -1
  21. package/assets/esri/views/3d/analysis/Slice/images/heading-rotate.ts.svg +7 -28
  22. package/assets/esri/views/3d/analysis/Slice/images/tilt-rotate.ts.svg +11 -0
  23. package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
  24. package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
  25. package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
  26. package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
  27. package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
  28. package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
  29. package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
  30. package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
  31. package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
  32. package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
  33. package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
  34. package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
  35. package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
  36. package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
  37. package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
  38. package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
  39. package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
  40. package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
  41. package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
  42. package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
  43. package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
  44. package/assets/esri/widgets/Editor/t9n/Editor_nb.json +1 -1
  45. package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
  46. package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
  47. package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
  48. package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
  49. package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
  50. package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
  51. package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
  52. package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
  53. package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
  54. package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
  55. package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
  56. package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
  57. package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
  58. package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
  59. package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
  60. package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
  61. package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
  62. package/chunks/ComponentShader.glsl.js +1 -1
  63. package/chunks/DefaultMaterial.glsl.js +4 -4
  64. package/chunks/vec42.js +1 -1
  65. package/core/Loadable.js +1 -1
  66. package/core/accessorSupport/Property.js +1 -1
  67. package/core/accessorSupport/tracking/SimpleTrackingTarget.js +1 -1
  68. package/geometry/support/buffer/math/vec4.js +1 -1
  69. package/interfaces.d.ts +1 -1
  70. package/layers/LineOfSightLayer.js +1 -1
  71. package/layers/SceneLayer.js +1 -1
  72. package/layers/mixins/ImageryTileMixin.js +1 -1
  73. package/layers/mixins/RefreshableLayer.js +1 -1
  74. package/layers/support/rasterFunctions/clipUtils.js +1 -1
  75. package/layers/support/rasterFunctions/stretchUtils.js +1 -1
  76. package/package.json +1 -1
  77. package/support/revision.js +1 -1
  78. package/views/2d/engine/vectorTiles/TileHandler.js +1 -1
  79. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  80. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  81. package/views/3d/analysis/Slice/images/Factory.js +1 -1
  82. package/views/3d/analysis/Slice/images/generateTextures.js +1 -1
  83. package/views/3d/analysis/Slice/images/heading-rotate-svg.js +1 -1
  84. package/views/3d/analysis/Slice/images/tilt-rotate-svg.js +5 -0
  85. package/views/3d/analysis/Slice/settings.js +5 -0
  86. package/views/3d/environment/Stars.js +1 -1
  87. package/views/3d/interactive/Manipulator3D.js +1 -1
  88. package/views/3d/interactive/editingTools/transformGraphic/ExtentTransformTool.js +1 -1
  89. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  90. package/views/3d/layers/PointCloudWorker.js +1 -1
  91. package/views/3d/layers/VectorTileLayerView3D.js +1 -1
  92. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  93. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  94. package/views/3d/layers/i3s/PointCloudRendererUtil.js +1 -1
  95. package/views/3d/layers/i3s/PointCloudWorkerUtil.js +1 -1
  96. package/views/3d/layers/i3s/PointGraphic.js +1 -1
  97. package/views/3d/state/ViewState.js +1 -1
  98. package/views/3d/state/controllers/SurfaceCollisionCorrectionController.js +1 -1
  99. package/views/3d/terrain/GeometryState.js +1 -1
  100. package/views/3d/terrain/PatchGeometry.js +1 -1
  101. package/views/3d/terrain/PatchGeometryFactory.js +1 -1
  102. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  103. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  104. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  105. package/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js +6 -5
  106. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +1 -1
  107. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +11 -11
  108. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeShadingNormal.glsl.js +1 -1
  109. package/views/3d/webgl-engine/lib/AnimationTimeStep.js +1 -1
  110. package/views/3d/webgl-engine/lib/AttributeArray.js +1 -1
  111. package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
  112. package/views/3d/webgl-engine/lib/Normals.js +5 -0
  113. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  114. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  115. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  116. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  117. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  118. package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
  119. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  120. package/views/3d/webgl-engine/shaders/TerrainTechniqueConfiguration.js +1 -1
  121. package/views/LayerViewManager.js +1 -1
  122. package/views/SceneView.js +1 -1
  123. package/views/layers/SceneLayerView.js +1 -1
  124. package/views/webgl/ShaderTranspiler.js +1 -1
  125. package/widgets/Expand.js +1 -1
  126. package/assets/esri/core/workers/chunks/0487ab23a20ec356ab4c.js +0 -1
  127. package/assets/esri/core/workers/chunks/29ee4f14602caf6967e4.js +0 -1
  128. package/assets/esri/core/workers/chunks/2c0775541cfec9d43acb.js +0 -1
  129. package/assets/esri/core/workers/chunks/4879164b48da9ad4547a.js +0 -1
  130. package/assets/esri/core/workers/chunks/69060e5cffc19e76062a.js +0 -1
  131. package/assets/esri/core/workers/chunks/a71a5c8a9aa302bf6f01.js +0 -1
  132. package/assets/esri/core/workers/chunks/bc002e4dff8859571a7a.js +0 -1
  133. package/assets/esri/views/3d/analysis/Slice/images/tilt-rotate.svg +0 -80
  134. package/assets/esri/views/3d/analysis/Slice/images/tilt-rotate.ts.png +0 -0
  135. package/views/3d/analysis/Slice/images/tilt-rotate-png.js +0 -5
  136. package/views/3d/webgl-engine/core/shaderLibrary/util/DecodeNormal.glsl.js +0 -8
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7035,3172,9880],{22303:(e,t,r)=>{r.d(t,{Z:()=>f});var n,o,i=r(35270),s=r(22021),a=r(75215);function u(e){return(0,s.uZ)((0,a.vU)(e),0,255)}function l(e,t,r){return e=Number(e),isNaN(e)?r:e<t?t:e>r?r:e}class c{static blendColors(e,t,r,n=new c){return n.r=Math.round(e.r+(t.r-e.r)*r),n.g=Math.round(e.g+(t.g-e.g)*r),n.b=Math.round(e.b+(t.b-e.b)*r),n.a=e.a+(t.a-e.a)*r,n._sanitize()}static fromRgb(e,t){const r=e.toLowerCase().match(/^(rgba?|hsla?)\(([\s\.\-,%0-9]+)\)/);if(r){const e=r[2].split(/\s*,\s*/),n=r[1];if("rgb"===n&&3===e.length||"rgba"===n&&4===e.length){const r=e[0];if("%"===r.charAt(r.length-1)){const r=e.map((e=>2.56*parseFloat(e)));return 4===e.length&&(r[3]=parseFloat(e[3])),c.fromArray(r,t)}return c.fromArray(e.map((e=>parseFloat(e))),t)}if("hsl"===n&&3===e.length||"hsla"===n&&4===e.length)return c.fromArray((0,i.B7)(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100,parseFloat(e[3])),t)}return null}static fromHex(e,t=new c){if(4!==e.length&&7!==e.length||"#"!==e[0])return null;const r=4===e.length?4:8,n=(1<<r)-1;let o=Number("0x"+e.substr(1));return isNaN(o)?null:(["b","g","r"].forEach((e=>{const i=o&n;o>>=r,t[e]=4===r?17*i:i})),t.a=1,t)}static fromArray(e,t=new c){return t._set(Number(e[0]),Number(e[1]),Number(e[2]),Number(e[3])),isNaN(t.a)&&(t.a=1),t._sanitize()}static fromString(e,t){const r=(0,i.St)(e)?(0,i.h$)(e):null;return r&&c.fromArray(r,t)||c.fromRgb(e,t)||c.fromHex(e,t)}static fromJSON(e){return e&&new c([e[0],e[1],e[2],e[3]/255])}static toUnitRGB(e){return null!=e?[e.r/255,e.g/255,e.b/255]:null}static toUnitRGBA(e){return null!=e?[e.r/255,e.g/255,e.b/255,null!=e.a?e.a:1]:null}constructor(e){this.r=255,this.g=255,this.b=255,this.a=1,e&&this.setColor(e)}get isBright(){return.299*this.r+.587*this.g+.114*this.b>=127}setColor(e){return"string"==typeof e?c.fromString(e,this):Array.isArray(e)?c.fromArray(e,this):(this._set(e.r??0,e.g??0,e.b??0,e.a??1),e instanceof c||this._sanitize()),this}toRgb(){return[this.r,this.g,this.b]}toRgba(){return[this.r,this.g,this.b,this.a]}toHex(){const e=this.r.toString(16),t=this.g.toString(16),r=this.b.toString(16);return`#${e.length<2?"0"+e:e}${t.length<2?"0"+t:t}${r.length<2?"0"+r:r}`}toCss(e=!1){const t=this.r+", "+this.g+", "+this.b;return e?`rgba(${t}, ${this.a})`:`rgb(${t})`}toString(){return this.toCss(!0)}toJSON(){return this.toArray()}toArray(e=c.AlphaMode.ALWAYS){const t=u(this.r),r=u(this.g),n=u(this.b);return e===c.AlphaMode.ALWAYS||1!==this.a?[t,r,n,u(255*this.a)]:[t,r,n]}clone(){return new c(this.toRgba())}hash(){return this.r<<24|this.g<<16|this.b<<8|255*this.a}equals(e){return null!=e&&e.r===this.r&&e.g===this.g&&e.b===this.b&&e.a===this.a}_sanitize(){return this.r=Math.round(l(this.r,0,255)),this.g=Math.round(l(this.g,0,255)),this.b=Math.round(l(this.b,0,255)),this.a=l(this.a,0,1),this}_set(e,t,r,n){this.r=e,this.g=t,this.b=r,this.a=n}}c.prototype.declaredClass="esri.Color",n=c||(c={}),(o=n.AlphaMode||(n.AlphaMode={}))[o.ALWAYS=0]="ALWAYS",o[o.UNLESS_OPAQUE=1]="UNLESS_OPAQUE";const f=c},99880:(e,t,r)=>{r.d(t,{V:()=>u});var n=r(68773),o=(r(3172),r(20102)),i=r(92604),s=r(17452);const a=i.Z.getLogger("esri.assets");function u(e){if(!n.Z.assetsPath)throw a.errorOnce("The API assets location needs to be set using config.assetsPath. More information: https://arcg.is/1OzLe50"),new o.Z("assets:path-not-set","config.assetsPath is not set");return(0,s.v_)(n.Z.assetsPath,e)}},46521:(e,t,r)=>{function n(){return[1,0,0,0,1,0,0,0,1]}function o(e,t,r,n,o,i,s,a,u){return[e,t,r,n,o,i,s,a,u]}function i(e,t){return new Float64Array(e,t,9)}r.d(t,{a:()=>i,c:()=>n,f:()=>o}),Object.freeze(Object.defineProperty({__proto__:null,clone:function(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8]]},create:n,createView:i,fromValues:o},Symbol.toStringTag,{value:"Module"}))},51305:(e,t,r)=>{r.d(t,{c:()=>h,g:()=>c,j:()=>M,k:()=>g,m:()=>f,s:()=>l});var n=r(46521),o=r(94961),i=r(65617),s=r(46851),a=r(17896),u=r(98766);function l(e,t,r){r*=.5;const n=Math.sin(r);return e[0]=n*t[0],e[1]=n*t[1],e[2]=n*t[2],e[3]=Math.cos(r),e}function c(e,t){const r=2*Math.acos(t[3]),n=Math.sin(r/2);return n>(0,s.g)()?(e[0]=t[0]/n,e[1]=t[1]/n,e[2]=t[2]/n):(e[0]=1,e[1]=0,e[2]=0),r}function f(e,t,r){const n=t[0],o=t[1],i=t[2],s=t[3],a=r[0],u=r[1],l=r[2],c=r[3];return e[0]=n*c+s*a+o*l-i*u,e[1]=o*c+s*u+i*a-n*l,e[2]=i*c+s*l+n*u-o*a,e[3]=s*c-n*a-o*u-i*l,e}function d(e,t,r,n){const o=t[0],i=t[1],a=t[2],u=t[3];let l,c,f,d,h,p=r[0],g=r[1],b=r[2],m=r[3];return c=o*p+i*g+a*b+u*m,c<0&&(c=-c,p=-p,g=-g,b=-b,m=-m),1-c>(0,s.g)()?(l=Math.acos(c),f=Math.sin(l),d=Math.sin((1-n)*l)/f,h=Math.sin(n*l)/f):(d=1-n,h=n),e[0]=d*o+h*p,e[1]=d*i+h*g,e[2]=d*a+h*b,e[3]=d*u+h*m,e}function h(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e}function p(e,t){const r=t[0]+t[4]+t[8];let n;if(r>0)n=Math.sqrt(r+1),e[3]=.5*n,n=.5/n,e[0]=(t[5]-t[7])*n,e[1]=(t[6]-t[2])*n,e[2]=(t[1]-t[3])*n;else{let r=0;t[4]>t[0]&&(r=1),t[8]>t[3*r+r]&&(r=2);const o=(r+1)%3,i=(r+2)%3;n=Math.sqrt(t[3*r+r]-t[3*o+o]-t[3*i+i]+1),e[r]=.5*n,n=.5/n,e[3]=(t[3*o+i]-t[3*i+o])*n,e[o]=(t[3*o+r]+t[3*r+o])*n,e[i]=(t[3*i+r]+t[3*r+i])*n}return e}function g(e,t,r,n){const o=.5*Math.PI/180;t*=o,r*=o,n*=o;const i=Math.sin(t),s=Math.cos(t),a=Math.sin(r),u=Math.cos(r),l=Math.sin(n),c=Math.cos(n);return e[0]=i*u*c-s*a*l,e[1]=s*a*c+i*u*l,e[2]=s*u*l-i*a*c,e[3]=s*u*c+i*a*l,e}const b=u.c,m=u.s,y=u.a,w=f,O=u.b,A=u.d,T=u.l,C=u.e,v=C,E=u.f,S=E,I=u.n,M=u.g,U=u.h,L=(0,i.c)(),N=(0,i.f)(1,0,0),R=(0,i.f)(0,1,0),F=(0,o.a)(),P=(0,o.a)(),Z=(0,n.c)();Object.freeze(Object.defineProperty({__proto__:null,add:y,calculateW:function(e,t){const r=t[0],n=t[1],o=t[2];return e[0]=r,e[1]=n,e[2]=o,e[3]=Math.sqrt(Math.abs(1-r*r-n*n-o*o)),e},conjugate:h,copy:b,dot:A,equals:U,exactEquals:M,fromEuler:g,fromMat3:p,getAxisAngle:c,identity:function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e},invert:function(e,t){const r=t[0],n=t[1],o=t[2],i=t[3],s=r*r+n*n+o*o+i*i,a=s?1/s:0;return e[0]=-r*a,e[1]=-n*a,e[2]=-o*a,e[3]=i*a,e},len:v,length:C,lerp:T,mul:w,multiply:f,normalize:I,random:function(e){const t=s.R,r=t(),n=t(),o=t(),i=Math.sqrt(1-r),a=Math.sqrt(r);return e[0]=i*Math.sin(2*Math.PI*n),e[1]=i*Math.cos(2*Math.PI*n),e[2]=a*Math.sin(2*Math.PI*o),e[3]=a*Math.cos(2*Math.PI*o),e},rotateX:function(e,t,r){r*=.5;const n=t[0],o=t[1],i=t[2],s=t[3],a=Math.sin(r),u=Math.cos(r);return e[0]=n*u+s*a,e[1]=o*u+i*a,e[2]=i*u-o*a,e[3]=s*u-n*a,e},rotateY:function(e,t,r){r*=.5;const n=t[0],o=t[1],i=t[2],s=t[3],a=Math.sin(r),u=Math.cos(r);return e[0]=n*u-i*a,e[1]=o*u+s*a,e[2]=i*u+n*a,e[3]=s*u-o*a,e},rotateZ:function(e,t,r){r*=.5;const n=t[0],o=t[1],i=t[2],s=t[3],a=Math.sin(r),u=Math.cos(r);return e[0]=n*u+o*a,e[1]=o*u-n*a,e[2]=i*u+s*a,e[3]=s*u-i*a,e},rotationTo:function(e,t,r){const n=(0,a.e)(t,r);return n<-.999999?((0,a.f)(L,N,t),(0,a.u)(L)<1e-6&&(0,a.f)(L,R,t),(0,a.n)(L,L),l(e,L,Math.PI),e):n>.999999?(e[0]=0,e[1]=0,e[2]=0,e[3]=1,e):((0,a.f)(L,t,r),e[0]=L[0],e[1]=L[1],e[2]=L[2],e[3]=1+n,I(e,e))},scale:O,set:m,setAxes:function(e,t,r,n){const o=Z;return o[0]=r[0],o[3]=r[1],o[6]=r[2],o[1]=n[0],o[4]=n[1],o[7]=n[2],o[2]=-t[0],o[5]=-t[1],o[8]=-t[2],I(e,p(e,o))},setAxisAngle:l,slerp:d,sqlerp:function(e,t,r,n,o,i){return d(F,t,o,i),d(P,r,n,i),d(e,F,P,2*i*(1-i)),e},sqrLen:S,squaredLength:E,str:function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"}},Symbol.toStringTag,{value:"Module"}))},37140:(e,t,r)=>{function n(){const e=new Float32Array(4);return e[3]=1,e}function o(e){const t=new Float32Array(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}r.d(t,{b:()=>o,c:()=>n}),Object.freeze(Object.defineProperty({__proto__:null,clone:o,create:n,createView:function(e,t){return new Float32Array(e,t,4)},fromValues:function(e,t,r,n){const o=new Float32Array(4);return o[0]=e,o[1]=t,o[2]=r,o[3]=n,o}},Symbol.toStringTag,{value:"Module"}))},94961:(e,t,r)=>{function n(){return[0,0,0,1]}function o(e){return[e[0],e[1],e[2],e[3]]}function i(e,t){return new Float64Array(e,t,4)}r.d(t,{I:()=>s,a:()=>n,b:()=>o,c:()=>i});const s=[0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:s,clone:o,create:n,createView:i,fromValues:function(e,t,r,n){return[e,t,r,n]}},Symbol.toStringTag,{value:"Module"}))},72119:(e,t,r)=>{function n(){return new Float32Array(3)}function o(e){const t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function i(e,t,r){const n=new Float32Array(3);return n[0]=e,n[1]=t,n[2]=r,n}function s(){return n()}function a(){return i(1,1,1)}function u(){return i(1,0,0)}function l(){return i(0,1,0)}function c(){return i(0,0,1)}r.d(t,{b:()=>o,c:()=>n,f:()=>i});const f=s(),d=a(),h=u(),p=l(),g=c();Object.freeze(Object.defineProperty({__proto__:null,ONES:d,UNIT_X:h,UNIT_Y:p,UNIT_Z:g,ZEROS:f,clone:o,create:n,createView:function(e,t){return new Float32Array(e,t,3)},fromValues:i,ones:a,unitX:u,unitY:l,unitZ:c,zeros:s},Symbol.toStringTag,{value:"Module"}))},36030:(e,t,r)=>{r.d(t,{J:()=>i});var n=r(35454),o=r(5600);function i(e,t={}){const r=e instanceof n.X?e:new n.X(e,t),i={type:t?.ignoreUnknown??1?r.apiValues:String,json:{type:r.jsonValues,read:!t?.readOnly&&{reader:r.read},write:{writer:r.write}}};return void 0!==t?.readOnly&&(i.readOnly=!!t.readOnly),void 0!==t?.default&&(i.json.default=t.default),void 0!==t?.name&&(i.json.name=t.name),void 0!==t?.nonNullable&&(i.nonNullable=t.nonNullable),(0,o.Cb)(i)}},10661:(e,t,r)=>{r.d(t,{s:()=>o});var n=r(42100);class o extends n.s{notify(){const e=this._observers;if(e&&e.length>0){const t=e.slice();for(const e of t)e.onInvalidated(),e.onCommitted()}}}},3172:(e,t,r)=>{r.r(t),r.d(t,{default:()=>h});var n=r(68773),o=r(40330),i=r(20102),s=r(80442),a=r(22974),u=r(95330),l=r(17452),c=r(19745),f=r(71058),d=r(85958);async function h(e,t){const a=(0,l.HK)(e),c=(0,l.jc)(e);c||a||(e=(0,l.Fv)(e));const m={url:e,requestOptions:{...t}};let y=(0,l.oh)(e);if(y){const e=await async function(e,t){if(null!=e.responseData)return e.responseData;if(e.headers&&(t.requestOptions.headers={...t.requestOptions.headers,...e.headers}),e.query&&(t.requestOptions.query={...t.requestOptions.query,...e.query}),e.before){let r,n;try{n=await e.before(t)}catch(e){r=C("request:interceptor",e,t)}if((n instanceof Error||n instanceof i.Z)&&(r=C("request:interceptor",n,t)),r)throw e.error&&e.error(r),r;return n}}(y,m);if(null!=e)return{data:e,getHeader:O,httpStatus:200,requestOptions:m.requestOptions,url:m.url};y.after||y.error||(y=null)}if(e=m.url,"image"===(t=m.requestOptions).responseType){if((0,s.Z)("host-webworker")||(0,s.Z)("host-node"))throw C("request:invalid-parameters",new Error("responseType 'image' is not supported in Web Workers or Node environment"),m)}else if(a)throw C("request:invalid-parameters",new Error("Data URLs are not supported for responseType = "+t.responseType),m);if("head"===t.method){if(t.body)throw C("request:invalid-parameters",new Error("body parameter cannot be set when method is 'head'"),m);if(a||c)throw C("request:invalid-parameters",new Error("data and blob URLs are not supported for method 'head'"),m)}if(await async function(){(0,s.Z)("host-webworker")?p||(p=await r.e(9884).then(r.bind(r,29884))):h._abortableFetch||(h._abortableFetch=globalThis.fetch.bind(globalThis))}(),p)return p.execute(e,t);const w=new AbortController;(0,u.fu)(t,(()=>w.abort()));const A={controller:w,credential:void 0,credentialToken:void 0,fetchOptions:void 0,hasToken:!1,interceptor:y,params:m,redoRequest:!1,useIdentity:g.useIdentity,useProxy:!1,useSSL:!1,withCredentials:!1},T=await async function(e){let t,r;await async function(e){const t=e.params.url,r=e.params.requestOptions,i=e.controller.signal,s=r.body;let a=null,l=null;if(b&&"HTMLFormElement"in globalThis&&(s instanceof FormData?a=s:s instanceof HTMLFormElement&&(a=new FormData(s))),"string"==typeof s&&(l=s),e.fetchOptions={cache:r.cacheBust&&!h._abortableFetch.polyfill?"no-cache":"default",credentials:"same-origin",headers:r.headers||{},method:"head"===r.method?"HEAD":"GET",mode:"cors",priority:g.priority,redirect:"follow",signal:i},(a||l)&&(e.fetchOptions.body=a||l),"anonymous"===r.authMode&&(e.useIdentity=!1),e.hasToken=!!(/token=/i.test(t)||r.query?.token||a?.get("token")),!e.hasToken&&n.Z.apiKey&&(0,f.r)(t)&&(r.query||(r.query={}),r.query.token=n.Z.apiKey,e.hasToken=!0),e.useIdentity&&!e.hasToken&&!e.credentialToken&&!E(t)&&!(0,u.Hc)(i)){let n;"immediate"===r.authMode?(await v(),n=await o.id.getCredential(t,{signal:i}),e.credential=n):"no-prompt"===r.authMode?(await v(),n=await o.id.getCredential(t,{prompt:!1,signal:i}).catch((()=>{})),e.credential=n):o.id&&(n=o.id.findCredential(t)),n&&(e.credentialToken=n.token,e.useSSL=!!n.ssl)}}(e);try{do{[t,r]=await S(e)}while(!await M(e,t,r))}catch(r){const n=C("request:server",r,e.params,t);throw n.details.ssl=e.useSSL,e.interceptor&&e.interceptor.error&&e.interceptor.error(n),n}const i=e.params.url;if(r&&/\/sharing\/rest\/(accounts|portals)\/self/i.test(i)){if(!e.hasToken&&!e.credentialToken&&r.user?.username&&!(0,l.kl)(i)){const e=(0,l.P$)(i,!0);e&&g.trustedServers.push(e)}Array.isArray(r.authorizedCrossOriginNoCorsDomains)&&(0,d.Hu)(r.authorizedCrossOriginNoCorsDomains)}const s=e.credential;if(s&&o.id){const e=o.id.findServerInfo(s.server);let t=e&&e.owningSystemUrl;if(t){t=t.replace(/\/?$/,"/sharing");const e=o.id.findCredential(t,s.userId);e&&-1===o.id._getIdenticalSvcIdx(t,e)&&e.resources.unshift(t)}}return{data:r,getHeader:t?e=>t?.headers.get(e):O,httpStatus:t?.status??200,requestOptions:e.params.requestOptions,ssl:e.useSSL,url:e.params.url}}(A);return y?.after?.(T),T}let p;const g=n.Z.request,b="FormData"in globalThis,m=[499,498,403,401],y=["COM_0056","COM_0057","SB_0008"],w=[/\/arcgis\/tokens/i,/\/sharing(\/rest)?\/generatetoken/i,/\/rest\/info/i],O=()=>null,A=Symbol();function T(e){const t=(0,l.P$)(e);return!t||t.endsWith(".arcgis.com")||h._corsServers.includes(t)||(0,l.kl)(t)}function C(e,t,r,n){let o="Error";const s={url:r.url,requestOptions:r.requestOptions,getHeader:O,ssl:!1};if(t instanceof i.Z)return t.details?(t.details=(0,a.d9)(t.details),t.details.url=r.url,t.details.requestOptions=r.requestOptions):t.details=s,t;if(t){const e=n&&(e=>n.headers.get(e)),r=n&&n.status,i=t.message;i&&(o=i),e&&(s.getHeader=e),s.httpStatus=(null!=t.httpCode?t.httpCode:t.code)||r||0,s.subCode=t.subcode,s.messageCode=t.messageCode,"string"==typeof t.details?s.messages=[t.details]:s.messages=t.details,s.raw=A in t?t[A]:t}return(0,u.D_)(t)?(0,u.zE)():new i.Z(e,o,s)}async function v(){o.id||await Promise.all([r.e(6261),r.e(1400),r.e(450)]).then(r.bind(r,73660))}function E(e){return w.some((t=>t.test(e)))}async function S(e){let t=e.params.url;const r=e.params.requestOptions,n=e.fetchOptions??{},i=(0,l.jc)(t)||(0,l.HK)(t),a=r.responseType||"json",f=i?0:null!=r.timeout?r.timeout:g.timeout;let p=!1;if(!i){e.useSSL&&(t=(0,l.hO)(t)),r.cacheBust&&"default"===n.cache&&(t=(0,l.ZN)(t,"request.preventCache",Date.now()));let i={...r.query};e.credentialToken&&(i.token=e.credentialToken);let a=(0,l.B7)(i);(0,s.Z)("esri-url-encodes-apostrophe")&&(a=a.replace(/'/g,"%27"));const u=t.length+1+a.length;let f;p="delete"===r.method||"post"===r.method||"put"===r.method||!!r.body||u>g.maxUrlLength;const h=r.useProxy||!!(0,l.ed)(t);if(h){const e=(0,l.b7)(t);f=e.path,!p&&f.length+1+u>g.maxUrlLength&&(p=!0),e.query&&(i={...e.query,...i})}if("HEAD"===n.method&&(p||h)){if(p){if(u>g.maxUrlLength)throw C("request:invalid-parameters",new Error("URL exceeds maximum length"),e.params);throw C("request:invalid-parameters",new Error("cannot use POST request when method is 'head'"),e.params)}if(h)throw C("request:invalid-parameters",new Error("cannot use proxy when method is 'head'"),e.params)}if(p?(n.method="delete"===r.method?"DELETE":"put"===r.method?"PUT":"POST",r.body?t=(0,l.fl)(t,i):(n.body=(0,l.B7)(i),n.headers||(n.headers={}),n.headers["Content-Type"]="application/x-www-form-urlencoded")):t=(0,l.fl)(t,i),h&&(e.useProxy=!0,t=`${f}?${t}`),i.token&&b&&n.body instanceof FormData&&!(0,c.P)(t)&&n.body.set("token",i.token),r.hasOwnProperty("withCredentials"))e.withCredentials=r.withCredentials;else if(!(0,l.D6)(t,(0,l.TI)()))if((0,l.kl)(t))e.withCredentials=!0;else if(o.id){const r=o.id.findServerInfo(t);r&&r.webTierAuth&&(e.withCredentials=!0)}e.withCredentials&&(n.credentials="include",(0,d.jH)(t)&&await(0,d.jz)(p?(0,l.fl)(t,i):t))}let m,y,w=0,O=!1;f>0&&(w=setTimeout((()=>{O=!0,e.controller.abort()}),f));try{if("native-request-init"===r.responseType)y=n,y.url=t;else if("image"!==r.responseType||"default"!==n.cache||"GET"!==n.method||p||function(e){if(e)for(const t of Object.getOwnPropertyNames(e))if(e[t])return!0;return!1}(r.headers)||!i&&!e.useProxy&&g.proxyUrl&&!T(t)){if(m=await h._abortableFetch(t,n),e.useProxy||function(e){const t=(0,l.P$)(e);t&&!h._corsServers.includes(t)&&h._corsServers.push(t)}(t),"native"===r.responseType)y=m;else if("HEAD"!==n.method)if(m.ok){switch(a){case"array-buffer":y=await m.arrayBuffer();break;case"blob":case"image":y=await m.blob();break;default:y=await m.text()}if(w&&(clearTimeout(w),w=0),"json"===a||"xml"===a||"document"===a)if(y)switch(a){case"json":y=JSON.parse(y);break;case"xml":y=I(y,"application/xml");break;case"document":y=I(y,"text/html")}else y=null;if(y){if("array-buffer"===a||"blob"===a){const e=m.headers.get("Content-Type");if(e&&/application\/json|text\/plain/i.test(e)&&y["blob"===a?"size":"byteLength"]<=750)try{const e=await new Response(y).json();e.error&&(y=e)}catch{}}"image"===a&&y instanceof Blob&&(y=await U(URL.createObjectURL(y),e,!0))}}else y=await m.text()}else y=await U(t,e)}catch(n){if("AbortError"===n.name){if(O)throw new Error("Timeout exceeded");throw(0,u.zE)("Request canceled")}if(!(!m&&n instanceof TypeError&&g.proxyUrl)||r.body||"delete"===r.method||"head"===r.method||"post"===r.method||"put"===r.method||e.useProxy||T(t))throw n;e.redoRequest=!0,(0,l.tD)({proxyUrl:g.proxyUrl,urlPrefix:(0,l.P$)(t)??""})}finally{w&&clearTimeout(w)}return[m,y]}function I(e,t){let r;try{r=(new DOMParser).parseFromString(e,t)}catch{}if(!r||r.getElementsByTagName("parsererror").length)throw new SyntaxError("XML Parse error");return r}async function M(e,t,r){if(e.redoRequest)return e.redoRequest=!1,!1;const n=e.params.requestOptions;if(!t||"native"===n.responseType||"native-request-init"===n.responseType)return!0;let i,s;if(!t.ok)throw i=new Error(`Unable to load ${t.url} status: ${t.status}`),i[A]=r,i;r&&(r.error?i=r.error:"error"===r.status&&Array.isArray(r.messages)&&(i={...r},i[A]=r,i.details=r.messages));let a,u=null;i&&(s=Number(i.code),u=i.hasOwnProperty("subcode")?Number(i.subcode):null,a=i.messageCode,a=a&&a.toUpperCase());const l=n.authMode;if(403===s&&(4===u||i.message&&i.message.toLowerCase().includes("ssl")&&!i.message.toLowerCase().includes("permission"))){if(!e.useSSL)return e.useSSL=!0,!1}else if(!e.hasToken&&e.useIdentity&&("no-prompt"!==l||498===s)&&void 0!==s&&m.includes(s)&&!E(e.params.url)&&(403!==s||a&&!y.includes(a)&&(null==u||2===u&&e.credentialToken))){await v();try{const t=await o.id.getCredential(e.params.url,{error:C("request:server",i,e.params),prompt:"no-prompt"!==l,signal:e.controller.signal,token:e.credentialToken});return e.credential=t,e.credentialToken=t.token,e.useSSL=e.useSSL||t.ssl,!1}catch(t){if("no-prompt"===l)return e.credential=void 0,e.credentialToken=void 0,!1;i=t}}if(i)throw i;return!0}function U(e,t,r=!1){const n=t.controller.signal,o=new Image;return t.withCredentials?o.crossOrigin="use-credentials":o.crossOrigin="anonymous",o.alt="",o.fetchPriority=g.priority,o.src=e,(0,d.fY)(o,e,r,n)}h._abortableFetch=null,h._corsServers=["https://server.arcgisonline.com","https://services.arcgisonline.com"]},71058:(e,t,r)=>{r.d(t,{r:()=>i});var n=r(17452);const o=["elevation3d.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","static.arcgis.com"];function i(e){const t=(0,n.P$)(e,!0);return!!t&&t.endsWith(".arcgis.com")&&!o.includes(t)&&!e.endsWith("/sharing/rest/generateToken")}},85958:(e,t,r)=>{r.d(t,{Hu:()=>l,fY:()=>a,jH:()=>c,jz:()=>f});var n=r(68773),o=r(80442),i=r(95330),s=r(17452);function a(e,t,r=!1,n){return new Promise(((s,a)=>{if((0,i.Hc)(n))return void a(u());let l=()=>{d(),a(new Error(`Unable to load ${t}`))},c=()=>{const t=e;d(),s(t)},f=()=>{if(!e)return;const t=e;d(),t.src="",a(u())};const d=()=>{(0,o.Z)("esri-image-decode")||(e.removeEventListener("error",l),e.removeEventListener("load",c)),l=null,c=null,e=null,null!=n&&n.removeEventListener("abort",f),f=null,r&&URL.revokeObjectURL(t)};null!=n&&n.addEventListener("abort",f),(0,o.Z)("esri-image-decode")?e.decode().then(c,l):(e.addEventListener("error",l),e.addEventListener("load",c))}))}function u(){try{return new DOMException("Aborted","AbortError")}catch{const e=new Error;return e.name="AbortError",e}}function l(e){n.Z.request.crossOriginNoCorsDomains||(n.Z.request.crossOriginNoCorsDomains={});const t=n.Z.request.crossOriginNoCorsDomains;for(let r of e)r=r.toLowerCase(),/^https?:\/\//.test(r)?t[(0,s.P$)(r)??""]=0:(t[(0,s.P$)("http://"+r)??""]=0,t[(0,s.P$)("https://"+r)??""]=0)}function c(e){const t=n.Z.request.crossOriginNoCorsDomains;if(t){let r=(0,s.P$)(e);if(r)return r=r.toLowerCase(),!(0,s.D6)(r,(0,s.TI)())&&t[r]<Date.now()-36e5}return!1}async function f(e){const t=n.Z.request.crossOriginNoCorsDomains,r=(0,s.P$)(e);t&&r&&(t[r.toLowerCase()]=Date.now());const o=(0,s.mN)(e);e=o.path,"json"===o.query?.f&&(e+="?f=json");try{await fetch(e,{mode:"no-cors",credentials:"include"})}catch{}}},90447:(e,t,r)=>{r.r(t),r.d(t,{default:()=>A});var n=r(70586),o=r(1533),i=r(51305),s=r(37140),a=r(17896),u=r(72119),l=r(44547),c=r(82971),f=r(23030),d=r(14008),h=r(46329),p=r(91891),g=r(25683);function b(e,t,r){return null!=e&&e.attributeInfo.useElevation?t?function(e,t){const r=new Float64Array(t);for(let n=0;n<t;n++)r[n]=e[3*n+2];return r}(t,r):null:null!=e&&e.attributeInfo.storageInfo?(0,p.qM)(e.attributeInfo.storageInfo,e.buffer,r):null}function m(e){return null==e||"none"===e?null:"low-four-bit"===e?e=>15&e:"high-four-bit"===e?e=>(240&e)>>4:"absolute-value"===e?e=>Math.abs(e):"modulo-ten"===e?e=>e%10:null}function y(e){let t=0;for(const r of e||[])t|=1<<r;return t}class w{transform(e){const t=this._transform(e),r=[t.points.buffer,t.rgb.buffer];null!=t.pointIdFilterMap&&r.push(t.pointIdFilterMap.buffer);for(const e of t.attributes)"buffer"in e.values&&(0,o.eP)(e.values.buffer)&&e.values.buffer!==t.rgb.buffer&&r.push(e.values.buffer);return Promise.resolve({result:t,transferList:r})}_transform(e){const t=function(e,t){if(null==e.encoding||""===e.encoding){const r=(0,p.W7)(t,e);if(null==r.vertexAttributes.position)return;const n=(0,p.I_)(t,r.vertexAttributes.position),o=r.header.fields,i=[o.offsetX,o.offsetY,o.offsetZ],s=[o.scaleX,o.scaleY,o.scaleZ],a=n.length/3,u=new Float64Array(3*a);for(let e=0;e<a;e++)u[3*e]=n[3*e]*s[0]+i[0],u[3*e+1]=n[3*e+1]*s[1]+i[1],u[3*e+2]=n[3*e+2]*s[2]+i[2];return u}if("lepcc-xyz"===e.encoding)return(0,g.Gi)(t).result}(e.schema,e.geometryBuffer);let r=t.length/3,o=null;const i=[],s=b(e.primaryAttributeData,t,r);null!=e.primaryAttributeData&&s&&i.push({attributeInfo:e.primaryAttributeData.attributeInfo,values:s});const a=b(e.modulationAttributeData,t,r);null!=e.modulationAttributeData&&a&&i.push({attributeInfo:e.modulationAttributeData.attributeInfo,values:a});let u=function(e,t,r,n){const{rendererJSON:o,isRGBRenderer:i}=e;let s=null,a=null;if(t&&i)s=t;else if(t&&"pointCloudUniqueValueRenderer"===o?.type){a=h.Z.fromJSON(o);const e=a.colorUniqueValueInfos;s=new Uint8Array(3*n);const r=m(a.fieldTransformType);for(let o=0;o<n;o++){const n=(r?r(t[o]):t[o])+"";for(let t=0;t<e.length;t++)if(e[t].values.includes(n)){s[3*o]=e[t].color.r,s[3*o+1]=e[t].color.g,s[3*o+2]=e[t].color.b;break}}}else if(t&&"pointCloudStretchRenderer"===o?.type){a=d.Z.fromJSON(o);const e=a.stops;s=new Uint8Array(3*n);const r=m(a.fieldTransformType);for(let o=0;o<n;o++){const n=r?r(t[o]):t[o],i=e.length-1;if(n<e[0].value)s[3*o]=e[0].color.r,s[3*o+1]=e[0].color.g,s[3*o+2]=e[0].color.b;else if(n>=e[i].value)s[3*o]=e[i].color.r,s[3*o+1]=e[i].color.g,s[3*o+2]=e[i].color.b;else for(let t=1;t<e.length;t++)if(n<e[t].value){const r=(n-e[t-1].value)/(e[t].value-e[t-1].value);s[3*o]=e[t].color.r*r+e[t-1].color.r*(1-r),s[3*o+1]=e[t].color.g*r+e[t-1].color.g*(1-r),s[3*o+2]=e[t].color.b*r+e[t-1].color.b*(1-r);break}}}else if(t&&"pointCloudClassBreaksRenderer"===o?.type){a=f.Z.fromJSON(o);const e=a.colorClassBreakInfos;s=new Uint8Array(3*n);const r=m(a.fieldTransformType);for(let o=0;o<n;o++){const n=r?r(t[o]):t[o];for(let t=0;t<e.length;t++)if(n>=e[t].minValue&&n<=e[t].maxValue){s[3*o]=e[t].color.r,s[3*o+1]=e[t].color.g,s[3*o+2]=e[t].color.b;break}}}else{s=new Uint8Array(3*n);for(let e=0;e<s.length;e++)s[e]=255}if(r&&a&&a.colorModulation){const e=a.colorModulation.minValue,t=a.colorModulation.maxValue,o=.3;for(let i=0;i<n;i++){const n=r[i],a=n>=t?1:n<=e?o:o+(1-o)*(n-e)/(t-e);s[3*i]=a*s[3*i],s[3*i+1]=a*s[3*i+1],s[3*i+2]=a*s[3*i+2]}}return s}(e.rendererInfo,s,a,r);if(e.filterInfo&&e.filterInfo.length>0&&null!=e.filterAttributesData){const s=e.filterAttributesData.filter(n.pC).map((e=>{const n=b(e,t,r),o={attributeInfo:e.attributeInfo,values:n};return i.push(o),o}));o=new Uint32Array(r),r=function(e,t,r,n,o){const i=e.length/3;let s=0;for(let a=0;a<i;a++){let i=!0;for(let e=0;e<n.length&&i;e++){const{filterJSON:t}=n[e],r=o[e].values[a];switch(t.type){case"pointCloudValueFilter":{const e="exclude"===t.mode;t.values.includes(r)===e&&(i=!1);break}case"pointCloudBitfieldFilter":{const e=y(t.requiredSetBits),n=y(t.requiredClearBits);(r&e)===e&&0==(r&n)||(i=!1);break}case"pointCloudReturnFilter":{const e=15&r,n=r>>>4&15,o=n>1,s=1===e,a=e===n;let u=!1;for(const e of t.includedReturns)if("last"===e&&a||"firstOfMany"===e&&s&&o||"lastOfMany"===e&&a&&o||"single"===e&&!o){u=!0;break}u||(i=!1);break}}}i&&(r[s]=a,e[3*s]=e[3*a],e[3*s+1]=e[3*a+1],e[3*s+2]=e[3*a+2],t[3*s]=t[3*a],t[3*s+1]=t[3*a+1],t[3*s+2]=t[3*a+2],s++)}return s}(t,u,o,e.filterInfo,s)}for(const n of e.userAttributesData){const e=b(n,t,r);i.push({attributeInfo:n.attributeInfo,values:e})}3*r<u.length&&(u=new Uint8Array(u.buffer.slice(0,3*r))),this._applyElevationOffsetInPlace(t,r,e.elevationOffset);const l=this._transformCoordinates(t,r,e.obb,c.Z.fromJSON(e.inSR),c.Z.fromJSON(e.outSR));return{obb:e.obb,points:l,rgb:u,attributes:i,pointIdFilterMap:o}}_transformCoordinates(e,t,r,n,o){if(!(0,l.CM)(e,n,0,e,o,0,t))throw new Error("Can't reproject");const s=(0,u.f)(r.center[0],r.center[1],r.center[2]),c=(0,u.c)(),f=(0,u.c)();(0,i.c)(O,r.quaternion);const d=new Float32Array(3*t);for(let n=0;n<t;n++)c[0]=e[3*n]-s[0],c[1]=e[3*n+1]-s[1],c[2]=e[3*n+2]-s[2],(0,a.q)(f,c,O),r.halfSize[0]=Math.max(r.halfSize[0],Math.abs(f[0])),r.halfSize[1]=Math.max(r.halfSize[1],Math.abs(f[1])),r.halfSize[2]=Math.max(r.halfSize[2],Math.abs(f[2])),d[3*n]=c[0],d[3*n+1]=c[1],d[3*n+2]=c[2];return d}_applyElevationOffsetInPlace(e,t,r){if(0!==r)for(let n=0;n<t;n++)e[3*n+2]+=r}}const O=(0,s.c)();function A(){return new w}},91891:(e,t,r)=>{r.d(t,{I_:()=>d,W7:()=>g,qM:()=>m});var n=r(20102),o=r(22974),i=r(92604),s=r(25683),a=r(35065);const u=i.Z.getLogger("esri.views.3d.layers.i3s.I3SBinaryReader");function l(e,t,r){let o="",i=0;for(;i<r;){const s=e[t+i];if(s<128)o+=String.fromCharCode(s),i++;else if(s>=192&&s<224){if(i+1>=r)throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Two byte character was truncated.");const a=(31&s)<<6|63&e[t+i+1];o+=String.fromCharCode(a),i+=2}else if(s>=224&&s<240){if(i+2>=r)throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");const a=(15&s)<<12|(63&e[t+i+1])<<6|63&e[t+i+2];o+=String.fromCharCode(a),i+=3}else{if(!(s>=240&&s<248))throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Invalid multi byte sequence.");{if(i+3>=r)throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");const a=(7&s)<<18|(63&e[t+i+1])<<12|(63&e[t+i+2])<<6|63&e[t+i+3];if(a>=65536){const e=55296+(a-65536>>10),t=56320+(1023&a);o+=String.fromCharCode(e,t)}else o+=String.fromCharCode(a);i+=4}}}return o}function c(e,t){const r={byteOffset:0,byteCount:0,fields:Object.create(null)};let n=0;for(let o=0;o<t.length;o++){const i=t[o],s=i.valueType||i.type,a=w[s];r.fields[i.property]=a(e,n),n+=y[s].BYTES_PER_ELEMENT}return r.byteCount=n,r}function f(e,t,r){const o=[];let i,s,a=0;for(s=0;s<e;s+=1){if(i=t[s],i>0){if(o.push(l(r,a,i-1)),0!==r[a+i-1])throw new n.Z("string-array-error","Invalid string array: missing null termination.")}else o.push(null);a+=i}return o}function d(e,t){return new(0,y[t.valueType])(e,t.byteOffset,t.count*t.valuesPerElement)}function h(e,t,r){const i=null!=t.header?c(e,t.header):{byteOffset:0,byteCount:0,fields:{count:r}},s={header:i,byteOffset:i.byteCount,byteCount:0,entries:Object.create(null)};let a=i.byteCount;for(let e=0;e<t.ordering.length;e++){const r=t.ordering[e],u=(0,o.d9)(t[r]);if(u.count=i.fields.count??0,"String"===u.valueType){if(u.byteOffset=a,u.byteCount=i.fields[r+"ByteCount"],"UTF-8"!==u.encoding)throw new n.Z("unsupported-encoding","Unsupported String encoding.",{encoding:u.encoding});if(u.timeEncoding&&"ECMA_ISO8601"!==u.timeEncoding)throw new n.Z("unsupported-time-encoding","Unsupported time encoding.",{timeEncoding:u.timeEncoding})}else{if(!O(u.valueType))throw new n.Z("unsupported-value-type","Unsupported binary valueType",{valueType:u.valueType});{const e=A(u.valueType);a+=a%e!=0?e-a%e:0,u.byteOffset=a,u.byteCount=e*u.valuesPerElement*u.count}}a+=u.byteCount??0,s.entries[r]=u}return s.byteCount=a-s.byteOffset,s}function p(e,t,r){if(t!==e&&u.error(`Invalid ${r} buffer size\n expected: ${e}, actual: ${t})`),t<e)throw new n.Z("buffer-too-small","Binary buffer is too small",{expectedSize:e,actualSize:t})}function g(e,t){const r=c(e,t&&t.header);let n=r.byteCount;const o={isDraco:!1,header:r,byteOffset:r.byteCount,byteCount:0,vertexAttributes:{}},i=r.fields,s=null!=i.vertexCount?i.vertexCount:i.count;for(const e of t.ordering){if(!t.vertexAttributes[e])continue;const r={...t.vertexAttributes[e],byteOffset:n,count:s},i=b[e]||"_"+e;o.vertexAttributes[i]=r,n+=A(r.valueType)*r.valuesPerElement*s}const a=i.faceCount;if(t.faces&&a){o.faces={};for(const e of t.ordering){if(!t.faces[e])continue;const r={...t.faces[e],byteOffset:n,count:a};o.faces[e]=r,n+=A(r.valueType)*r.valuesPerElement*a}}const u=i.featureCount;if(t.featureAttributes&&t.featureAttributeOrder&&u){o.featureAttributes={};for(const e of t.featureAttributeOrder){if(!t.featureAttributes[e])continue;const r={...t.featureAttributes[e],byteOffset:n,count:u};o.featureAttributes[e]=r,n+=("UInt64"===r.valueType?8:A(r.valueType))*r.valuesPerElement*u}}return p(n,e.byteLength,"geometry"),o.byteCount=n-o.byteOffset,o}const b={position:a.T.POSITION,normal:a.T.NORMAL,color:a.T.COLOR,uv0:a.T.UV0,region:a.T.UVREGION};function m(e,t,r){if("lepcc-rgb"===e.encoding)return(0,s.IT)(t);if("lepcc-intensity"===e.encoding)return(0,s.ti)(t);if(null!=e.encoding&&""!==e.encoding)throw new n.Z("unknown-attribute-storage-info-encoding","Unknown Attribute Storage Info Encoding");e["attributeByteCounts "]&&!e.attributeByteCounts&&(u.warn("Warning: Trailing space in 'attributeByteCounts '."),e.attributeByteCounts=e["attributeByteCounts "]),"ObjectIds"===e.ordering[0]&&e.hasOwnProperty("objectIds")&&(u.warn("Warning: Case error in objectIds"),e.ordering[0]="objectIds");const o=h(t,e,r);p(o.byteOffset+o.byteCount,t.byteLength,"attribute");const i=o.entries.attributeValues||o.entries.objectIds;if(i){if("String"===i.valueType){const e=o.entries.attributeByteCounts,r=d(t,e),n=function(e,t){return new Uint8Array(e,t.byteOffset,t.byteCount)}(t,i);return i.timeEncoding?function(e,t,r){return f(e,t,r).map((e=>{const t=e?Date.parse(e):null;return t&&!Number.isNaN(t)?t:null}))}(e.count,r,n):f(e.count,r,n)}return d(t,i)}throw new n.Z("bad-attribute-storage-info","Bad attributeStorageInfo specification.")}const y={Float32:Float32Array,Float64:Float64Array,UInt8:Uint8Array,Int8:Int8Array,UInt16:Uint16Array,Int16:Int16Array,UInt32:Uint32Array,Int32:Int32Array},w={Float32:(e,t)=>new DataView(e,0).getFloat32(t,!0),Float64:(e,t)=>new DataView(e,0).getFloat64(t,!0),UInt8:(e,t)=>new DataView(e,0).getUint8(t),Int8:(e,t)=>new DataView(e,0).getInt8(t),UInt16:(e,t)=>new DataView(e,0).getUint16(t,!0),Int16:(e,t)=>new DataView(e,0).getInt16(t,!0),UInt32:(e,t)=>new DataView(e,0).getUint32(t,!0),Int32:(e,t)=>new DataView(e,0).getInt32(t,!0)};function O(e){return y.hasOwnProperty(e)}function A(e){return O(e)?y[e].BYTES_PER_ELEMENT:0}},25683:(e,t,r)=>{r.d(t,{Gi:()=>l,IT:()=>p,ti:()=>m});var n=r(20102);const o=!0,i={identifierOffset:0,identifierLength:10,versionOffset:10,checksumOffset:12,byteCount:16};function s(e,t,r){return{identifier:String.fromCharCode.apply(null,new Uint8Array(e,r+i.identifierOffset,i.identifierLength)),version:t.getUint16(r+i.versionOffset,o),checksum:t.getUint32(r+i.checksumOffset,o)}}const a={sizeLo:0,sizeHi:4,minX:8,minY:16,minZ:24,maxX:32,maxY:40,maxZ:48,errorX:56,errorY:64,errorZ:72,count:80,reserved:84,byteCount:88};function u(e,t){return{sizeLo:e.getUint32(t+a.sizeLo,o),sizeHi:e.getUint32(t+a.sizeHi,o),minX:e.getFloat64(t+a.minX,o),minY:e.getFloat64(t+a.minY,o),minZ:e.getFloat64(t+a.minZ,o),maxX:e.getFloat64(t+a.maxX,o),maxY:e.getFloat64(t+a.maxY,o),maxZ:e.getFloat64(t+a.maxZ,o),errorX:e.getFloat64(t+a.errorX,o),errorY:e.getFloat64(t+a.errorY,o),errorZ:e.getFloat64(t+a.errorZ,o),count:e.getUint32(t+a.count,o),reserved:e.getUint32(t+a.reserved,o)}}function l(e){const t=new DataView(e,0);let r=0;const{identifier:o,version:l}=s(e,t,r);if(r+=i.byteCount,"LEPCC "!==o)throw new n.Z("lepcc-decode-error","Bad identifier");if(l>1)throw new n.Z("lepcc-decode-error","Unknown version");const f=u(t,r);if(r+=a.byteCount,f.sizeHi*2**32+f.sizeLo!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const d=new Float64Array(3*f.count),h=[],p=[],g=[],b=[];if(r=c(e,r,h),r=c(e,r,p),r=c(e,r,g),r=c(e,r,b),r!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad length");let m=0,y=0;for(let e=0;e<h.length;e++){y+=h[e];let t=0;for(let r=0;r<p[e];r++){t+=g[m];const e=b[m];d[3*m]=Math.min(f.maxX,f.minX+2*f.errorX*t),d[3*m+1]=Math.min(f.maxY,f.minY+2*f.errorY*y),d[3*m+2]=Math.min(f.maxZ,f.minZ+2*f.errorZ*e),m++}}return{errorX:f.errorX,errorY:f.errorY,errorZ:f.errorZ,result:d}}function c(e,t,r){const n=[];t=f(e,t,n);const o=[];for(let i=0;i<n.length;i++){o.length=0,t=f(e,t,o);for(let e=0;e<o.length;e++)r.push(o[e]+n[i])}return t}function f(e,t,r){const i=new DataView(e,t),s=i.getUint8(0),a=31&s,u=!!(32&s),l=(192&s)>>6;let c=0;if(0===l)c=i.getUint32(1,o),t+=5;else if(1===l)c=i.getUint16(1,o),t+=3;else{if(2!==l)throw new n.Z("lepcc-decode-error","Bad count type");c=i.getUint8(1),t+=2}if(u)throw new n.Z("lepcc-decode-error","LUT not implemented");const f=Math.ceil(c*a/8),d=new Uint8Array(e,t,f);let h=0,p=0,g=0;const b=-1>>>32-a;for(let e=0;e<c;e++){for(;p<a;)h|=d[g]<<p,p+=8,g+=1;r[e]=h&b,h>>>=a,p-=a,p+a>32&&(h|=d[g-1]>>8-p)}return t+g}const d={sizeLo:0,sizeHi:4,count:8,colorMapCount:12,lookupMethod:14,compressionMethod:15,byteCount:16};function h(e,t){return{sizeLo:e.getUint32(t+d.sizeLo,o),sizeHi:e.getUint32(t+d.sizeHi,o),count:e.getUint32(t+d.count,o),colorMapCount:e.getUint16(t+d.colorMapCount,o),lookupMethod:e.getUint8(t+d.lookupMethod),compressionMethod:e.getUint8(t+d.compressionMethod)}}function p(e){const t=new DataView(e,0);let r=0;const{identifier:o,version:a}=s(e,t,r);if(r+=i.byteCount,"ClusterRGB"!==o)throw new n.Z("lepcc-decode-error","Bad identifier");if(a>1)throw new n.Z("lepcc-decode-error","Unknown version");const u=h(t,r);if(r+=d.byteCount,u.sizeHi*2**32+u.sizeLo!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");if((2===u.lookupMethod||1===u.lookupMethod)&&0===u.compressionMethod){if(3*u.colorMapCount+u.count+r!==e.byteLength||u.colorMapCount>256)throw new n.Z("lepcc-decode-error","Bad count");const t=new Uint8Array(e,r,3*u.colorMapCount),o=new Uint8Array(e,r+3*u.colorMapCount,u.count),i=new Uint8Array(3*u.count);for(let e=0;e<u.count;e++){const r=o[e];i[3*e]=t[3*r],i[3*e+1]=t[3*r+1],i[3*e+2]=t[3*r+2]}return i}if(0===u.lookupMethod&&0===u.compressionMethod){if(3*u.count+r!==e.byteLength||0!==u.colorMapCount)throw new n.Z("lepcc-decode-error","Bad count");return new Uint8Array(e,r).slice()}if(u.lookupMethod<=2&&1===u.compressionMethod){if(r+3!==e.byteLength||1!==u.colorMapCount)throw new n.Z("lepcc-decode-error","Bad count");const o=t.getUint8(r),i=t.getUint8(r+1),s=t.getUint8(r+2),a=new Uint8Array(3*u.count);for(let e=0;e<u.count;e++)a[3*e]=o,a[3*e+1]=i,a[3*e+2]=s;return a}throw new n.Z("lepcc-decode-error","Bad method "+u.lookupMethod+","+u.compressionMethod)}const g={sizeLo:0,sizeHi:4,count:8,scaleFactor:12,bitsPerPoint:14,reserved:15,byteCount:16};function b(e,t){return{sizeLo:e.getUint32(t+g.sizeLo,o),sizeHi:e.getUint32(t+g.sizeHi,o),count:e.getUint32(t+g.count,o),scaleFactor:e.getUint16(t+g.scaleFactor,o),bitsPerPoint:e.getUint8(t+g.bitsPerPoint),reserved:e.getUint8(t+g.reserved)}}function m(e){const t=new DataView(e,0);let r=0;const{identifier:o,version:a}=s(e,t,r);if(r+=i.byteCount,"Intensity "!==o)throw new n.Z("lepcc-decode-error","Bad identifier");if(a>1)throw new n.Z("lepcc-decode-error","Unknown version");const u=b(t,r);if(r+=g.byteCount,u.sizeHi*2**32+u.sizeLo!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const l=new Uint16Array(u.count);if(8===u.bitsPerPoint){if(u.count+r!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const t=new Uint8Array(e,r,u.count);for(let e=0;e<u.count;e++)l[e]=t[e]*u.scaleFactor}else if(16===u.bitsPerPoint){if(2*u.count+r!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const t=new Uint16Array(e,r,u.count);for(let e=0;e<u.count;e++)l[e]=t[e]*u.scaleFactor}else{const t=[];if(f(e,r,t)!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");for(let e=0;e<u.count;e++)l[e]=t[e]*u.scaleFactor}return l}},35065:(e,t,r)=>{var n;r.d(t,{T:()=>n}),function(e){e.POSITION="position",e.NORMAL="normal",e.NORMALCOMPRESSED="normalCompressed",e.UV0="uv0",e.AUXPOS1="auxpos1",e.AUXPOS2="auxpos2",e.COLOR="color",e.SYMBOLCOLOR="symbolColor",e.SIZE="size",e.TANGENT="tangent",e.OFFSET="offset",e.SUBDIVISIONFACTOR="subdivisionFactor",e.COLORFEATUREATTRIBUTE="colorFeatureAttribute",e.SIZEFEATUREATTRIBUTE="sizeFeatureAttribute",e.OPACITYFEATUREATTRIBUTE="opacityFeatureAttribute",e.DISTANCETOSTART="distanceToStart",e.UVMAPSPACE="uvMapSpace",e.BOUNDINGRECT="boundingRect",e.UVREGION="uvRegion",e.PROFILERIGHT="profileRight",e.PROFILEUP="profileUp",e.PROFILEVERTEXANDNORMAL="profileVertexAndNormal",e.FEATUREVALUE="featureValue",e.MODELORIGINHI="modelOriginHi",e.MODELORIGINLO="modelOriginLo",e.MODEL="model",e.MODELNORMAL="modelNormal",e.INSTANCECOLOR="instanceColor",e.INSTANCEFEATUREATTRIBUTE="instanceFeatureAttribute",e.LOCALTRANSFORM="localTransform",e.GLOBALTRANSFORM="globalTransform",e.BOUNDINGSPHERE="boundingSphere",e.MODELORIGIN="modelOrigin",e.MODELSCALEFACTORS="modelScaleFactors",e.FEATUREATTRIBUTE="featureAttribute",e.STATE="state",e.LODLEVEL="lodLevel",e.POSITION0="position0",e.POSITION1="position1",e.NORMALA="normalA",e.NORMALB="normalB",e.COMPONENTINDEX="componentIndex",e.VARIANTOFFSET="variantOffset",e.VARIANTSTROKE="variantStroke",e.VARIANTEXTENSION="variantExtension",e.U8PADDING="u8padding",e.U16PADDING="u16padding",e.SIDENESS="sideness",e.START="start",e.END="end",e.UP="up",e.EXTRUDE="extrude",e.OBJECTANDLAYERIDCOLOR="objectAndLayerIdColor",e.OBJECTANDLAYERIDCOLOR_INSTANCED="objectAndLayerIdColor_instanced"}(n||(n={}))}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7035,3172,9880],{22303:(e,t,r)=>{r.d(t,{Z:()=>f});var n,o,i=r(35270),s=r(22021),a=r(75215);function u(e){return(0,s.uZ)((0,a.vU)(e),0,255)}function l(e,t,r){return e=Number(e),isNaN(e)?r:e<t?t:e>r?r:e}class c{static blendColors(e,t,r,n=new c){return n.r=Math.round(e.r+(t.r-e.r)*r),n.g=Math.round(e.g+(t.g-e.g)*r),n.b=Math.round(e.b+(t.b-e.b)*r),n.a=e.a+(t.a-e.a)*r,n._sanitize()}static fromRgb(e,t){const r=e.toLowerCase().match(/^(rgba?|hsla?)\(([\s\.\-,%0-9]+)\)/);if(r){const e=r[2].split(/\s*,\s*/),n=r[1];if("rgb"===n&&3===e.length||"rgba"===n&&4===e.length){const r=e[0];if("%"===r.charAt(r.length-1)){const r=e.map((e=>2.56*parseFloat(e)));return 4===e.length&&(r[3]=parseFloat(e[3])),c.fromArray(r,t)}return c.fromArray(e.map((e=>parseFloat(e))),t)}if("hsl"===n&&3===e.length||"hsla"===n&&4===e.length)return c.fromArray((0,i.B7)(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100,parseFloat(e[3])),t)}return null}static fromHex(e,t=new c){if(4!==e.length&&7!==e.length||"#"!==e[0])return null;const r=4===e.length?4:8,n=(1<<r)-1;let o=Number("0x"+e.substr(1));return isNaN(o)?null:(["b","g","r"].forEach((e=>{const i=o&n;o>>=r,t[e]=4===r?17*i:i})),t.a=1,t)}static fromArray(e,t=new c){return t._set(Number(e[0]),Number(e[1]),Number(e[2]),Number(e[3])),isNaN(t.a)&&(t.a=1),t._sanitize()}static fromString(e,t){const r=(0,i.St)(e)?(0,i.h$)(e):null;return r&&c.fromArray(r,t)||c.fromRgb(e,t)||c.fromHex(e,t)}static fromJSON(e){return e&&new c([e[0],e[1],e[2],e[3]/255])}static toUnitRGB(e){return null!=e?[e.r/255,e.g/255,e.b/255]:null}static toUnitRGBA(e){return null!=e?[e.r/255,e.g/255,e.b/255,null!=e.a?e.a:1]:null}constructor(e){this.r=255,this.g=255,this.b=255,this.a=1,e&&this.setColor(e)}get isBright(){return.299*this.r+.587*this.g+.114*this.b>=127}setColor(e){return"string"==typeof e?c.fromString(e,this):Array.isArray(e)?c.fromArray(e,this):(this._set(e.r??0,e.g??0,e.b??0,e.a??1),e instanceof c||this._sanitize()),this}toRgb(){return[this.r,this.g,this.b]}toRgba(){return[this.r,this.g,this.b,this.a]}toHex(){const e=this.r.toString(16),t=this.g.toString(16),r=this.b.toString(16);return`#${e.length<2?"0"+e:e}${t.length<2?"0"+t:t}${r.length<2?"0"+r:r}`}toCss(e=!1){const t=this.r+", "+this.g+", "+this.b;return e?`rgba(${t}, ${this.a})`:`rgb(${t})`}toString(){return this.toCss(!0)}toJSON(){return this.toArray()}toArray(e=c.AlphaMode.ALWAYS){const t=u(this.r),r=u(this.g),n=u(this.b);return e===c.AlphaMode.ALWAYS||1!==this.a?[t,r,n,u(255*this.a)]:[t,r,n]}clone(){return new c(this.toRgba())}hash(){return this.r<<24|this.g<<16|this.b<<8|255*this.a}equals(e){return null!=e&&e.r===this.r&&e.g===this.g&&e.b===this.b&&e.a===this.a}_sanitize(){return this.r=Math.round(l(this.r,0,255)),this.g=Math.round(l(this.g,0,255)),this.b=Math.round(l(this.b,0,255)),this.a=l(this.a,0,1),this}_set(e,t,r,n){this.r=e,this.g=t,this.b=r,this.a=n}}c.prototype.declaredClass="esri.Color",n=c||(c={}),(o=n.AlphaMode||(n.AlphaMode={}))[o.ALWAYS=0]="ALWAYS",o[o.UNLESS_OPAQUE=1]="UNLESS_OPAQUE";const f=c},99880:(e,t,r)=>{r.d(t,{V:()=>u});var n=r(68773),o=(r(3172),r(20102)),i=r(92604),s=r(17452);const a=i.Z.getLogger("esri.assets");function u(e){if(!n.Z.assetsPath)throw a.errorOnce("The API assets location needs to be set using config.assetsPath. More information: https://arcg.is/1OzLe50"),new o.Z("assets:path-not-set","config.assetsPath is not set");return(0,s.v_)(n.Z.assetsPath,e)}},46521:(e,t,r)=>{function n(){return[1,0,0,0,1,0,0,0,1]}function o(e,t,r,n,o,i,s,a,u){return[e,t,r,n,o,i,s,a,u]}function i(e,t){return new Float64Array(e,t,9)}r.d(t,{a:()=>i,c:()=>n,f:()=>o}),Object.freeze(Object.defineProperty({__proto__:null,clone:function(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8]]},create:n,createView:i,fromValues:o},Symbol.toStringTag,{value:"Module"}))},51305:(e,t,r)=>{r.d(t,{c:()=>h,g:()=>c,j:()=>M,k:()=>g,m:()=>f,s:()=>l});var n=r(46521),o=r(94961),i=r(65617),s=r(46851),a=r(17896),u=r(98766);function l(e,t,r){r*=.5;const n=Math.sin(r);return e[0]=n*t[0],e[1]=n*t[1],e[2]=n*t[2],e[3]=Math.cos(r),e}function c(e,t){const r=2*Math.acos(t[3]),n=Math.sin(r/2);return n>(0,s.g)()?(e[0]=t[0]/n,e[1]=t[1]/n,e[2]=t[2]/n):(e[0]=1,e[1]=0,e[2]=0),r}function f(e,t,r){const n=t[0],o=t[1],i=t[2],s=t[3],a=r[0],u=r[1],l=r[2],c=r[3];return e[0]=n*c+s*a+o*l-i*u,e[1]=o*c+s*u+i*a-n*l,e[2]=i*c+s*l+n*u-o*a,e[3]=s*c-n*a-o*u-i*l,e}function d(e,t,r,n){const o=t[0],i=t[1],a=t[2],u=t[3];let l,c,f,d,h,p=r[0],g=r[1],b=r[2],m=r[3];return c=o*p+i*g+a*b+u*m,c<0&&(c=-c,p=-p,g=-g,b=-b,m=-m),1-c>(0,s.g)()?(l=Math.acos(c),f=Math.sin(l),d=Math.sin((1-n)*l)/f,h=Math.sin(n*l)/f):(d=1-n,h=n),e[0]=d*o+h*p,e[1]=d*i+h*g,e[2]=d*a+h*b,e[3]=d*u+h*m,e}function h(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e}function p(e,t){const r=t[0]+t[4]+t[8];let n;if(r>0)n=Math.sqrt(r+1),e[3]=.5*n,n=.5/n,e[0]=(t[5]-t[7])*n,e[1]=(t[6]-t[2])*n,e[2]=(t[1]-t[3])*n;else{let r=0;t[4]>t[0]&&(r=1),t[8]>t[3*r+r]&&(r=2);const o=(r+1)%3,i=(r+2)%3;n=Math.sqrt(t[3*r+r]-t[3*o+o]-t[3*i+i]+1),e[r]=.5*n,n=.5/n,e[3]=(t[3*o+i]-t[3*i+o])*n,e[o]=(t[3*o+r]+t[3*r+o])*n,e[i]=(t[3*i+r]+t[3*r+i])*n}return e}function g(e,t,r,n){const o=.5*Math.PI/180;t*=o,r*=o,n*=o;const i=Math.sin(t),s=Math.cos(t),a=Math.sin(r),u=Math.cos(r),l=Math.sin(n),c=Math.cos(n);return e[0]=i*u*c-s*a*l,e[1]=s*a*c+i*u*l,e[2]=s*u*l-i*a*c,e[3]=s*u*c+i*a*l,e}const b=u.c,m=u.s,y=u.a,w=f,O=u.b,A=u.d,T=u.l,C=u.e,v=C,E=u.f,S=E,I=u.n,M=u.g,U=u.h,L=(0,i.c)(),N=(0,i.f)(1,0,0),R=(0,i.f)(0,1,0),F=(0,o.a)(),P=(0,o.a)(),Z=(0,n.c)();Object.freeze(Object.defineProperty({__proto__:null,add:y,calculateW:function(e,t){const r=t[0],n=t[1],o=t[2];return e[0]=r,e[1]=n,e[2]=o,e[3]=Math.sqrt(Math.abs(1-r*r-n*n-o*o)),e},conjugate:h,copy:b,dot:A,equals:U,exactEquals:M,fromEuler:g,fromMat3:p,getAxisAngle:c,identity:function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e},invert:function(e,t){const r=t[0],n=t[1],o=t[2],i=t[3],s=r*r+n*n+o*o+i*i,a=s?1/s:0;return e[0]=-r*a,e[1]=-n*a,e[2]=-o*a,e[3]=i*a,e},len:v,length:C,lerp:T,mul:w,multiply:f,normalize:I,random:function(e){const t=s.R,r=t(),n=t(),o=t(),i=Math.sqrt(1-r),a=Math.sqrt(r);return e[0]=i*Math.sin(2*Math.PI*n),e[1]=i*Math.cos(2*Math.PI*n),e[2]=a*Math.sin(2*Math.PI*o),e[3]=a*Math.cos(2*Math.PI*o),e},rotateX:function(e,t,r){r*=.5;const n=t[0],o=t[1],i=t[2],s=t[3],a=Math.sin(r),u=Math.cos(r);return e[0]=n*u+s*a,e[1]=o*u+i*a,e[2]=i*u-o*a,e[3]=s*u-n*a,e},rotateY:function(e,t,r){r*=.5;const n=t[0],o=t[1],i=t[2],s=t[3],a=Math.sin(r),u=Math.cos(r);return e[0]=n*u-i*a,e[1]=o*u+s*a,e[2]=i*u+n*a,e[3]=s*u-o*a,e},rotateZ:function(e,t,r){r*=.5;const n=t[0],o=t[1],i=t[2],s=t[3],a=Math.sin(r),u=Math.cos(r);return e[0]=n*u+o*a,e[1]=o*u-n*a,e[2]=i*u+s*a,e[3]=s*u-i*a,e},rotationTo:function(e,t,r){const n=(0,a.e)(t,r);return n<-.999999?((0,a.f)(L,N,t),(0,a.u)(L)<1e-6&&(0,a.f)(L,R,t),(0,a.n)(L,L),l(e,L,Math.PI),e):n>.999999?(e[0]=0,e[1]=0,e[2]=0,e[3]=1,e):((0,a.f)(L,t,r),e[0]=L[0],e[1]=L[1],e[2]=L[2],e[3]=1+n,I(e,e))},scale:O,set:m,setAxes:function(e,t,r,n){const o=Z;return o[0]=r[0],o[3]=r[1],o[6]=r[2],o[1]=n[0],o[4]=n[1],o[7]=n[2],o[2]=-t[0],o[5]=-t[1],o[8]=-t[2],I(e,p(e,o))},setAxisAngle:l,slerp:d,sqlerp:function(e,t,r,n,o,i){return d(F,t,o,i),d(P,r,n,i),d(e,F,P,2*i*(1-i)),e},sqrLen:S,squaredLength:E,str:function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"}},Symbol.toStringTag,{value:"Module"}))},37140:(e,t,r)=>{function n(){const e=new Float32Array(4);return e[3]=1,e}function o(e){const t=new Float32Array(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}r.d(t,{b:()=>o,c:()=>n}),Object.freeze(Object.defineProperty({__proto__:null,clone:o,create:n,createView:function(e,t){return new Float32Array(e,t,4)},fromValues:function(e,t,r,n){const o=new Float32Array(4);return o[0]=e,o[1]=t,o[2]=r,o[3]=n,o}},Symbol.toStringTag,{value:"Module"}))},94961:(e,t,r)=>{function n(){return[0,0,0,1]}function o(e){return[e[0],e[1],e[2],e[3]]}function i(e,t){return new Float64Array(e,t,4)}r.d(t,{I:()=>s,a:()=>n,b:()=>o,c:()=>i});const s=[0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:s,clone:o,create:n,createView:i,fromValues:function(e,t,r,n){return[e,t,r,n]}},Symbol.toStringTag,{value:"Module"}))},72119:(e,t,r)=>{function n(){return new Float32Array(3)}function o(e){const t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function i(e,t,r){const n=new Float32Array(3);return n[0]=e,n[1]=t,n[2]=r,n}function s(){return n()}function a(){return i(1,1,1)}function u(){return i(1,0,0)}function l(){return i(0,1,0)}function c(){return i(0,0,1)}r.d(t,{b:()=>o,c:()=>n,f:()=>i});const f=s(),d=a(),h=u(),p=l(),g=c();Object.freeze(Object.defineProperty({__proto__:null,ONES:d,UNIT_X:h,UNIT_Y:p,UNIT_Z:g,ZEROS:f,clone:o,create:n,createView:function(e,t){return new Float32Array(e,t,3)},fromValues:i,ones:a,unitX:u,unitY:l,unitZ:c,zeros:s},Symbol.toStringTag,{value:"Module"}))},36030:(e,t,r)=>{r.d(t,{J:()=>i});var n=r(35454),o=r(5600);function i(e,t={}){const r=e instanceof n.X?e:new n.X(e,t),i={type:t?.ignoreUnknown??1?r.apiValues:String,json:{type:r.jsonValues,read:!t?.readOnly&&{reader:r.read},write:{writer:r.write}}};return void 0!==t?.readOnly&&(i.readOnly=!!t.readOnly),void 0!==t?.default&&(i.json.default=t.default),void 0!==t?.name&&(i.json.name=t.name),void 0!==t?.nonNullable&&(i.nonNullable=t.nonNullable),(0,o.Cb)(i)}},10661:(e,t,r)=>{r.d(t,{s:()=>o});var n=r(42100);class o extends n.s{notify(){const e=this._observers;if(e&&e.length>0){const t=e.slice();for(const e of t)e.onInvalidated(),e.onCommitted()}}}},3172:(e,t,r)=>{r.r(t),r.d(t,{default:()=>h});var n=r(68773),o=r(40330),i=r(20102),s=r(80442),a=r(22974),u=r(95330),l=r(17452),c=r(19745),f=r(71058),d=r(85958);async function h(e,t){const a=(0,l.HK)(e),c=(0,l.jc)(e);c||a||(e=(0,l.Fv)(e));const m={url:e,requestOptions:{...t}};let y=(0,l.oh)(e);if(y){const e=await async function(e,t){if(null!=e.responseData)return e.responseData;if(e.headers&&(t.requestOptions.headers={...t.requestOptions.headers,...e.headers}),e.query&&(t.requestOptions.query={...t.requestOptions.query,...e.query}),e.before){let r,n;try{n=await e.before(t)}catch(e){r=C("request:interceptor",e,t)}if((n instanceof Error||n instanceof i.Z)&&(r=C("request:interceptor",n,t)),r)throw e.error&&e.error(r),r;return n}}(y,m);if(null!=e)return{data:e,getHeader:O,httpStatus:200,requestOptions:m.requestOptions,url:m.url};y.after||y.error||(y=null)}if(e=m.url,"image"===(t=m.requestOptions).responseType){if((0,s.Z)("host-webworker")||(0,s.Z)("host-node"))throw C("request:invalid-parameters",new Error("responseType 'image' is not supported in Web Workers or Node environment"),m)}else if(a)throw C("request:invalid-parameters",new Error("Data URLs are not supported for responseType = "+t.responseType),m);if("head"===t.method){if(t.body)throw C("request:invalid-parameters",new Error("body parameter cannot be set when method is 'head'"),m);if(a||c)throw C("request:invalid-parameters",new Error("data and blob URLs are not supported for method 'head'"),m)}if(await async function(){(0,s.Z)("host-webworker")?p||(p=await r.e(9884).then(r.bind(r,29884))):h._abortableFetch||(h._abortableFetch=globalThis.fetch.bind(globalThis))}(),p)return p.execute(e,t);const w=new AbortController;(0,u.fu)(t,(()=>w.abort()));const A={controller:w,credential:void 0,credentialToken:void 0,fetchOptions:void 0,hasToken:!1,interceptor:y,params:m,redoRequest:!1,useIdentity:g.useIdentity,useProxy:!1,useSSL:!1,withCredentials:!1},T=await async function(e){let t,r;await async function(e){const t=e.params.url,r=e.params.requestOptions,i=e.controller.signal,s=r.body;let a=null,l=null;if(b&&"HTMLFormElement"in globalThis&&(s instanceof FormData?a=s:s instanceof HTMLFormElement&&(a=new FormData(s))),"string"==typeof s&&(l=s),e.fetchOptions={cache:r.cacheBust&&!h._abortableFetch.polyfill?"no-cache":"default",credentials:"same-origin",headers:r.headers||{},method:"head"===r.method?"HEAD":"GET",mode:"cors",priority:g.priority,redirect:"follow",signal:i},(a||l)&&(e.fetchOptions.body=a||l),"anonymous"===r.authMode&&(e.useIdentity=!1),e.hasToken=!!(/token=/i.test(t)||r.query?.token||a?.get("token")),!e.hasToken&&n.Z.apiKey&&(0,f.r)(t)&&(r.query||(r.query={}),r.query.token=n.Z.apiKey,e.hasToken=!0),e.useIdentity&&!e.hasToken&&!e.credentialToken&&!E(t)&&!(0,u.Hc)(i)){let n;"immediate"===r.authMode?(await v(),n=await o.id.getCredential(t,{signal:i}),e.credential=n):"no-prompt"===r.authMode?(await v(),n=await o.id.getCredential(t,{prompt:!1,signal:i}).catch((()=>{})),e.credential=n):o.id&&(n=o.id.findCredential(t)),n&&(e.credentialToken=n.token,e.useSSL=!!n.ssl)}}(e);try{do{[t,r]=await S(e)}while(!await M(e,t,r))}catch(r){const n=C("request:server",r,e.params,t);throw n.details.ssl=e.useSSL,e.interceptor&&e.interceptor.error&&e.interceptor.error(n),n}const i=e.params.url;if(r&&/\/sharing\/rest\/(accounts|portals)\/self/i.test(i)){if(!e.hasToken&&!e.credentialToken&&r.user?.username&&!(0,l.kl)(i)){const e=(0,l.P$)(i,!0);e&&g.trustedServers.push(e)}Array.isArray(r.authorizedCrossOriginNoCorsDomains)&&(0,d.Hu)(r.authorizedCrossOriginNoCorsDomains)}const s=e.credential;if(s&&o.id){const e=o.id.findServerInfo(s.server);let t=e&&e.owningSystemUrl;if(t){t=t.replace(/\/?$/,"/sharing");const e=o.id.findCredential(t,s.userId);e&&-1===o.id._getIdenticalSvcIdx(t,e)&&e.resources.unshift(t)}}return{data:r,getHeader:t?e=>t?.headers.get(e):O,httpStatus:t?.status??200,requestOptions:e.params.requestOptions,ssl:e.useSSL,url:e.params.url}}(A);return y?.after?.(T),T}let p;const g=n.Z.request,b="FormData"in globalThis,m=[499,498,403,401],y=["COM_0056","COM_0057","SB_0008"],w=[/\/arcgis\/tokens/i,/\/sharing(\/rest)?\/generatetoken/i,/\/rest\/info/i],O=()=>null,A=Symbol();function T(e){const t=(0,l.P$)(e);return!t||t.endsWith(".arcgis.com")||h._corsServers.includes(t)||(0,l.kl)(t)}function C(e,t,r,n){let o="Error";const s={url:r.url,requestOptions:r.requestOptions,getHeader:O,ssl:!1};if(t instanceof i.Z)return t.details?(t.details=(0,a.d9)(t.details),t.details.url=r.url,t.details.requestOptions=r.requestOptions):t.details=s,t;if(t){const e=n&&(e=>n.headers.get(e)),r=n&&n.status,i=t.message;i&&(o=i),e&&(s.getHeader=e),s.httpStatus=(null!=t.httpCode?t.httpCode:t.code)||r||0,s.subCode=t.subcode,s.messageCode=t.messageCode,"string"==typeof t.details?s.messages=[t.details]:s.messages=t.details,s.raw=A in t?t[A]:t}return(0,u.D_)(t)?(0,u.zE)():new i.Z(e,o,s)}async function v(){o.id||await Promise.all([r.e(6261),r.e(1400),r.e(450)]).then(r.bind(r,73660))}function E(e){return w.some((t=>t.test(e)))}async function S(e){let t=e.params.url;const r=e.params.requestOptions,n=e.fetchOptions??{},i=(0,l.jc)(t)||(0,l.HK)(t),a=r.responseType||"json",f=i?0:null!=r.timeout?r.timeout:g.timeout;let p=!1;if(!i){e.useSSL&&(t=(0,l.hO)(t)),r.cacheBust&&"default"===n.cache&&(t=(0,l.ZN)(t,"request.preventCache",Date.now()));let i={...r.query};e.credentialToken&&(i.token=e.credentialToken);let a=(0,l.B7)(i);(0,s.Z)("esri-url-encodes-apostrophe")&&(a=a.replace(/'/g,"%27"));const u=t.length+1+a.length;let f;p="delete"===r.method||"post"===r.method||"put"===r.method||!!r.body||u>g.maxUrlLength;const h=r.useProxy||!!(0,l.ed)(t);if(h){const e=(0,l.b7)(t);f=e.path,!p&&f.length+1+u>g.maxUrlLength&&(p=!0),e.query&&(i={...e.query,...i})}if("HEAD"===n.method&&(p||h)){if(p){if(u>g.maxUrlLength)throw C("request:invalid-parameters",new Error("URL exceeds maximum length"),e.params);throw C("request:invalid-parameters",new Error("cannot use POST request when method is 'head'"),e.params)}if(h)throw C("request:invalid-parameters",new Error("cannot use proxy when method is 'head'"),e.params)}if(p?(n.method="delete"===r.method?"DELETE":"put"===r.method?"PUT":"POST",r.body?t=(0,l.fl)(t,i):(n.body=(0,l.B7)(i),n.headers||(n.headers={}),n.headers["Content-Type"]="application/x-www-form-urlencoded")):t=(0,l.fl)(t,i),h&&(e.useProxy=!0,t=`${f}?${t}`),i.token&&b&&n.body instanceof FormData&&!(0,c.P)(t)&&n.body.set("token",i.token),r.hasOwnProperty("withCredentials"))e.withCredentials=r.withCredentials;else if(!(0,l.D6)(t,(0,l.TI)()))if((0,l.kl)(t))e.withCredentials=!0;else if(o.id){const r=o.id.findServerInfo(t);r&&r.webTierAuth&&(e.withCredentials=!0)}e.withCredentials&&(n.credentials="include",(0,d.jH)(t)&&await(0,d.jz)(p?(0,l.fl)(t,i):t))}let m,y,w=0,O=!1;f>0&&(w=setTimeout((()=>{O=!0,e.controller.abort()}),f));try{if("native-request-init"===r.responseType)y=n,y.url=t;else if("image"!==r.responseType||"default"!==n.cache||"GET"!==n.method||p||function(e){if(e)for(const t of Object.getOwnPropertyNames(e))if(e[t])return!0;return!1}(r.headers)||!i&&!e.useProxy&&g.proxyUrl&&!T(t)){if(m=await h._abortableFetch(t,n),e.useProxy||function(e){const t=(0,l.P$)(e);t&&!h._corsServers.includes(t)&&h._corsServers.push(t)}(t),"native"===r.responseType)y=m;else if("HEAD"!==n.method)if(m.ok){switch(a){case"array-buffer":y=await m.arrayBuffer();break;case"blob":case"image":y=await m.blob();break;default:y=await m.text()}if(w&&(clearTimeout(w),w=0),"json"===a||"xml"===a||"document"===a)if(y)switch(a){case"json":y=JSON.parse(y);break;case"xml":y=I(y,"application/xml");break;case"document":y=I(y,"text/html")}else y=null;if(y){if("array-buffer"===a||"blob"===a){const e=m.headers.get("Content-Type");if(e&&/application\/json|text\/plain/i.test(e)&&y["blob"===a?"size":"byteLength"]<=750)try{const e=await new Response(y).json();e.error&&(y=e)}catch{}}"image"===a&&y instanceof Blob&&(y=await U(URL.createObjectURL(y),e,!0))}}else y=await m.text()}else y=await U(t,e)}catch(n){if("AbortError"===n.name){if(O)throw new Error("Timeout exceeded");throw(0,u.zE)("Request canceled")}if(!(!m&&n instanceof TypeError&&g.proxyUrl)||r.body||"delete"===r.method||"head"===r.method||"post"===r.method||"put"===r.method||e.useProxy||T(t))throw n;e.redoRequest=!0,(0,l.tD)({proxyUrl:g.proxyUrl,urlPrefix:(0,l.P$)(t)??""})}finally{w&&clearTimeout(w)}return[m,y]}function I(e,t){let r;try{r=(new DOMParser).parseFromString(e,t)}catch{}if(!r||r.getElementsByTagName("parsererror").length)throw new SyntaxError("XML Parse error");return r}async function M(e,t,r){if(e.redoRequest)return e.redoRequest=!1,!1;const n=e.params.requestOptions;if(!t||"native"===n.responseType||"native-request-init"===n.responseType)return!0;let i,s;if(!t.ok)throw i=new Error(`Unable to load ${t.url} status: ${t.status}`),i[A]=r,i;r&&(r.error?i=r.error:"error"===r.status&&Array.isArray(r.messages)&&(i={...r},i[A]=r,i.details=r.messages));let a,u=null;i&&(s=Number(i.code),u=i.hasOwnProperty("subcode")?Number(i.subcode):null,a=i.messageCode,a=a&&a.toUpperCase());const l=n.authMode;if(403===s&&(4===u||i.message&&i.message.toLowerCase().includes("ssl")&&!i.message.toLowerCase().includes("permission"))){if(!e.useSSL)return e.useSSL=!0,!1}else if(!e.hasToken&&e.useIdentity&&("no-prompt"!==l||498===s)&&void 0!==s&&m.includes(s)&&!E(e.params.url)&&(403!==s||a&&!y.includes(a)&&(null==u||2===u&&e.credentialToken))){await v();try{const t=await o.id.getCredential(e.params.url,{error:C("request:server",i,e.params),prompt:"no-prompt"!==l,signal:e.controller.signal,token:e.credentialToken});return e.credential=t,e.credentialToken=t.token,e.useSSL=e.useSSL||t.ssl,!1}catch(t){if("no-prompt"===l)return e.credential=void 0,e.credentialToken=void 0,!1;i=t}}if(i)throw i;return!0}function U(e,t,r=!1){const n=t.controller.signal,o=new Image;return t.withCredentials?o.crossOrigin="use-credentials":o.crossOrigin="anonymous",o.alt="",o.fetchPriority=g.priority,o.src=e,(0,d.fY)(o,e,r,n)}h._abortableFetch=null,h._corsServers=["https://server.arcgisonline.com","https://services.arcgisonline.com"]},71058:(e,t,r)=>{r.d(t,{r:()=>i});var n=r(17452);const o=["elevation3d.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","static.arcgis.com"];function i(e){const t=(0,n.P$)(e,!0);return!!t&&t.endsWith(".arcgis.com")&&!o.includes(t)&&!e.endsWith("/sharing/rest/generateToken")}},85958:(e,t,r)=>{r.d(t,{Hu:()=>l,fY:()=>a,jH:()=>c,jz:()=>f});var n=r(68773),o=r(80442),i=r(95330),s=r(17452);function a(e,t,r=!1,n){return new Promise(((s,a)=>{if((0,i.Hc)(n))return void a(u());let l=()=>{d(),a(new Error(`Unable to load ${t}`))},c=()=>{const t=e;d(),s(t)},f=()=>{if(!e)return;const t=e;d(),t.src="",a(u())};const d=()=>{(0,o.Z)("esri-image-decode")||(e.removeEventListener("error",l),e.removeEventListener("load",c)),l=null,c=null,e=null,null!=n&&n.removeEventListener("abort",f),f=null,r&&URL.revokeObjectURL(t)};null!=n&&n.addEventListener("abort",f),(0,o.Z)("esri-image-decode")?e.decode().then(c,l):(e.addEventListener("error",l),e.addEventListener("load",c))}))}function u(){try{return new DOMException("Aborted","AbortError")}catch{const e=new Error;return e.name="AbortError",e}}function l(e){n.Z.request.crossOriginNoCorsDomains||(n.Z.request.crossOriginNoCorsDomains={});const t=n.Z.request.crossOriginNoCorsDomains;for(let r of e)r=r.toLowerCase(),/^https?:\/\//.test(r)?t[(0,s.P$)(r)??""]=0:(t[(0,s.P$)("http://"+r)??""]=0,t[(0,s.P$)("https://"+r)??""]=0)}function c(e){const t=n.Z.request.crossOriginNoCorsDomains;if(t){let r=(0,s.P$)(e);if(r)return r=r.toLowerCase(),!(0,s.D6)(r,(0,s.TI)())&&t[r]<Date.now()-36e5}return!1}async function f(e){const t=n.Z.request.crossOriginNoCorsDomains,r=(0,s.P$)(e);t&&r&&(t[r.toLowerCase()]=Date.now());const o=(0,s.mN)(e);e=o.path,"json"===o.query?.f&&(e+="?f=json");try{await fetch(e,{mode:"no-cors",credentials:"include"})}catch{}}},90447:(e,t,r)=>{r.r(t),r.d(t,{default:()=>T});var n=r(70586),o=r(1533),i=r(51305),s=r(37140),a=r(17896),u=r(72119),l=r(44547),c=r(82971),f=(r(80442),r(23030)),d=r(14008),h=r(46329),p=r(91891),g=r(25683);function b(e,t,r){return null!=e&&e.attributeInfo.useElevation?t?function(e,t){const r=new Float64Array(t);for(let n=0;n<t;n++)r[n]=e[3*n+2];return r}(t,r):null:null!=e&&e.attributeInfo.storageInfo?(0,p.qM)(e.attributeInfo.storageInfo,e.buffer,r):null}function m(e,t,r,n,o){const i=e.length/3;let s=0;for(let a=0;a<i;a++){let i=!0;for(let e=0;e<n.length&&i;e++){const{filterJSON:t}=n[e],r=o[e].values[a];switch(t.type){case"pointCloudValueFilter":{const e="exclude"===t.mode;t.values.includes(r)===e&&(i=!1);break}case"pointCloudBitfieldFilter":{const e=w(t.requiredSetBits),n=w(t.requiredClearBits);(r&e)===e&&0==(r&n)||(i=!1);break}case"pointCloudReturnFilter":{const e=15&r,n=r>>>4&15,o=n>1,s=1===e,a=e===n;let u=!1;for(const e of t.includedReturns)if("last"===e&&a||"firstOfMany"===e&&s&&o||"lastOfMany"===e&&a&&o||"single"===e&&!o){u=!0;break}u||(i=!1);break}}}i&&(r[s]=a,e[3*s]=e[3*a],e[3*s+1]=e[3*a+1],e[3*s+2]=e[3*a+2],t[3*s]=t[3*a],t[3*s+1]=t[3*a+1],t[3*s+2]=t[3*a+2],s++)}return s}function y(e){switch(e){default:case null:case"none":return e=>e;case"low-four-bit":return e=>15&e;case"high-four-bit":return e=>(240&e)>>4;case"absolute-value":return e=>Math.abs(e);case"modulo-ten":return e=>e%10}}function w(e){let t=0;for(const r of e||[])t|=1<<r;return t}class O{transform(e){const t=this._transform(e),r=[t.points.buffer,t.rgb.buffer];null!=t.pointIdFilterMap&&r.push(t.pointIdFilterMap.buffer);for(const e of t.attributes)"buffer"in e.values&&(0,o.eP)(e.values.buffer)&&e.values.buffer!==t.rgb.buffer&&r.push(e.values.buffer);return Promise.resolve({result:t,transferList:r})}_transform(e){const t=function(e,t){if(null==e.encoding||""===e.encoding){const r=(0,p.W7)(t,e);if(null==r.vertexAttributes.position)return;const n=(0,p.I_)(t,r.vertexAttributes.position),o=r.header.fields,i=[o.offsetX,o.offsetY,o.offsetZ],s=[o.scaleX,o.scaleY,o.scaleZ],a=n.length/3,u=new Float64Array(3*a);for(let e=0;e<a;e++)u[3*e]=n[3*e]*s[0]+i[0],u[3*e+1]=n[3*e+1]*s[1]+i[1],u[3*e+2]=n[3*e+2]*s[2]+i[2];return u}if("lepcc-xyz"===e.encoding)return(0,g.Gi)(t).result}(e.schema,e.geometryBuffer);let r=t.length/3,o=null;const i=new Array,s=b(e.primaryAttributeData,t,r);null!=e.primaryAttributeData&&s&&i.push({attributeInfo:e.primaryAttributeData.attributeInfo,values:s});const a=b(e.modulationAttributeData,t,r);null!=e.modulationAttributeData&&a&&i.push({attributeInfo:e.modulationAttributeData.attributeInfo,values:a});let u=function(e,t,r,n){const{rendererJSON:o,isRGBRenderer:i}=e;let s=null,a=null;if(t&&i)s=t;else if(t&&"pointCloudUniqueValueRenderer"===o?.type){a=h.Z.fromJSON(o);const e=a.colorUniqueValueInfos;s=new Uint8Array(3*n);const r=y(a.fieldTransformType);for(let o=0;o<n;o++){const n=(r?r(t[o]):t[o])+"";for(let t=0;t<e.length;t++)if(e[t].values.includes(n)){s[3*o]=e[t].color.r,s[3*o+1]=e[t].color.g,s[3*o+2]=e[t].color.b;break}}}else if(t&&"pointCloudStretchRenderer"===o?.type){a=d.Z.fromJSON(o);const e=a.stops;s=new Uint8Array(3*n);const r=y(a.fieldTransformType);for(let o=0;o<n;o++){const n=r?r(t[o]):t[o],i=e.length-1;if(n<e[0].value)s[3*o]=e[0].color.r,s[3*o+1]=e[0].color.g,s[3*o+2]=e[0].color.b;else if(n>=e[i].value)s[3*o]=e[i].color.r,s[3*o+1]=e[i].color.g,s[3*o+2]=e[i].color.b;else for(let t=1;t<e.length;t++)if(n<e[t].value){const r=(n-e[t-1].value)/(e[t].value-e[t-1].value);s[3*o]=e[t].color.r*r+e[t-1].color.r*(1-r),s[3*o+1]=e[t].color.g*r+e[t-1].color.g*(1-r),s[3*o+2]=e[t].color.b*r+e[t-1].color.b*(1-r);break}}}else if(t&&"pointCloudClassBreaksRenderer"===o?.type){a=f.Z.fromJSON(o);const e=a.colorClassBreakInfos;s=new Uint8Array(3*n);const r=y(a.fieldTransformType);for(let o=0;o<n;o++){const n=r?r(t[o]):t[o];for(let t=0;t<e.length;t++)if(n>=e[t].minValue&&n<=e[t].maxValue){s[3*o]=e[t].color.r,s[3*o+1]=e[t].color.g,s[3*o+2]=e[t].color.b;break}}}else s=new Uint8Array(3*n).fill(255);if(r&&a&&a.colorModulation){const e=a.colorModulation.minValue,t=a.colorModulation.maxValue,o=.3;for(let i=0;i<n;i++){const n=r[i],a=n>=t?1:n<=e?o:o+(1-o)*(n-e)/(t-e);s[3*i]=a*s[3*i],s[3*i+1]=a*s[3*i+1],s[3*i+2]=a*s[3*i+2]}}return s}(e.rendererInfo,s,a,r);if(e.filterInfo&&e.filterInfo.length>0&&null!=e.filterAttributesData){const s=e.filterAttributesData.filter(n.pC).map((e=>{const n=b(e,t,r),o={attributeInfo:e.attributeInfo,values:n};return i.push(o),o}));o=new Uint32Array(r),r=m(t,u,o,e.filterInfo,s)}for(const n of e.userAttributesData){const e=b(n,t,r);i.push({attributeInfo:n.attributeInfo,values:e})}3*r<u.length&&(u=new Uint8Array(u.buffer.slice(0,3*r))),this._applyElevationOffsetInPlace(t,r,e.elevationOffset);const l=this._transformCoordinates(t,r,e.obb,c.Z.fromJSON(e.inSR),c.Z.fromJSON(e.outSR));return{obb:e.obb,points:l,rgb:u,attributes:i,pointIdFilterMap:o}}_transformCoordinates(e,t,r,n,o){if(!(0,l.CM)(e,n,0,e,o,0,t))throw new Error("Can't reproject");const s=(0,u.f)(r.center[0],r.center[1],r.center[2]),c=(0,u.c)(),f=(0,u.c)();(0,i.c)(A,r.quaternion);const d=new Float32Array(3*t);for(let n=0;n<t;n++)c[0]=e[3*n]-s[0],c[1]=e[3*n+1]-s[1],c[2]=e[3*n+2]-s[2],(0,a.q)(f,c,A),r.halfSize[0]=Math.max(r.halfSize[0],Math.abs(f[0])),r.halfSize[1]=Math.max(r.halfSize[1],Math.abs(f[1])),r.halfSize[2]=Math.max(r.halfSize[2],Math.abs(f[2])),d[3*n]=c[0],d[3*n+1]=c[1],d[3*n+2]=c[2];return d}_applyElevationOffsetInPlace(e,t,r){if(0!==r)for(let n=0;n<t;n++)e[3*n+2]+=r}}const A=(0,s.c)();function T(){return new O}},91891:(e,t,r)=>{r.d(t,{I_:()=>d,W7:()=>g,qM:()=>m});var n=r(20102),o=r(22974),i=r(92604),s=r(25683),a=r(35065);const u=i.Z.getLogger("esri.views.3d.layers.i3s.I3SBinaryReader");function l(e,t,r){let o="",i=0;for(;i<r;){const s=e[t+i];if(s<128)o+=String.fromCharCode(s),i++;else if(s>=192&&s<224){if(i+1>=r)throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Two byte character was truncated.");const a=(31&s)<<6|63&e[t+i+1];o+=String.fromCharCode(a),i+=2}else if(s>=224&&s<240){if(i+2>=r)throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");const a=(15&s)<<12|(63&e[t+i+1])<<6|63&e[t+i+2];o+=String.fromCharCode(a),i+=3}else{if(!(s>=240&&s<248))throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Invalid multi byte sequence.");{if(i+3>=r)throw new n.Z("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");const a=(7&s)<<18|(63&e[t+i+1])<<12|(63&e[t+i+2])<<6|63&e[t+i+3];if(a>=65536){const e=55296+(a-65536>>10),t=56320+(1023&a);o+=String.fromCharCode(e,t)}else o+=String.fromCharCode(a);i+=4}}}return o}function c(e,t){const r={byteOffset:0,byteCount:0,fields:Object.create(null)};let n=0;for(let o=0;o<t.length;o++){const i=t[o],s=i.valueType||i.type,a=w[s];r.fields[i.property]=a(e,n),n+=y[s].BYTES_PER_ELEMENT}return r.byteCount=n,r}function f(e,t,r){const o=[];let i,s,a=0;for(s=0;s<e;s+=1){if(i=t[s],i>0){if(o.push(l(r,a,i-1)),0!==r[a+i-1])throw new n.Z("string-array-error","Invalid string array: missing null termination.")}else o.push(null);a+=i}return o}function d(e,t){return new(0,y[t.valueType])(e,t.byteOffset,t.count*t.valuesPerElement)}function h(e,t,r){const i=null!=t.header?c(e,t.header):{byteOffset:0,byteCount:0,fields:{count:r}},s={header:i,byteOffset:i.byteCount,byteCount:0,entries:Object.create(null)};let a=i.byteCount;for(let e=0;e<t.ordering.length;e++){const r=t.ordering[e],u=(0,o.d9)(t[r]);if(u.count=i.fields.count??0,"String"===u.valueType){if(u.byteOffset=a,u.byteCount=i.fields[r+"ByteCount"],"UTF-8"!==u.encoding)throw new n.Z("unsupported-encoding","Unsupported String encoding.",{encoding:u.encoding});if(u.timeEncoding&&"ECMA_ISO8601"!==u.timeEncoding)throw new n.Z("unsupported-time-encoding","Unsupported time encoding.",{timeEncoding:u.timeEncoding})}else{if(!O(u.valueType))throw new n.Z("unsupported-value-type","Unsupported binary valueType",{valueType:u.valueType});{const e=A(u.valueType);a+=a%e!=0?e-a%e:0,u.byteOffset=a,u.byteCount=e*u.valuesPerElement*u.count}}a+=u.byteCount??0,s.entries[r]=u}return s.byteCount=a-s.byteOffset,s}function p(e,t,r){if(t!==e&&u.error(`Invalid ${r} buffer size\n expected: ${e}, actual: ${t})`),t<e)throw new n.Z("buffer-too-small","Binary buffer is too small",{expectedSize:e,actualSize:t})}function g(e,t){const r=c(e,t&&t.header);let n=r.byteCount;const o={isDraco:!1,header:r,byteOffset:r.byteCount,byteCount:0,vertexAttributes:{}},i=r.fields,s=null!=i.vertexCount?i.vertexCount:i.count;for(const e of t.ordering){if(!t.vertexAttributes[e])continue;const r={...t.vertexAttributes[e],byteOffset:n,count:s},i=b[e]||"_"+e;o.vertexAttributes[i]=r,n+=A(r.valueType)*r.valuesPerElement*s}const a=i.faceCount;if(t.faces&&a){o.faces={};for(const e of t.ordering){if(!t.faces[e])continue;const r={...t.faces[e],byteOffset:n,count:a};o.faces[e]=r,n+=A(r.valueType)*r.valuesPerElement*a}}const u=i.featureCount;if(t.featureAttributes&&t.featureAttributeOrder&&u){o.featureAttributes={};for(const e of t.featureAttributeOrder){if(!t.featureAttributes[e])continue;const r={...t.featureAttributes[e],byteOffset:n,count:u};o.featureAttributes[e]=r,n+=("UInt64"===r.valueType?8:A(r.valueType))*r.valuesPerElement*u}}return p(n,e.byteLength,"geometry"),o.byteCount=n-o.byteOffset,o}const b={position:a.T.POSITION,normal:a.T.NORMAL,color:a.T.COLOR,uv0:a.T.UV0,region:a.T.UVREGION};function m(e,t,r){if("lepcc-rgb"===e.encoding)return(0,s.IT)(t);if("lepcc-intensity"===e.encoding)return(0,s.ti)(t);if(null!=e.encoding&&""!==e.encoding)throw new n.Z("unknown-attribute-storage-info-encoding","Unknown Attribute Storage Info Encoding");e["attributeByteCounts "]&&!e.attributeByteCounts&&(u.warn("Warning: Trailing space in 'attributeByteCounts '."),e.attributeByteCounts=e["attributeByteCounts "]),"ObjectIds"===e.ordering[0]&&e.hasOwnProperty("objectIds")&&(u.warn("Warning: Case error in objectIds"),e.ordering[0]="objectIds");const o=h(t,e,r);p(o.byteOffset+o.byteCount,t.byteLength,"attribute");const i=o.entries.attributeValues||o.entries.objectIds;if(i){if("String"===i.valueType){const e=o.entries.attributeByteCounts,r=d(t,e),n=function(e,t){return new Uint8Array(e,t.byteOffset,t.byteCount)}(t,i);return i.timeEncoding?function(e,t,r){return f(e,t,r).map((e=>{const t=e?Date.parse(e):null;return t&&!Number.isNaN(t)?t:null}))}(e.count,r,n):f(e.count,r,n)}return d(t,i)}throw new n.Z("bad-attribute-storage-info","Bad attributeStorageInfo specification.")}const y={Float32:Float32Array,Float64:Float64Array,UInt8:Uint8Array,Int8:Int8Array,UInt16:Uint16Array,Int16:Int16Array,UInt32:Uint32Array,Int32:Int32Array},w={Float32:(e,t)=>new DataView(e,0).getFloat32(t,!0),Float64:(e,t)=>new DataView(e,0).getFloat64(t,!0),UInt8:(e,t)=>new DataView(e,0).getUint8(t),Int8:(e,t)=>new DataView(e,0).getInt8(t),UInt16:(e,t)=>new DataView(e,0).getUint16(t,!0),Int16:(e,t)=>new DataView(e,0).getInt16(t,!0),UInt32:(e,t)=>new DataView(e,0).getUint32(t,!0),Int32:(e,t)=>new DataView(e,0).getInt32(t,!0)};function O(e){return y.hasOwnProperty(e)}function A(e){return O(e)?y[e].BYTES_PER_ELEMENT:0}},25683:(e,t,r)=>{r.d(t,{Gi:()=>l,IT:()=>p,ti:()=>m});var n=r(20102);const o=!0,i={identifierOffset:0,identifierLength:10,versionOffset:10,checksumOffset:12,byteCount:16};function s(e,t,r){return{identifier:String.fromCharCode.apply(null,new Uint8Array(e,r+i.identifierOffset,i.identifierLength)),version:t.getUint16(r+i.versionOffset,o),checksum:t.getUint32(r+i.checksumOffset,o)}}const a={sizeLo:0,sizeHi:4,minX:8,minY:16,minZ:24,maxX:32,maxY:40,maxZ:48,errorX:56,errorY:64,errorZ:72,count:80,reserved:84,byteCount:88};function u(e,t){return{sizeLo:e.getUint32(t+a.sizeLo,o),sizeHi:e.getUint32(t+a.sizeHi,o),minX:e.getFloat64(t+a.minX,o),minY:e.getFloat64(t+a.minY,o),minZ:e.getFloat64(t+a.minZ,o),maxX:e.getFloat64(t+a.maxX,o),maxY:e.getFloat64(t+a.maxY,o),maxZ:e.getFloat64(t+a.maxZ,o),errorX:e.getFloat64(t+a.errorX,o),errorY:e.getFloat64(t+a.errorY,o),errorZ:e.getFloat64(t+a.errorZ,o),count:e.getUint32(t+a.count,o),reserved:e.getUint32(t+a.reserved,o)}}function l(e){const t=new DataView(e,0);let r=0;const{identifier:o,version:l}=s(e,t,r);if(r+=i.byteCount,"LEPCC "!==o)throw new n.Z("lepcc-decode-error","Bad identifier");if(l>1)throw new n.Z("lepcc-decode-error","Unknown version");const f=u(t,r);if(r+=a.byteCount,f.sizeHi*2**32+f.sizeLo!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const d=new Float64Array(3*f.count),h=[],p=[],g=[],b=[];if(r=c(e,r,h),r=c(e,r,p),r=c(e,r,g),r=c(e,r,b),r!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad length");let m=0,y=0;for(let e=0;e<h.length;e++){y+=h[e];let t=0;for(let r=0;r<p[e];r++){t+=g[m];const e=b[m];d[3*m]=Math.min(f.maxX,f.minX+2*f.errorX*t),d[3*m+1]=Math.min(f.maxY,f.minY+2*f.errorY*y),d[3*m+2]=Math.min(f.maxZ,f.minZ+2*f.errorZ*e),m++}}return{errorX:f.errorX,errorY:f.errorY,errorZ:f.errorZ,result:d}}function c(e,t,r){const n=[];t=f(e,t,n);const o=[];for(let i=0;i<n.length;i++){o.length=0,t=f(e,t,o);for(let e=0;e<o.length;e++)r.push(o[e]+n[i])}return t}function f(e,t,r){const i=new DataView(e,t),s=i.getUint8(0),a=31&s,u=!!(32&s),l=(192&s)>>6;let c=0;if(0===l)c=i.getUint32(1,o),t+=5;else if(1===l)c=i.getUint16(1,o),t+=3;else{if(2!==l)throw new n.Z("lepcc-decode-error","Bad count type");c=i.getUint8(1),t+=2}if(u)throw new n.Z("lepcc-decode-error","LUT not implemented");const f=Math.ceil(c*a/8),d=new Uint8Array(e,t,f);let h=0,p=0,g=0;const b=-1>>>32-a;for(let e=0;e<c;e++){for(;p<a;)h|=d[g]<<p,p+=8,g+=1;r[e]=h&b,h>>>=a,p-=a,p+a>32&&(h|=d[g-1]>>8-p)}return t+g}const d={sizeLo:0,sizeHi:4,count:8,colorMapCount:12,lookupMethod:14,compressionMethod:15,byteCount:16};function h(e,t){return{sizeLo:e.getUint32(t+d.sizeLo,o),sizeHi:e.getUint32(t+d.sizeHi,o),count:e.getUint32(t+d.count,o),colorMapCount:e.getUint16(t+d.colorMapCount,o),lookupMethod:e.getUint8(t+d.lookupMethod),compressionMethod:e.getUint8(t+d.compressionMethod)}}function p(e){const t=new DataView(e,0);let r=0;const{identifier:o,version:a}=s(e,t,r);if(r+=i.byteCount,"ClusterRGB"!==o)throw new n.Z("lepcc-decode-error","Bad identifier");if(a>1)throw new n.Z("lepcc-decode-error","Unknown version");const u=h(t,r);if(r+=d.byteCount,u.sizeHi*2**32+u.sizeLo!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");if((2===u.lookupMethod||1===u.lookupMethod)&&0===u.compressionMethod){if(3*u.colorMapCount+u.count+r!==e.byteLength||u.colorMapCount>256)throw new n.Z("lepcc-decode-error","Bad count");const t=new Uint8Array(e,r,3*u.colorMapCount),o=new Uint8Array(e,r+3*u.colorMapCount,u.count),i=new Uint8Array(3*u.count);for(let e=0;e<u.count;e++){const r=o[e];i[3*e]=t[3*r],i[3*e+1]=t[3*r+1],i[3*e+2]=t[3*r+2]}return i}if(0===u.lookupMethod&&0===u.compressionMethod){if(3*u.count+r!==e.byteLength||0!==u.colorMapCount)throw new n.Z("lepcc-decode-error","Bad count");return new Uint8Array(e,r).slice()}if(u.lookupMethod<=2&&1===u.compressionMethod){if(r+3!==e.byteLength||1!==u.colorMapCount)throw new n.Z("lepcc-decode-error","Bad count");const o=t.getUint8(r),i=t.getUint8(r+1),s=t.getUint8(r+2),a=new Uint8Array(3*u.count);for(let e=0;e<u.count;e++)a[3*e]=o,a[3*e+1]=i,a[3*e+2]=s;return a}throw new n.Z("lepcc-decode-error","Bad method "+u.lookupMethod+","+u.compressionMethod)}const g={sizeLo:0,sizeHi:4,count:8,scaleFactor:12,bitsPerPoint:14,reserved:15,byteCount:16};function b(e,t){return{sizeLo:e.getUint32(t+g.sizeLo,o),sizeHi:e.getUint32(t+g.sizeHi,o),count:e.getUint32(t+g.count,o),scaleFactor:e.getUint16(t+g.scaleFactor,o),bitsPerPoint:e.getUint8(t+g.bitsPerPoint),reserved:e.getUint8(t+g.reserved)}}function m(e){const t=new DataView(e,0);let r=0;const{identifier:o,version:a}=s(e,t,r);if(r+=i.byteCount,"Intensity "!==o)throw new n.Z("lepcc-decode-error","Bad identifier");if(a>1)throw new n.Z("lepcc-decode-error","Unknown version");const u=b(t,r);if(r+=g.byteCount,u.sizeHi*2**32+u.sizeLo!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const l=new Uint16Array(u.count);if(8===u.bitsPerPoint){if(u.count+r!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const t=new Uint8Array(e,r,u.count);for(let e=0;e<u.count;e++)l[e]=t[e]*u.scaleFactor}else if(16===u.bitsPerPoint){if(2*u.count+r!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");const t=new Uint16Array(e,r,u.count);for(let e=0;e<u.count;e++)l[e]=t[e]*u.scaleFactor}else{const t=[];if(f(e,r,t)!==e.byteLength)throw new n.Z("lepcc-decode-error","Bad size");for(let e=0;e<u.count;e++)l[e]=t[e]*u.scaleFactor}return l}},35065:(e,t,r)=>{var n;r.d(t,{T:()=>n}),function(e){e.POSITION="position",e.NORMAL="normal",e.NORMALCOMPRESSED="normalCompressed",e.UV0="uv0",e.AUXPOS1="auxpos1",e.AUXPOS2="auxpos2",e.COLOR="color",e.SYMBOLCOLOR="symbolColor",e.SIZE="size",e.TANGENT="tangent",e.OFFSET="offset",e.SUBDIVISIONFACTOR="subdivisionFactor",e.COLORFEATUREATTRIBUTE="colorFeatureAttribute",e.SIZEFEATUREATTRIBUTE="sizeFeatureAttribute",e.OPACITYFEATUREATTRIBUTE="opacityFeatureAttribute",e.DISTANCETOSTART="distanceToStart",e.UVMAPSPACE="uvMapSpace",e.BOUNDINGRECT="boundingRect",e.UVREGION="uvRegion",e.PROFILERIGHT="profileRight",e.PROFILEUP="profileUp",e.PROFILEVERTEXANDNORMAL="profileVertexAndNormal",e.FEATUREVALUE="featureValue",e.MODELORIGINHI="modelOriginHi",e.MODELORIGINLO="modelOriginLo",e.MODEL="model",e.MODELNORMAL="modelNormal",e.INSTANCECOLOR="instanceColor",e.INSTANCEFEATUREATTRIBUTE="instanceFeatureAttribute",e.LOCALTRANSFORM="localTransform",e.GLOBALTRANSFORM="globalTransform",e.BOUNDINGSPHERE="boundingSphere",e.MODELORIGIN="modelOrigin",e.MODELSCALEFACTORS="modelScaleFactors",e.FEATUREATTRIBUTE="featureAttribute",e.STATE="state",e.LODLEVEL="lodLevel",e.POSITION0="position0",e.POSITION1="position1",e.NORMALA="normalA",e.NORMALB="normalB",e.COMPONENTINDEX="componentIndex",e.VARIANTOFFSET="variantOffset",e.VARIANTSTROKE="variantStroke",e.VARIANTEXTENSION="variantExtension",e.U8PADDING="u8padding",e.U16PADDING="u16padding",e.SIDENESS="sideness",e.START="start",e.END="end",e.UP="up",e.EXTRUDE="extrude",e.OBJECTANDLAYERIDCOLOR="objectAndLayerIdColor",e.OBJECTANDLAYERIDCOLOR_INSTANCED="objectAndLayerIdColor_instanced"}(n||(n={}))}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1400],{43697:(t,e,r)=>{function n(t,e,r,n){var s,i=arguments.length,o=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,n);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(i<3?s(o):i>3?s(e,r,o):s(e,r))||o);return i>3&&o&&Object.defineProperty(e,r,o),o}r.d(e,{_:()=>n})},15923:(t,e,r)=>{r.d(e,{Z:()=>z});var n=r(61247),s=r(70586),i=r(88022),o=r(67723),a=r(7628),c=(r(80442),r(22974)),l=r(92604),u=r(71143),h=r(97831),f=r(42100),d=r(31263),p=r(58971),y=r(44550);class g{constructor(t,e,r){this.properties=t,this.propertyName=e,this.metadata=r,this.observerObject=new _,this._accessed=null,this._handles=null,this._finalizationToken={},this.observerObject.flags=y.v.Dirty|(r.nonNullable?y.v.NonNullable:0)|(r.hasOwnProperty("value")?y.v.HasDefaultValue:0)|(void 0===r.get?y.v.DepTrackingInitialized:0)|(void 0===r.dependsOn?y.v.AutoTracked:0),v.register(this,new WeakRef(this.observerObject),this._finalizationToken)}destroy(){v.unregister(this._finalizationToken),this.observerObject.destroy(),this._accessed=null,this._clearObservationHandles()}getComputed(){const t=this.observerObject;(0,p.it)(t);const e=this.properties.store,r=this.propertyName,n=t.flags,s=e.get(r);if(n&y.v.Computing)return s;if(~n&y.v.Dirty&&e.has(r))return s;t.flags|=y.v.Computing;const i=this.properties.host;let o;n&y.v.AutoTracked?o=(0,p.LJ)(this,this.metadata.get,i):((0,p.GF)(i,this),o=this.metadata.get.call(i)),e.set(r,o,d.s3.COMPUTED);const a=e.get(r);return a===s?t.flags&=~y.v.Dirty:(0,p.gb)(this.commit,this),t.flags&=~y.v.Computing,a}onObservableAccessed(t){t!==this.observerObject&&(null===this._accessed&&(this._accessed=[]),this._accessed.includes(t)||this._accessed.push(t))}onTrackingEnd(){this._clearObservationHandles();const t=this.observerObject;t.flags|=y.v.DepTrackingInitialized;const e=this._accessed;if(null===e)return;let r=this._handles;null===r&&(r=this._handles=[]);for(let n=0;n<e.length;++n)r.push(e[n].observe(t));e.length=0}notifyChange(){const t=this.observerObject;t.onInvalidated(),t.onCommitted()}invalidate(){this.observerObject.onInvalidated()}commit(){const t=this.observerObject;t.flags&=~y.v.Dirty,t.onCommitted()}_clearObservationHandles(){const t=this._handles;if(null!==t){for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}}class _ extends f.s{constructor(){super(...arguments),this.flags=0}onInvalidated(){~this.flags&y.v.Overriden&&(this.flags|=y.v.Dirty);const t=this._observers;if(t&&t.length>0)for(const e of t)e.onInvalidated()}onCommitted(){const t=this._observers;if(t&&t.length>0){const e=t.slice();for(const t of e)t.onCommitted()}}destroy(){this.flags&y.v.Dirty&&this.onCommitted(),super.destroy()}}const v=new FinalizationRegistry((t=>{t.deref()?.destroy()}));class m{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new m;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,c.d9)(r))})),e}get(t){return this._values.get(t)}originOf(){return d.s3.USER}keys(){return[...this._values.keys()]}set(t,e){this._values.set(t,e)}delete(t){this._values.delete(t)}has(t){return this._values.has(t)}forEach(t){this._values.forEach(t)}}var b=r(1153);function w(t,e,r){return void 0!==t}function O(t,e,r,n){return!(void 0===t||null==r&&t.observerObject.flags&y.v.NonNullable&&(n.lifecycle,h.F.INITIALIZING,1))}function A(t){return t&&"function"==typeof t.destroy}l.Z.getLogger("esri.core.accessorSupport.Properties");class j{constructor(t){this.host=t,this.properties=new Map,this.ctorArgs=null,this.destroyed=!1,this.lifecycle=h.F.INITIALIZING,this.store=new m,this._origin=d.s3.USER;const e=(0,s.j0)(this.host.constructor.__accessorMetadata__);for(const t in e){const r=new g(this,t,e[t]);this.properties.set(t,r)}this.metadatas=e}initialize(){this.lifecycle=h.F.CONSTRUCTING}constructed(){this.lifecycle=h.F.CONSTRUCTED}destroy(){this.destroyed=!0;for(const[t,e]of this.properties){if(e.metadata.autoDestroy){const r=this.internalGet(t);r&&A(r)&&(r.destroy(),~e.observerObject.flags&y.v.NonNullable&&this._internalSet(e,null))}e.destroy()}}get initialized(){return this.lifecycle!==h.F.INITIALIZING}get(t){const e=this.properties.get(t);if(e.metadata.get)return e.getComputed();(0,p.it)(e.observerObject);const r=this.store;return r.has(t)?r.get(t):e.metadata.value}originOf(t){const e=this.store.originOf(t);if(void 0===e){const e=this.properties.get(t);if(void 0!==e&&e.observerObject.flags&y.v.HasDefaultValue)return"defaults"}return(0,d.x3)(e)}has(t){return!!this.properties.has(t)&&this.store.has(t)}keys(){return[...this.properties.keys()]}internalGet(t){const e=this.properties.get(t);if(w(e))return this.store.has(t)?this.store.get(t):e.metadata.value}internalSet(t,e){const r=this.properties.get(t);w(r)&&this._internalSet(r,e)}getDependsInfo(t,e,r){const n=this.properties.get(e);if(!w(n))return"";const s=new Set,i=(0,p.LJ)({onObservableAccessed:t=>s.add(t),onTrackingEnd:()=>{}},(()=>n.metadata.get?.call(t)));let o=`${r}${t.declaredClass.split(".").pop()}.${e}: ${i}\n`;if(0===s.size)return o;r+=" ";for(const t of s){if(!(t instanceof g))continue;const e=t.properties.host,n=t.propertyName,s=(0,b.vw)(e);o+=s?s.getDependsInfo(e,n,r):`${r}${n}: undefined\n`}return o}setAtOrigin(t,e,r){const n=this.properties.get(t);if(w(n))return this._setAtOrigin(n,e,r)}isOverridden(t){const e=this.properties.get(t);return void 0!==e&&!!(e.observerObject.flags&y.v.Overriden)}clearOverride(t){const e=this.properties.get(t),r=e?.observerObject;r&&r.flags&y.v.Overriden&&(r.flags&=~y.v.Overriden,e.notifyChange())}override(t,e){const r=this.properties.get(t);if(!O(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(S.release(t),!r)return;e=s}r.observerObject.flags|=y.v.Overriden,this._internalSet(r,e)}set(t,e){const r=this.properties.get(t);if(!O(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(S.release(t),!r)return;e=s}const s=r.metadata.set;s?s.call(this.host,e):this._internalSet(r,e)}setDefaultOrigin(t){this._origin=(0,d.M9)(t)}getDefaultOrigin(){return(0,d.x3)(this._origin)}notifyChange(t){const e=this.properties.get(t);void 0!==e&&e.notifyChange()}invalidate(t){const e=this.properties.get(t);void 0!==e&&e.invalidate()}commit(t){const e=this.properties.get(t);void 0!==e&&e.commit()}_internalSet(t,e){const r=this.lifecycle!==h.F.INITIALIZING?this._origin:d.s3.DEFAULTS;this._setAtOrigin(t,e,r)}_setAtOrigin(t,e,r){const n=this.store,s=t.propertyName;n.has(s,r)&&(0,c.fS)(e,n.get(s))&&~t.observerObject.flags&y.v.Overriden&&r===n.originOf(s)||(t.invalidate(),n.set(s,e,r),t.commit(),(0,p.mS)(this.host,t))}_cast(t,e){const r=S.acquire();return r.valid=!0,r.value=e,t&&(r.value=t.call(this.host,e,r)),r}}const S=new u.Z(class{constructor(){this.value=null,this.valid=!0}acquire(){this.valid=!0}release(){this.value=null}});var T,k,E=r(37697),N=r(26258),C=r(5600),I=r(52011);function M(t){if(null==t)return{value:t};if(Array.isArray(t))return{type:[t[0]],value:null};switch(typeof t){case"object":return t.constructor?.__accessorMetadata__||t instanceof Date?{type:t.constructor,value:t}:t;case"boolean":return{type:Boolean,value:t};case"string":return{type:String,value:t};case"number":return{type:Number,value:t};case"function":return{type:t,value:null};default:return}}const D=Symbol("Accessor-Handles"),U=Symbol("Accessor-Initialized");class z{static createSubclass(t={}){if(Array.isArray(t))throw new Error("Multi-inheritance unsupported since 4.16");const{properties:e,declaredClass:r,constructor:n}=t;delete t.declaredClass,delete t.properties,delete t.constructor;const s=this;class i extends s{constructor(...t){super(...t),this.inherited=null,n&&n.apply(this,t)}}(0,a.fp)(i.prototype);for(const e in t){const r=t[e];i.prototype[e]="function"==typeof r?function(...t){const n=this.inherited;let i;this.inherited=function(...t){if(s.prototype[e])return s.prototype[e].apply(this,t)};try{i=r.apply(this,t)}catch(t){throw this.inherited=n,t}return this.inherited=n,i}:t[e]}for(const t in e){const r=M(e[t]);(0,C.Cb)(r)(i.prototype,t)}return(0,I.j)(r)(i)}constructor(...t){if(this[T]=null,this[k]=!1,this.constructor===z)throw new Error("[accessor] cannot instantiate Accessor. This can be fixed by creating a subclass of Accessor");Object.defineProperty(this,"__accessor__",{enumerable:!1,value:new j(this)}),t.length>0&&this.normalizeCtorArgs&&(this.__accessor__.ctorArgs=this.normalizeCtorArgs.apply(this,t))}postscript(t){const e=this.__accessor__,r=e.ctorArgs||t;e.initialize(),r&&(this.set(r),e.ctorArgs=null),e.constructed(),this.initialize(),this[U]=!0}initialize(){}[i.F](){this[D]=(0,s.SC)(this[D])}destroy(){this.destroyed||((0,N.BT)(this),this.__accessor__.destroy())}get constructed(){return this.__accessor__&&this.__accessor__.initialized||!1}get initialized(){return this[U]}get destroyed(){return this.__accessor__&&this.__accessor__.destroyed||!1}commitProperty(t){this.get(t)}get(t){return(0,o.U2)(this,t)}hasOwnProperty(t){return this.__accessor__?this.__accessor__.has(t):Object.prototype.hasOwnProperty.call(this,t)}keys(){return this.__accessor__?this.__accessor__.keys():[]}set(t,e){return(0,E.t)(this,t,e),this}watch(t,e,r){return(0,N.YP)(this,t,e,r)}own(t){this.addHandles(t)}addHandles(t,e){if(this.destroyed){const e=Array.isArray(t)?t:[t];for(const t of e)t.remove();return}let r=this[D];null==r&&(r=this[D]=new n.Z),r.add(t,e)}removeHandles(t){const e=this[D];null!=e&&e.remove(t)}removeAllHandles(){const t=this[D];null!=t&&t.removeAll()}hasHandles(t){const e=this[D];return null!=e&&e.has(t)}_override(t,e){void 0===e?this.__accessor__.clearOverride(t):this.__accessor__.override(t,e)}_clearOverride(t){return this.__accessor__.clearOverride(t)}_overrideIfSome(t,e){null==e?this.__accessor__.clearOverride(t):this.__accessor__.override(t,e)}_isOverridden(t){return this.__accessor__.isOverridden(t)}notifyChange(t){this.__accessor__.notifyChange(t)}_get(t){return this.__accessor__.internalGet(t)}_set(t,e){return this.__accessor__.internalSet(t,e),this}}T=D,k=U},3894:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(71143);function s(t){t.length=0}class i{constructor(t=50,e=50){this._pool=new n.Z(Array,void 0,s,e,t)}acquire(){return this._pool.acquire()}release(t){this._pool.release(t)}prune(){this._pool.prune(0)}static acquire(){return o.acquire()}static release(t){return o.release(t)}static prune(){o.prune()}}const o=new i(100)},61247:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(66374),s=r(70586);class i{constructor(){this._groups=new Map}destroy(){this.removeAll()}get size(){let t=0;return this._groups.forEach((e=>{t+=e.length})),t}add(t,e){if((0,n.TW)(t)){const r=this._getOrCreateGroup(e);for(const e of t)this._isHandle(e)&&r.push(e)}else this._isHandle(t)&&this._getOrCreateGroup(e).push(t);return this}forEach(t,e){if("function"==typeof t)this._groups.forEach((e=>e.forEach(t)));else{const r=this._getGroup(t);r&&e&&r.forEach(e)}}has(t){return this._groups.has(this._ensureGroupKey(t))}remove(t){if("string"!=typeof t&&(0,n.TW)(t)){for(const e of t)this.remove(e);return this}return this.has(t)?(this._removeAllFromGroup(this._getGroup(t)),this._groups.delete(this._ensureGroupKey(t)),this):this}removeAll(){return this._groups.forEach((t=>this._removeAllFromGroup(t))),this._groups.clear(),this}_isHandle(t){return t&&!!t.remove}_getOrCreateGroup(t){if(this.has(t))return this._getGroup(t);const e=[];return this._groups.set(this._ensureGroupKey(t),e),e}_getGroup(t){return(0,s.j0)(this._groups.get(this._ensureGroupKey(t)))}_ensureGroupKey(t){return t||"_default_"}_removeAllFromGroup(t){t.forEach((t=>t.remove()))}}},96674:(t,e,r)=>{r.d(e,{wq:()=>_,eC:()=>y});var n=r(43697),s=r(15923),i=r(70586),o=r(22974),a=r(31263);class c{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new c;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,o.d9)(r.value),r.origin)})),e}get(t,e){e=this._normalizeOrigin(e);const r=this._values.get(t);return null==e||r?.origin===e?r?.value:void 0}originOf(t){return this._values.get(t)?.origin??a.s3.USER}keys(t){t=this._normalizeOrigin(t);const e=[...this._values.keys()];return null==t?e:e.filter((e=>this._values.get(e)?.origin===t))}set(t,e,r){if((r=this._normalizeOrigin(r))===a.s3.DEFAULTS){const e=this._values.get(t);if(e&&null!=e.origin&&e.origin>r)return}this._values.set(t,new l(e,r))}delete(t,e){null!=(e=this._normalizeOrigin(e))&&this._values.get(t)?.origin!==e||this._values.delete(t)}has(t,e){return null!=(e=this._normalizeOrigin(e))?this._values.get(t)?.origin===e:this._values.has(t)}forEach(t){this._values.forEach((({value:e},r)=>t(e,r)))}_normalizeOrigin(t){if(null!=t)return t===a.s3.DEFAULTS?t:a.s3.USER}}class l{constructor(t,e){this.value=t,this.origin=e}}var u=r(41103),h=r(50549),f=r(1153),d=r(76169),p=r(52011);const y=t=>{let e=class extends t{constructor(...t){super(...t);const e=(0,i.j0)((0,f.vw)(this)),r=e.store,n=new c;e.store=n,(0,u.M)(e,r,n)}read(t,e){(0,h.i)(this,t,e)}write(t,e){return(0,d.c)(this,t??{},e)}toJSON(t){return this.write({},t)}static fromJSON(t,e){return g.call(this,t,e)}};return e=(0,n._)([(0,p.j)("esri.core.JSONSupport")],e),e.prototype.toJSON.isDefaultToJSON=!0,e};function g(t,e){if(!t)return null;if(t.declaredClass)throw new Error("JSON object is already hydrated");const r=new this;return r.read(t,e),r}let _=class extends(y(s.Z)){};_=(0,n._)([(0,p.j)("esri.core.JSONSupport")],_)},30175:(t,e,r)=>{function n(t,e,r){const n=t.get(e);if(void 0!==n)return n;const s=r();return t.set(e,s),s}r.d(e,{s1:()=>n})},71143:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e,r,n=1,s=0){if(this._ctor=t,this._acquireFunction=e,this._releaseFunction=r,this.allocationSize=n,this._pool=new Array(s),this._initialSize=s,this._ctor)for(let t=0;t<s;t++)this._pool[t]=new this._ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...t){let e;if(n.test.disabled)e=new this._ctor;else{if(0===this._pool.length){const t=this.allocationSize;for(let e=0;e<t;e++)this._pool[e]=new this._ctor}e=this._pool.pop()}return this._acquireFunction?this._acquireFunction(e,...t):function(t){return t&&t.acquire&&"function"==typeof t.acquire}(e)&&e.acquire(...t),e}release(t){var e;t&&!n.test.disabled&&(this._releaseFunction?this._releaseFunction(t):(e=t)&&e.release&&"function"==typeof e.release&&t.release(),this._pool.push(t))}prune(t=this._initialSize){if(!(t>=this._pool.length)){for(let e=t;e<this._pool.length;++e){const t=this._pool[e];this._dispose(t)}this._pool.length=t}}_dispose(t){t.dispose&&"function"==typeof t.dispose&&t.dispose()}}n.test={disabled:!1}},54790:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e=30){this.name=t,this._counter=0,this._samples=new Array(e)}record(t){null!=t&&(this._samples[++this._counter%this._samples.length]=t)}get median(){return this._samples.slice().sort(((t,e)=>t-e))[Math.floor(this._samples.length/2)]}get average(){return this._samples.reduce(((t,e)=>t+e),0)/this._samples.length}get last(){return this._samples[this._counter%this._samples.length]}}},44553:(t,e,r)=>{r.d(e,{Z:()=>c});var n,s=r(67676);!function(t){const e=(t,e,r,n)=>{let s=e,i=e;const o=r>>>1,a=t[s-1];for(;i<=o;){i=s<<1,i<r&&n(t[i-1],t[i])<0&&++i;const e=t[i-1];if(n(e,a)<=0)break;t[s-1]=e,s=i}t[s-1]=a},r=(t,e)=>t<e?-1:t>e?1:0;t.sort=function(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i);const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i)}},t.iterableSort=function*(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i),yield;const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i),yield}}}(n||(n={}));const i=n,o=1.5,a=1.1;class c{constructor(t){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new s.SO,t&&(t.initialSize&&(this.data=new Array(t.initialSize)),t.allocator&&(this._allocator=t.allocator),void 0!==t.deallocator&&(this._deallocator=t.deallocator),t.shrink&&(this._shrink=()=>l(this)))}toArray(){return this.data.slice(0,this.length)}filter(t){const e=new Array;for(let r=0;r<this._length;r++){const n=this.data[r];t(n)&&e.push(n)}return e}getItemAt(t){if(!(t<0||t>=this._length))return this.data[t]}includes(t,e){const r=this.data.indexOf(t,e);return-1!==r&&r<this.length}get length(){return this._length}set length(t){if(t>this._length){if(this._allocator){for(;this._length<t;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=t}else{if(this._deallocator)for(let e=t;e<this._length;++e)this.data[e]=this._deallocator(this.data[e]);this._length=t,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(t){this.data[this._length++]=t}pushArray(t,e=t.length){for(let r=0;r<e;r++)this.data[this._length++]=t[r]}fill(t,e){for(let r=0;r<e;r++)this.data[this._length++]=t}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const t=this.data[this._length];return++this._length,t}unshift(t){this.data.unshift(t),this._length++,l(this)}pop(){if(0===this.length)return;const t=this.data[this.length-1];return this.length=this.length-1,this._shrink(),t}remove(t){const e=(0,s.cq)(this.data,t,this.length,this._hint);if(-1!==e)return this.data.splice(e,1),this.length=this.length-1,t}removeUnordered(t){return this.removeUnorderedIndex((0,s.cq)(this.data,t,this.length,this._hint))}removeUnorderedIndex(t){if(!(t>=this.length||t<0))return this.swapElements(t,this.length-1),this.pop()}removeUnorderedMany(t,e=t.length,r){this.length=(0,s.FY)(this.data,t,this.length,e,this._hint,r),this._shrink()}front(){if(0!==this.length)return this.data[0]}back(){if(0!==this.length)return this.data[this.length-1]}swapElements(t,e){if(t>=this.length||e>=this.length||t===e)return;const r=this.data[t];this.data[t]=this.data[e],this.data[e]=r}sort(t){i.sort(this.data,0,this.length,t)}iterableSort(t){return i.iterableSort(this.data,0,this.length,t)}some(t,e){for(let r=0;r<this.length;++r)if(t.call(e,this.data[r],r,this.data))return!0;return!1}find(t,e){for(let r=0;r<this.length;++r){const n=this.data[r];if(t.call(e,n,r))return n}}filterInPlace(t,e){let r=0;for(let n=0;n<this._length;++n){const s=this.data[n];t.call(e,s,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=s,r++)}if(this._deallocator)for(let t=r;t<this._length;t++)this.data[t]=this._deallocator(this.data[t]);return this._length=r,this._shrink(),this}forAll(t,e){const r=this.length,n=this.data;for(let s=0;s<r;++s)t.call(e,n[s],s,n)}forEach(t,e){for(let r=0;r<this.length;++r)t.call(e,this.data[r],r,this.data)}map(t,e){const r=new Array(this.length);for(let n=0;n<this.length;++n)r[n]=t.call(e,this.data[n],n,this.data);return r}reduce(t,e){let r=e;for(let e=0;e<this.length;++e)r=t(r,this.data[e],e,this.data);return r}has(t){const e=this.length,r=this.data;for(let n=0;n<e;++n)if(r[n]===t)return!0;return!1}}function l(t){t.data.length>o*t.length&&(t.data.length=Math.floor(t.length*a))}},20941:(t,e,r)=>{r.d(e,{Z:()=>s});var n=r(58896);class s extends n.Z{constructor(t,e,r){super(t,e,r)}}s.prototype.type="warning"},42100:(t,e,r)=>{r.d(e,{s:()=>i});var n=r(67676);class s{constructor(t,e){this._observers=t,this._observer=e}remove(){(0,n.Od)(this._observers,this._observer)}}class i{constructor(){this._observers=null,this.destroyed=!1}observe(t){if(this.destroyed||t.destroyed)return o;null==this._observers&&(this._observers=[]);const e=this._observers;let r=!1,n=!1;const i=e.length;for(let s=0;s<i;++s){const i=e[s];if(i.destroyed)n=!0;else if(i===t){r=!0;break}}return r||(e.push(t),n&&this._removeDestroyedObservers()),new s(e,t)}_removeDestroyedObservers(){const t=this._observers;if(!t||0===t.length)return;const e=t.length;let r=0;for(let n=0;n<e;++n){for(;n+r<e&&t[n+r].destroyed;)++r;if(r>0){if(!(n+r<e))break;t[n]=t[n+r]}}t.length=e-r}destroy(){if(this.destroyed)return;this.destroyed=!0;const t=this._observers;if(null!=t){for(const e of t)e.onCommitted();this._observers=null}}}const o={remove:()=>{}}},31263:(t,e,r)=>{r.d(e,{M9:()=>a,Wm:()=>l,kk:()=>o,s3:()=>n,x3:()=>c});var n,s,i=r(70586);(s=n||(n={}))[s.DEFAULTS=0]="DEFAULTS",s[s.COMPUTED=1]="COMPUTED",s[s.SERVICE=2]="SERVICE",s[s.PORTAL_ITEM=3]="PORTAL_ITEM",s[s.WEB_SCENE=4]="WEB_SCENE",s[s.WEB_MAP=5]="WEB_MAP",s[s.USER=6]="USER";const o=n.USER+1;function a(t){switch(t){case"defaults":return n.DEFAULTS;case"service":return n.SERVICE;case"portal-item":return n.PORTAL_ITEM;case"web-scene":return n.WEB_SCENE;case"web-map":return n.WEB_MAP;case"user":return n.USER;default:return null}}function c(t){switch(t){case n.DEFAULTS:return"defaults";case n.SERVICE:return"service";case n.PORTAL_ITEM:return"portal-item";case n.WEB_SCENE:return"web-scene";case n.WEB_MAP:return"web-map";case n.USER:return"user"}return(0,i.j0)(void 0)}function l(t){return c(t)}},88022:(t,e,r)=>{r.d(e,{F:()=>n});const n=Symbol("Accessor-beforeDestroy")},90578:(t,e,r)=>{r.d(e,{p:()=>c});var n=r(75215),s=r(7628);const i=Object.prototype.toString;function o(t){const e="__accessorMetadata__"in t?(0,n.se)(t):t;return function(...t){if(t.push(e),"number"==typeof t[2])throw new Error("Using @cast has parameter decorator is not supported since 4.16");return a.apply(this,t)}}function a(t,e,r,n){(0,s.Oe)(t,e).cast=n}function c(...t){if(3!==t.length||"string"!=typeof t[1])return 1===t.length&&"[object Function]"===i.call(t[0])?o(t[0]):1===t.length&&"string"==typeof t[0]?function(t){return(e,r)=>{(0,s.Oe)(e,t).cast=e[r]}}(t[0]):void 0}},5600:(t,e,r)=>{r.d(e,{CJ:()=>l,Cb:()=>c,Eg:()=>u});var n=r(92604),s=r(75215),i=r(67723),o=r(7628),a=r(37697);function c(t={}){return(e,r)=>{if(e===Function.prototype)throw new Error(`Inappropriate use of @property() on a static field: ${e.name}.${r}. Accessor does not support static properties.`);const c=Object.getOwnPropertyDescriptor(e,r),l=(0,o.Oe)(e,r);c&&(c.get||c.set?(l.get=c.get||l.get,l.set=c.set||l.set):"value"in c&&("value"in t&&n.Z.getLogger("esri.core.accessorSupport.decorators.property").warn(`@property() will redefine the value of "${r}" on "${e.constructor.name}" already defined in the metadata`,t),l.value=t.value=c.value)),null!=t.readOnly&&(l.readOnly=t.readOnly);const h=t.aliasOf;if(h){const t="string"==typeof h?h:h.source,e="string"==typeof h?null:!0===h.overridable;let n;l.dependsOn=[t],l.get=function(){let e=(0,i.U2)(this,t);if("function"==typeof e){n||(n=t.split(".").slice(0,-1).join("."));const r=(0,i.U2)(this,n);r&&(e=e.bind(r))}return e},l.readOnly||(l.set=e?function(t){this._override(r,t)}:function(e){(0,a.t)(this,t,e)})}const f=t.type,d=t.types;l.cast||(f?l.cast=function(t){let e=0,r=t;if((0,s.AY)(t))return(0,s.sY)(t);for(;Array.isArray(r)&&1===r.length&&"string"!=typeof r[0]&&"number"!=typeof r[0];)r=r[0],e++;const n=r;if((0,s.gB)(n))return 0===e?(0,s.i$)(n):(0,s.Iu)((0,s.i$)(n),e);if(1===e)return(0,s.rY)(n);if(e>1)return(0,s.di)(n,e);const i=t;return i.from?i.from:(0,s.se)(i)}(f):d&&(Array.isArray(d)?l.cast=(0,s.Ls)((0,s.N7)(d[0])):l.cast=(0,s.N7)(d))),(0,o.tz)(l,t),t.range&&(l.cast=u(l.cast,t.range))}}function l(t,e,r){const n=(0,o.Oe)(t,r);n.json||(n.json={});let s=n.json;return void 0!==e&&(s.origins||(s.origins={}),s.origins[e]||(s.origins[e]={}),s=s.origins[e]),s}function u(t,e){return r=>{let n=+t(r);return null!=e.step&&(n=Math.round(n/e.step)*e.step),null!=e.min&&(n=Math.max(e.min,n)),null!=e.max&&(n=Math.min(e.max,n)),n}}},52011:(t,e,r)=>{r.d(e,{j:()=>u}),r(80442);var n=r(88022),s=r(97831),i=r(7628),o=r(58971),a=r(53906);const c=new Set,l=new Set;function u(t){return e=>{e.prototype.declaredClass=t,f(e);const r=[],s=[];let o=e.prototype;for(;o;)o.hasOwnProperty("initialize")&&!c.has(o.initialize)&&(c.add(o.initialize),r.push(o.initialize)),o.hasOwnProperty("destroy")&&!l.has(o.destroy)&&(l.add(o.destroy),s.push(o.destroy)),o=Object.getPrototypeOf(o);c.clear(),l.clear();class a extends e{constructor(...t){if(super(...t),this.constructor===a&&"function"==typeof this.postscript){if(r.length&&Object.defineProperty(this,"initialize",{enumerable:!1,configurable:!0,value(){for(let t=r.length-1;t>=0;t--)r[t].call(this)}}),s.length){let t=!1;const e=this[n.F];Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!t){t=!0,e.call(this);for(let t=0;t<s.length;t++)s[t].call(this)}}})}this.postscript(...t)}}}return a.__accessorMetadata__=(0,i.fp)(e.prototype),a.prototype.declaredClass=t,a}}function h(t,e){return null==e.get?function(){const e=this.__accessor__.properties.get(t);if(void 0===e)return;(0,o.it)(e.observerObject);const r=this.__accessor__.store;return r.has(t)?r.get(t):e.metadata.value}:function(){const e=this.__accessor__.properties.get(t);if(void 0!==e)return e.getComputed()}}function f(t){const e=t.prototype,r=(0,i.fp)(e),n={};for(const t of Object.getOwnPropertyNames(r)){const e=r[t];(0,a.OM)(e),n[t]={enumerable:!0,configurable:!0,get:h(t,e),set(r){const n=this.__accessor__;if(void 0!==n){if(!Object.isFrozen(this)){if(n.initialized&&e.readOnly)throw new TypeError(`[accessor] cannot assign to read-only property '${t}' of ${this.declaredClass}`);if(n.lifecycle===s.F.CONSTRUCTED&&e.constructOnly)throw new TypeError(`[accessor] cannot assign to construct-only property '${t}' of ${this.declaredClass}`);n.set(t,r)}}else Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(t.prototype,n)}},41103:(t,e,r)=>{r.d(e,{M:()=>s});var n=r(31263);function s(t,e,r){e.keys().forEach((t=>{r.set(t,e.get(t),n.s3.DEFAULTS)}));const s=t.metadatas;Object.keys(s).forEach((e=>{t.internalGet(e)&&r.set(e,t.internalGet(e),n.s3.DEFAULTS)}))}},75215:(t,e,r)=>{r.d(e,{AY:()=>C,Iu:()=>A,Ls:()=>b,N7:()=>k,TJ:()=>g,V5:()=>N,Zs:()=>c,di:()=>j,gB:()=>S,i$:()=>T,q9:()=>l,rY:()=>w,sY:()=>I,se:()=>m,vU:()=>u,z8:()=>E}),r(80442);var n=r(92604),s=r(30175);const i=n.Z.getLogger("esri.core.accessorSupport.ensureTypes");function o(t){return null==t?t:new Date(t)}function a(t){return null==t?t:!!t}function c(t){return null==t?t:t.toString()}function l(t){return null==t?t:(t=parseFloat(t),isNaN(t)?0:t)}function u(t){return null==t?t:Math.round(parseFloat(t))}function h(t){return t&&t.constructor&&void 0!==t.constructor.__accessorMetadata__}function f(t,e){return null!=e&&t&&!(e instanceof t)}function d(t){return t&&"isCollection"in t}function p(t){return t&&t.Type?"function"==typeof t.Type?t.Type:t.Type.base:null}function y(t,e){return!!h(e)&&(i.error("Accessor#set","Assigning an instance of '"+(e.declaredClass||"unknown")+"' which is not a subclass of '"+_(t)+"'"),!0)}function g(t,e){return null==e?e:d(t)?function(t,e){if(!e||!e.constructor||!d(e.constructor))return y(t,e)?e:new t(e);const r=p(t.prototype.itemType),n=p(e.constructor.prototype.itemType);return r?n?r===n?e:r.prototype.isPrototypeOf(n.prototype)?new t(e):(y(t,e),e):new t(e):e}(t,e):f(t,e)?y(t,e)?e:new t(e):e}function _(t){return t&&t.prototype&&t.prototype.declaredClass||"unknown"}const v=new WeakMap;function m(t,e){const r=function(t){switch(t){case Number:return l;case E:return u;case Boolean:return a;case String:return c;case Date:return o;default:return(0,s.s1)(v,t,(()=>g.bind(null,t)))}}(t);return 1===arguments.length?r:r(e)}function b(t,e,r){return 1===arguments.length?b.bind(null,t):e?Array.isArray(e)?e.map((e=>t(e,r))):[t(e,r)]:e}function w(t,e){return 1===arguments.length?b(m.bind(null,t)):b(m.bind(null,t),e)}function O(t,e,r){return 0!==e&&Array.isArray(r)?r.map((r=>O(t,e-1,r))):t(r)}function A(t,e,r){if(2===arguments.length)return A.bind(null,t,e);if(!r)return r;let n=e,s=r=O(t,e,r);for(;n>0&&Array.isArray(s);)n--,s=s[0];if(void 0!==s)for(let t=0;t<n;t++)r=[r];return r}function j(t,e,r){return 2===arguments.length?A(m.bind(null,t),e):A(m.bind(null,t),e,r)}function S(t){return!!Array.isArray(t)&&!t.some((e=>{const r=typeof e;return!("string"===r||"number"===r||"function"===r&&t.length>1)}))}function T(t,e){if(2===arguments.length)return T(t).call(null,e);const r=new Set,n=t.filter((t=>"function"!=typeof t)),s=t.filter((t=>"function"==typeof t));for(const e of t)"string"!=typeof e&&"number"!=typeof e||r.add(e);let o=null,a=null;return(t,e)=>{if(null==t)return t;const c=typeof t,l="string"===c||"number"===c;return l&&(r.has(t)||s.some((t=>"string"===c&&t===String||"number"===c&&t===Number)))||"object"===c&&s.some((e=>!f(t,e)))?t:(l&&n.length?(o||(o=n.map((t=>"string"==typeof t?`'${t}'`:`${t}`)).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, only the following values are valid: ${o}`)):"object"==typeof t&&s.length?(a||(a=s.map((t=>_(t))).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, value must be one of ${a}`)):i.error("Accessor#set",`'${t}' is not a valid value for this property`),e&&(e.valid=!1),null)}}function k(t,e){if(2===arguments.length)return k(t).call(null,e);const r={},n=[],s=[];for(const e in t.typeMap){const i=t.typeMap[e];r[e]=m(i),n.push(_(i)),s.push(e)}const o=()=>`'${n.join("', '")}'`,a=()=>`'${s.join("', '")}'`,c="string"==typeof t.key?e=>e[t.key]:t.key;return e=>{if(t.base&&!f(t.base,e))return e;if(null==e)return e;const n=c(e)||t.defaultKeyValue,s=r[n];if(!s)return i.error("Accessor#set",`Invalid property value, value needs to be one of ${o()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!f(t.typeMap[n],e))return e;if("string"==typeof t.key&&!h(e)){const r={};for(const n in e)n!==t.key&&(r[n]=e[n]);return s(r)}return s(e)}}class E{}const N={native:t=>({type:"native",value:t}),array:t=>({type:"array",value:t}),oneOf:t=>({type:"one-of",values:t})};function C(t){if(!t||!("type"in t))return!1;switch(t.type){case"native":case"array":case"one-of":return!0}return!1}function I(t){switch(t.type){case"native":return m(t.value);case"array":return b(I(t.value));case"one-of":return function(t){let e=null;return(r,n)=>D(r,t)?r:(null==e&&(e=M(t)),i.error("Accessor#set",`Invalid property value, value needs to be of type ${e}`),n&&(n.valid=!1),null)}(t);default:return null}}function M(t){switch(t.type){case"native":switch(t.value){case Number:return"number";case String:return"string";case Boolean:return"boolean";case E:return"integer";case Date:return"date";default:return _(t.value)}case"array":return`array of ${M(t.value)}`;case"one-of":{const e=t.values.map((t=>M(t)));return`one of ${e.slice(0,e.length-1)} or ${e[e.length-1]}`}}return"unknown"}function D(t,e){if(null==t)return!0;switch(e.type){case"native":switch(e.value){case Number:case E:return"number"==typeof t;case Boolean:return"boolean"==typeof t;case String:return"string"==typeof t}return t instanceof e.value;case"array":return!!Array.isArray(t)&&!t.some((t=>!D(t,e.value)));case"one-of":return e.values.some((e=>D(t,e)))}}},53906:(t,e,r)=>{r.d(e,{hk:()=>f,HS:()=>u,Ah:()=>h,OM:()=>g});var n=r(75215),s=r(63213);function i(t){if(t.json||(t.json={}),a(t.json),c(t.json),o(t.json),t.json.origins)for(const e in t.json.origins)a(t.json.origins[e]),c(t.json.origins[e]),o(t.json.origins[e]);return!0}function o(t){t.name&&(t.read&&"object"==typeof t.read?void 0===t.read.source&&(t.read.source=t.name):t.read={source:t.name},t.write&&"object"==typeof t.write?void 0===t.write.target&&(t.write.target=t.name):t.write={target:t.name})}function a(t){"boolean"==typeof t.read?t.read={enabled:t.read}:"function"==typeof t.read?t.read={enabled:!0,reader:t.read}:t.read&&"object"==typeof t.read&&void 0===t.read.enabled&&(t.read.enabled=!0)}function c(t){"boolean"==typeof t.write?t.write={enabled:t.write}:"function"==typeof t.write?t.write={enabled:!0,writer:t.write}:t.write&&"object"==typeof t.write&&void 0===t.write.enabled&&(t.write.enabled=!0)}var l=r(827);function u(t,e){return f(t,"read",e)}function h(t,e){return f(t,"write",e)}function f(t,e,r){let n=t&&t.json;if(t&&t.json&&t.json.origins&&r){const s=r.origin&&t.json.origins[r.origin];s&&("any"===e||e in s)&&(n=s)}return n}function d(t){return t.type?p(t):y(t)}function p(t){if(!t.type)return;let e=0,r=t.type;for(;Array.isArray(r)&&!(0,n.gB)(r);)r=r[0],e++;return{type:r,ndimArray:e}}function y(t){if(!t.types)return;let e=0,r=t.types;for(;Array.isArray(r);)r=r[0],e++;return{types:r,ndimArray:e}}function g(t){i(t)&&(function(t){if(t.json&&t.json.origins){const e=t.json.origins,r={"web-document":["web-scene","web-map"]};for(const t in r)if(e[t]){const n=e[t];r[t].forEach((t=>{e[t]=n})),delete e[t]}}}(t),function(t){const e=function(t){return t.json.types?y(t.json):t.type?p(t):y(t)}(t);if(t.json.origins)for(const r in t.json.origins){const n=t.json.origins[r],i=n.types?d(n):e;(0,s.U)(i,n,!1),n.types&&!n.write&&t.json.write&&t.json.write.enabled&&(n.write={...t.json.write}),(0,l.U)(i,n)}(0,s.U)(e,t.json,!0),(0,l.U)(e,t.json)}(t))}},63213:(t,e,r)=>{r.d(e,{U:()=>l,d:()=>u});var n=r(92604),s=r(78286),i=r(20941),o=r(7628),a=r(14062);const c=n.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function l(t,e,r){t&&(!r&&!e.read||e.read?.reader||!1===e.read?.enabled||function(t){return"types"in t?g(t.types):y(t.type)}(t)&&(0,s.RB)("read.reader",u(t),e))}function u(t){const e=t.ndimArray??0;if(e>1)return function(t){const e=h(t),r=f.bind(null,e),n=t.ndimArray??0;return(t,e,s)=>{if(null==t)return t;t=r(t,s,n);let i=n,o=t;for(;i>0&&Array.isArray(o);)i--,o=o[0];if(void 0!==o)for(let e=0;e<i;e++)t=[t];return t}}(t);if(1===e)return d(t);if("type"in t&&p(t.type)){const e=t.type.prototype?.itemType?.Type,r=d("function"==typeof e?{type:e}:{types:e});return(e,n,s)=>{const i=r(e,n,s);return i?new t.type(i):i}}return h(t)}function h(t){return"type"in t?function(t){return t.prototype.read?(e,r,n)=>{if(null==e)return e;const s=typeof e;if("object"!==s)return void c.error(`Expected JSON value of type 'object' to deserialize type '${t.prototype.declaredClass}', but got '${s}'`);const i=new t;return i.read(e,n),i}:t.fromJSON}(t.type):function(t){let e=null;const r=t.errorContext??"type";return(n,s,a)=>{if(null==n)return n;const l=typeof n;if("object"!==l)return void c.error(`Expected JSON value of type 'object' to deserialize, but got '${l}'`);e||(e=function(t){const e={};for(const r in t.typeMap){const n=t.typeMap[r],s=(0,o.fp)(n.prototype);if("function"==typeof t.key)continue;const i=s[t.key];if(!i)continue;i.json?.type&&Array.isArray(i.json.type)&&1===i.json.type.length&&"string"==typeof i.json.type[0]&&(e[i.json.type[0]]=n);const a=i.json?.write;if(!a||!a.writer){e[r]=n;continue}const c=a.target,l="string"==typeof c?c:t.key,u={};a.writer(r,u,l),u[l]&&(e[u[l]]=n)}return e}(t));const u=t.key;if("string"!=typeof u)return;const h=n[u],f=h?e[h]:t.defaultKeyValue?t.typeMap[t.defaultKeyValue]:void 0;if(!f){const t=`Type '${h||"unknown"}' is not supported`;return a&&a.messages&&n&&a.messages.push(new i.Z(`${r}:unsupported`,t,{definition:n,context:a})),void c.error(t)}const d=new f;return d.read(n,a),d}}(t.types)}function f(t,e,r,n){return 0!==n&&Array.isArray(e)?e.map((e=>f(t,e,r,n-1))):t(e,void 0,r)}function d(t){const e=h(t);return(t,r,n)=>{if(null==t)return t;if(Array.isArray(t)){const r=[];for(const s of t){const t=e(s,void 0,n);void 0!==t&&r.push(t)}return r}const s=e(t,void 0,n);return void 0!==s?[s]:void 0}}function p(t){if(!(0,a.u)(t))return!1;const e=t.prototype.itemType;return!(!e||!e.Type)&&("function"==typeof e.Type?y(e.Type):g(e.Type))}function y(t){return!Array.isArray(t)&&!!t&&t.prototype&&("read"in t.prototype||"fromJSON"in t||p(t))}function g(t){for(const e in t.typeMap)if(!y(t.typeMap[e]))return!1;return!0}},14062:(t,e,r)=>{function n(t){return!!t&&t.prototype&&t.prototype.declaredClass&&0===t.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(e,{u:()=>n})},827:(t,e,r)=>{r.d(e,{U:()=>a,k:()=>h});var n=r(20102),s=r(92604),i=r(78286),o=r(14062);function a(t,e){if(!e.write||e.write.writer||!1===e.write.enabled&&!e.write.overridePolicy)return;const r=t?.ndimArray??0;t&&(1===r||"type"in t&&(0,o.u)(t.type))?e.write.writer=f:r>1?e.write.writer=function(t){return(e,r,n,s)=>{let o;if(null===e)o=null;else{o=d(e,s,t);let r=t,n=o;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let t=0;t<r;t++)o=[o]}(0,i.RB)(n,o,r)}}(r):e.types?Array.isArray(e.types)?e.write.writer=function(t){return(e,r,n,s)=>e&&Array.isArray(e)?l(e.filter((e=>c(e,t,s))),r,n,s):l(e,r,n,s)}(e.types[0]):e.write.writer=function(t){return(e,r,n,s)=>e?c(e,t,s)?l(e,r,n,s):void 0:l(e,r,n,s)}(e.types):e.write.writer=l}function c(t,e,r){for(const r in e.typeMap)if(t instanceof e.typeMap[r])return!0;if(r?.messages){const i=e.errorContext??"type",o=`Values of type '${("function"!=typeof e.key?t[e.key]:t.declaredClass)??"Unknown"}' cannot be written`;r&&r.messages&&t&&r.messages.push(new n.Z(`${i}:unsupported`,o,{definition:t,context:r})),s.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer").error(o)}return!1}function l(t,e,r,n){(0,i.RB)(r,u(t,n),e)}function u(t,e){return t&&"function"==typeof t.write?t.write({},e):t&&"function"==typeof t.toJSON?t.toJSON():"number"==typeof t?h(t):t}function h(t){return t===-1/0?-Number.MAX_VALUE:t===1/0?Number.MAX_VALUE:isNaN(t)?null:t}function f(t,e,r,n){let s;null===t?s=null:t&&"function"==typeof t.map?(s=t.map((t=>u(t,n))),"function"==typeof s.toArray&&(s=s.toArray())):s=[u(t,n)],(0,i.RB)(r,s,e)}function d(t,e,r){return 0!==r&&Array.isArray(t)?t.map((t=>d(t,e,r-1))):u(t,e)}},67723:(t,e,r)=>{r.d(e,{$z:()=>o,Gg:()=>c,U2:()=>a});var n=r(1153);function s(t,e){const r="?"===t[t.length-1]?t.slice(0,-1):t;if(null!=e.getItemAt||Array.isArray(e)){const t=parseInt(r,10);if(!isNaN(t))return Array.isArray(e)?e[t]:e.getItemAt(t)}const s=(0,n.vw)(e);return(0,n.b6)(s,r)?s.get(r):e[r]}function i(t,e,r){if(null==t)return t;const n=s(e[r],t);return!n&&r<e.length-1?void 0:r===e.length-1?n:i(n,e,r+1)}function o(t,e,r=0){return"string"!=typeof e||e.includes(".")?i(t,(0,n.NI)(e),r):s(e,t)}function a(t,e){return o(t,e)}function c(t,e){return void 0!==o(e,t)}},97831:(t,e,r)=>{var n;r.d(e,{F:()=>n}),function(t){t[t.INITIALIZING=0]="INITIALIZING",t[t.CONSTRUCTING=1]="CONSTRUCTING",t[t.CONSTRUCTED=2]="CONSTRUCTED"}(n||(n={}))},7628:(t,e,r)=>{r.d(e,{Oe:()=>a,fp:()=>o,tz:()=>c});var n=r(22974),s=r(70586),i=r(1153);function o(t){let e=t.constructor.__accessorMetadata__;const r=Object.prototype.hasOwnProperty.call(t.constructor,"__accessorMetadata__");if(e){if(!r){e=Object.create(e);for(const t in e)e[t]=(0,n.d9)(e[t]);Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0})}}else e={},Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0});return(0,s.j0)(t.constructor.__accessorMetadata__)}function a(t,e){const r=o(t);let n=r[e];return n||(n=r[e]={}),n}function c(t,e){return(0,i.TS)(t,e,u)}const l=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function u(t){return l.test(t)?"replace":"merge"}},50549:(t,e,r)=>{r.d(e,{$:()=>h,i:()=>u});var n=r(67723),s=r(1153),i=r(53906);function o(t,e,r){if(!t||!t.read||!1===t.read.enabled||!t.read.source)return!1;const s=t.read.source;if("string"==typeof s){if(s===e)return!0;if(s.includes(".")&&0===s.indexOf(e)&&(0,n.Gg)(s,r))return!0}else for(const t of s){if(t===e)return!0;if(t.includes(".")&&0===t.indexOf(e)&&(0,n.Gg)(t,r))return!0}return!1}function a(t,e,r,n,s){let a=(0,i.HS)(e[r],s);(function(t){return t&&(!t.read||!1!==t.read.enabled&&!t.read.source)})(a)&&(t[r]=!0);for(const c of Object.getOwnPropertyNames(e))a=(0,i.HS)(e[c],s),o(a,r,n)&&(t[c]=!0)}function c(t,e,r,n){const s=r.metadatas,o=(0,i.hk)(s[e],"any",n),a=o&&o.default;if(void 0===a)return;const c="function"==typeof a?a.call(t,e,n):a;void 0!==c&&r.set(e,c)}const l={origin:"service"};function u(t,e,r=l){if(!e||"object"!=typeof e)return;const o=(0,s.vw)(t),u=o.metadatas,h={};for(const t of Object.getOwnPropertyNames(e))a(h,u,t,e,r);o.setDefaultOrigin(r.origin);for(const s of Object.getOwnPropertyNames(h)){const a=(0,i.HS)(u[s],r).read,c=a&&a.source;let l;l=c&&"string"==typeof c?(0,n.$z)(e,c):e[s],a&&a.reader&&(l=a.reader.call(t,l,e,r)),void 0!==l&&o.set(s,l)}if(!r||!r.ignoreDefaults){o.setDefaultOrigin("defaults");for(const e of Object.getOwnPropertyNames(u))h[e]||c(t,e,o,r)}o.setDefaultOrigin("user")}function h(t,e,r,n=l){const s={...n,messages:[]};r(s),s.messages?.forEach((e=>{"warning"!==e.type||t.loaded?n&&n.messages&&n.messages.push(e):t.loadWarnings.push(e)}))}},37697:(t,e,r)=>{r.d(e,{t:()=>o});var n=r(20102),s=r(80442),i=(r(92604),r(67723));function o(t,e,r){if(t&&e)if("object"==typeof e)for(const r of Object.getOwnPropertyNames(e))o(t,r,e[r]);else{if(e.includes(".")){const n=e.split("."),s=n.splice(n.length-1,1)[0];return void o((0,i.U2)(t,n),s,r)}const a=t.__accessor__;null!=a&&function(t,e){if((0,s.Z)("esri-unknown-property-errors")&&!function(t,e){return null!=e.metadatas[t]}(t,e))throw new n.Z("set:unknown-property",function(t,e){return"setting unknown property '"+t+"' on instance of "+e.host.declaredClass}(t,e))}(e,a),t[e]=r}}},58971:(t,e,r)=>{r.d(e,{GF:()=>m,LJ:()=>f,gb:()=>d,it:()=>l,mS:()=>_}),r(80442);var n=r(92604),s=r(1153),i=r(44550);const o={onObservableAccessed:()=>{},onTrackingEnd:()=>{}},a=[];let c=o;function l(t){c.onObservableAccessed(t)}let u=!1,h=!1;function f(t,e,r){if(u)return p(t,e,r);y(t);const n=e.call(r);return g(),n}function d(t,e){return f(o,t,e)}function p(t,e,r){const s=u;u=!0,y(t);let i=null;try{i=e.call(r)}catch(t){h&&n.Z.getLogger("esri.core.accessorSupport.tracking").error(t)}return g(),u=s,i}function y(t){c=t,a.push(t)}function g(){const t=a.length;if(t>1){const e=a.pop();c=a[t-2],e.onTrackingEnd()}else if(1===t){const t=a.pop();c=o,t.onTrackingEnd()}else c=o}function _(t,e){const r=e.observerObject;if(r.flags&i.v.DepTrackingInitialized)return;const n=h;h=!1,r.flags&i.v.AutoTracked?p(e,e.metadata.get,t):m(t,e),h=n}const v=[];function m(t,e){const r=e.observerObject;r.flags&i.v.ExplicitlyTracking||(r.flags|=i.v.ExplicitlyTracking,p(e,(()=>{const r=e.metadata.dependsOn||v;for(const e of r)if("string"!=typeof e||e.includes(".")){const r=(0,s.NI)(e);for(let e=0,n=t;e<r.length&&null!=n&&"object"==typeof n;++e)n=b(n,r[e],e!==r.length-1)}else b(t,e,!1)})),r.flags&=~i.v.ExplicitlyTracking)}function b(t,e,r){const n="?"===e[e.length-1]?e.slice(0,-1):e;if(null!=t.getItemAt||Array.isArray(t)){const e=parseInt(n,10);if(!isNaN(e))return Array.isArray(t)?t[e]:t.getItemAt(e)}const i=(0,s.vw)(t),o=i?.properties.get(n);return o&&(l(o.observerObject),_(t,o)),r?t[n]:void 0}},44550:(t,e,r)=>{var n;r.d(e,{v:()=>n}),function(t){t[t.Dirty=1]="Dirty",t[t.Overriden=2]="Overriden",t[t.Computing=4]="Computing",t[t.NonNullable=8]="NonNullable",t[t.HasDefaultValue=16]="HasDefaultValue",t[t.DepTrackingInitialized=32]="DepTrackingInitialized",t[t.AutoTracked=64]="AutoTracked",t[t.ExplicitlyTracking=128]="ExplicitlyTracking"}(n||(n={}))},38805:(t,e,r)=>{r.d(e,{M:()=>n});class n{constructor(t){this._accessed=[],this._handles=[],this._finalizationToken={},this._observerObject=new s(t),i.register(this,new WeakRef(this._observerObject),this._finalizationToken)}destroy(){i.unregister(this._observerObject),this._accessed.length=0,this._observerObject?.destroy(),this.clear()}onObservableAccessed(t){const e=this._accessed;e.includes(t)||e.push(t)}onTrackingEnd(){const t=this._handles,e=this._accessed,r=this._observerObject;for(let n=0;n<e.length;++n)t.push(e[n].observe(r));e.length=0}clear(){const t=this._handles;for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}class s{constructor(t){this._notify=t,this._invalidCount=0,this.destroyed=!1}onInvalidated(){this._invalidCount++}onCommitted(){if(this.destroyed)return;const t=this._invalidCount;if(1===t)return this._invalidCount=0,void this._notify();this._invalidCount=t>0?t-1:0}destroy(){this.destroyed=!0,this._notify=o}}const i=new FinalizationRegistry((t=>{t.deref()?.destroy()}));function o(){}},87538:(t,e,r)=>{r.d(e,{EH:()=>l,U5:()=>a,Xz:()=>c});var n=r(58971),s=r(38805);let i=!1;const o=[];function a(t,e){let r=new s.M((function s(){if(!r||a)return;if(i)return void u(s);const c=o;r.clear(),i=!0,a=!0,o=(0,n.LJ)(r,t),a=!1,i=!1,e(o,c),h()})),o=null,a=!1;return a=!0,o=(0,n.LJ)(r,t),a=!1,{remove:function(){r&&(r.destroy(),r=null,o=null)}}}function c(t,e){let r=new s.M((function(){e(i,o)})),i=null;function o(){return r?(r.clear(),i=(0,n.LJ)(r,t),i):null}return o(),{remove:function(){r&&(r.destroy(),r=null),i=null}}}function l(t){let e=new s.M((function s(){e&&!r&&(i?u(s):(e.clear(),i=!0,r=!0,(0,n.LJ)(e,t),r=!1,i=!1,h()))})),r=!1;return r=!0,(0,n.LJ)(e,t),r=!1,{remove:function(){e&&(e.destroy(),e=null)}}}function u(t){o.includes(t)||o.unshift(t)}function h(){for(;o.length;)o.pop()()}},1153:(t,e,r)=>{r.d(e,{IH:()=>d,NI:()=>u,Qc:()=>f,TS:()=>c,b6:()=>a,vw:()=>o});var n=r(50758),s=r(22974),i=r(70586);function o(t){return t?t.__accessor__?t.__accessor__:t.propertyInvalidated?t:null:null}function a(t,e){return null!=t&&t.metadatas&&null!=t.metadatas[e]}function c(t,e,r){return l(t,e,r?{policy:r,path:""}:null)}function l(t,e,r){return e?Object.keys(e).reduce(((t,n)=>{let o=null,a="merge";if(r&&(o=r.path?`${r.path}.${n}`:n,a=r.policy(o)),"replace"===a)return t[n]=e[n],t;if("replace-arrays"===a&&Array.isArray(t[n]))return t[n]=e[n],t;if(void 0===t[n])return t[n]=(0,s.d9)(e[n]),t;let c=t[n],u=e[n];if(c===u)return t;if(Array.isArray(u)||Array.isArray(t))c=c?Array.isArray(c)?t[n]=c.concat():t[n]=[c]:t[n]=[],u&&(Array.isArray(u)||(u=[u]),u.forEach((t=>{c.includes(t)||c.push(t)})));else if(u&&"object"==typeof u)if(r){const e=r.path;r.path=(0,i.j0)(o),t[n]=l(c,u,r),r.path=e}else t[n]=l(c,u,null);else t.hasOwnProperty(n)&&!e.hasOwnProperty(n)||(t[n]=u);return t}),t||{}):t}function u(t){return Array.isArray(t)?t:t.split(".")}function h(t){return t.includes(",")?t.split(",").map((t=>t.trim())):[t.trim()]}function f(t,e,r,s){const i=function(t){if(Array.isArray(t)){const e=[];for(const r of t)e.push(...h(r));return e}return h(t)}(e);if(1!==i.length){const e=i.map((e=>s(t,e,r)));return(0,n.AL)(e)}return s(t,i[0],r)}function d(t){let e=!1;return()=>{e||(e=!0,t())}}},26258:(t,e,r)=>{r.d(e,{BT:()=>w,YP:()=>S,aQ:()=>T});var n=r(3894),s=r(22974),i=r(70586),o=r(71143);class a extends o.Z{constructor(){super(...arguments),this._set=new Set}destroy(){super.destroy(),this._set=(0,i.wN)(this._set)}acquire(...t){const e=super.acquire(...t);return this._set.delete(e),e}release(t){t&&!this._set.has(t)&&(super.release(t),this._set.add(t))}_dispose(t){this._set.delete(t),super._dispose(t)}}var c,l,u=r(1654),h=r(99001),f=r(67723),d=r(87538),p=r(1153);(l=c||(c={}))[l.Untracked=0]="Untracked",l[l.Tracked=1]="Tracked";class y{constructor(){this.uid=(0,h.D)(),this.removed=!1,this.type=null,this.oldValue=null,this.callback=null,this.getValue=null,this.target=null,this.path=null,this.equals=null}static acquireUntracked(t,e,r,n,i){return this.pool.acquire(c.Untracked,t,e,r,n,i,s.fS)}static acquireTracked(t,e,r,n){return this.pool.acquire(c.Tracked,t,e,r,null,null,n)}notify(t,e){this.type===c.Untracked?this.callback.call(this.target,t,e,this.path,this.target):this.callback.call(null,t,e)}acquire(t,e,r,n,s,i,o){this.uid=(0,h.D)(),this.removed=!1,this.type=t,this.oldValue=e,this.callback=r,this.getValue=n,this.target=s,this.path=i,this.equals=o}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=(0,h.D)(),this.removed=!0}}y.pool=new a(y);const g=new n.Z,_=new Set;let v;function m(t){_.delete(t),_.add(t),v||(v=(0,u.Os)(O))}function b(t){if(t.removed)return;const e=t.oldValue,r=t.getValue();t.equals(e,r)||(t.oldValue=r,t.notify(r,e))}function w(t){for(const e of _.values())e.target===t&&(e.removed=!0)}function O(){let t=10;for(;v&&t--;){v=null;const t=A(),e=g.acquire();for(const r of t){const t=r.uid;b(r),t===r.uid&&r.removed&&e.push(r)}for(const t of _)t.removed&&(e.push(t),_.delete(t));for(const t of e)y.pool.release(t);g.release(e),g.release(t),j.forEach((t=>t()))}}function A(){const t=g.acquire();t.length=_.size;let e=0;for(const r of _)t[e]=r,++e;return _.clear(),t}const j=new Set;function S(t,e,r,n=!1){return!t.__accessor__||t.__accessor__.destroyed?{remove(){}}:n?function(t,e,r){const n=(0,p.Qc)(t,e,r,((t,e,r)=>{let i=!1;return(0,d.U5)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed?n.remove():i||(i=!0,(0,s.fS)(a,o)||r.call(t,o,a,e,t),i=!1)}))}));return n}(t,e,r):function(t,e,r){let n=(0,p.Qc)(t,e,r,((t,e,r)=>{let s,i,o=(0,d.Xz)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed||s&&s.uid!==i?n.remove():(s||(s=y.acquireUntracked(o,r,a,t,e),i=s.uid),m(s))}));return{remove:(0,p.IH)((()=>{o.remove(),s&&(s.uid!==i||s.removed||(s.removed=!0,m(s)),s=null),n=o=null}))}}));return n}(t,e,r)}function T(t,e,r=!1,n=s.y7){return r?function(t,e,r){let n=!1;return(0,d.U5)(t,((t,s)=>{n||(n=!0,r(s,t)||e(t,s),n=!1)}))}(t,e,n):function(t,e,r){let n,s,i=(0,d.Xz)(t,((t,o)=>{n&&n.uid!==s?i.remove():(n||(n=y.acquireTracked(t,e,o,r),s=n.uid),m(n))}));return{remove:(0,p.IH)((()=>{i.remove(),n&&(n.uid!==s||n.removed||(n.removed=!0,m(n)),n=null),i=null}))}}(t,e,n)}},76169:(t,e,r)=>{r.d(e,{c:()=>f,d:()=>h});var n=r(67676),s=r(20102),i=r(92604),o=r(31263),a=r(1153),c=r(53906);function l(t,e,r,n,s){const i={};return e.write?.writer?.call(t,n,i,r,s),i}function u(t,e,r,a,c,l){if(!a||!a.write)return!1;const u=t.get(r);if(!c&&a.write.overridePolicy){const e=a.write.overridePolicy.call(t,u,r,l);void 0!==e&&(c=e)}if(c||(c=a.write),!c||!1===c.enabled)return!1;if((null===u&&!c.allowNull&&!c.writerEnsuresNonNull||void 0===u)&&c.isRequired){const e=new s.Z("web-document-write:property-required",`Missing value for required property '${r}' on '${t.declaredClass}'`,{propertyName:r,target:t});return e&&l&&l.messages?l.messages.push(e):e&&!l&&i.Z.getLogger("esri.core.accessorSupport.write").error(e.name,e.message),!1}return!(void 0===u||null===u&&!c.allowNull&&!c.writerEnsuresNonNull||(!e.store.multipleOriginsSupported||e.store.originOf(r)===o.s3.DEFAULTS)&&function(t,e,r,s,i){const o=s.default;if(void 0===o)return!1;if(null!=s.defaultEquals)return s.defaultEquals(i);if("function"==typeof o){if(Array.isArray(i)){const s=o.call(t,e,r);return(0,n.fS)(s,i)}return!1}return o===i}(t,r,l,a,u)||!c.ignoreOrigin&&l&&l.origin&&e.store.multipleOriginsSupported&&e.store.originOf(r)<(0,o.M9)(l.origin))}function h(t,e,r,n){const s=(0,a.vw)(t),i=s.metadatas,o=(0,c.Ah)(i[e],n);return!!o&&u(t,s,e,o,r,n)}function f(t,e,r){if(t&&"function"==typeof t.toJSON&&(!t.toJSON.isDefaultToJSON||!t.write))return(0,a.TS)(e,t.toJSON(r));const n=(0,a.vw)(t),s=n.metadatas;for(const i in s){const h=(0,c.Ah)(s[i],r);if(!u(t,n,i,h,void 0,r))continue;const f=t.get(i),d=l(t,h,h.write&&"string"==typeof h.write.target?h.write.target:i,f,r);Object.keys(d).length>0&&(e=(0,a.TS)(e,d),r?.resources?.pendingOperations?.length&&r.resources.pendingOperations.push(Promise.all(r.resources.pendingOperations).then((()=>(0,a.TS)(e,d,(()=>"replace-arrays"))))),r&&r.writtenProperties&&r.writtenProperties.push({target:t,propName:i,oldOrigin:(0,o.Wm)(n.store.originOf(i)),newOrigin:r.origin}))}return e}},50758:(t,e,r)=>{function n(t){return s((()=>t.forEach((t=>null!=t&&t.remove()))))}function s(t){return{remove:()=>{t&&(t(),t=void 0)}}}r.d(e,{AL:()=>n,kB:()=>s})},66374:(t,e,r)=>{function n(t){const e=[];return function*(){yield*e;for(const r of t)e.push(r),yield r}}function s(t,e){for(const r of t)if(null!=r&&e(r))return r}function i(t){return null!=t&&"function"==typeof t[Symbol.iterator]}r.d(e,{Fs:()=>n,TW:()=>i,sE:()=>s})},35454:(t,e,r)=>{r.d(e,{X:()=>s,w:()=>i});var n=r(78286);class s{constructor(t,e={ignoreUnknown:!1,useNumericKeys:!1}){this._jsonToAPI=t,this._options=e,this.apiValues=[],this.jsonValues=[],this._apiToJSON=this._invertMap(t),this.apiValues=this._getKeysSorted(this._apiToJSON),this.jsonValues=this._getKeysSorted(this._jsonToAPI),this.read=t=>this.fromJSON(t),this.write=(t,e,r)=>{const s=this.toJSON(t);void 0!==s&&(0,n.RB)(r,s,e)},this.write.isJSONMapWriter=!0}toJSON(t){if(null==t)return null;if(this._apiToJSON.hasOwnProperty(t)){const e=this._apiToJSON[t];return this._options.useNumericKeys?+e:e}return this._options.ignoreUnknown?void 0:t}fromJSON(t){return null!=t&&this._jsonToAPI.hasOwnProperty(t)?this._jsonToAPI[t]:this._options.ignoreUnknown?void 0:t}_invertMap(t){const e={};for(const r in t)e[t[r]]=r;return e}_getKeysSorted(t){const e=[];for(const r in t)e.push(r);return e.sort(),e}}function i(){return function(t,e){return new s(t,{ignoreUnknown:!0,...e})}}},41213:(t,e,r)=>{r.d(e,{Y:()=>s});const n=[];function s(t){n.push(t),1===n.length&&queueMicrotask((()=>{const t=n.slice();n.length=0;for(const e of t)e()}))}},1654:(t,e,r)=>{r.d(e,{MU:()=>b,Os:()=>g});var n=r(70586),s=r(41213),i=r(54790),o=r(44553),a=r(95330),c=r(76882);class l{constructor(t){this.callback=t,this.isActive=!0}remove(){this.isActive=!1}}let u=0;const h={time:(0,c.HA)(0),deltaTime:(0,c.HA)(0),elapsedFrameTime:(0,c.HA)(0),frameDuration:(0,c.HA)(0)},f=["prepare","preRender","render","postRender","update","finish"],d=[],p=new o.Z,y={frameTasks:p,willDispatch:!1,clearFrameTasks:function(t=!1){p.forAll((t=>{t.removed=!0})),t&&v()},dispatch:m,executeFrameTasks:function(t){const e=(0,c.HA)(t-u);u=t;const r=1e3/60,n=Math.max(0,e-r);h.time=t,h.frameDuration=(0,c.HA)(r-n);for(let r=0;r<f.length;r++){const n=performance.now(),s=f[r];p.forAll((n=>{n.paused||n.removed||(0===r&&n.ticks++,n.phases[s]&&(h.elapsedFrameTime=(0,c.HA)(performance.now()-t),h.deltaTime=0===n.ticks?(0,c.HA)(0):e,n.phases[s]?.call(n,h)))})),w[r].record(performance.now()-n)}v(),O.record(performance.now()-t)}};function g(t){const e=new l(t);return d.push(e),y.willDispatch||(y.willDispatch=!0,(0,s.Y)(m)),e}const _=new o.Z;function v(){p.forAll((t=>{t.removed&&_.push(t)})),p.removeUnorderedMany(_.data,_.length),_.clear()}function m(){for(;d.length;){const t=(0,n.j0)(d.shift());t.isActive&&t.callback()}y.willDispatch=!1}function b(t=1,e){const r=(0,a.hh)(),n=()=>{(0,a.Hc)(e)?r.reject((0,a.zE)()):0===t?r():(--t,(0,s.Y)((()=>n())))};return n(),r.promise}const w=f.map((t=>new i.Z(t))),O=new i.Z("total")},76882:(t,e,r)=>{function n(t){return t}r.d(e,{HA:()=>n})},99001:(t,e,r)=>{r.d(e,{D:()=>s});let n=0;function s(){return++n}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8598],{93860:(e,t,r)=>{function n(e,t){const r=e.count;t||(t=new e.TypedArrayConstructor(r));for(let n=0;n<r;n++)t[n]=e.get(n);return t}r.d(t,{m:()=>n}),Object.freeze(Object.defineProperty({__proto__:null,makeDense:n},Symbol.toStringTag,{value:"Module"}))},10816:(e,t,r)=>{r.d(t,{a:()=>o,f:()=>a,n:()=>s});var n=r(1533);function o(e,t){s(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function s(e,t,r=2,o=r){const s=t.length/2;let a=0,i=0;if((0,n.kJ)(t)||(0,n.Q7)(t)){for(let n=0;n<s;++n)e[a]=t[i],e[a+1]=t[i+1],a+=r,i+=o;return}const u=(0,n.Op)(t);if((0,n.B3)(t))for(let n=0;n<s;++n)e[a]=Math.max(t[i]/u,-1),e[a+1]=Math.max(t[i+1]/u,-1),a+=r,i+=o;else for(let n=0;n<s;++n)e[a]=t[i]/u,e[a+1]=t[i+1]/u,a+=r,i+=o}function a(e,t,r,n){const o=e.typedBuffer,s=e.typedBufferStride,a=n?.count??e.count;let i=(n?.dstIndex??0)*s;for(let e=0;e<a;++e)o[i]=t,o[i+1]=r,i+=s}Object.freeze(Object.defineProperty({__proto__:null,fill:a,normalizeIntegerBuffer:s,normalizeIntegerBufferView:o},Symbol.toStringTag,{value:"Module"}))},56067:(e,t,r)=>{function n(e,t){o(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function o(e,t,r=3,n=r){const o=t.length/n;let s=0,a=0;for(let i=0;i<o;++i)e[s]=t[a],e[s+1]=t[a+1],e[s+2]=t[a+2],s+=r,a+=n}function s(e,t,r,n,o){const s=e.typedBuffer,a=e.typedBufferStride,i=o?.count??e.count;let u=(o?.dstIndex??0)*a;for(let e=0;e<i;++e)s[u]=t,s[u+1]=r,s[u+2]=n,u+=a}r.d(t,{a:()=>n,c:()=>o,f:()=>s}),Object.freeze(Object.defineProperty({__proto__:null,copy:o,copyView:n,fill:s},Symbol.toStringTag,{value:"Module"}))},11077:(e,t,r)=>{r.d(t,{a:()=>o,b:()=>i,n:()=>a,s:()=>u,t:()=>s});var n=r(72220);function o(e,t,r){s(e.typedBuffer,t.typedBuffer,r,e.typedBufferStride,t.typedBufferStride)}function s(e,t,r,o=4,s=o){if(e.length/o!=t.length/s)return void n.c.error("source and destination buffers need to have the same number of elements");const a=e.length/o,i=r[0],u=r[1],l=r[2],c=r[3],f=r[4],d=r[5],p=r[6],h=r[7],m=r[8];let w=0,T=0;for(let r=0;r<a;r++){const r=t[w],n=t[w+1],a=t[w+2],g=t[w+3];e[T]=i*r+c*n+p*a,e[T+1]=u*r+f*n+h*a,e[T+2]=l*r+d*n+m*a,e[T+3]=g,w+=s,T+=o}}function a(e,t){const r=Math.min(e.count,t.count),n=e.typedBuffer,o=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride;for(let e=0;e<r;e++){const t=e*o,r=e*a,i=s[r],u=s[r+1],l=s[r+2],c=i*i+u*u+l*l;if(c>0){const e=1/Math.sqrt(c);n[t]=e*i,n[t+1]=e*u,n[t+2]=e*l}}}function i(e,t,r){u(e.typedBuffer,t,r,e.typedBufferStride)}function u(e,t,r,n=4){const o=Math.min(e.length/n,t.count),s=t.typedBuffer,a=t.typedBufferStride;let i=0,u=0;for(let t=0;t<o;t++)e[u]=r*s[i],e[u+1]=r*s[i+1],e[u+2]=r*s[i+2],e[u+3]=r*s[i+3],i+=a,u+=n}Object.freeze(Object.defineProperty({__proto__:null,normalize:a,scale:u,scaleView:i,transformMat3:s,transformMat3View:o,transformMat4:function(e,t,r){if(e.count!==t.count)return void n.c.error("source and destination buffers need to have the same number of elements");const o=e.count,s=r[0],a=r[1],i=r[2],u=r[3],l=r[4],c=r[5],f=r[6],d=r[7],p=r[8],h=r[9],m=r[10],w=r[11],T=r[12],g=r[13],y=r[14],_=r[15],x=e.typedBuffer,b=e.typedBufferStride,O=t.typedBuffer,S=t.typedBufferStride;for(let e=0;e<o;e++){const t=e*b,r=e*S,n=O[r],o=O[r+1],N=O[r+2],A=O[r+3];x[t]=s*n+l*o+p*N+T*A,x[t+1]=a*n+c*o+h*N+g*A,x[t+2]=i*n+f*o+m*N+y*A,x[t+3]=u*n+d*o+w*N+_*A}}},Symbol.toStringTag,{value:"Module"}))},75488:(e,t,r)=>{function n(e,t){o(e.typedBuffer,t,e.typedBufferStride)}function o(e,t,r=4){const n=t.typedBuffer,o=t.typedBufferStride,s=t.count;let a=0,i=0;for(let t=0;t<s;++t)e[a]=n[i],e[a+1]=n[i+1],e[a+2]=n[i+2],e[a+3]=n[i+3],a+=r,i+=o}function s(e,t,r,n,o,s){const a=e.typedBuffer,i=e.typedBufferStride,u=s?.count??e.count;let l=(s?.dstIndex??0)*i;for(let e=0;e<u;++e)a[l]=t,a[l+1]=r,a[l+2]=n,a[l+3]=o,l+=i}r.d(t,{a:()=>n,c:()=>o,f:()=>s}),Object.freeze(Object.defineProperty({__proto__:null,copy:o,copyView:n,fill:s},Symbol.toStringTag,{value:"Module"}))},23670:(e,t,r)=>{r.d(t,{G:()=>o});var n=r(20102);let o=class{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}since(e,t){return!this.lessThan(e,t)}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new n.Z(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new o(this.major,this.minor,this._context)}static parse(e,t=""){const[r,s]=e.split("."),a=/^\s*\d+\s*$/;if(!r||!r.match||!r.match(a))throw new n.Z((t&&t+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:e});if(!s||!s.match||!s.match(a))throw new n.Z((t&&t+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:e});const i=parseInt(r,10),u=parseInt(s,10);return new o(i,u,t)}}},40270:(e,t,r)=>{r.d(t,{C:()=>u});var n=r(3172),o=r(66643),s=r(20102),a=r(95330),i=r(17452);class u{constructor(e){this._streamDataRequester=e}async loadJSON(e,t){return this._load("json",e,t)}async loadBinary(e,t){return(0,i.HK)(e)?((0,a.k_)(t),(0,i.AH)(e)):this._load("binary",e,t)}async loadImage(e,t){return this._load("image",e,t)}async _load(e,t,r){if(null==this._streamDataRequester)return(await(0,n.default)(t,{responseType:l[e]})).data;const i=await(0,o.q6)(this._streamDataRequester.request(t,e,r));if(!0===i.ok)return i.value;throw(0,a.r9)(i.error),new s.Z("",`Request for resource failed: ${i.error}`)}}const l={image:"image",binary:"array-buffer",json:"json"}},91911:(e,t,r)=>{r.d(t,{p:()=>a});var n=r(1533),o=r(24882),s=r(35371);function a(e,t){switch(t){case s.MX.TRIANGLES:return"number"==typeof(r=e)?(0,o.KF)(r):(0,n.lq)(r)?new Uint16Array(r):r;case s.MX.TRIANGLE_STRIP:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return[];const r=t-2,n=(0,o.$z)(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;t+=1)t%2==0?(n[e++]=t,n[e++]=t+1,n[e++]=t+2):(n[e++]=t+1,n[e++]=t,n[e++]=t+2)}else{let t=0;for(let o=0;o<r;o+=1)o%2==0?(n[t++]=e[o],n[t++]=e[o+1],n[t++]=e[o+2]):(n[t++]=e[o+1],n[t++]=e[o],n[t++]=e[o+2])}return n}(e);case s.MX.TRIANGLE_FAN:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return new Uint16Array(0);const r=t-2,n=r<=65536?new Uint16Array(3*r):new Uint32Array(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;++t)n[e++]=0,n[e++]=t+1,n[e++]=t+2;return n}const o=e[0];let s=e[1],a=0;for(let t=0;t<r;++t){const r=e[t+2];n[a++]=o,n[a++]=s,n[a++]=r,s=r}return n}(e)}var r}},15317:(e,t,r)=>{r.d(t,{$A:()=>s,Ml:()=>i,NM:()=>o,i$:()=>a});var n=r(47026);class o{constructor(e){this.data=e,this.type="encoded-mesh-texture",this.encoding=n.Ti.KTX2_ENCODING}}function s(e){return"encoded-mesh-texture"===e?.type}async function a(e){return new Promise(((t,r)=>{const n=new Blob([e]),o=new FileReader;o.onload=()=>{const e=o.result;t(JSON.parse(e))},o.onerror=e=>{r(e)},o.readAsText(n)}))}async function i(e,t){return t===n.Ti.KTX2_ENCODING?new o(e):new Promise(((r,n)=>{const o=new Blob([e],{type:t}),s=URL.createObjectURL(o),a=new Image,i=()=>{URL.revokeObjectURL(s),"decode"in a?a.decode().then((()=>r(a)),(()=>r(a))).then(l):(r(a),l())},u=e=>{URL.revokeObjectURL(s),n(e),l()},l=()=>{a.removeEventListener("load",i),a.removeEventListener("error",u)};a.addEventListener("load",i),a.addEventListener("error",u),a.src=s}))}},91695:(e,t,r)=>{r.d(t,{Q:()=>U});var n,o,s=r(92604),a=r(13598),i=r(35371),u=r(20102),l=r(30175),c=r(95330),f=r(17452),d=r(23670),p=r(52138),h=r(51305),m=r(94961),w=r(56481),T=r(93860);r(80442);class g{constructor(e){this._data=e,this._offset4=0,this._dataUint32=new Uint32Array(this._data,0,Math.floor(this._data.byteLength/4))}readUint32(){const e=this._offset4;return this._offset4+=1,this._dataUint32[e]}readUint8Array(e){const t=4*this._offset4;return this._offset4+=e/4,new Uint8Array(this._data,t,e)}remainingBytes(){return this._data.byteLength-4*this._offset4}}!function(e){e.SCALAR="SCALAR",e.VEC2="VEC2",e.VEC3="VEC3",e.VEC4="VEC4",e.MAT2="MAT2",e.MAT3="MAT3",e.MAT4="MAT4"}(n||(n={})),function(e){e[e.ARRAY_BUFFER=34962]="ARRAY_BUFFER",e[e.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER"}(o||(o={}));var y=r(74085);const _={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1},x={pbrMetallicRoughness:_,emissiveFactor:[0,0,0],alphaMode:"OPAQUE",alphaCutoff:.5,doubleSided:!1},b={ESRI_externalColorMixMode:"tint"},O=(e={})=>{const t={..._,...e.pbrMetallicRoughness},r=function(e){switch(e.ESRI_externalColorMixMode){case"multiply":case"tint":case"ignore":case"replace":break;default:(0,y.Bg)(e.ESRI_externalColorMixMode),e.ESRI_externalColorMixMode="tint"}return e}({...b,...e.extras});return{...x,...e,pbrMetallicRoughness:t,extras:r}},S={magFilter:i.cw.LINEAR,minFilter:i.cw.LINEAR_MIPMAP_LINEAR,wrapS:i.e8.REPEAT,wrapT:i.e8.REPEAT},N=e=>({...S,...e});var A=r(15317);const E=1179937895;class v{constructor(e,t,r,n){if(this._context=e,this.uri=t,this.json=r,this._glbBuffer=n,this._bufferLoaders=new Map,this._textureLoaders=new Map,this._textureCache=new Map,this._materialCache=new Map,this._nodeParentMap=new Map,this._nodeTransformCache=new Map,this._supportedExtensions=["KHR_texture_basisu"],this._baseUri=function(e){let t,r;return e.replace(/^(.*\/)?([^/]*)$/,((e,n,o)=>(t=n||"",r=o||"",""))),{dirPart:t,filePart:r}}(this.uri).dirPart,this._checkVersionSupported(),this._checkRequiredExtensionsSupported(),null==r.scenes)throw new u.Z("gltf-loader-unsupported-feature","Scenes must be defined.");if(null==r.meshes)throw new u.Z("gltf-loader-unsupported-feature","Meshes must be defined");if(null==r.nodes)throw new u.Z("gltf-loader-unsupported-feature","Nodes must be defined.");this._computeNodeParents()}static async load(e,t,r){if((0,f.HK)(t)){const r=(0,f.sJ)(t);if(r&&"model/gltf-binary"!==r.mediaType)try{const n=JSON.parse(r.isBase64?atob(r.data):r.data);return new v(e,t,n)}catch{}const n=(0,f.AH)(t);if(v._isGLBData(n))return this._fromGLBData(e,t,n)}if(t.endsWith(".gltf")){const n=await e.loadJSON(t,r);return new v(e,t,n)}const n=await e.loadBinary(t,r);if(v._isGLBData(n))return this._fromGLBData(e,t,n);const o=await e.loadJSON(t,r);return new v(e,t,o)}static _isGLBData(e){if(null==e)return!1;const t=new g(e);return t.remainingBytes()>=4&&t.readUint32()===E}static async _fromGLBData(e,t,r){const n=await v._parseGLBData(r);return new v(e,t,n.json,n.binaryData)}static async _parseGLBData(e){const t=new g(e);if(t.remainingBytes()<12)throw new u.Z("gltf-loader-error","GLB binary data is insufficiently large.");const r=t.readUint32(),n=t.readUint32(),o=t.readUint32();if(r!==E)throw new u.Z("gltf-loader-error","Magic first 4 bytes do not fit to expected GLB value.");if(e.byteLength<o)throw new u.Z("gltf-loader-error","GLB binary data is smaller than header specifies.");if(2!==n)throw new u.Z("gltf-loader-unsupported-feature","An unsupported GLB container version was detected. Only version 2 is supported.");let a,i,l=0;for(;t.remainingBytes()>=8;){const e=t.readUint32(),r=t.readUint32();if(0===l){if(1313821514!==r)throw new u.Z("gltf-loader-error","First GLB chunk must be JSON.");if(e<0)throw new u.Z("gltf-loader-error","No JSON data found.");a=await(0,A.i$)(t.readUint8Array(e))}else if(1===l){if(5130562!==r)throw new u.Z("gltf-loader-unsupported-feature","Second GLB chunk expected to be BIN.");i=t.readUint8Array(e)}else s.Z.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] More than 2 GLB chunks detected. Skipping.");l+=1}if(!a)throw new u.Z("gltf-loader-error","No GLB JSON chunk detected.");return{json:a,binaryData:i}}async getBuffer(e,t){const r=this.json.buffers[e];if(null==r.uri){if(null==this._glbBuffer)throw new u.Z("gltf-loader-error","GLB buffer not present");return this._glbBuffer}const n=await this._getBufferLoader(e,t);if(n.byteLength!==r.byteLength)throw new u.Z("gltf-loader-error","Buffer byte lengths should match.");return n}async _getBufferLoader(e,t){const r=this._bufferLoaders.get(e);if(r)return r;const n=this.json.buffers[e].uri,o=this._context.loadBinary(this._resolveUri(n),t).then((e=>new Uint8Array(e)));return this._bufferLoaders.set(e,o),o}async getAccessor(e,t){if(!this.json.accessors)throw new u.Z("gltf-loader-unsupported-feature","Accessors missing.");const r=this.json.accessors[e];if(null==r?.bufferView)throw new u.Z("gltf-loader-unsupported-feature","Some accessor does not specify a bufferView.");if(r.type in[n.MAT2,n.MAT3,n.MAT4])throw new u.Z("gltf-loader-unsupported-feature",`AttributeType ${r.type} is not supported`);const o=this.json.bufferViews[r.bufferView],s=await this.getBuffer(o.buffer,t),a=L[r.type],i=B[r.componentType],l=a*i,c=o.byteStride||l;return{raw:s.buffer,byteStride:c,byteOffset:s.byteOffset+(o.byteOffset||0)+(r.byteOffset||0),entryCount:r.count,isDenselyPacked:c===l,componentCount:a,componentByteSize:i,componentType:r.componentType,min:r.min,max:r.max,normalized:!!r.normalized}}async getIndexData(e,t){if(null==e.indices)return;const r=await this.getAccessor(e.indices,t);if(r.isDenselyPacked)switch(r.componentType){case i.g.UNSIGNED_BYTE:return new Uint8Array(r.raw,r.byteOffset,r.entryCount);case i.g.UNSIGNED_SHORT:return new Uint16Array(r.raw,r.byteOffset,r.entryCount);case i.g.UNSIGNED_INT:return new Uint32Array(r.raw,r.byteOffset,r.entryCount)}else switch(r.componentType){case i.g.UNSIGNED_BYTE:return(0,T.m)(this._wrapAccessor(w.D_,r));case i.g.UNSIGNED_SHORT:return(0,T.m)(this._wrapAccessor(w.av,r));case i.g.UNSIGNED_INT:return(0,T.m)(this._wrapAccessor(w.Nu,r))}}async getPositionData(e,t){if(null==e.attributes.POSITION)throw new u.Z("gltf-loader-unsupported-feature","No POSITION vertex data found.");const r=await this.getAccessor(e.attributes.POSITION,t);if(r.componentType!==i.g.FLOAT)throw new u.Z("gltf-loader-unsupported-feature","Expected type FLOAT for POSITION vertex attribute, but found "+i.g[r.componentType]);if(3!==r.componentCount)throw new u.Z("gltf-loader-unsupported-feature","POSITION vertex attribute must have 3 components, but found "+r.componentCount.toFixed());return this._wrapAccessor(w.ct,r)}async getNormalData(e,t){if(null==e.attributes.NORMAL)throw new u.Z("gltf-loader-error","No NORMAL vertex data found.");const r=await this.getAccessor(e.attributes.NORMAL,t);if(r.componentType!==i.g.FLOAT)throw new u.Z("gltf-loader-unsupported-feature","Expected type FLOAT for NORMAL vertex attribute, but found "+i.g[r.componentType]);if(3!==r.componentCount)throw new u.Z("gltf-loader-unsupported-feature","NORMAL vertex attribute must have 3 components, but found "+r.componentCount.toFixed());return this._wrapAccessor(w.ct,r)}async getTangentData(e,t){if(null==e.attributes.TANGENT)throw new u.Z("gltf-loader-error","No TANGENT vertex data found.");const r=await this.getAccessor(e.attributes.TANGENT,t);if(r.componentType!==i.g.FLOAT)throw new u.Z("gltf-loader-unsupported-feature","Expected type FLOAT for TANGENT vertex attribute, but found "+i.g[r.componentType]);if(4!==r.componentCount)throw new u.Z("gltf-loader-unsupported-feature","TANGENT vertex attribute must have 4 components, but found "+r.componentCount.toFixed());return new w.ek(r.raw,r.byteOffset,r.byteStride,r.byteOffset+r.byteStride*r.entryCount)}async getTextureCoordinates(e,t){if(null==e.attributes.TEXCOORD_0)throw new u.Z("gltf-loader-error","No TEXCOORD_0 vertex data found.");const r=await this.getAccessor(e.attributes.TEXCOORD_0,t);if(2!==r.componentCount)throw new u.Z("gltf-loader-unsupported-feature","TEXCOORD_0 vertex attribute must have 2 components, but found "+r.componentCount.toFixed());if(r.componentType===i.g.FLOAT)return this._wrapAccessor(w.Eu,r);if(!r.normalized)throw new u.Z("gltf-loader-unsupported-feature","Integer component types are only supported for a normalized accessor for TEXCOORD_0.");return function(e){switch(e.componentType){case i.g.BYTE:return new w.Vs(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case i.g.UNSIGNED_BYTE:return new w.xA(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case i.g.SHORT:return new w.or(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case i.g.UNSIGNED_SHORT:return new w.TS(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case i.g.UNSIGNED_INT:return new w.qt(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case i.g.FLOAT:return new w.Eu(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount)}}(r)}async getVertexColors(e,t){if(null==e.attributes.COLOR_0)throw new u.Z("gltf-loader-error","No COLOR_0 vertex data found.");const r=await this.getAccessor(e.attributes.COLOR_0,t);if(4!==r.componentCount&&3!==r.componentCount)throw new u.Z("gltf-loader-unsupported-feature","COLOR_0 attribute must have 3 or 4 components, but found "+r.componentCount.toFixed());if(4===r.componentCount){if(r.componentType===i.g.FLOAT)return this._wrapAccessor(w.ek,r);if(r.componentType===i.g.UNSIGNED_BYTE)return this._wrapAccessor(w.mc,r);if(r.componentType===i.g.UNSIGNED_SHORT)return this._wrapAccessor(w.v6,r)}else if(3===r.componentCount){if(r.componentType===i.g.FLOAT)return this._wrapAccessor(w.ct,r);if(r.componentType===i.g.UNSIGNED_BYTE)return this._wrapAccessor(w.ne,r);if(r.componentType===i.g.UNSIGNED_SHORT)return this._wrapAccessor(w.mw,r)}throw new u.Z("gltf-loader-unsupported-feature","Unsupported component type for COLOR_0 attribute: "+i.g[r.componentType])}hasPositions(e){return void 0!==e.attributes.POSITION}hasNormals(e){return void 0!==e.attributes.NORMAL}hasVertexColors(e){return void 0!==e.attributes.COLOR_0}hasTextureCoordinates(e){return void 0!==e.attributes.TEXCOORD_0}hasTangents(e){return void 0!==e.attributes.TANGENT}async getMaterial(e,t,r){let n=e.material?this._materialCache.get(e.material):void 0;if(!n){const o=null!=e.material?O(this.json.materials[e.material]):O(),s=o.pbrMetallicRoughness,a=this.hasVertexColors(e),i=this.getTexture(s.baseColorTexture,t),u=this.getTexture(o.normalTexture,t),l=r?this.getTexture(o.occlusionTexture,t):void 0,c=r?this.getTexture(o.emissiveTexture,t):void 0,f=r?this.getTexture(s.metallicRoughnessTexture,t):void 0,d=null!=e.material?e.material:-1;n={alphaMode:o.alphaMode,alphaCutoff:o.alphaCutoff,color:s.baseColorFactor,doubleSided:!!o.doubleSided,colorTexture:await i,normalTexture:await u,name:o.name,id:d,occlusionTexture:await l,emissiveTexture:await c,emissiveFactor:o.emissiveFactor,metallicFactor:s.metallicFactor,roughnessFactor:s.roughnessFactor,metallicRoughnessTexture:await f,hasVertexColors:a,ESRI_externalColorMixMode:o.extras.ESRI_externalColorMixMode,colorTextureTransform:s?.baseColorTexture?.extensions?.KHR_texture_transform,normalTextureTransform:o.normalTexture?.extensions?.KHR_texture_transform,occlusionTextureTransform:o.occlusionTexture?.extensions?.KHR_texture_transform,emissiveTextureTransform:o.emissiveTexture?.extensions?.KHR_texture_transform,metallicRoughnessTextureTransform:s?.metallicRoughnessTexture?.extensions?.KHR_texture_transform}}return n}async getTexture(e,t){if(!e)return;if(0!==(e.texCoord||0))throw new u.Z("gltf-loader-unsupported-feature","Only TEXCOORD with index 0 is supported.");const r=e.index,n=this.json.textures[r],o=N(null!=n.sampler?this.json.samplers[n.sampler]:{}),s=this._getTextureSourceId(n),a=this.json.images[s],i=await this._loadTextureImageData(r,n,t);return(0,l.s1)(this._textureCache,r,(()=>{const e=e=>33071===e||33648===e||10497===e,t=e=>{throw new u.Z("gltf-loader-error",`Unexpected TextureSampler WrapMode: ${e}`)};return{data:i,wrapS:e(o.wrapS)?o.wrapS:t(o.wrapS),wrapT:e(o.wrapT)?o.wrapT:t(o.wrapT),minFilter:o.minFilter,name:a.name,id:r}}))}getNodeTransform(e){if(void 0===e)return R;let t=this._nodeTransformCache.get(e);if(!t){const r=this.getNodeTransform(this._getNodeParent(e)),n=this.json.nodes[e];n.matrix?t=(0,p.m)((0,a.c)(),r,n.matrix):n.translation||n.rotation||n.scale?(t=(0,a.b)(r),n.translation&&(0,p.w)(t,t,n.translation),n.rotation&&(M[3]=(0,h.g)(M,n.rotation),(0,p.e)(t,t,M[3],M)),n.scale&&(0,p.k)(t,t,n.scale)):t=(0,a.b)(r),this._nodeTransformCache.set(e,t)}return t}_wrapAccessor(e,t){return new e(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*(t.entryCount-1)+t.componentByteSize*t.componentCount)}_resolveUri(e){return(0,f.hF)(e,this._baseUri)}_getNodeParent(e){return this._nodeParentMap.get(e)}_checkVersionSupported(){const e=d.G.parse(this.json.asset.version,"glTF");C.validate(e)}_checkRequiredExtensionsSupported(){const e=this.json;if(e.extensionsRequired&&!e.extensionsRequired.every((e=>this._supportedExtensions.includes(e))))throw new u.Z("gltf-loader-unsupported-feature","gltf loader was not able to load unsupported feature. Required extensions: "+e.extensionsRequired.join(", "))}_computeNodeParents(){this.json.nodes.forEach(((e,t)=>{e.children&&e.children.forEach((e=>{this._nodeParentMap.set(e,t)}))}))}async _loadTextureImageData(e,t,r){const n=this._textureLoaders.get(e);if(n)return n;const o=this._createTextureLoader(t,r);return this._textureLoaders.set(e,o),o}_getTextureSourceId(e){if(void 0!==e.extensions&&null!==e.extensions.KHR_texture_basisu)return e.extensions.KHR_texture_basisu.source;if(null!==e.source)return e.source;throw new u.Z("gltf-loader-unsupported-feature","Source is expected to be defined for a texture. It can also be omitted in favour of an KHR_texture_basisu extension tag.")}async _createTextureLoader(e,t){const r=this._getTextureSourceId(e),n=this.json.images[r];if(n.uri){if(n.uri.endsWith(".ktx2")){const e=await this._context.loadBinary(this._resolveUri(n.uri),t);return new A.NM(new Uint8Array(e))}return this._context.loadImage(this._resolveUri(n.uri),t)}if(null==n.bufferView)throw new u.Z("gltf-loader-unsupported-feature","Image bufferView must be defined.");if(null==n.mimeType)throw new u.Z("gltf-loader-unsupported-feature","Image mimeType must be defined.");const o=this.json.bufferViews[n.bufferView],s=await this.getBuffer(o.buffer,t);if(null!=o.byteStride)throw new u.Z("gltf-loader-unsupported-feature","byteStride not supported for image buffer");const a=s.byteOffset+(o.byteOffset||0);return(0,A.Ml)(new Uint8Array(s.buffer,a,o.byteLength),n.mimeType)}async getLoadedBuffersSize(){if(this._glbBuffer)return this._glbBuffer.byteLength;const e=await(0,c.WW)(Array.from(this._bufferLoaders.values())),t=await(0,c.WW)(Array.from(this._textureLoaders.values()));return e.reduce(((e,t)=>e+(t?.byteLength??0)),0)+t.reduce(((e,t)=>e+(t?(0,A.$A)(t)?t.data.byteLength:t.width*t.height*4:0)),0)}}const R=(0,p.A)((0,a.c)(),Math.PI/2),C=new d.G(2,0,"glTF"),M=(0,m.a)(),L={SCALAR:1,VEC2:2,VEC3:3,VEC4:4},B={[i.g.BYTE]:1,[i.g.UNSIGNED_BYTE]:1,[i.g.SHORT]:2,[i.g.UNSIGNED_SHORT]:2,[i.g.FLOAT]:4,[i.g.UNSIGNED_INT]:4};let I=0;async function U(e,t,r={},n=!0){const o=await v.load(e,t,r),u="gltf_"+I++,l={lods:[],materials:new Map,textures:new Map,meta:D(o)},c=!(!o.json.asset.extras||"symbolResource"!==o.json.asset.extras.ESRI_type),f=new Map;await F(o,(async(e,t,c,d)=>{const p=f.get(c)??0;f.set(c,p+1);const h=void 0!==e.mode?e.mode:i.MX.TRIANGLES,m=h===i.MX.TRIANGLES||h===i.MX.TRIANGLE_STRIP||h===i.MX.TRIANGLE_FAN?h:null;if(null==m)return void s.Z.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] Unsupported primitive mode ("+i.MX[h]+"). Skipping primitive.");if(!o.hasPositions(e))return void s.Z.getLogger("esri.views.3d.glTF").warn("Skipping primitive without POSITION vertex attribute.");const w=o.getPositionData(e,r),T=o.getMaterial(e,r,n),g=o.hasNormals(e)?o.getNormalData(e,r):null,y=o.hasTangents(e)?o.getTangentData(e,r):null,_=o.hasTextureCoordinates(e)?o.getTextureCoordinates(e,r):null,x=o.hasVertexColors(e)?o.getVertexColors(e,r):null,b=o.getIndexData(e,r),O={transform:(0,a.b)(t),attributes:{position:await w,normal:g?await g:null,texCoord0:_?await _:null,color:x?await x:null,tangent:y?await y:null},indices:await b,primitiveType:m,material:P(l,await T,u)};let S=null;null!=l.meta&&null!=l.meta.ESRI_lod&&"screenSpaceRadius"===l.meta.ESRI_lod.metric&&(S=l.meta.ESRI_lod.thresholds[c]),l.lods[c]=l.lods[c]||{parts:[],name:d,lodThreshold:S},l.lods[c].parts[p]=O}));for(const e of l.lods)e.parts=e.parts.filter((e=>!!e));const d=await o.getLoadedBuffersSize();return{model:l,meta:{isEsriSymbolResource:c,uri:o.uri},customMeta:{},size:d}}function D(e){const t=e.json;let r=null;return t.nodes.forEach((e=>{const t=e.extras;null!=t&&(t.ESRI_proxyEllipsoid||t.ESRI_lod)&&(r=t)})),r}async function F(e,t){const r=e.json,n=r.scenes[r.scene||0].nodes,o=n.length>1,a=[];for(const e of n){const t=r.nodes[e];a.push(i(e,0)),G(t)&&!o&&t.extensions.MSFT_lod.ids.forEach(((e,t)=>i(e,t+1)))}async function i(n,o){const u=r.nodes[n],l=e.getNodeTransform(n);if(null!=u.weights&&s.Z.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] Morph targets are not supported."),null!=u.mesh){const e=r.meshes[u.mesh];for(const r of e.primitives)a.push(t(r,l,o,e.name))}for(const e of u.children||[])a.push(i(e,o))}await Promise.all(a)}function G(e){return e.extensions&&e.extensions.MSFT_lod&&Array.isArray(e.extensions.MSFT_lod.ids)}function P(e,t,r){const n=t=>{const n=`${r}_tex_${t&&t.id}${t&&t.name?"_"+t.name:""}`;if(t&&!e.textures.has(n)){const r=function(e,t={}){return{data:e,parameters:{wrap:{s:i.e8.REPEAT,t:i.e8.REPEAT,...t.wrap},noUnpackFlip:!0,mipmap:!1,...t}}}(t.data,{wrap:{s:t.wrapS,t:t.wrapT},mipmap:j.includes(t.minFilter),noUnpackFlip:!0});e.textures.set(n,r)}return n},o=`${r}_mat_${t.id}_${t.name}`;if(!e.materials.has(o)){const r=function(e={}){return{color:[1,1,1],opacity:1,alphaMode:"OPAQUE",alphaCutoff:.5,doubleSided:!1,castShadows:!0,receiveShadows:!0,receiveAmbientOcclustion:!0,textureColor:null,textureNormal:null,textureOcclusion:null,textureEmissive:null,textureMetallicRoughness:null,colorTextureTransform:null,normalTextureTransform:null,occlusionTextureTransform:null,emissiveTextureTransform:null,metallicRoughnessTextureTransform:null,emissiveFactor:[0,0,0],metallicFactor:1,roughnessFactor:1,colorMixMode:"multiply",...e}}({color:[t.color[0],t.color[1],t.color[2]],opacity:t.color[3],alphaMode:t.alphaMode,alphaCutoff:t.alphaCutoff,doubleSided:t.doubleSided,colorMixMode:t.ESRI_externalColorMixMode,textureColor:t.colorTexture?n(t.colorTexture):void 0,textureNormal:t.normalTexture?n(t.normalTexture):void 0,textureOcclusion:t.occlusionTexture?n(t.occlusionTexture):void 0,textureEmissive:t.emissiveTexture?n(t.emissiveTexture):void 0,textureMetallicRoughness:t.metallicRoughnessTexture?n(t.metallicRoughnessTexture):void 0,emissiveFactor:[t.emissiveFactor[0],t.emissiveFactor[1],t.emissiveFactor[2]],colorTextureTransform:t.colorTextureTransform,normalTextureTransform:t.normalTextureTransform,occlusionTextureTransform:t.occlusionTextureTransform,emissiveTextureTransform:t.emissiveTextureTransform,metallicRoughnessTextureTransform:t.metallicRoughnessTextureTransform,metallicFactor:t.metallicFactor,roughnessFactor:t.roughnessFactor});e.materials.set(o,r)}return o}const j=[i.cw.LINEAR_MIPMAP_LINEAR,i.cw.LINEAR_MIPMAP_NEAREST]},47026:(e,t,r)=>{var n,o,s,a,i,u,l,c,f,d,p;r.d(t,{CE:()=>l,Gv:()=>o,JJ:()=>f,Rw:()=>a,Ti:()=>p,V_:()=>u,Vr:()=>n,hU:()=>i}),function(e){e[e.None=0]="None",e[e.Front=1]="Front",e[e.Back=2]="Back",e[e.COUNT=3]="COUNT"}(n||(n={})),function(e){e[e.Less=0]="Less",e[e.Lequal=1]="Lequal",e[e.COUNT=2]="COUNT"}(o||(o={})),function(e){e[e.BACKGROUND=0]="BACKGROUND",e[e.UPDATE=1]="UPDATE"}(s||(s={})),function(e){e[e.NOT_LOADED=0]="NOT_LOADED",e[e.LOADING=1]="LOADING",e[e.LOADED=2]="LOADED"}(a||(a={})),function(e){e[e.IntegratedMeshMaskExcluded=1]="IntegratedMeshMaskExcluded",e[e.OutlineVisualElementMask=2]="OutlineVisualElementMask"}(i||(i={})),function(e){e[e.Highlight=0]="Highlight",e[e.MaskOccludee=1]="MaskOccludee",e[e.COUNT=2]="COUNT"}(u||(u={})),function(e){e[e.STRETCH=1]="STRETCH",e[e.PAD=2]="PAD"}(l||(l={})),function(e){e[e.CHANGED=0]="CHANGED",e[e.UNCHANGED=1]="UNCHANGED"}(c||(c={})),function(e){e[e.Blend=0]="Blend",e[e.Opaque=1]="Opaque",e[e.Mask=2]="Mask",e[e.MaskBlend=3]="MaskBlend",e[e.COUNT=4]="COUNT"}(f||(f={})),function(e){e[e.OFF=0]="OFF",e[e.ON=1]="ON"}(d||(d={})),function(e){e.DDS_ENCODING="image/vnd-ms.dds",e.KTX2_ENCODING="image/ktx2",e.BASIS_ENCODING="image/x.basis"}(p||(p={}))},57758:(e,t,r)=>{r.d(t,{K:()=>n});const n=2.1}}]);