@arcgis/core 4.34.0-next.45 → 4.34.0-next.47

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 (215) hide show
  1. package/AttributeBinsGraphic.js +1 -1
  2. package/PopupTemplate.js +1 -1
  3. package/arcade/featureSetUtils.js +1 -1
  4. package/arcade/functions/featuresetbase.js +1 -1
  5. package/arcade/geometry/wkt.js +1 -1
  6. package/assets/esri/core/workers/RemoteClient.js +1 -1
  7. package/assets/esri/core/workers/chunks/04cbd3aa9965b2eb71ea.js +1 -0
  8. package/assets/esri/core/workers/chunks/{33f3e3d05429f845c139.js → 0b67b16d7e6c030bcfc7.js} +1 -1
  9. package/assets/esri/core/workers/chunks/{787d281b2fe1edf6cf30.js → 2bb61f80473b495163e3.js} +1 -1
  10. package/assets/esri/core/workers/chunks/2cda605c302176905e84.js +1 -0
  11. package/assets/esri/core/workers/chunks/{78de16f65ea297452a65.js → 31c6e951b99315e8e68a.js} +1 -1
  12. package/assets/esri/core/workers/chunks/3610357c8fa9bec9e0dc.js +1 -0
  13. package/assets/esri/core/workers/chunks/{d547b27ac750953a998f.js → 46a470bea2a3601182dc.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{17df0f766ee1e323d3fa.js → 46ab551bd19e52e73649.js} +1 -1
  15. package/assets/esri/core/workers/chunks/47f2e905ef42e36897aa.js +1 -0
  16. package/assets/esri/core/workers/chunks/4f5e72993a4f5180d703.js +1 -0
  17. package/assets/esri/core/workers/chunks/50d526a16bc86a481055.js +1 -0
  18. package/assets/esri/core/workers/chunks/516b30778cd54d29e362.js +1 -0
  19. package/assets/esri/core/workers/chunks/54b1a960bb8c3fe05976.js +1 -0
  20. package/assets/esri/core/workers/chunks/5713f96bade5ebb54c81.js +1 -0
  21. package/assets/esri/core/workers/chunks/{d70e1b8b8bee88a7a5b8.js → 574ea32d6c257e0d2079.js} +1 -1
  22. package/assets/esri/core/workers/chunks/{dd0f1e06b7df953ea223.js → 576792b5e1e13084adba.js} +1 -1
  23. package/assets/esri/core/workers/chunks/5d331f7628514a572f82.js +1 -0
  24. package/assets/esri/core/workers/chunks/5f7dc9657803ae3140a6.js +1 -0
  25. package/assets/esri/core/workers/chunks/65e1f5b20a585e04655a.js +1 -0
  26. package/assets/esri/core/workers/chunks/66db5f77e09d25e33951.js +1 -0
  27. package/assets/esri/core/workers/chunks/{863e87ac982d7727b435.js → 69e37365c17e7cc4168f.js} +1 -1
  28. package/assets/esri/core/workers/chunks/6fe738748ce837811ff4.js +1 -0
  29. package/assets/esri/core/workers/chunks/719450ccd455f503d81a.js +1 -0
  30. package/assets/esri/core/workers/chunks/{14d3039f92b0d96944f0.js → 71acded1b3c0057917a1.js} +1 -1
  31. package/assets/esri/core/workers/chunks/790e97ddbe318bc75415.js +1 -0
  32. package/assets/esri/core/workers/chunks/7df8c78e36b04ad657d2.js +1 -0
  33. package/assets/esri/core/workers/chunks/838c7fd37b2e78b1d582.js +1 -0
  34. package/assets/esri/core/workers/chunks/8736b78256037b145f8b.js +1 -0
  35. package/assets/esri/core/workers/chunks/8c6119dde0eead8d90d9.js +1 -0
  36. package/assets/esri/core/workers/chunks/{4f3c187a7cb2b1444281.js → 8c81156b1605a16acc29.js} +1 -1
  37. package/assets/esri/core/workers/chunks/8f70650aba8e55eb7a96.js +1 -0
  38. package/assets/esri/core/workers/chunks/{48514235c32917e43a3f.js → 90a97ffba604c1c35532.js} +23 -12
  39. package/assets/esri/core/workers/chunks/{44116cf0bd4d6a127c96.js → 99b9392946d776a62997.js} +1 -1
  40. package/assets/esri/core/workers/chunks/9affcf990ea810fa426b.js +1 -0
  41. package/assets/esri/core/workers/chunks/9b7fee0adffeee8d45ae.js +1 -0
  42. package/assets/esri/core/workers/chunks/9cbec2ffa445a72d4c33.js +1 -0
  43. package/assets/esri/core/workers/chunks/9f178cf73c63caaea190.js +1 -0
  44. package/assets/esri/core/workers/chunks/a50026e567b1edff87c6.js +1 -0
  45. package/assets/esri/core/workers/chunks/a6493607b98783bf1ef2.js +1 -0
  46. package/assets/esri/core/workers/chunks/a69258f34a5eb5a1954f.js +1 -0
  47. package/assets/esri/core/workers/chunks/a7ff44157b8cf19de37e.js +1 -0
  48. package/assets/esri/core/workers/chunks/{8bab4c59c9b644224ecb.js → b87ed14fde381f79bc9f.js} +1 -1
  49. package/assets/esri/core/workers/chunks/bd1c2afaf491d1c79a9e.js +1 -0
  50. package/assets/esri/core/workers/chunks/{f34739daceab54a280ad.js → beb77cdae0b1b6ad73da.js} +1 -1
  51. package/assets/esri/core/workers/chunks/{a638f1688ac9525a52a7.js → c2f184e9f579152aa29a.js} +1 -1
  52. package/assets/esri/core/workers/chunks/c483d2149d9d0099bfdb.js +1 -0
  53. package/assets/esri/core/workers/chunks/cf6330f721c6910d25ff.js +1 -0
  54. package/assets/esri/core/workers/chunks/cfa8b17cf1349f6ed355.js +33 -0
  55. package/assets/esri/core/workers/chunks/{0faec78b2dd6990a5da0.js → d09ded9fb621491e2466.js} +1 -1
  56. package/assets/esri/core/workers/chunks/d1842745a7699879a1e1.js +1 -0
  57. package/assets/esri/core/workers/chunks/d62d41091f7ac5f77f16.js +1 -0
  58. package/assets/esri/core/workers/chunks/d8d17e3ecccec7e99f0b.js +1 -0
  59. package/assets/esri/core/workers/chunks/{01ae7d36bda6b6186786.js → eb61b47df99a54a364c8.js} +1 -1
  60. package/assets/esri/core/workers/chunks/ef02e33ea53b46b566cb.js +1 -0
  61. package/assets/esri/core/workers/chunks/{b4304673696fc0774bff.js → f1de768b0a6d345f7e39.js} +1 -1
  62. package/assets/esri/core/workers/chunks/fc6408208c850eec4019.js +1 -0
  63. package/assets/esri/core/workers/chunks/ff79a8df1b1941ae350d.js +1 -0
  64. package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
  65. package/chunks/BloomBlur.glsl.js +8 -8
  66. package/chunks/BloomComposition.glsl.js +15 -21
  67. package/chunks/NativeLine.glsl.js +5 -14
  68. package/chunks/bundle.js +1 -1
  69. package/chunks/languageUtils.js +1 -1
  70. package/chunks/persistableUrlUtils.js +1 -1
  71. package/colorUtils.js +1 -1
  72. package/config.js +1 -1
  73. package/core/BidiEngine.js +1 -1
  74. package/core/accessorSupport/get.js +1 -1
  75. package/core/accessorSupport/read.js +1 -1
  76. package/core/accessorSupport/tracking.js +1 -1
  77. package/core/screenUtils.js +1 -1
  78. package/core/sql/DateOnly.js +1 -1
  79. package/core/urlUtils.js +1 -1
  80. package/core/uuid.js +1 -1
  81. package/editing/templateUtils.js +1 -1
  82. package/identity/IdentityManagerBase.js +1 -1
  83. package/kernel.js +1 -1
  84. package/layers/VoxelWasmPerSceneView.js +1 -1
  85. package/layers/graphics/sources/ParquetSource.js +1 -1
  86. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  87. package/layers/knowledgeGraph/KnowledgeGraphLayerDataManager.js +1 -1
  88. package/layers/support/TitleCreator.js +1 -1
  89. package/layers/support/parquetUtils.js +1 -1
  90. package/layers/support/rasterDatasets/WCSRaster.js +1 -1
  91. package/libs/maquette-advanced-projector/utils.js +1 -1
  92. package/package.json +1 -1
  93. package/rest/featureService/FeatureService.js +1 -1
  94. package/rest/generateRenderer.js +1 -1
  95. package/rest/networks/support/Subcircuit.js +5 -0
  96. package/rest/networks/support/TraceResult.js +1 -1
  97. package/rest/sharedTemplates/querySharedTemplates.js +1 -1
  98. package/smartMapping/statistics/support/utils.js +1 -1
  99. package/support/revision.js +1 -1
  100. package/symbols/cim/cimAnalyzer.js +1 -1
  101. package/views/2d/engine/webgl/shaderGraph/GraphShaderModule.js +1 -1
  102. package/views/2d/engine/webgl/shaderGraph/graph/ShaderGraphContext.js +1 -1
  103. package/views/2d/engine/webgl/shaderGraph/graph/glsl.js +1 -1
  104. package/views/2d/engine/webgl/shaderGraph/techniques/TestTechnique.js +1 -1
  105. package/views/2d/engine/webgl/shaderGraph/techniques/fill/OutlineFillTechnique.js +1 -1
  106. package/views/2d/engine/webgl/shaderGraph/techniques/fill/PatternFillTechnique.js +1 -1
  107. package/views/2d/engine/webgl/shaderGraph/techniques/fill/PatternOutlineFillTechnique.js +1 -1
  108. package/views/2d/engine/webgl/shaderGraph/techniques/line/TexturedLineTechnique.js +1 -1
  109. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriterRegistry.js +1 -1
  110. package/views/2d/engine/webgl/shaderGraph/techniques/overlay/OverlayTechnique.js +1 -1
  111. package/views/2d/engine/webgl/shaderGraph/techniques/pieChart/PieChartShader.js +1 -1
  112. package/views/2d/engine/webgl/shaderGraph/techniques/pieChart/PieChartTechnique.js +1 -1
  113. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/ComplexOutlineFillShader.js +1 -1
  114. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextTechnique.js +1 -1
  115. package/views/2d/engine/webgl/shaderGraph/techniques/videoScreenRenderer/VideoScreenTechnique.js +1 -1
  116. package/views/2d/layers/features/sources/strategies/ParquetSnapshotLoadStrategy.js +1 -1
  117. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  118. package/views/2d/layers/features/support/FeatureSetReaderPBF.js +1 -1
  119. package/views/2d/layers/features/support/FeatureSetReaderParquet.js +1 -1
  120. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  121. package/views/3d/layers/graphics/pipeline/rendering/DirectRenderer.js +1 -1
  122. package/views/3d/layers/i3s/I3SNodeLoader.js +1 -1
  123. package/views/3d/terrain/OverlayRenderer.js +1 -1
  124. package/views/3d/terrain/TerrainRenderer.js +1 -1
  125. package/views/3d/terrain/TerrainSurface.js +1 -1
  126. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  127. package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
  128. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  129. package/views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js +1 -1
  130. package/views/3d/webgl-engine/core/shaderLibrary/output/Emissions.glsl.js +5 -5
  131. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +1 -1
  132. package/views/3d/webgl-engine/effects/RenderPluginManager.js +1 -1
  133. package/views/3d/webgl-engine/effects/bloom/BloomPresets.glsl.js +1 -1
  134. package/views/3d/webgl-engine/effects/geometry/RenderOccludedRenderNode.js +1 -1
  135. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  136. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  137. package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
  138. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  139. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  140. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  141. package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
  142. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  143. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  144. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  145. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  146. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  147. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  148. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  149. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  150. package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
  151. package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
  152. package/views/3d/webgl-engine/materials/renderers/VaoRenderer.js +1 -1
  153. package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
  154. package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
  155. package/views/3d/webgl-engine/shaders/NativeLineTechnique.js +1 -1
  156. package/views/3d/webgl-engine/shaders/NativeLineTechniqueConfiguration.js +1 -1
  157. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  158. package/views/draw/DrawOperation.js +1 -1
  159. package/views/draw/{DrawManipulator.js → LegacyDrawManipulator.js} +1 -1
  160. package/views/draw/{DrawTool.js → LegacyDrawTool.js} +1 -1
  161. package/views/draw/PointDrawAction.js +1 -1
  162. package/views/draw/PolygonDrawAction.js +1 -1
  163. package/views/draw/PolylineDrawAction.js +1 -1
  164. package/views/draw/SegmentDrawAction.js +1 -1
  165. package/views/draw/support/Box.js +1 -1
  166. package/views/draw/support/Reshape.js +1 -1
  167. package/webscene/spec-certification/spec.js +1 -1
  168. package/widgets/Feature/support/featureUtils.js +1 -1
  169. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  170. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  171. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  172. package/widgets/OrientedImageryViewer/components/VideoEnhancementTools.js +5 -0
  173. package/widgets/OrientedImageryViewer/symbols.js +1 -1
  174. package/widgets/OrientedImageryViewer.js +1 -1
  175. package/widgets/Track/TrackViewModel.js +1 -1
  176. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
  177. package/assets/esri/core/workers/chunks/0494e1212dd94d927287.js +0 -1
  178. package/assets/esri/core/workers/chunks/092cb42b88ecfb9c4a07.js +0 -1
  179. package/assets/esri/core/workers/chunks/129144cbdb3fcbb87baf.js +0 -1
  180. package/assets/esri/core/workers/chunks/2370ff6c3006691ac688.js +0 -1
  181. package/assets/esri/core/workers/chunks/2c816d3a737e39e6eb84.js +0 -1
  182. package/assets/esri/core/workers/chunks/2f54776ff86f397adc55.js +0 -1
  183. package/assets/esri/core/workers/chunks/349da65a8793f7873366.js +0 -22
  184. package/assets/esri/core/workers/chunks/3af4a410ff0bca7ba2e3.js +0 -1
  185. package/assets/esri/core/workers/chunks/4970d439d9648e97fd5a.js +0 -1
  186. package/assets/esri/core/workers/chunks/73140c5c0beda7ea3703.js +0 -1
  187. package/assets/esri/core/workers/chunks/7c7338af011b8f0d7218.js +0 -1
  188. package/assets/esri/core/workers/chunks/838998bfda90f099c6e9.js +0 -1
  189. package/assets/esri/core/workers/chunks/84f3e1ce25c36e46fd2a.js +0 -1
  190. package/assets/esri/core/workers/chunks/8e36693e5213c20158d7.js +0 -1
  191. package/assets/esri/core/workers/chunks/8f3ce10eacb5bc14a641.js +0 -1
  192. package/assets/esri/core/workers/chunks/8fae35af98c29bef8500.js +0 -1
  193. package/assets/esri/core/workers/chunks/91be247f868ce6596c9e.js +0 -1
  194. package/assets/esri/core/workers/chunks/a2a13dd95238bb144479.js +0 -1
  195. package/assets/esri/core/workers/chunks/b45772b72f2b8f4fd53f.js +0 -1
  196. package/assets/esri/core/workers/chunks/b5f6a0607b620b027cdd.js +0 -1
  197. package/assets/esri/core/workers/chunks/c645009f3d2576494bfc.js +0 -1
  198. package/assets/esri/core/workers/chunks/c6e3d4c6bb02d58d5cfe.js +0 -1
  199. package/assets/esri/core/workers/chunks/cd6398a2951922e13b86.js +0 -1
  200. package/assets/esri/core/workers/chunks/ceb63ca9ad473c3f1820.js +0 -1
  201. package/assets/esri/core/workers/chunks/d392fbbcfac2a1b54bd6.js +0 -1
  202. package/assets/esri/core/workers/chunks/da396fdbd6f213042aa7.js +0 -1
  203. package/assets/esri/core/workers/chunks/dd79d3aa6e1a8aee6881.js +0 -1
  204. package/assets/esri/core/workers/chunks/e1272db232194cbe102c.js +0 -1
  205. package/assets/esri/core/workers/chunks/e5aeb34d918dee539694.js +0 -1
  206. package/assets/esri/core/workers/chunks/e65fc26f4384a328a753.js +0 -1
  207. package/assets/esri/core/workers/chunks/e7806a57d29bca385f1d.js +0 -1
  208. package/assets/esri/core/workers/chunks/e799433770e4303fcd9c.js +0 -1
  209. package/assets/esri/core/workers/chunks/ea262087938335fed19f.js +0 -1
  210. package/assets/esri/core/workers/chunks/ec9fd49e0252797f7f6a.js +0 -1
  211. package/assets/esri/core/workers/chunks/f1b02c4bd5fde235212b.js +0 -1
  212. package/assets/esri/core/workers/chunks/f65b2d3a91a0c726fee4.js +0 -1
  213. package/assets/esri/core/workers/chunks/f67997250569069ee2ef.js +0 -1
  214. package/assets/esri/core/workers/chunks/fc3a6f2f99629e57dbbd.js +0 -1
  215. package/assets/esri/core/workers/chunks/ff9eef1940eaa3406223.js +0 -1
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[998],{1843:(e,t,r)=>{r.d(t,{BP:()=>d,l5:()=>h});var i=r(20498),n=r(13030),o=r(90239),s=r(4431),a=r(620),l=r(85079);class c{constructor(e,t){this.layout=e,this.buffer="number"==typeof t?new ArrayBuffer(t*e.stride):t;for(const t of e.fields.keys()){const r=e.fields.get(t);this[t]=new r.constructor(this.buffer,r.offset,this.stride)}}get stride(){return this.layout.stride}get count(){return this.buffer.byteLength/this.stride}get byteLength(){return this.buffer.byteLength}getField(e,t){const r=this[e];return r&&r.elementCount===t.ElementCount&&r.elementType===t.ElementType?r:null}slice(e,t){return new c(this.layout,this.buffer.slice(e*this.stride,t*this.stride))}copyFrom(e,t=0,r=0,i=e.count){const n=this.stride;if(n%4==0){const o=new Uint32Array(e.buffer,t*n,i*n/4);new Uint32Array(this.buffer,r*n,i*n/4).set(o)}else{const o=new Uint8Array(e.buffer,t*n,i*n);new Uint8Array(this.buffer,r*n,i*n).set(o)}return this}get cachedMemory(){return this.byteLength}dispose(){}}class u{constructor(e){this._stride=0,this._fields=new Map,e&&(this._stride=e.stride,e.fields.forEach(e=>this._fields.set(e[0],{...e[1],constructor:f(e[1].constructor)})))}freeze(){return this}get locations(){return(0,l.Xk)((0,s.U)(this))}vec2f16(e,t){return this._appendField(e,i.SX?n.ZD:n.gH,t),this}vec2f(e,t){return this._appendField(e,n.gH,t),this}vec2f64(e,t){return this._appendField(e,n.si,t),this}vec3f16(e,t){return this._appendField(e,i.SX?n.EC:n.xs,t),this}vec3f(e,t){return this._appendField(e,n.xs,t),this}vec3f64(e,t){return this._appendField(e,n.Xm,t),this}vec4f16(e,t){return this._appendField(e,i.SX?n.jz:n.Eq,t),this}vec4f(e,t){return this._appendField(e,n.Eq,t),this}vec4f64(e,t){return this._appendField(e,n.Aj,t),this}mat3f(e,t){return this._appendField(e,n.jZ,t),this}mat3f64(e,t){return this._appendField(e,n.j0,t),this}mat4f(e,t){return this._appendField(e,n.Sx,t),this}mat4f64(e,t){return this._appendField(e,n.E$,t),this}vec4u8(e,t){return this._appendField(e,n.XP,t),this}f16(e,t){return this._appendField(e,i.SX?n.XW:n.Y$,t),this}f32(e,t){return this._appendField(e,n.Y$,t),this}f64(e,t){return this._appendField(e,n.qB,t),this}u8(e,t){return this._appendField(e,n.SL,t),this}u16(e,t){return this._appendField(e,n.h,t),this}i8(e,t){return this._appendField(e,n.bf,t),this}vec2i8(e,t){return this._appendField(e,n.D6,t),this}vec2i16(e,t){return this._appendField(e,n.mJ,t),this}vec2u8(e,t){return this._appendField(e,n.LC,t),this}vec2u16(e,t){return this._appendField(e,n.Yi,t),this}vec4u16(e,t){return this._appendField(e,n.Uz,t),this}u32(e,t){return this._appendField(e,n.P,t),this}_appendField(e,t,r){this._fields.has(e)&&(0,a.vA)(!1,`${e} already added to vertex buffer layout`);const i=t.ElementCount*(0,o.GJ)(t.ElementType),n=this._stride;this._fields.set(e,{constructor:t,size:i,offset:n,optional:r}),this._alignFields()}_alignFields(){let e=0,t=1;this._fields.forEach(r=>{const i=(0,o.GJ)(r.constructor.ElementType);e=Math.floor((e+i-1)/i)*i,r.offset=e,e+=r.size,t=Math.max(t,i)}),e=Math.floor((e+t-1)/t)*t,this._stride=e}createBuffer(e){return new c(this,e)}createView(e){return new c(this,e)}clone(){const e=new u;return e._stride=this._stride,e._fields=new Map,this._fields.forEach((t,r)=>e._fields.set(r,t)),e.BufferType=this.BufferType,e}get stride(){return this._stride}get fields(){return this._fields}}function d(){return new u}class h{constructor(e){this.fields=new Array,e.fields.forEach((e,t)=>{const r={...e,constructor:p(e.constructor)};this.fields.push([t,r])}),this.stride=e.stride}}const m=[n.Y$,n.gH,n.xs,n.Eq,n.jZ,n.Sx,n.qB,n.si,n.Xm,n.Aj,n.j0,n.E$,n.SL,n.LC,n.eI,n.XP,n.h,n.Yi,n.nS,n.Uz,n.P,n.An,n.H$,n.ml,n.bf,n.D6,n.m8,n.TX,n.Qt,n.mJ,n.Vp,n.E7,n.My,n.UL,n.zD,n.Y4];function p(e){return`${e.ElementType}_${e.ElementCount}`}function f(e){return g.get(e)}const g=new Map;m.forEach(e=>g.set(p(e),e))},2495:(e,t,r)=>{r.d(t,{$U:()=>Ee,fs:()=>Ie,ty:()=>Re});var i=r(38954),n=r(51850),o=r(49255),s=r(25634),a=r(11725),l=r(33524),c=r(70328),u=r(620);class d{constructor(e=!1,t=!0){this.isVerticalRay=e,this.normalRequired=t}}const h=(0,c.vt)();function m(e,t,r,n,o,s){if(!e.visible)return;const a=(0,i.a)(S,n,r),l=(e,t,r)=>{s(e,r,t)},c=new d(!1,t.options.normalRequired);if(e.boundingInfo){(0,u.vA)(0===e.type);const i=t.tolerance;f(e.boundingInfo,r,a,i,o,c,l)}else{const t=e.attributes.get("position"),n=t.indices;!function(e,t,r,n,o,s,a,l,c,u){const d=t,h=E,m=Math.abs(d[0]),p=Math.abs(d[1]),f=Math.abs(d[2]),g=m>=p?m>=f?0:2:p>=f?1:2,b=g,y=d[b]<0?2:1,M=(g+y)%3,T=(g+(3-y))%3,C=d[M]/d[b],S=d[T]/d[b],A=1/d[b],I=v,R=_,F=x,{normalRequired:O}=c;for(let t=r;t<n;++t){const r=3*t,n=a*o[r];(0,i.i)(h[0],s[n+0],s[n+1],s[n+2]);const c=a*o[r+1];(0,i.i)(h[1],s[c+0],s[c+1],s[c+2]);const d=a*o[r+2];(0,i.i)(h[2],s[d+0],s[d+1],s[d+2]),l&&((0,i.c)(h[0],l.applyToVertex(h[0][0],h[0][1],h[0][2],t)),(0,i.c)(h[1],l.applyToVertex(h[1][0],h[1][1],h[1][2],t)),(0,i.c)(h[2],l.applyToVertex(h[2][0],h[2][1],h[2][2],t))),(0,i.a)(I,h[0],e),(0,i.a)(R,h[1],e),(0,i.a)(F,h[2],e);const m=I[M]-C*I[b],p=I[T]-S*I[b],f=R[M]-C*R[b],g=R[T]-S*R[b],v=F[M]-C*F[b],_=F[T]-S*F[b],x=v*g-_*f,y=m*_-p*v,E=f*p-g*m;if((x<0||y<0||E<0)&&(x>0||y>0||E>0))continue;const P=x+y+E;if(0===P)continue;const D=x*(A*I[b])+y*(A*R[b])+E*(A*F[b]);if(D*Math.sign(P)<0)continue;const N=D/P;N>=0&&u(N,t,O?w(h):null)}}(r,a,0,n.length/3,n,t.data,t.stride,o,c,l)}}const p=(0,n.vt)();function f(e,t,r,n,o,s,a){if(null==e)return;const l=function(e,t){return(0,i.i)(t,1/e[0],1/e[1],1/e[2])}(r,p);if((0,c.Ne)(h,e.bbMin),(0,c.vI)(h,e.bbMax),null!=o&&o.applyToAabb(h),function(e,t,r,i){return function(e,t,r,i){const n=(e[0]-i-t[0])*r[0],o=(e[3]+i-t[0])*r[0];let s=Math.min(n,o),a=Math.max(n,o);const l=(e[1]-i-t[1])*r[1],c=(e[4]+i-t[1])*r[1];if(a=Math.min(a,Math.max(l,c)),a<0)return!1;if(s=Math.max(s,Math.min(l,c)),s>a)return!1;const u=(e[2]-i-t[2])*r[2],d=(e[5]+i-t[2])*r[2];return a=Math.min(a,Math.max(u,d)),!(a<0)&&(s=Math.max(s,Math.min(u,d)),!(s>a)&&s<1/0)}(e,t,r,i)}(h,t,l,n)){const{primitiveIndices:i,position:l}=e,c=i?i.length:l.indices.length/3;if(c>T){const i=e.getChildren();if(void 0!==i){for(const e of i)f(e,t,r,n,o,s,a);return}}!function(e,t,r,i,n,o,s,a,l,c,u){const d=e[0],h=e[1],m=e[2],p=t[0],f=t[1],v=t[2],{normalRequired:_}=c;for(let e=0;e<i;++e){const t=a[e],r=3*t,i=s*n[r];let c=o[i],x=o[i+1],w=o[i+2];const y=s*n[r+1];let M=o[y],T=o[y+1],S=o[y+2];const E=s*n[r+2];let A=o[E],I=o[E+1],R=o[E+2];null!=l&&([c,x,w]=l.applyToVertex(c,x,w,e),[M,T,S]=l.applyToVertex(M,T,S,e),[A,I,R]=l.applyToVertex(A,I,R,e));const F=M-c,O=T-x,P=S-w,D=A-c,N=I-x,H=R-w,L=f*H-N*v,z=v*D-H*p,B=p*N-D*f,G=F*L+O*z+P*B;if(Math.abs(G)<=C)continue;const U=d-c,V=h-x,j=m-w,W=U*L+V*z+j*B;if(G>0){if(W<0||W>G)continue}else if(W>0||W<G)continue;const k=V*P-O*j,$=j*F-P*U,q=U*O-F*V,Z=p*k+f*$+v*q;if(G>0){if(Z<0||W+Z>G)continue}else if(Z>0||W+Z<G)continue;const Y=(D*k+N*$+H*q)/G;Y>=0&&u(Y,t,_?b(F,O,P,D,N,H,g):null)}}(t,r,0,c,l.indices,l.data,l.stride,i,o,s,a)}}const g=(0,n.vt)();const v=(0,n.vt)(),_=(0,n.vt)(),x=(0,n.vt)();function b(e,t,r,n,o,s,a){return(0,i.i)(y,e,t,r),(0,i.i)(M,n,o,s),(0,i.h)(a,y,M),(0,i.n)(a,a),a}function w(e){return(0,i.a)(y,e[1],e[0]),(0,i.a)(M,e[2],e[0]),(0,i.h)(g,y,M),(0,i.n)(g,g),g}const y=(0,n.vt)(),M=(0,n.vt)(),T=1e3,C=1e-7,S=(0,n.vt)(),E=[(0,n.vt)(),(0,n.vt)(),(0,n.vt)()];var A=r(16396),I=r(13030),R=r(59907);class F{constructor(e){this.layout=e}elementCount(e){return e.get("position").indices.length}write(e,t,r,i,n,o){return(0,R.vJ)(r,i,this.layout,e,t,n,o)}intersect(e,t,r,n,o,s,a){const l=this.layout.createView(e).getField("position",I.xs);if(null==l)return;const c=(0,i.a)(O,s,o),u=l.count/3,d=n.options.normalRequired;!function(e,t,r,i,n,o,s,a){const l=e[0],c=e[1],u=e[2],d=t[0],h=t[1],m=t[2];for(let e=0;e<i;++e){const t=3*e,r=t+1,i=t+2,p=o*t,f=n[p],v=n[p+1],_=n[p+2],x=o*r,w=o*i,y=n[x]-f,M=n[x+1]-v,T=n[x+2]-_,S=n[w]-f,E=n[w+1]-v,A=n[w+2]-_,I=h*A-E*m,R=m*S-A*d,F=d*E-S*h,O=y*I+M*R+T*F;if(Math.abs(O)<=C)continue;const P=l-f,D=c-v,N=u-_,H=P*I+D*R+N*F;if(O>0){if(H<0||H>O)continue}else if(H>0||H<O)continue;const L=D*T-M*N,z=N*y-T*P,B=P*M-y*D,G=d*L+h*z+m*B;if(O>0){if(G<0||H+G>O)continue}else if(G>0||H+G<O)continue;const U=(S*L+E*z+A*B)/O;U>=0&&a(U,e,s?b(y,M,T,S,E,A,g):null)}}(o,c,0,u,l.typedBuffer,l.typedBufferStride,d,(e,t,r)=>a(e,r,t))}}const O=(0,n.vt)();var P=r(43616),D=r(91829),N=r(4431),H=r(1843),L=r(72824),z=r(97220),B=r(98958),G=r(16943);const U={mask:255},V={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:0}},j={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7681}};var W=r(4576),k=r(44208);r(53966),r(34275),r(94656),r(63907),(0,k.A)("esri-tests-disable-gpu-memory-measurements");var $=r(31635),q=r(65008),Z=r(65529),Y=r(10107),X=r(40608),J=r(77690),K=r(29242),Q=r(58083),ee=r(9093),te=r(32728);class re{constructor(e){this.localTransform=e.localTransform,this.globalTransform=e.globalTransform,this.modelOrigin=e.modelOrigin,this.model=e.instanceModel,this.modelNormal=e.instanceModelNormal,this.modelScaleFactors=e.modelScaleFactors,this.boundingSphere=e.boundingSphere,this.featureAttribute=e.getField("instanceFeatureAttribute",I.Eq),this.color=e.getField("instanceColor",I.XP),this.olidColor=e.getField("instanceOlidColor",I.XP),this.state=e.getField("state",I.SL),this.lodLevel=e.getField("lodLevel",I.SL)}}let ie=class extends q.A{constructor(e,t){super(e),this.events=new Z.bk,this._capacity=0,this._size=0,this._next=0,this._highlightOptionsMap=new Map,this._highlightOptionsMapPrev=new Map,this._layout=function(e){return oe(ne.clone(),e).u8("state").u8("lodLevel")}(t),this._capacity=ue,this._buffer=this._layout.createBuffer(this._capacity),this._view=new re(this._buffer)}get capacity(){return this._capacity}get size(){return this._size}get view(){return this._view}addInstance(){this._size+1>this._capacity&&this._grow();const e=this._findSlot();return this._view.state.set(e,1),this._size++,this.events.emit("instances-changed"),e}removeInstance(e){const t=this._view.state;(0,u.vA)(e>=0&&e<this._capacity&&!!(1&t.get(e)),"invalid instance handle"),this._getStateFlag(e,18)?this._setStateFlags(e,32):this.freeInstance(e),this.events.emit("instances-changed")}freeInstance(e){const t=this._view.state;(0,u.vA)(e>=0&&e<this._capacity&&!!(1&t.get(e)),"invalid instance handle"),t.set(e,0),this._size--}setLocalTransform(e,t,r=!0){this._view.localTransform.setMat(e,t),r&&this.updateModelTransform(e)}getLocalTransform(e,t){this._view.localTransform.getMat(e,t)}setGlobalTransform(e,t,r=!0){this._view.globalTransform.setMat(e,t),r&&this.updateModelTransform(e)}getGlobalTransform(e,t){this._view.globalTransform.getMat(e,t)}updateModelTransform(e){const t=this._view,r=se,n=ae;t.localTransform.getMat(e,le),t.globalTransform.getMat(e,ce);const o=(0,Q.lw)(ce,ce,le);(0,i.i)(r,o[12],o[13],o[14]),t.modelOrigin.setVec(e,r),(0,J.z0)(n,o),t.model.setMat(e,n);const s=(0,te.wp)(se,o);s.sort(),t.modelScaleFactors.set(e,0,s[1]),t.modelScaleFactors.set(e,1,s[2]),(0,J.B8)(n,n),(0,J.mg)(n,n),t.modelNormal.setMat(e,n),this._setStateFlags(e,64),this.events.emit("instance-transform-changed",{index:e})}getModelTransform(e,t){const r=this._view;r.model.getMat(e,ae),r.modelOrigin.getVec(e,se),t[0]=ae[0],t[1]=ae[1],t[2]=ae[2],t[3]=0,t[4]=ae[3],t[5]=ae[4],t[6]=ae[5],t[7]=0,t[8]=ae[6],t[9]=ae[7],t[10]=ae[8],t[11]=0,t[12]=se[0],t[13]=se[1],t[14]=se[2],t[15]=1}applyShaderTransformation(e,t){null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,e,t)}getCombinedModelTransform(e,t){return this.getModelTransform(e,t),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,e,t),t}getCombinedLocalTransform(e,t){this._view.localTransform.getMat(e,t),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,e,t)}getCombinedMaxScaleFactor(e){let t=this._view.modelScaleFactors.get(e,1);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(se,this,e),t*=Math.max(se[0],se[1],se[2])),t}getCombinedMedianScaleFactor(e){let t=this._view.modelScaleFactors.get(e,0);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(se,this,e),t*=function(e,t,r){return Math.max(Math.min(e,t),Math.min(Math.max(e,t),r))}(se[0],se[1],se[2])),t}getModel(e,t){this._view.model.getMat(e,t)}setFeatureAttribute(e,t){this._view.featureAttribute?.setVec(e,t)}getFeatureAttribute(e,t){this._view.featureAttribute?.getVec(e,t)}setColor(e,t){this._view.color?.setVec(e,t)}setObjectAndLayerIdColor(e,t){this._view.olidColor?.setVec(e,t)}setVisible(e,t){t!==this.getVisible(e)&&(this._setStateFlag(e,4,t),this.events.emit("instance-visibility-changed",{index:e}))}getVisible(e){return this._getStateFlag(e,4)}setHighlight(e,t){const{_highlightOptionsMap:r}=this,i=r.get(e);t?t!==i&&(r.set(e,t),this._setStateFlag(e,8,!0),this.events.emit("instance-highlight-changed")):i&&(r.delete(e),this._setStateFlag(e,8,!1),this.events.emit("instance-highlight-changed"))}get highlightOptionsMap(){return this._highlightOptionsMap}getHighlightStateFlag(e){return this._getStateFlag(e,8)}geHighlightOptionsPrev(e){const t=this._highlightOptionsMapPrev.get(e)??null;return this._highlightOptionsMapPrev.delete(e),t}getHighlightName(e){const t=this.highlightOptionsMap.get(e)??null;return t?this._highlightOptionsMapPrev.set(e,t):this._highlightOptionsMapPrev.delete(e),t}getState(e){return this._view.state.get(e)}getLodLevel(e){return this._view.lodLevel.get(e)}countFlags(e){let t=0;for(let r=0;r<this._capacity;++r)this.getState(r)&e&&++t;return t}_setStateFlags(e,t){const r=this._view.state;t=r.get(e)|t,r.set(e,t)}_clearStateFlags(e,t){const r=this._view.state;t=r.get(e)&~t,r.set(e,t)}_setStateFlag(e,t,r){r?this._setStateFlags(e,t):this._clearStateFlags(e,t)}_getStateFlag(e,t){return!!(this._view.state.get(e)&t)}_grow(){this._capacity=Math.max(ue,Math.floor(this._capacity*W.Ji)),this._buffer=this._layout.createBuffer(this._capacity).copyFrom(this._buffer),this._view=new re(this._buffer)}_findSlot(){const e=this._view.state;let t=this._next;for(;1&e.get(t);)t=t+1===this._capacity?0:t+1;return this._next=t+1===this._capacity?0:t+1,t}};(0,$.Cg)([(0,Y.MZ)({constructOnly:!0})],ie.prototype,"shaderTransformation",void 0),(0,$.Cg)([(0,Y.MZ)()],ie.prototype,"_size",void 0),(0,$.Cg)([(0,Y.MZ)({readOnly:!0})],ie.prototype,"size",null),ie=(0,$.Cg)([(0,X.$)("esri.views.3d.webgl-engine.lib.lodRendering.InstanceData")],ie);const ne=(0,H.BP)().mat4f64("localTransform").mat4f64("globalTransform").vec4f64("boundingSphere").vec3f64("modelOrigin").mat3f("instanceModel").mat3f("instanceModelNormal").vec2f("modelScaleFactors");function oe(e,t){return t.instancedFeatureAttribute&&e.vec4f("instanceFeatureAttribute"),t.instancedColor&&e.vec4u8("instanceColor"),(0,G.E)()&&e.vec4u8("instanceOlidColor"),e}const se=(0,n.vt)(),ae=(0,K.vt)(),le=(0,ee.vt)(),ce=(0,ee.vt)(),ue=64,de=(0,H.BP)().vec3f("instanceModelOriginHi").vec3f("instanceModelOriginLo").mat3f("instanceModel").mat3f("instanceModelNormal");var he=r(74810),me=r(28491),pe=r(90644),fe=r(85079),ge=r(49788);class ve extends L.Zo{constructor(){super(...arguments),this.isSchematic=!1,this.usePBR=!1,this.mrrFactors=he.mb,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.doubleSided=!1,this.doubleSidedType="normal",this.cullFace=2,this.instanced=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.instanceColorEncodesAlphaIgnore=!1,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=n.uY,this.instancedDoublePrecision=!1,this.normalType=0,this.receiveShadows=!0,this.receiveAmbientOcclusion=!0,this.castShadows=!0,this.ambient=(0,n.CN)(.2,.2,.2),this.diffuse=(0,n.CN)(.8,.8,.8),this.externalColor=(0,D.fA)(1,1,1,1),this.colorMixMode="multiply",this.opacity=1,this.layerOpacity=1,this.origin=(0,n.vt)(),this.hasSlicePlane=!1,this.offsetTransparentBackfaces=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.modelTransformation=null,this.drivenOpacity=!1,this.writeDepth=!0,this.customDepthTest=0,this.textureAlphaMode=0,this.textureAlphaCutoff=ge.Q,this.textureAlphaPremultiplied=!1,this.renderOccluded=1,this.isDecoration=!1}get hasVVSize(){return!!this.vvSize}get hasVVColor(){return!!this.vvColor}get hasVVOpacity(){return!!this.vvOpacity}}L.gy;class _e extends B.w{constructor(e,t,i=new z.$(me.D,()=>r.e(5141).then(r.bind(r,5141)))){const n=[(0,N.U)(we(t))];t.instanced&&t.instancedDoublePrecision&&n.push((0,N.U)(function(e){return oe(de.clone(),e)}(t))),super(e,t,i,(0,fe._u)(n))}_makePipeline(e,t){const{oitPass:r,output:i,transparent:n,cullFace:s,customDepthTest:a,hasOccludees:c}=e;return(0,pe.Ey)({blending:(0,o.RN)(i)&&n?(0,l.Yf)(r):null,culling:be(e)?(0,pe.Xt)(s):null,depthTest:{func:(0,l.K_)(r,xe(a))},depthWrite:(0,l.z5)(e),drawBuffers:(0,B.L)(i,(0,l.m6)(r,i)),colorWrite:pe.kn,stencilWrite:c?U:null,stencilTest:c?t?j:V:null,polygonOffset:(0,l.mE)(e)})}initializePipeline(e){return this._occludeePipelineState=this._makePipeline(e,!0),this._makePipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}}function xe(e){return 1===e?515:513}function be(e){return 0!==e.cullFace||!e.hasSlicePlane&&!e.transparent&&!e.doubleSidedMode}function we(e){const t=(0,H.BP)().vec3f("position");return 1===e.normalType?t.vec2i16("normalCompressed",{glNormalized:!0}):t.vec3f("normal"),e.hasVertexTangents&&t.vec4f("tangent"),e.hasTextures&&t.vec2f16("uv0"),e.hasVertexColors&&t.vec4u8("color"),e.hasSymbolColors&&t.vec4u8("symbolColor"),!e.instanced&&(0,G.E)()&&t.vec4u8("olidColor"),t}var ye=r(51976),Me=r(35256);class Te extends Me.E{constructor(e){super(),this.spherical=e,this.alphaDiscardMode=1,this.doubleSidedMode=0,this.pbrMode=0,this.cullFace=0,this.normalType=0,this.customDepthTest=0,this.emissionSource=0,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.hasVerticalOffset=!1,this.hasColorTexture=!1,this.hasMetallicRoughnessTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.hasScreenSizePerspective=!1,this.hasVertexTangents=!1,this.hasOccludees=!1,this.instanced=!1,this.instancedDoublePrecision=!1,this.hasModelTransformation=!1,this.offsetBackfaces=!1,this.hasVVSize=!1,this.hasVVColor=!1,this.receiveShadows=!1,this.receiveAmbientOcclusion=!1,this.textureAlphaPremultiplied=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.writeDepth=!0,this.transparent=!1,this.enableOffset=!0,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.snowCover=!1,this.hasBloom=!1,this.hasColorTextureTransform=!1,this.hasEmissionTextureTransform=!1,this.hasNormalTextureTransform=!1,this.hasOcclusionTextureTransform=!1,this.hasMetallicRoughnessTextureTransform=!1,this.occlusionPass=!1,this.useCustomDTRExponentForWater=!1,this.useFillLights=!0,this.draped=!1}get textureCoordinateType(){return this.hasTextures?1:0}get hasTextures(){return this.hasColorTexture||this.hasNormalTexture||this.hasMetallicRoughnessTexture||3===this.emissionSource||this.hasOcclusionTexture}get hasVVInstancing(){return this.instanced}get discardInvisibleFragments(){return this.transparent}}(0,$.Cg)([(0,ye.W)({count:4})],Te.prototype,"alphaDiscardMode",void 0),(0,$.Cg)([(0,ye.W)({count:3})],Te.prototype,"doubleSidedMode",void 0),(0,$.Cg)([(0,ye.W)({count:7})],Te.prototype,"pbrMode",void 0),(0,$.Cg)([(0,ye.W)({count:3})],Te.prototype,"cullFace",void 0),(0,$.Cg)([(0,ye.W)({count:3})],Te.prototype,"normalType",void 0),(0,$.Cg)([(0,ye.W)({count:2})],Te.prototype,"customDepthTest",void 0),(0,$.Cg)([(0,ye.W)({count:8})],Te.prototype,"emissionSource",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVertexColors",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasSymbolColors",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVerticalOffset",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasColorTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasMetallicRoughnessTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasOcclusionTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasNormalTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasScreenSizePerspective",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVertexTangents",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasOccludees",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instanced",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instancedDoublePrecision",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasModelTransformation",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"offsetBackfaces",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVVSize",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVVColor",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"receiveShadows",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"receiveAmbientOcclusion",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"textureAlphaPremultiplied",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instancedFeatureAttribute",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instancedColor",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"writeDepth",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"transparent",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"enableOffset",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"terrainDepthTest",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"cullAboveTerrain",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"snowCover",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasBloom",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasColorTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasEmissionTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasNormalTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasOcclusionTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasMetallicRoughnessTextureTransform",void 0);var Ce=r(57323);class Se extends _e{constructor(e,t){super(e,t,new z.$(Ce.R,()=>r.e(9933).then(r.bind(r,39933))))}}class Ee extends a.i{constructor(e,t){super(e,Ie),this.materialType="default",this.supportsEdges=!0,this.intersectDraped=void 0,this.produces=new Map([[2,e=>((0,o.iq)(e)||(0,o.PJ)(e))&&!this.transparent],[4,e=>((0,o.iq)(e)||(0,o.PJ)(e))&&this.transparent&&this.parameters.writeDepth],[7,e=>((0,o.XY)(e)||(0,o.PJ)(e))&&this.transparent&&!this.parameters.writeDepth]]),this._layout=we(this.parameters),this._configuration=new Te(t.spherical)}isVisibleForOutput(e){return 4!==e&&6!==e&&5!==e||this.parameters.castShadows}get visible(){const{layerOpacity:e,colorMixMode:t,opacity:r,externalColor:i}=this.parameters;return e*("replace"===t?1:r)*("ignore"===t||isNaN(i[3])?1:i[3])>=ge.Q}get _hasEmissiveBase(){return!!this.parameters.emissiveTextureId||!(0,i.q)(this.parameters.emissiveBaseColor,n.uY)}get hasEmissions(){return this.parameters.emissiveStrength>0&&(0===this.parameters.emissiveSource&&this._hasEmissiveBase||1===this.parameters.emissiveSource)}getConfiguration(e,t){const{parameters:r,_configuration:i}=this,{treeRendering:n,doubleSided:s,doubleSidedType:a}=r;return super.getConfiguration(e,t,this._configuration),i.hasNormalTexture=r.hasNormalTexture,i.hasColorTexture=r.hasColorTexture,i.hasMetallicRoughnessTexture=r.hasMetallicRoughnessTexture,i.hasOcclusionTexture=r.hasOcclusionTexture,i.hasVertexTangents=!n&&r.hasVertexTangents,i.instanced=r.instanced,i.instancedDoublePrecision=r.instancedDoublePrecision,i.hasVVColor=!!r.vvColor,i.hasVVSize=!!r.vvSize,i.hasVerticalOffset=null!=r.verticalOffset,i.hasScreenSizePerspective=null!=r.screenSizePerspective,i.hasSlicePlane=r.hasSlicePlane,i.alphaDiscardMode=r.textureAlphaMode,i.normalType=n?0:r.normalType,i.transparent=this.transparent,i.writeDepth=r.writeDepth,i.customDepthTest=r.customDepthTest??0,i.hasOccludees=t.hasOccludees,i.cullFace=r.hasSlicePlane?0:r.cullFace,i.cullAboveTerrain=t.cullAboveTerrain,i.hasModelTransformation=!n&&null!=r.modelTransformation,i.hasVertexColors=r.hasVertexColors,i.hasSymbolColors=r.hasSymbolColors,i.doubleSidedMode=n?2:s&&"normal"===a?1:s&&"winding-order"===a?2:0,i.instancedFeatureAttribute=r.instancedFeatureAttribute,i.instancedColor=r.instancedColor,(0,o.RN)(e)?(i.terrainDepthTest=t.terrainDepthTest,i.receiveShadows=r.receiveShadows,i.receiveAmbientOcclusion=r.receiveAmbientOcclusion&&null!=t.ssao):(i.terrainDepthTest=!1,i.receiveShadows=i.receiveAmbientOcclusion=!1),i.textureAlphaPremultiplied=!!r.textureAlphaPremultiplied,i.pbrMode=r.usePBR?r.isSchematic?2:1:0,i.emissionSource=r.emissionSource,i.offsetBackfaces=!(!this.transparent||!r.offsetTransparentBackfaces),i.oitPass=t.oitPass,i.enableOffset=t.camera.relativeElevation<l.xt,i.snowCover=t.snowCover,i.hasBloom=(0,o.LG)(e),i.hasColorTextureTransform=!!r.colorTextureTransformMatrix,i.hasNormalTextureTransform=!!r.normalTextureTransformMatrix,i.hasEmissionTextureTransform=!!r.emissiveTextureTransformMatrix,i.hasOcclusionTextureTransform=!!r.occlusionTextureTransformMatrix,i.hasMetallicRoughnessTextureTransform=!!r.metallicRoughnessTextureTransformMatrix,i}intersect(e,t,r,n,o,s){if(null!=this.parameters.verticalOffset){const e=r.camera;(0,i.i)(He,t[12],t[13],t[14]);let s=null;switch(r.viewingMode){case 1:s=(0,i.n)(De,He);break;case 2:s=(0,i.c)(De,Pe)}let a=0;const l=(0,i.d)(Le,He,e.eye),c=(0,i.l)(l),u=(0,i.g)(l,l,1/c);let d=null;this.parameters.screenSizePerspective&&(d=(0,i.e)(s,u)),a+=(0,P.kE)(e,c,this.parameters.verticalOffset,d??0,this.parameters.screenSizePerspective),(0,i.g)(s,s,a),(0,i.o)(Ne,s,r.transform.inverseRotation),n=(0,i.d)(Fe,n,Ne),o=(0,i.d)(Oe,o,Ne)}m(e,r,n,o,(0,A.ou)(r.verticalOffset),s)}createGLMaterial(e){return new Ae(e)}createBufferWriter(){return new F(this._layout)}get transparent(){return Re(this.parameters)}}class Ae extends s.m8{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){this._material.setParameters({receiveShadows:e.shadowMap.enabled});const t=this._material.parameters;this.updateTexture(t.textureId);const r=e.camera.viewInverseTransposeMatrix;return(0,i.i)(t.origin,r[3],r[7],r[11]),this._material.setParameters(this.textureBindParameters),this.getTechnique(t.treeRendering?Se:_e,e)}}class Ie extends ve{constructor(){super(...arguments),this.treeRendering=!1,this.hasVertexTangents=!1}get hasNormalTexture(){return!this.treeRendering&&!!this.normalTextureId}get hasColorTexture(){return!!this.textureId}get hasMetallicRoughnessTexture(){return!this.treeRendering&&!!this.metallicRoughnessTextureId}get hasOcclusionTexture(){return!this.treeRendering&&!!this.occlusionTextureId}get emissionSource(){return this.treeRendering?0:null!=this.emissiveTextureId&&0===this.emissiveSource?3:this.usePBR?0===this.emissiveSource?2:1:0}get hasTextures(){return this.hasColorTexture||this.hasNormalTexture||this.hasMetallicRoughnessTexture||3===this.emissionSource||this.hasOcclusionTexture}}function Re(e){const{drivenOpacity:t,opacity:r,externalColor:i,layerOpacity:n,texture:o,textureId:s,textureAlphaMode:a,colorMixMode:l}=e,c=i[3];return t||r<1&&"replace"!==l||c<1&&"ignore"!==l||n<1||(null!=o||null!=s)&&1!==a&&2!==a&&"replace"!==l}const Fe=(0,n.vt)(),Oe=(0,n.vt)(),Pe=(0,n.fA)(0,0,1),De=(0,n.vt)(),Ne=(0,n.vt)(),He=(0,n.vt)(),Le=(0,n.vt)()},4431:(e,t,r)=>{r.d(t,{U:()=>o}),r(44208);var i=r(63907),n=r(74038);function o(e,t=0){const r=e.stride;return Array.from(e.fields.keys()).map(o=>{const s=e.fields.get(o),a=s.constructor.ElementCount,l=function(e){switch(e){case"u8":return i.pe.UNSIGNED_BYTE;case"u16":return i.pe.UNSIGNED_SHORT;case"u32":return i.pe.UNSIGNED_INT;case"i8":return i.pe.BYTE;case"i16":return i.pe.SHORT;case"i32":return i.pe.INT;case"f16":return i.pe.HALF_FLOAT;case"f32":return i.pe.FLOAT;default:throw new Error("BufferType not supported in WebGL")}}(s.constructor.ElementType),c=s.offset,u=s.optional?.glNormalized??!1;return new n._(o,a,l,c,r,u,t)})}},6867:(e,t,r)=>{r.d(t,{i:()=>u});var i=r(58083),n=r(9093),o=r(38954),s=r(51850),a=r(87317),l=r(91829),c=r(71351);class u{get ray(){return this._ray}get distanceInRenderSpace(){return null==this.distance?null:((0,o.g)(h,this.ray.direction,this.distance),(0,o.l)(h))}withinDistance(e){return!!d(this)&&this.distanceInRenderSpace<=e}getIntersectionPoint(e){return!!d(this)&&((0,o.g)(h,this.ray.direction,this.distance),(0,o.f)(e,this.ray.origin,h),!0)}getTransformedNormal(e){return(0,o.c)(m,this.normal),m[3]=0,(0,a.t)(m,m,this.transformation),(0,o.c)(e,m),(0,o.n)(e,e)}constructor(e){this.intersector=0,this.normal=(0,s.vt)(),this.transformation=(0,n.vt)(),this._ray=(0,c.vt)(),this.init(e)}init(e){this.distance=this.target=this.drapedLayerOrder=this.renderPriority=null,this.intersector=0,(0,c.C)(e,this._ray)}set(e,t,r,a,l,c,u){this.intersector=e,this.distance=r,(0,o.c)(this.normal,a??s.Cb),(0,i.C)(this.transformation,l??n.zK),this.target=t,this.drapedLayerOrder=c,this.renderPriority=u}copy(e){(0,c.C)(e.ray,this._ray),this.intersector=e.intersector,this.distance=e.distance,this.target=e.target,this.drapedLayerOrder=e.drapedLayerOrder,this.renderPriority=e.renderPriority,(0,o.c)(this.normal,e.normal),(0,i.C)(this.transformation,e.transformation)}}function d(e){return null!=e?.distance}const h=(0,s.vt)(),m=(0,l.vt)()},10906:(e,t,r)=>{r.d(t,{b:()=>n});var i=r(31821);function n(e,t){t.snowCover&&(e.code.add(i.H`float getSnow(vec3 normal, vec3 normalGround) {
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[998],{1843:(e,t,r)=>{r.d(t,{BP:()=>d,l5:()=>h});var i=r(20498),n=r(13030),o=r(90239),s=r(4431),a=r(620),l=r(85079);class c{constructor(e,t){this.layout=e,this.buffer="number"==typeof t?new ArrayBuffer(t*e.stride):t;for(const t of e.fields.keys()){const r=e.fields.get(t);this[t]=new r.constructor(this.buffer,r.offset,this.stride)}}get stride(){return this.layout.stride}get count(){return this.buffer.byteLength/this.stride}get byteLength(){return this.buffer.byteLength}getField(e,t){const r=this[e];return r&&r.elementCount===t.ElementCount&&r.elementType===t.ElementType?r:null}slice(e,t){return new c(this.layout,this.buffer.slice(e*this.stride,t*this.stride))}copyFrom(e,t=0,r=0,i=e.count){const n=this.stride;if(n%4==0){const o=new Uint32Array(e.buffer,t*n,i*n/4);new Uint32Array(this.buffer,r*n,i*n/4).set(o)}else{const o=new Uint8Array(e.buffer,t*n,i*n);new Uint8Array(this.buffer,r*n,i*n).set(o)}return this}get cachedMemory(){return this.byteLength}dispose(){}}class u{constructor(e){this._stride=0,this._fields=new Map,e&&(this._stride=e.stride,e.fields.forEach(e=>this._fields.set(e[0],{...e[1],constructor:f(e[1].constructor)})))}freeze(){return this}get locations(){return(0,l.Xk)((0,s.U)(this))}vec2f16(e,t){return this._appendField(e,i.SX?n.ZD:n.gH,t),this}vec2f(e,t){return this._appendField(e,n.gH,t),this}vec2f64(e,t){return this._appendField(e,n.si,t),this}vec3f16(e,t){return this._appendField(e,i.SX?n.EC:n.xs,t),this}vec3f(e,t){return this._appendField(e,n.xs,t),this}vec3f64(e,t){return this._appendField(e,n.Xm,t),this}vec4f16(e,t){return this._appendField(e,i.SX?n.jz:n.Eq,t),this}vec4f(e,t){return this._appendField(e,n.Eq,t),this}vec4f64(e,t){return this._appendField(e,n.Aj,t),this}mat3f(e,t){return this._appendField(e,n.jZ,t),this}mat3f64(e,t){return this._appendField(e,n.j0,t),this}mat4f(e,t){return this._appendField(e,n.Sx,t),this}mat4f64(e,t){return this._appendField(e,n.E$,t),this}vec4u8(e,t){return this._appendField(e,n.XP,t),this}f16(e,t){return this._appendField(e,i.SX?n.XW:n.Y$,t),this}f32(e,t){return this._appendField(e,n.Y$,t),this}f64(e,t){return this._appendField(e,n.qB,t),this}u8(e,t){return this._appendField(e,n.SL,t),this}u16(e,t){return this._appendField(e,n.h,t),this}i8(e,t){return this._appendField(e,n.bf,t),this}vec2i8(e,t){return this._appendField(e,n.D6,t),this}vec2i16(e,t){return this._appendField(e,n.mJ,t),this}vec2u8(e,t){return this._appendField(e,n.LC,t),this}vec2u16(e,t){return this._appendField(e,n.Yi,t),this}vec4u16(e,t){return this._appendField(e,n.Uz,t),this}u32(e,t){return this._appendField(e,n.P,t),this}_appendField(e,t,r){this._fields.has(e)&&(0,a.vA)(!1,`${e} already added to vertex buffer layout`);const i=t.ElementCount*(0,o.GJ)(t.ElementType),n=this._stride;this._fields.set(e,{constructor:t,size:i,offset:n,optional:r}),this._alignFields()}_alignFields(){let e=0,t=1;this._fields.forEach(r=>{const i=(0,o.GJ)(r.constructor.ElementType);e=Math.floor((e+i-1)/i)*i,r.offset=e,e+=r.size,t=Math.max(t,i)}),e=Math.floor((e+t-1)/t)*t,this._stride=e}createBuffer(e){return new c(this,e)}createView(e){return new c(this,e)}clone(){const e=new u;return e._stride=this._stride,e._fields=new Map,this._fields.forEach((t,r)=>e._fields.set(r,t)),e.BufferType=this.BufferType,e}get stride(){return this._stride}get fields(){return this._fields}}function d(){return new u}class h{constructor(e){this.fields=new Array,e.fields.forEach((e,t)=>{const r={...e,constructor:p(e.constructor)};this.fields.push([t,r])}),this.stride=e.stride}}const m=[n.Y$,n.gH,n.xs,n.Eq,n.jZ,n.Sx,n.qB,n.si,n.Xm,n.Aj,n.j0,n.E$,n.SL,n.LC,n.eI,n.XP,n.h,n.Yi,n.nS,n.Uz,n.P,n.An,n.H$,n.ml,n.bf,n.D6,n.m8,n.TX,n.Qt,n.mJ,n.Vp,n.E7,n.My,n.UL,n.zD,n.Y4];function p(e){return`${e.ElementType}_${e.ElementCount}`}function f(e){return g.get(e)}const g=new Map;m.forEach(e=>g.set(p(e),e))},2495:(e,t,r)=>{r.d(t,{$U:()=>Ee,fs:()=>Ie,ty:()=>Re});var i=r(38954),n=r(51850),o=r(49255),s=r(25634),a=r(11725),l=r(33524),c=r(70328),u=r(620);class d{constructor(e=!1,t=!0){this.isVerticalRay=e,this.normalRequired=t}}const h=(0,c.vt)();function m(e,t,r,n,o,s){if(!e.visible)return;const a=(0,i.a)(S,n,r),l=(e,t,r)=>{s(e,r,t)},c=new d(!1,t.options.normalRequired);if(e.boundingInfo){(0,u.vA)(0===e.type);const i=t.tolerance;f(e.boundingInfo,r,a,i,o,c,l)}else{const t=e.attributes.get("position"),n=t.indices;!function(e,t,r,n,o,s,a,l,c,u){const d=t,h=E,m=Math.abs(d[0]),p=Math.abs(d[1]),f=Math.abs(d[2]),g=m>=p?m>=f?0:2:p>=f?1:2,b=g,y=d[b]<0?2:1,M=(g+y)%3,T=(g+(3-y))%3,C=d[M]/d[b],S=d[T]/d[b],A=1/d[b],I=v,R=_,F=x,{normalRequired:O}=c;for(let t=r;t<n;++t){const r=3*t,n=a*o[r];(0,i.i)(h[0],s[n+0],s[n+1],s[n+2]);const c=a*o[r+1];(0,i.i)(h[1],s[c+0],s[c+1],s[c+2]);const d=a*o[r+2];(0,i.i)(h[2],s[d+0],s[d+1],s[d+2]),l&&((0,i.c)(h[0],l.applyToVertex(h[0][0],h[0][1],h[0][2],t)),(0,i.c)(h[1],l.applyToVertex(h[1][0],h[1][1],h[1][2],t)),(0,i.c)(h[2],l.applyToVertex(h[2][0],h[2][1],h[2][2],t))),(0,i.a)(I,h[0],e),(0,i.a)(R,h[1],e),(0,i.a)(F,h[2],e);const m=I[M]-C*I[b],p=I[T]-S*I[b],f=R[M]-C*R[b],g=R[T]-S*R[b],v=F[M]-C*F[b],_=F[T]-S*F[b],x=v*g-_*f,y=m*_-p*v,E=f*p-g*m;if((x<0||y<0||E<0)&&(x>0||y>0||E>0))continue;const P=x+y+E;if(0===P)continue;const D=x*(A*I[b])+y*(A*R[b])+E*(A*F[b]);if(D*Math.sign(P)<0)continue;const N=D/P;N>=0&&u(N,t,O?w(h):null)}}(r,a,0,n.length/3,n,t.data,t.stride,o,c,l)}}const p=(0,n.vt)();function f(e,t,r,n,o,s,a){if(null==e)return;const l=function(e,t){return(0,i.i)(t,1/e[0],1/e[1],1/e[2])}(r,p);if((0,c.Ne)(h,e.bbMin),(0,c.vI)(h,e.bbMax),null!=o&&o.applyToAabb(h),function(e,t,r,i){return function(e,t,r,i){const n=(e[0]-i-t[0])*r[0],o=(e[3]+i-t[0])*r[0];let s=Math.min(n,o),a=Math.max(n,o);const l=(e[1]-i-t[1])*r[1],c=(e[4]+i-t[1])*r[1];if(a=Math.min(a,Math.max(l,c)),a<0)return!1;if(s=Math.max(s,Math.min(l,c)),s>a)return!1;const u=(e[2]-i-t[2])*r[2],d=(e[5]+i-t[2])*r[2];return a=Math.min(a,Math.max(u,d)),!(a<0)&&(s=Math.max(s,Math.min(u,d)),!(s>a)&&s<1/0)}(e,t,r,i)}(h,t,l,n)){const{primitiveIndices:i,position:l}=e,c=i?i.length:l.indices.length/3;if(c>T){const i=e.getChildren();if(void 0!==i){for(const e of i)f(e,t,r,n,o,s,a);return}}!function(e,t,r,i,n,o,s,a,l,c,u){const d=e[0],h=e[1],m=e[2],p=t[0],f=t[1],v=t[2],{normalRequired:_}=c;for(let e=0;e<i;++e){const t=a[e],r=3*t,i=s*n[r];let c=o[i],x=o[i+1],w=o[i+2];const y=s*n[r+1];let M=o[y],T=o[y+1],S=o[y+2];const E=s*n[r+2];let A=o[E],I=o[E+1],R=o[E+2];null!=l&&([c,x,w]=l.applyToVertex(c,x,w,e),[M,T,S]=l.applyToVertex(M,T,S,e),[A,I,R]=l.applyToVertex(A,I,R,e));const F=M-c,O=T-x,P=S-w,D=A-c,N=I-x,H=R-w,L=f*H-N*v,z=v*D-H*p,B=p*N-D*f,G=F*L+O*z+P*B;if(Math.abs(G)<=C)continue;const U=d-c,V=h-x,j=m-w,W=U*L+V*z+j*B;if(G>0){if(W<0||W>G)continue}else if(W>0||W<G)continue;const k=V*P-O*j,$=j*F-P*U,q=U*O-F*V,Z=p*k+f*$+v*q;if(G>0){if(Z<0||W+Z>G)continue}else if(Z>0||W+Z<G)continue;const Y=(D*k+N*$+H*q)/G;Y>=0&&u(Y,t,_?b(F,O,P,D,N,H,g):null)}}(t,r,0,c,l.indices,l.data,l.stride,i,o,s,a)}}const g=(0,n.vt)();const v=(0,n.vt)(),_=(0,n.vt)(),x=(0,n.vt)();function b(e,t,r,n,o,s,a){return(0,i.i)(y,e,t,r),(0,i.i)(M,n,o,s),(0,i.h)(a,y,M),(0,i.n)(a,a),a}function w(e){return(0,i.a)(y,e[1],e[0]),(0,i.a)(M,e[2],e[0]),(0,i.h)(g,y,M),(0,i.n)(g,g),g}const y=(0,n.vt)(),M=(0,n.vt)(),T=1e3,C=1e-7,S=(0,n.vt)(),E=[(0,n.vt)(),(0,n.vt)(),(0,n.vt)()];var A=r(16396),I=r(13030),R=r(59907);class F{constructor(e){this.layout=e}elementCount(e){return e.get("position").indices.length}write(e,t,r,i,n,o){return(0,R.vJ)(r,i,this.layout,e,t,n,o)}intersect(e,t,r,n,o,s,a){const l=this.layout.createView(e).getField("position",I.xs);if(null==l)return;const c=(0,i.a)(O,s,o),u=l.count/3,d=n.options.normalRequired;!function(e,t,r,i,n,o,s,a){const l=e[0],c=e[1],u=e[2],d=t[0],h=t[1],m=t[2];for(let e=0;e<i;++e){const t=3*e,r=t+1,i=t+2,p=o*t,f=n[p],v=n[p+1],_=n[p+2],x=o*r,w=o*i,y=n[x]-f,M=n[x+1]-v,T=n[x+2]-_,S=n[w]-f,E=n[w+1]-v,A=n[w+2]-_,I=h*A-E*m,R=m*S-A*d,F=d*E-S*h,O=y*I+M*R+T*F;if(Math.abs(O)<=C)continue;const P=l-f,D=c-v,N=u-_,H=P*I+D*R+N*F;if(O>0){if(H<0||H>O)continue}else if(H>0||H<O)continue;const L=D*T-M*N,z=N*y-T*P,B=P*M-y*D,G=d*L+h*z+m*B;if(O>0){if(G<0||H+G>O)continue}else if(G>0||H+G<O)continue;const U=(S*L+E*z+A*B)/O;U>=0&&a(U,e,s?b(y,M,T,S,E,A,g):null)}}(o,c,0,u,l.typedBuffer,l.typedBufferStride,d,(e,t,r)=>a(e,r,t))}}const O=(0,n.vt)();var P=r(43616),D=r(91829),N=r(4431),H=r(1843),L=r(72824),z=r(97220),B=r(98958),G=r(16943);const U={mask:255},V={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:0}},j={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7681}};var W=r(4576),k=r(44208);r(53966),r(34275),r(94656),r(63907),(0,k.A)("esri-tests-disable-gpu-memory-measurements");var $=r(31635),q=r(65008),Z=r(65529),Y=r(10107),X=r(40608),J=r(77690),K=r(29242),Q=r(58083),ee=r(9093),te=r(32728);class re{constructor(e){this.localTransform=e.localTransform,this.globalTransform=e.globalTransform,this.modelOrigin=e.modelOrigin,this.model=e.instanceModel,this.modelNormal=e.instanceModelNormal,this.modelScaleFactors=e.modelScaleFactors,this.boundingSphere=e.boundingSphere,this.featureAttribute=e.getField("instanceFeatureAttribute",I.Eq),this.color=e.getField("instanceColor",I.XP),this.olidColor=e.getField("instanceOlidColor",I.XP),this.state=e.getField("state",I.SL),this.lodLevel=e.getField("lodLevel",I.SL)}}let ie=class extends q.A{constructor(e,t){super(e),this.events=new Z.bk,this._capacity=0,this._size=0,this._next=0,this._highlightOptionsMap=new Map,this._highlightOptionsMapPrev=new Map,this._layout=function(e){return oe(ne.clone(),e).u8("state").u8("lodLevel")}(t),this._capacity=ue,this._buffer=this._layout.createBuffer(this._capacity),this._view=new re(this._buffer)}get capacity(){return this._capacity}get size(){return this._size}get view(){return this._view}addInstance(){this._size+1>this._capacity&&this._grow();const e=this._findSlot();return this._view.state.set(e,1),this._size++,this.events.emit("instances-changed"),e}removeInstance(e){const t=this._view.state;(0,u.vA)(e>=0&&e<this._capacity&&!!(1&t.get(e)),"invalid instance handle"),this._getStateFlag(e,18)?this._setStateFlags(e,32):this.freeInstance(e),this.events.emit("instances-changed")}freeInstance(e){const t=this._view.state;(0,u.vA)(e>=0&&e<this._capacity&&!!(1&t.get(e)),"invalid instance handle"),t.set(e,0),this._size--}setLocalTransform(e,t,r=!0){this._view.localTransform.setMat(e,t),r&&this.updateModelTransform(e)}getLocalTransform(e,t){this._view.localTransform.getMat(e,t)}setGlobalTransform(e,t,r=!0){this._view.globalTransform.setMat(e,t),r&&this.updateModelTransform(e)}getGlobalTransform(e,t){this._view.globalTransform.getMat(e,t)}updateModelTransform(e){const t=this._view,r=se,n=ae;t.localTransform.getMat(e,le),t.globalTransform.getMat(e,ce);const o=(0,Q.lw)(ce,ce,le);(0,i.i)(r,o[12],o[13],o[14]),t.modelOrigin.setVec(e,r),(0,J.z0)(n,o),t.model.setMat(e,n);const s=(0,te.wp)(se,o);s.sort(),t.modelScaleFactors.set(e,0,s[1]),t.modelScaleFactors.set(e,1,s[2]),(0,J.B8)(n,n),(0,J.mg)(n,n),t.modelNormal.setMat(e,n),this._setStateFlags(e,64),this.events.emit("instance-transform-changed",{index:e})}getModelTransform(e,t){const r=this._view;r.model.getMat(e,ae),r.modelOrigin.getVec(e,se),t[0]=ae[0],t[1]=ae[1],t[2]=ae[2],t[3]=0,t[4]=ae[3],t[5]=ae[4],t[6]=ae[5],t[7]=0,t[8]=ae[6],t[9]=ae[7],t[10]=ae[8],t[11]=0,t[12]=se[0],t[13]=se[1],t[14]=se[2],t[15]=1}applyShaderTransformation(e,t){null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,e,t)}getCombinedModelTransform(e,t){return this.getModelTransform(e,t),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,e,t),t}getCombinedLocalTransform(e,t){this._view.localTransform.getMat(e,t),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,e,t)}getCombinedMaxScaleFactor(e){let t=this._view.modelScaleFactors.get(e,1);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(se,this,e),t*=Math.max(se[0],se[1],se[2])),t}getCombinedMedianScaleFactor(e){let t=this._view.modelScaleFactors.get(e,0);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(se,this,e),t*=function(e,t,r){return Math.max(Math.min(e,t),Math.min(Math.max(e,t),r))}(se[0],se[1],se[2])),t}getModel(e,t){this._view.model.getMat(e,t)}setFeatureAttribute(e,t){this._view.featureAttribute?.setVec(e,t)}getFeatureAttribute(e,t){this._view.featureAttribute?.getVec(e,t)}setColor(e,t){this._view.color?.setVec(e,t)}setObjectAndLayerIdColor(e,t){this._view.olidColor?.setVec(e,t)}setVisible(e,t){t!==this.getVisible(e)&&(this._setStateFlag(e,4,t),this.events.emit("instance-visibility-changed",{index:e}))}getVisible(e){return this._getStateFlag(e,4)}setHighlight(e,t){const{_highlightOptionsMap:r}=this,i=r.get(e);t?t!==i&&(r.set(e,t),this._setStateFlag(e,8,!0),this.events.emit("instance-highlight-changed")):i&&(r.delete(e),this._setStateFlag(e,8,!1),this.events.emit("instance-highlight-changed"))}get highlightOptionsMap(){return this._highlightOptionsMap}getHighlightStateFlag(e){return this._getStateFlag(e,8)}geHighlightOptionsPrev(e){const t=this._highlightOptionsMapPrev.get(e)??null;return this._highlightOptionsMapPrev.delete(e),t}getHighlightName(e){const t=this.highlightOptionsMap.get(e)??null;return t?this._highlightOptionsMapPrev.set(e,t):this._highlightOptionsMapPrev.delete(e),t}getState(e){return this._view.state.get(e)}getLodLevel(e){return this._view.lodLevel.get(e)}countFlags(e){let t=0;for(let r=0;r<this._capacity;++r)this.getState(r)&e&&++t;return t}_setStateFlags(e,t){const r=this._view.state;t=r.get(e)|t,r.set(e,t)}_clearStateFlags(e,t){const r=this._view.state;t=r.get(e)&~t,r.set(e,t)}_setStateFlag(e,t,r){r?this._setStateFlags(e,t):this._clearStateFlags(e,t)}_getStateFlag(e,t){return!!(this._view.state.get(e)&t)}_grow(){this._capacity=Math.max(ue,Math.floor(this._capacity*W.Ji)),this._buffer=this._layout.createBuffer(this._capacity).copyFrom(this._buffer),this._view=new re(this._buffer)}_findSlot(){const e=this._view.state;let t=this._next;for(;1&e.get(t);)t=t+1===this._capacity?0:t+1;return this._next=t+1===this._capacity?0:t+1,t}};(0,$.Cg)([(0,Y.MZ)({constructOnly:!0})],ie.prototype,"shaderTransformation",void 0),(0,$.Cg)([(0,Y.MZ)()],ie.prototype,"_size",void 0),(0,$.Cg)([(0,Y.MZ)({readOnly:!0})],ie.prototype,"size",null),ie=(0,$.Cg)([(0,X.$)("esri.views.3d.webgl-engine.lib.lodRendering.InstanceData")],ie);const ne=(0,H.BP)().mat4f64("localTransform").mat4f64("globalTransform").vec4f64("boundingSphere").vec3f64("modelOrigin").mat3f("instanceModel").mat3f("instanceModelNormal").vec2f("modelScaleFactors");function oe(e,t){return t.instancedFeatureAttribute&&e.vec4f("instanceFeatureAttribute"),t.instancedColor&&e.vec4u8("instanceColor"),(0,G.E)()&&e.vec4u8("instanceOlidColor"),e}const se=(0,n.vt)(),ae=(0,K.vt)(),le=(0,ee.vt)(),ce=(0,ee.vt)(),ue=64,de=(0,H.BP)().vec3f("instanceModelOriginHi").vec3f("instanceModelOriginLo").mat3f("instanceModel").mat3f("instanceModelNormal");var he=r(74810),me=r(28491),pe=r(90644),fe=r(85079),ge=r(49788);class ve extends L.Zo{constructor(){super(...arguments),this.isSchematic=!1,this.usePBR=!1,this.mrrFactors=he.mb,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.doubleSided=!1,this.doubleSidedType="normal",this.cullFace=2,this.instanced=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.instanceColorEncodesAlphaIgnore=!1,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=n.uY,this.instancedDoublePrecision=!1,this.normalType=0,this.receiveShadows=!0,this.receiveAmbientOcclusion=!0,this.castShadows=!0,this.ambient=(0,n.CN)(.2,.2,.2),this.diffuse=(0,n.CN)(.8,.8,.8),this.externalColor=(0,D.fA)(1,1,1,1),this.colorMixMode="multiply",this.opacity=1,this.layerOpacity=1,this.origin=(0,n.vt)(),this.hasSlicePlane=!1,this.offsetTransparentBackfaces=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.modelTransformation=null,this.drivenOpacity=!1,this.writeDepth=!0,this.customDepthTest=0,this.textureAlphaMode=0,this.textureAlphaCutoff=ge.Q,this.textureAlphaPremultiplied=!1,this.renderOccluded=1,this.isDecoration=!1}get hasVVSize(){return!!this.vvSize}get hasVVColor(){return!!this.vvColor}get hasVVOpacity(){return!!this.vvOpacity}}L.gy;class _e extends B.w{constructor(e,t,i=new z.$(me.D,()=>r.e(5141).then(r.bind(r,5141)))){const n=[(0,N.U)(we(t))];t.instanced&&t.instancedDoublePrecision&&n.push((0,N.U)(function(e){return oe(de.clone(),e)}(t))),super(e,t,i,(0,fe._u)(n))}_makePipeline(e,t){const{oitPass:r,output:i,transparent:n,cullFace:s,customDepthTest:a,hasOccludees:c}=e;return(0,pe.Ey)({blending:(0,o.RN)(i)&&n?(0,l.Yf)(r):null,culling:be(e)?(0,pe.Xt)(s):null,depthTest:{func:(0,l.K_)(r,xe(a))},depthWrite:(0,l.z5)(e),drawBuffers:(0,B.L)(i,(0,l.m6)(r,i)),colorWrite:pe.kn,stencilWrite:c?U:null,stencilTest:c?t?j:V:null,polygonOffset:(0,l.mE)(e)})}initializePipeline(e){return this._occludeePipelineState=this._makePipeline(e,!0),this._makePipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}}function xe(e){return 1===e?515:513}function be(e){return 0!==e.cullFace||!e.hasSlicePlane&&!e.transparent&&!e.doubleSidedMode}function we(e){const t=(0,H.BP)().vec3f("position");return 1===e.normalType?t.vec2i16("normalCompressed",{glNormalized:!0}):t.vec3f("normal"),e.hasVertexTangents&&t.vec4f("tangent"),e.hasTextures&&t.vec2f16("uv0"),e.hasVertexColors&&t.vec4u8("color"),e.hasSymbolColors&&t.vec4u8("symbolColor"),!e.instanced&&(0,G.E)()&&t.vec4u8("olidColor"),t}var ye=r(51976),Me=r(35256);class Te extends Me.E{constructor(e){super(),this.spherical=e,this.alphaDiscardMode=1,this.doubleSidedMode=0,this.pbrMode=0,this.cullFace=0,this.normalType=0,this.customDepthTest=0,this.emissionSource=0,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.hasVerticalOffset=!1,this.hasColorTexture=!1,this.hasMetallicRoughnessTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.hasScreenSizePerspective=!1,this.hasVertexTangents=!1,this.hasOccludees=!1,this.instanced=!1,this.instancedDoublePrecision=!1,this.hasModelTransformation=!1,this.offsetBackfaces=!1,this.hasVVSize=!1,this.hasVVColor=!1,this.receiveShadows=!1,this.receiveAmbientOcclusion=!1,this.textureAlphaPremultiplied=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.writeDepth=!0,this.transparent=!1,this.enableOffset=!0,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.snowCover=!1,this.hasBloom=!1,this.hasColorTextureTransform=!1,this.hasEmissionTextureTransform=!1,this.hasNormalTextureTransform=!1,this.hasOcclusionTextureTransform=!1,this.hasMetallicRoughnessTextureTransform=!1,this.occlusionPass=!1,this.useCustomDTRExponentForWater=!1,this.useFillLights=!0,this.draped=!1}get textureCoordinateType(){return this.hasTextures?1:0}get hasTextures(){return this.hasColorTexture||this.hasNormalTexture||this.hasMetallicRoughnessTexture||3===this.emissionSource||this.hasOcclusionTexture}get hasVVInstancing(){return this.instanced}get discardInvisibleFragments(){return this.transparent}}(0,$.Cg)([(0,ye.W)({count:4})],Te.prototype,"alphaDiscardMode",void 0),(0,$.Cg)([(0,ye.W)({count:3})],Te.prototype,"doubleSidedMode",void 0),(0,$.Cg)([(0,ye.W)({count:7})],Te.prototype,"pbrMode",void 0),(0,$.Cg)([(0,ye.W)({count:3})],Te.prototype,"cullFace",void 0),(0,$.Cg)([(0,ye.W)({count:3})],Te.prototype,"normalType",void 0),(0,$.Cg)([(0,ye.W)({count:2})],Te.prototype,"customDepthTest",void 0),(0,$.Cg)([(0,ye.W)({count:8})],Te.prototype,"emissionSource",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVertexColors",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasSymbolColors",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVerticalOffset",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasColorTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasMetallicRoughnessTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasOcclusionTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasNormalTexture",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasScreenSizePerspective",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVertexTangents",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasOccludees",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instanced",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instancedDoublePrecision",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasModelTransformation",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"offsetBackfaces",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVVSize",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasVVColor",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"receiveShadows",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"receiveAmbientOcclusion",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"textureAlphaPremultiplied",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instancedFeatureAttribute",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"instancedColor",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"writeDepth",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"transparent",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"enableOffset",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"terrainDepthTest",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"cullAboveTerrain",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"snowCover",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasBloom",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasColorTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasEmissionTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasNormalTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasOcclusionTextureTransform",void 0),(0,$.Cg)([(0,ye.W)()],Te.prototype,"hasMetallicRoughnessTextureTransform",void 0);var Ce=r(57323);class Se extends _e{constructor(e,t){super(e,t,new z.$(Ce.R,()=>r.e(9933).then(r.bind(r,39933))))}}class Ee extends a.i{constructor(e,t){super(e,Ie),this.materialType="default",this.supportsEdges=!0,this.intersectDraped=void 0,this.produces=new Map([[2,e=>((0,o.iq)(e)||(0,o.PJ)(e))&&!this.transparent],[4,e=>((0,o.iq)(e)||(0,o.PJ)(e))&&this.transparent&&this.parameters.writeDepth],[8,e=>((0,o.iq)(e)||(0,o.PJ)(e))&&this.transparent&&!this.parameters.writeDepth]]),this._layout=we(this.parameters),this._configuration=new Te(t.spherical)}isVisibleForOutput(e){return 4!==e&&6!==e&&5!==e||this.parameters.castShadows}get visible(){const{layerOpacity:e,colorMixMode:t,opacity:r,externalColor:i}=this.parameters;return e*("replace"===t?1:r)*("ignore"===t||isNaN(i[3])?1:i[3])>=ge.Q}get _hasEmissiveBase(){return!!this.parameters.emissiveTextureId||!(0,i.q)(this.parameters.emissiveBaseColor,n.uY)}get hasEmissions(){return this.parameters.emissiveStrength>0&&(0===this.parameters.emissiveSource&&this._hasEmissiveBase||1===this.parameters.emissiveSource)}getConfiguration(e,t){const{parameters:r,_configuration:i}=this,{treeRendering:n,doubleSided:s,doubleSidedType:a}=r;return super.getConfiguration(e,t,this._configuration),i.hasNormalTexture=r.hasNormalTexture,i.hasColorTexture=r.hasColorTexture,i.hasMetallicRoughnessTexture=r.hasMetallicRoughnessTexture,i.hasOcclusionTexture=r.hasOcclusionTexture,i.hasVertexTangents=!n&&r.hasVertexTangents,i.instanced=r.instanced,i.instancedDoublePrecision=r.instancedDoublePrecision,i.hasVVColor=!!r.vvColor,i.hasVVSize=!!r.vvSize,i.hasVerticalOffset=null!=r.verticalOffset,i.hasScreenSizePerspective=null!=r.screenSizePerspective,i.hasSlicePlane=r.hasSlicePlane,i.alphaDiscardMode=r.textureAlphaMode,i.normalType=n?0:r.normalType,i.transparent=this.transparent,i.writeDepth=r.writeDepth,i.customDepthTest=r.customDepthTest??0,i.hasOccludees=t.hasOccludees,i.cullFace=r.hasSlicePlane?0:r.cullFace,i.cullAboveTerrain=t.cullAboveTerrain,i.hasModelTransformation=!n&&null!=r.modelTransformation,i.hasVertexColors=r.hasVertexColors,i.hasSymbolColors=r.hasSymbolColors,i.doubleSidedMode=n?2:s&&"normal"===a?1:s&&"winding-order"===a?2:0,i.instancedFeatureAttribute=r.instancedFeatureAttribute,i.instancedColor=r.instancedColor,(0,o.RN)(e)?(i.terrainDepthTest=t.terrainDepthTest,i.receiveShadows=r.receiveShadows,i.receiveAmbientOcclusion=r.receiveAmbientOcclusion&&null!=t.ssao):(i.terrainDepthTest=!1,i.receiveShadows=i.receiveAmbientOcclusion=!1),i.textureAlphaPremultiplied=!!r.textureAlphaPremultiplied,i.pbrMode=r.usePBR?r.isSchematic?2:1:0,i.emissionSource=r.emissionSource,i.offsetBackfaces=!(!this.transparent||!r.offsetTransparentBackfaces),i.oitPass=t.oitPass,i.enableOffset=t.camera.relativeElevation<l.xt,i.snowCover=t.snowCover,i.hasBloom=(0,o.LG)(e),i.hasColorTextureTransform=!!r.colorTextureTransformMatrix,i.hasNormalTextureTransform=!!r.normalTextureTransformMatrix,i.hasEmissionTextureTransform=!!r.emissiveTextureTransformMatrix,i.hasOcclusionTextureTransform=!!r.occlusionTextureTransformMatrix,i.hasMetallicRoughnessTextureTransform=!!r.metallicRoughnessTextureTransformMatrix,i}intersect(e,t,r,n,o,s){if(null!=this.parameters.verticalOffset){const e=r.camera;(0,i.i)(He,t[12],t[13],t[14]);let s=null;switch(r.viewingMode){case 1:s=(0,i.n)(De,He);break;case 2:s=(0,i.c)(De,Pe)}let a=0;const l=(0,i.d)(Le,He,e.eye),c=(0,i.l)(l),u=(0,i.g)(l,l,1/c);let d=null;this.parameters.screenSizePerspective&&(d=(0,i.e)(s,u)),a+=(0,P.kE)(e,c,this.parameters.verticalOffset,d??0,this.parameters.screenSizePerspective),(0,i.g)(s,s,a),(0,i.o)(Ne,s,r.transform.inverseRotation),n=(0,i.d)(Fe,n,Ne),o=(0,i.d)(Oe,o,Ne)}m(e,r,n,o,(0,A.ou)(r.verticalOffset),s)}createGLMaterial(e){return new Ae(e)}createBufferWriter(){return new F(this._layout)}get transparent(){return Re(this.parameters)}}class Ae extends s.m8{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){this._material.setParameters({receiveShadows:e.shadowMap.enabled});const t=this._material.parameters;this.updateTexture(t.textureId);const r=e.camera.viewInverseTransposeMatrix;return(0,i.i)(t.origin,r[3],r[7],r[11]),this._material.setParameters(this.textureBindParameters),this.getTechnique(t.treeRendering?Se:_e,e)}}class Ie extends ve{constructor(){super(...arguments),this.treeRendering=!1,this.hasVertexTangents=!1}get hasNormalTexture(){return!this.treeRendering&&!!this.normalTextureId}get hasColorTexture(){return!!this.textureId}get hasMetallicRoughnessTexture(){return!this.treeRendering&&!!this.metallicRoughnessTextureId}get hasOcclusionTexture(){return!this.treeRendering&&!!this.occlusionTextureId}get emissionSource(){return this.treeRendering?0:null!=this.emissiveTextureId&&0===this.emissiveSource?3:this.usePBR?0===this.emissiveSource?2:1:0}get hasTextures(){return this.hasColorTexture||this.hasNormalTexture||this.hasMetallicRoughnessTexture||3===this.emissionSource||this.hasOcclusionTexture}}function Re(e){const{drivenOpacity:t,opacity:r,externalColor:i,layerOpacity:n,texture:o,textureId:s,textureAlphaMode:a,colorMixMode:l}=e,c=i[3];return t||r<1&&"replace"!==l||c<1&&"ignore"!==l||n<1||(null!=o||null!=s)&&1!==a&&2!==a&&"replace"!==l}const Fe=(0,n.vt)(),Oe=(0,n.vt)(),Pe=(0,n.fA)(0,0,1),De=(0,n.vt)(),Ne=(0,n.vt)(),He=(0,n.vt)(),Le=(0,n.vt)()},4431:(e,t,r)=>{r.d(t,{U:()=>o}),r(44208);var i=r(63907),n=r(74038);function o(e,t=0){const r=e.stride;return Array.from(e.fields.keys()).map(o=>{const s=e.fields.get(o),a=s.constructor.ElementCount,l=function(e){switch(e){case"u8":return i.pe.UNSIGNED_BYTE;case"u16":return i.pe.UNSIGNED_SHORT;case"u32":return i.pe.UNSIGNED_INT;case"i8":return i.pe.BYTE;case"i16":return i.pe.SHORT;case"i32":return i.pe.INT;case"f16":return i.pe.HALF_FLOAT;case"f32":return i.pe.FLOAT;default:throw new Error("BufferType not supported in WebGL")}}(s.constructor.ElementType),c=s.offset,u=s.optional?.glNormalized??!1;return new n._(o,a,l,c,r,u,t)})}},6867:(e,t,r)=>{r.d(t,{i:()=>u});var i=r(58083),n=r(9093),o=r(38954),s=r(51850),a=r(87317),l=r(91829),c=r(71351);class u{get ray(){return this._ray}get distanceInRenderSpace(){return null==this.distance?null:((0,o.g)(h,this.ray.direction,this.distance),(0,o.l)(h))}withinDistance(e){return!!d(this)&&this.distanceInRenderSpace<=e}getIntersectionPoint(e){return!!d(this)&&((0,o.g)(h,this.ray.direction,this.distance),(0,o.f)(e,this.ray.origin,h),!0)}getTransformedNormal(e){return(0,o.c)(m,this.normal),m[3]=0,(0,a.t)(m,m,this.transformation),(0,o.c)(e,m),(0,o.n)(e,e)}constructor(e){this.intersector=0,this.normal=(0,s.vt)(),this.transformation=(0,n.vt)(),this._ray=(0,c.vt)(),this.init(e)}init(e){this.distance=this.target=this.drapedLayerOrder=this.renderPriority=null,this.intersector=0,(0,c.C)(e,this._ray)}set(e,t,r,a,l,c,u){this.intersector=e,this.distance=r,(0,o.c)(this.normal,a??s.Cb),(0,i.C)(this.transformation,l??n.zK),this.target=t,this.drapedLayerOrder=c,this.renderPriority=u}copy(e){(0,c.C)(e.ray,this._ray),this.intersector=e.intersector,this.distance=e.distance,this.target=e.target,this.drapedLayerOrder=e.drapedLayerOrder,this.renderPriority=e.renderPriority,(0,o.c)(this.normal,e.normal),(0,i.C)(this.transformation,e.transformation)}}function d(e){return null!=e?.distance}const h=(0,s.vt)(),m=(0,l.vt)()},10906:(e,t,r)=>{r.d(t,{b:()=>n});var i=r(31821);function n(e,t){t.snowCover&&(e.code.add(i.H`float getSnow(vec3 normal, vec3 normalGround) {
2
2
  return smoothstep(0.5, 0.55, dot(normal, normalGround));
3
3
  }`),e.code.add(i.H`vec3 applySnowToMRR(vec3 mrr, float snow) {
4
4
  return mix(mrr, vec3(0.0, 1.0, 0.04), snow);
@@ -137,14 +137,7 @@ vec2 dfg = prefilteredDFGAnalytical(inputs.roughness, inputs.NdotV);
137
137
  vec3 specularColor = inputs.f0 * dfg.x + inputs.f90 * dfg.y;
138
138
  vec3 specularComponent = specularColor * indirectSpecular;
139
139
  return (diffuseComponent + specularComponent);
140
- }`))}},22911:(e,t,r)=>{r.d(t,{NL:()=>h});var i=r(49255),n=r(99208),o=r(40710),s=r(33079),a=r(28421),l=r(20304),c=r(31821),u=r(15976),d=r(63761);function h(e,t){if(!(0,i.RN)(t.output))return;const{emissionSource:r,hasEmissiveTextureTransform:h,bindType:m}=t,p=3===r||4===r||5===r;p&&(e.include(n.r,t),e.fragment.uniforms.add(1===m?new d.N("texEmission",e=>e.textureEmissive):new u.o("texEmission",e=>e.textureEmissive)));const f=2===r||p;f&&e.fragment.uniforms.add(1===m?new s.t("emissiveBaseColor",e=>e.emissiveBaseColor):new o.W("emissiveBaseColor",e=>e.emissiveBaseColor));const g=0!==r;g&&7!==r&&6!==r&&4!==r&&5!==r&&e.fragment.uniforms.add(1===m?new l.m("emissiveStrength",e=>e.emissiveStrength):new a.J("emissiveStrength",e=>e.emissiveStrength));const v=7===r,_=5===r,x=1===r||6===r||v;e.fragment.code.add(c.H`
141
- vec4 getEmissions(vec3 symbolColor) {
142
- vec4 emissions = ${f?_?"emissiveSource == 0 ? vec4(emissiveBaseColor, 1.0): vec4(symbolColor, 1.0)":"vec4(emissiveBaseColor, 1.0)":x?v?"emissiveSource == 0 ? vec4(0.0): vec4(symbolColor, 1.0)":"vec4(symbolColor, 1.0)":"vec4(0.0)"};
143
- ${(0,c.If)(p,`${(0,c.If)(_,`if(emissiveSource == 0) {\n emissions *= textureLookup(texEmission, ${h?"emissiveUV":"vuv0"});\n }`,`emissions *= textureLookup(texEmission, ${h?"emissiveUV":"vuv0"});`)}\n \n \n emissions.w = emissions.rgb == vec3(0.0) ? 0.0: emissions.w;`)}
144
- ${(0,c.If)(g,"emissions.rgb *= emissiveStrength;")}
145
- return emissions;
146
- }
147
- `)}r(25634)},23205:(e,t,r)=>{r.d(t,{d:()=>n});var i=r(74333);class n extends i.n{constructor(e,t,r){super(e,"vec3",0,(i,n)=>i.setUniform3fv(e,t(n),r))}}},24321:(e,t,r)=>{r.d(t,{v:()=>o});var i=r(43519),n=r(31821);function o(e,t){t.instancedColor?(e.attributes.add("instanceColor","vec4"),e.vertex.include(i.WD),e.vertex.include(i.Y1),e.vertex.include(i.ML),e.vertex.code.add(n.H`
140
+ }`))}},23205:(e,t,r)=>{r.d(t,{d:()=>n});var i=r(74333);class n extends i.n{constructor(e,t,r){super(e,"vec3",0,(i,n)=>i.setUniform3fv(e,t(n),r))}}},24321:(e,t,r)=>{r.d(t,{v:()=>o});var i=r(43519),n=r(31821);function o(e,t){t.instancedColor?(e.attributes.add("instanceColor","vec4"),e.vertex.include(i.WD),e.vertex.include(i.Y1),e.vertex.include(i.ML),e.vertex.code.add(n.H`
148
141
  MaskedColor applyInstanceColor(MaskedColor color) {
149
142
  return multiplyMaskedColors( color, createMaskedFromUInt8NaNColor(${"instanceColor"}));
150
143
  }
@@ -504,7 +497,7 @@ return MaskedColor(masked1 * masked2, bvec4(ivec4(color1.mask) & ivec4(color2.ma
504
497
  return MaskedColor(color, isnan(color));
505
498
  }`)}},43616:(e,t,r)=>{r.d(t,{MB:()=>a,Um:()=>l,kE:()=>s});var i=r(4576),n=r(34727),o=r(77194);function s(e,t,r,i,s){let a=r.screenLength*e.pixelRatio;null!=s&&(a=(0,o.hs)(a,i,t,s));const l=a*Math.tan(.5*e.fovY)/(.5*e.fullHeight);return(0,n.qE)(l*t,r.minWorldLength,r.maxWorldLength)}function a(e,t){let r=!1;for(const n in t){const o=t[n];void 0!==o&&(Array.isArray(o)?Array.isArray(e[n])&&(0,i.aI)(o,e[n])||(e[n]=o.slice(),r=!0):e[n]!==o&&(r=!0,e[n]=o))}return r}const l={multiply:1,ignore:2,replace:3,tint:4}},46140:(e,t,r)=>{r.d(t,{R:()=>n});var i=r(49186);let n=class e{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new i.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new e(this.major,this.minor,this._context)}static parse(t,r=""){const[n,o]=t.split("."),s=/^\s*\d+\s*$/;if(!n?.match||!s.test(n))throw new i.A((r&&r+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:t});if(!o?.match||!s.test(o))throw new i.A((r&&r+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:t});const a=parseInt(n,10),l=parseInt(o,10);return new e(a,l,r)}}},46686:(e,t,r)=>{r.d(t,{o:()=>n});var i=r(31821);function n(e,t){t&&e.varyings.add("linearDepth","float",{invariant:!0}),e.vertex.code.add(i.H`
506
499
  void forwardLinearDepth(float _linearDepth) { ${(0,i.If)(t,"linearDepth = _linearDepth;")} }
507
- `)}},47286:(e,t,r)=>{r.d(t,{G:()=>n});var i=r(74333);class n extends i.n{constructor(e,t,r){super(e,"vec2",1,(i,n,o)=>i.setUniform2fv(e,t(n,o),r))}}},48833:(e,t,r)=>{r.d(t,{g:()=>B}),r(44208);var i=r(49186),n=r(65529),o=r(97768),s=r(74887),a=r(34275),l=r(24326),c=r(84952),u=r(38969),d=r(99677),h=r(56058),m=r(2741);let p;var f=r(63907),g=r(76284),v=r(42293);let _=null,x=null;async function b(){return null==x&&(p??=(async()=>{const e=await r.e(9321).then(r.bind(r,49321)),t=await e.default({locateFile:e=>(0,m.s)(`esri/libs/basisu/${e}`)});return t.initializeBasis(),t})(),x=p,_=await x),x}function w(e,t){if(null==_)return e.byteLength;const r=new _.BasisFile(new Uint8Array(e)),i=T(r)?M(r.getNumLevels(0),r.getHasAlpha(),r.getImageWidth(0,0),r.getImageHeight(0,0),t):0;return r.close(),r.delete(),i}function y(e,t){if(null==_)return e.byteLength;const r=new _.KTX2File(new Uint8Array(e)),i=C(r)?M(r.getLevels(),r.getHasAlpha(),r.getWidth(),r.getHeight(),t):0;return r.close(),r.delete(),i}function M(e,t,r,i,n){const o=(0,v.I)(t?f.CQ.COMPRESSED_RGBA8_ETC2_EAC:f.CQ.COMPRESSED_RGB8_ETC2),s=n&&e>1?(4**e-1)/(3*4**(e-1)):1;return Math.ceil(r*i*o*s)}function T(e){return e.getNumImages()>=1&&!e.isUASTC()}function C(e){return e.getFaces()>=1&&e.isETC1S()}function S(e,t,r,i,n,o,s,a){const{compressedTextureETC:l,compressedTextureS3TC:c}=e.capabilities,[u,d]=l?i?[1,f.CQ.COMPRESSED_RGBA8_ETC2_EAC]:[0,f.CQ.COMPRESSED_RGB8_ETC2]:c?i?[3,f.CQ.COMPRESSED_RGBA_S3TC_DXT5_EXT]:[2,f.CQ.COMPRESSED_RGB_S3TC_DXT1_EXT]:[13,6408],h=t.hasMipmap?r:Math.min(1,r),m=[];for(let e=0;e<h;e++)m.push(new Uint8Array(s(e,u))),a(e,u,m[e]);return t.internalFormat=d,t.hasMipmap=m.length>1,t.samplingMode=t.hasMipmap?9987:9729,t.width=n,t.height=o,new g.g(e,t,{type:"compressed",levels:m})}var E=r(53966);const A=()=>E.A.getLogger("esri.views.3d.webgl-engine.lib.DDSUtil");function I(e){return e.charCodeAt(0)+(e.charCodeAt(1)<<8)+(e.charCodeAt(2)<<16)+(e.charCodeAt(3)<<24)}const R=I("DXT1"),F=I("DXT3"),O=I("DXT5");function P(e,t){const r=new Int32Array(e.buffer,e.byteOffset,31);if(542327876!==r[0])return A().error("Invalid magic number in DDS header"),null;if(!(4&r[20]))return A().error("Unsupported format, must contain a FourCC code"),null;const i=r[21];let n,o;switch(i){case R:n=8,o=f.CQ.COMPRESSED_RGB_S3TC_DXT1_EXT;break;case F:n=16,o=f.CQ.COMPRESSED_RGBA_S3TC_DXT3_EXT;break;case O:n=16,o=f.CQ.COMPRESSED_RGBA_S3TC_DXT5_EXT;break;default:return A().error("Unsupported FourCC code:",function(e){return String.fromCharCode(255&e,e>>8&255,e>>16&255,e>>24&255)}(i)),null}let s=1,a=r[4],l=r[3];(3&a||3&l)&&(A().warn("Rounding up compressed texture size to nearest multiple of 4."),a=a+3&-4,l=l+3&-4);const c=a,u=l;let d,h;131072&r[2]&&!1!==t&&(s=Math.max(1,r[7]));let m=e.byteOffset+r[1]+4;const p=[];for(let t=0;t<s;++t)h=(a+3>>2)*(l+3>>2)*n,d=new Uint8Array(e.buffer,m,h),p.push(d),m+=h,a=Math.max(1,a>>1),l=Math.max(1,l>>1);return{textureData:{type:"compressed",levels:p},internalFormat:o,width:c,height:u}}function D(e,t){return t=16*Math.floor(t/16),Math.min(16*Math.round(e/16),t)}function N(e,t){const[r,i]=function({width:e,height:t},{maxPreferredTexturePixels:r,maxTextureSize:i}){const n=Math.max(e,t),o=e*t;if(n<=i&&o<=r)return[e,t];const s=Math.min(Math.sqrt(r/o),i/n);return[D(Math.round(e*s),i),D(Math.round(t*s),i)]}(e,t);return e.width===r&&e.height===i?e:H(e,r,i)}function H(e,t,r){if(e instanceof ImageData)return H(function(e){const t=document.createElement("canvas");t.width=e.width,t.height=e.height;const r=t.getContext("2d");if(null==r)throw new i.A("texture:context-failed","Failed to create 2d context from HTMLCanvasElement");return r.putImageData(e,0,0),t}(e),t,r);const n=document.createElement("canvas");return n.width=t,n.height=r,n.getContext("2d").drawImage(e,0,0,n.width,n.height),n}var L=r(620),z=r(67171);class B{constructor(e,t){this._data=e,this.id=(0,l.c)(),this.events=new n.bk,this._parameters={...U,...t},this._startPreload(e)}dispose(){this.unload(),this._data=this.update=void 0}_startPreload(e){e instanceof HTMLVideoElement?(this.update=t=>this._update(e,t),this._startPreloadVideoElement(e)):e instanceof HTMLImageElement&&this._startPreloadImageElement(e)}_startPreloadVideoElement(e){if(!((0,c.w8)(e.src)||"auto"===e.preload&&e.crossOrigin)&&(e.preload="auto",e.crossOrigin="anonymous",e.src=e.src,e.paused&&e.autoplay)){const t=[];(0,u.i)(e,e=>t.push(e)).then(()=>{e.play()}).finally(()=>t.forEach(e=>e.remove()))}}_startPreloadImageElement(e){(0,c.DB)(e.src)||(0,c.w8)(e.src)||e.crossOrigin||(e.crossOrigin="anonymous",e.src=e.src)}_createDescriptor(e){const t=new z.R;return t.wrapMode=this._parameters.wrap??10497,t.flipped=!this._parameters.noUnpackFlip,t.samplingMode=this._parameters.mipmap?9987:9729,t.hasMipmap=!!this._parameters.mipmap,t.preMultiplyAlpha=!!this._parameters.preMultiplyAlpha,t.maxAnisotropy=this._parameters.maxAnisotropy??(this._parameters.mipmap?e.parameters.maxMaxAnisotropy:1),t}get glTexture(){return this._glTexture??this._emptyTexture}get loaded(){return null!=this._glTexture}get usedMemory(){return this._glTexture?.usedMemory||function(e,t){if(null==e)return 0;if((0,a.mw)(e)||(0,a.mg)(e))return"image/ktx2"===t.encoding?y(e,!!t.mipmap):"image/x.basis"===t.encoding?w(e,!!t.mipmap):e.byteLength;const{width:r,height:i}=e instanceof Image||e instanceof ImageData||e instanceof HTMLCanvasElement||e instanceof HTMLVideoElement?G(e):t;return(t.mipmap?4/3:1)*r*i*(t.components||4)||0}(this._data,this._parameters)}load(e){if(this._loadingPromise)return this._loadingPromise;if(this._glTexture)return this._glTexture;const t=this._data;return null==t?(this._glTexture=new g.g(e,this._createDescriptor(e),null),this._glTexture):(this._emptyTexture=e.emptyTexture,this._parameters.reloadable||(this._data=void 0),"string"==typeof t?this._loadFromURL(e,t):t instanceof Image?this._loadFromImageElement(e,t):t instanceof HTMLVideoElement?this._loadFromVideoElement(e,t):t instanceof ImageData||t instanceof HTMLCanvasElement?this._loadFromImage(e,t):(0,a.mg)(t)&&"image/vnd-ms.dds"===this._parameters.encoding?this._loadFromDDSData(e,t):(0,a.mw)(t)&&"image/vnd-ms.dds"===this._parameters.encoding?this._loadFromDDSData(e,new Uint8Array(t)):((0,a.mw)(t)||(0,a.mg)(t))&&"image/ktx2"===this._parameters.encoding?this._loadFromKTX2(e,t):((0,a.mw)(t)||(0,a.mg)(t))&&"image/x.basis"===this._parameters.encoding?this._loadFromBasis(e,t):(0,a.mg)(t)?this._loadFromPixelData(e,t):(0,a.mw)(t)?this._loadFromPixelData(e,new Uint8Array(t)):null)}_update(e,t){return null==this._glTexture||e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||t===e.currentTime?t:(this._glTexture.setData(e),this._glTexture.descriptor.hasMipmap&&this._glTexture.generateMipmap(),this._parameters.updateCallback&&this._parameters.updateCallback(),e.currentTime)}_loadFromDDSData(e,t){return this._glTexture=function(e,t,r){const i=P(r,t.hasMipmap??!1);if(null==i)throw new Error("DDS texture data is null");const{textureData:n,internalFormat:o,width:s,height:a}=i;return t.samplingMode=n.levels.length>1?9987:9729,t.hasMipmap=n.levels.length>1,t.internalFormat=o,t.width=s,t.height=a,new g.g(e,t,n)}(e,this._createDescriptor(e),t),this._emptyTexture=null,this._glTexture}_loadFromKTX2(e,t){return this._loadAsync(()=>async function(e,t,r){null==_&&(_=await b());const i=new _.KTX2File(new Uint8Array(r));if(!C(i))return null;i.startTranscoding();const n=S(e,t,i.getLevels(),i.getHasAlpha(),i.getWidth(),i.getHeight(),(e,t)=>i.getImageTranscodedSizeInBytes(e,0,0,t),(e,t,r)=>i.transcodeImage(r,e,0,0,t,0,-1,-1));return i.close(),i.delete(),n}(e,this._createDescriptor(e),t).then(e=>(this._glTexture=e,e)))}_loadFromBasis(e,t){return this._loadAsync(()=>async function(e,t,r){null==_&&(_=await b());const i=new _.BasisFile(new Uint8Array(r));if(!T(i))return null;i.startTranscoding();const n=S(e,t,i.getNumLevels(0),i.getHasAlpha(),i.getImageWidth(0,0),i.getImageHeight(0,0),(e,t)=>i.getImageTranscodedSizeInBytes(0,e,t),(e,t,r)=>i.transcodeImage(r,0,e,t,0,0));return i.close(),i.delete(),n}(e,this._createDescriptor(e),t).then(e=>(this._glTexture=e,e)))}_loadFromPixelData(e,t){(0,L.vA)(this._parameters.width>0&&this._parameters.height>0);const r=this._createDescriptor(e);return r.pixelFormat=1===this._parameters.components?6409:3===this._parameters.components?6407:6408,6407!==r.pixelFormat&&6408!==r.pixelFormat||(r.compress=this._parameters.compressionOptions),r.width=this._parameters.width??0,r.height=this._parameters.height??0,this._glTexture=new g.g(e,r,t),this._glTexture}_loadFromURL(e,t){return this._loadAsync(async r=>{const i=await(0,d.D)(t,{signal:r});return(0,s.Te)(r),this._loadFromImage(e,i)})}_loadFromImageElement(e,t){return t.complete?this._loadFromImage(e,t):this._loadAsync(async r=>{const i=await(0,h.Sx)(t,t.src,!1,r);return(0,s.Te)(r),this._loadFromImage(e,i)})}_loadFromVideoElement(e,t){return t.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA?this._loadFromImage(e,t):this._loadFromVideoElementAsync(e,t)}_loadFromVideoElementAsync(e,t){return this._loadAsync(r=>new Promise((n,a)=>{const l=()=>{t.removeEventListener("loadeddata",c),t.removeEventListener("error",u),(0,o.xt)(d)},c=()=>{t.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&(l(),n(this._loadFromImage(e,t)))},u=e=>{l(),a(e||new i.A("texture:load-error","Failed to load video"))};t.addEventListener("loadeddata",c),t.addEventListener("error",u);const d=(0,s.u7)(r,()=>u((0,s.NK)()))}))}_loadFromImage(e,t){let r=t;r instanceof HTMLVideoElement||(r=N(r,e.parameters));const i=G(r);this._parameters.width=i.width,this._parameters.height=i.height;const n=this._createDescriptor(e);return n.pixelFormat=3===this._parameters.components?6407:6408,n.width=i.width,n.height=i.height,n.compress=this._parameters.compressionOptions,this._glTexture=new g.g(e,n,r),this._emptyTexture=null,this.events.emit("loaded"),this._glTexture}_loadAsync(e){const t=new AbortController;this._loadingController=t;const r=e(t.signal);this._loadingPromise=r;const i=()=>{this._loadingController===t&&(this._loadingController=null),this._loadingPromise===r&&(this._loadingPromise=null),this._emptyTexture=null};return r.then(i,i),r}unload(){if(this._glTexture=(0,o.WD)(this._glTexture),this._emptyTexture=null,null!=this._loadingController){const e=this._loadingController;this._loadingController=null,this._loadingPromise=null,e.abort()}this.events.emit("unloaded")}get parameters(){return this._parameters}}function G(e){return e instanceof HTMLVideoElement?{width:e.videoWidth,height:e.videoHeight}:e}const U={wrap:{s:10497,t:10497},mipmap:!0,noUnpackFlip:!1,preMultiplyAlpha:!1}},49255:(e,t,r)=>{function i(e){return 4===e||5===e||6===e||7===e}function n(e){return function(e){return function(e){return a(e)||s(e)}(e)||u(e)}(e)||3===e}function o(e){return function(e){return c(e)||u(e)}(e)||3===e}function s(e){return 8===e||9===e}function a(e){return 0===e}function l(e){return a(e)||d(e)}function c(e){return l(e)||s(e)}function u(e){return 2===e}function d(e){return 1===e}function h(e){switch(e){case 2:case 4:case 5:case 6:case 7:return!0}return!1}r.d(t,{LG:()=>d,Mb:()=>c,PJ:()=>i,RN:()=>l,Vg:()=>h,XY:()=>n,iq:()=>o})},49718:(e,t,r)=>{r(51850),r(6867).i},49788:(e,t,r)=>{r.d(t,{Q:()=>i});const i=1/255.5},51406:(e,t,r)=>{r.d(t,{MU:()=>l,O1:()=>c,QM:()=>u,Sx:()=>a,q2:()=>s});var i=r(29242),n=r(31821),o=r(35644);function s(e,t){t.hasColorTextureTransform?(e.varyings.add("colorUV","vec2"),e.vertex.uniforms.add(new o.k("colorTextureTransformMatrix",e=>e.colorTextureTransformMatrix??i.zK)).code.add(n.H`void forwardColorUV(){
500
+ `)}},47286:(e,t,r)=>{r.d(t,{G:()=>n});var i=r(74333);class n extends i.n{constructor(e,t,r){super(e,"vec2",1,(i,n,o)=>i.setUniform2fv(e,t(n,o),r))}}},48833:(e,t,r)=>{r.d(t,{g:()=>B}),r(44208);var i=r(49186),n=r(65529),o=r(97768),s=r(74887),a=r(34275),l=r(24326),c=r(84952),u=r(38969),d=r(99677),h=r(56058),m=r(2741);let p;var f=r(63907),g=r(76284),v=r(42293);let _=null,x=null;async function b(){return null==x&&(p??=(async()=>{const e=await r.e(9321).then(r.bind(r,49321)),t=await e.default({locateFile:e=>(0,m.s)(`esri/libs/basisu/${e}`)});return t.initializeBasis(),t})(),x=p,_=await x),x}function w(e,t){if(null==_)return e.byteLength;const r=new _.BasisFile(new Uint8Array(e)),i=T(r)?M(r.getNumLevels(0),r.getHasAlpha(),r.getImageWidth(0,0),r.getImageHeight(0,0),t):0;return r.close(),r.delete(),i}function y(e,t){if(null==_)return e.byteLength;const r=new _.KTX2File(new Uint8Array(e)),i=C(r)?M(r.getLevels(),r.getHasAlpha(),r.getWidth(),r.getHeight(),t):0;return r.close(),r.delete(),i}function M(e,t,r,i,n){const o=(0,v.I)(t?f.CQ.COMPRESSED_RGBA8_ETC2_EAC:f.CQ.COMPRESSED_RGB8_ETC2),s=n&&e>1?(4**e-1)/(3*4**(e-1)):1;return Math.ceil(r*i*o*s)}function T(e){return e.getNumImages()>=1&&!e.isUASTC()}function C(e){return e.getFaces()>=1&&e.isETC1S()}function S(e,t,r,i,n,o,s,a){const{compressedTextureETC:l,compressedTextureS3TC:c}=e.capabilities,[u,d]=l?i?[1,f.CQ.COMPRESSED_RGBA8_ETC2_EAC]:[0,f.CQ.COMPRESSED_RGB8_ETC2]:c?i?[3,f.CQ.COMPRESSED_RGBA_S3TC_DXT5_EXT]:[2,f.CQ.COMPRESSED_RGB_S3TC_DXT1_EXT]:[13,6408],h=t.hasMipmap?r:Math.min(1,r),m=[];for(let e=0;e<h;e++)m.push(new Uint8Array(s(e,u))),a(e,u,m[e]);return t.internalFormat=d,t.hasMipmap=m.length>1,t.samplingMode=t.hasMipmap?9987:9729,t.width=n,t.height=o,new g.g(e,t,{type:"compressed",levels:m})}var E=r(53966);const A=()=>E.A.getLogger("esri.views.3d.webgl-engine.lib.DDSUtil");function I(e){return e.charCodeAt(0)+(e.charCodeAt(1)<<8)+(e.charCodeAt(2)<<16)+(e.charCodeAt(3)<<24)}const R=I("DXT1"),F=I("DXT3"),O=I("DXT5");function P(e,t){const r=new Int32Array(e.buffer,e.byteOffset,31);if(542327876!==r[0])return A().error("Invalid magic number in DDS header"),null;if(!(4&r[20]))return A().error("Unsupported format, must contain a FourCC code"),null;const i=r[21];let n,o;switch(i){case R:n=8,o=f.CQ.COMPRESSED_RGB_S3TC_DXT1_EXT;break;case F:n=16,o=f.CQ.COMPRESSED_RGBA_S3TC_DXT3_EXT;break;case O:n=16,o=f.CQ.COMPRESSED_RGBA_S3TC_DXT5_EXT;break;default:return A().error("Unsupported FourCC code:",function(e){return String.fromCharCode(255&e,e>>8&255,e>>16&255,e>>24&255)}(i)),null}let s=1,a=r[4],l=r[3];(3&a||3&l)&&(A().warn("Rounding up compressed texture size to nearest multiple of 4."),a=a+3&-4,l=l+3&-4);const c=a,u=l;let d,h;131072&r[2]&&!1!==t&&(s=Math.max(1,r[7]));let m=e.byteOffset+r[1]+4;const p=[];for(let t=0;t<s;++t)h=(a+3>>2)*(l+3>>2)*n,d=new Uint8Array(e.buffer,m,h),p.push(d),m+=h,a=Math.max(1,a>>1),l=Math.max(1,l>>1);return{textureData:{type:"compressed",levels:p},internalFormat:o,width:c,height:u}}function D(e,t){return t=16*Math.floor(t/16),Math.min(16*Math.round(e/16),t)}function N(e,t){const[r,i]=function({width:e,height:t},{maxPreferredTexturePixels:r,maxTextureSize:i}){const n=Math.max(e,t),o=e*t;if(n<=i&&o<=r)return[e,t];const s=Math.min(Math.sqrt(r/o),i/n);return[D(Math.round(e*s),i),D(Math.round(t*s),i)]}(e,t);return e.width===r&&e.height===i?e:H(e,r,i)}function H(e,t,r){if(e instanceof ImageData)return H(function(e){const t=document.createElement("canvas");t.width=e.width,t.height=e.height;const r=t.getContext("2d");if(null==r)throw new i.A("texture:context-failed","Failed to create 2d context from HTMLCanvasElement");return r.putImageData(e,0,0),t}(e),t,r);const n=document.createElement("canvas");return n.width=t,n.height=r,n.getContext("2d").drawImage(e,0,0,n.width,n.height),n}var L=r(620),z=r(67171);class B{constructor(e,t){this._data=e,this.id=(0,l.c)(),this.events=new n.bk,this._parameters={...U,...t},this._startPreload(e)}dispose(){this.unload(),this._data=this.update=void 0}_startPreload(e){e instanceof HTMLVideoElement?(this.update=t=>this._update(e,t),this._startPreloadVideoElement(e)):e instanceof HTMLImageElement&&this._startPreloadImageElement(e)}_startPreloadVideoElement(e){if(!((0,c.w8)(e.src)||"auto"===e.preload&&e.crossOrigin)&&(e.preload="auto",e.crossOrigin="anonymous",e.src=e.src,e.paused&&e.autoplay)){const t=[];(0,u.i)(e,e=>t.push(e)).then(()=>{e.play()}).finally(()=>t.forEach(e=>e.remove()))}}_startPreloadImageElement(e){(0,c.DB)(e.src)||(0,c.w8)(e.src)||e.crossOrigin||(e.crossOrigin="anonymous",e.src=e.src)}_createDescriptor(e){const t=new z.R;return t.wrapMode=this._parameters.wrap??10497,t.flipped=!this._parameters.noUnpackFlip,t.samplingMode=this._parameters.mipmap?9987:9729,t.hasMipmap=!!this._parameters.mipmap,t.preMultiplyAlpha=!!this._parameters.preMultiplyAlpha,t.maxAnisotropy=this._parameters.maxAnisotropy??(this._parameters.mipmap?e.parameters.maxMaxAnisotropy:1),t}get glTexture(){return this._glTexture??this._emptyTexture}get loaded(){return null!=this._glTexture}get usedMemory(){return this._glTexture?.usedMemory||function(e,t){if(null==e)return 0;if((0,a.mw)(e)||(0,a.mg)(e))return"image/ktx2"===t.encoding?y(e,!!t.mipmap):"image/x.basis"===t.encoding?w(e,!!t.mipmap):e.byteLength;const{width:r,height:i}=e instanceof Image||e instanceof ImageData||e instanceof HTMLCanvasElement||e instanceof HTMLVideoElement?G(e):t;return(t.mipmap?4/3:1)*r*i*(t.components||4)||0}(this._data,this._parameters)}load(e){if(this._loadingPromise)return this._loadingPromise;if(this._glTexture)return this._glTexture;const t=this._data;return null==t?(this._glTexture=new g.g(e,this._createDescriptor(e),null),this._glTexture):(this._emptyTexture=e.emptyTexture,this._parameters.reloadable||(this._data=void 0),"string"==typeof t?this._loadFromURL(e,t):t instanceof Image?this._loadFromImageElement(e,t):t instanceof HTMLVideoElement?this._loadFromVideoElement(e,t):t instanceof ImageData||t instanceof HTMLCanvasElement?this._loadFromImage(e,t):(0,a.mg)(t)&&"image/vnd-ms.dds"===this._parameters.encoding?this._loadFromDDSData(e,t):(0,a.mw)(t)&&"image/vnd-ms.dds"===this._parameters.encoding?this._loadFromDDSData(e,new Uint8Array(t)):((0,a.mw)(t)||(0,a.mg)(t))&&"image/ktx2"===this._parameters.encoding?this._loadFromKTX2(e,t):((0,a.mw)(t)||(0,a.mg)(t))&&"image/x.basis"===this._parameters.encoding?this._loadFromBasis(e,t):(0,a.mg)(t)?this._loadFromPixelData(e,t):(0,a.mw)(t)?this._loadFromPixelData(e,new Uint8Array(t)):null)}_update(e,t){return null==this._glTexture||e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||t===e.currentTime?t:(this._glTexture.setData(e),this._glTexture.descriptor.hasMipmap&&this._glTexture.generateMipmap(),this._parameters.updateCallback&&this._parameters.updateCallback(),e.currentTime)}_loadFromDDSData(e,t){return this._glTexture=function(e,t,r){const i=P(r,t.hasMipmap??!1);if(null==i)throw new Error("DDS texture data is null");const{textureData:n,internalFormat:o,width:s,height:a}=i;return t.samplingMode=n.levels.length>1?9987:9729,t.hasMipmap=n.levels.length>1,t.internalFormat=o,t.width=s,t.height=a,new g.g(e,t,n)}(e,this._createDescriptor(e),t),this._emptyTexture=null,this._glTexture}_loadFromKTX2(e,t){return this._loadAsync(()=>async function(e,t,r){null==_&&(_=await b());const i=new _.KTX2File(new Uint8Array(r));if(!C(i))return null;i.startTranscoding();const n=S(e,t,i.getLevels(),i.getHasAlpha(),i.getWidth(),i.getHeight(),(e,t)=>i.getImageTranscodedSizeInBytes(e,0,0,t),(e,t,r)=>i.transcodeImage(r,e,0,0,t,0,-1,-1));return i.close(),i.delete(),n}(e,this._createDescriptor(e),t).then(e=>(this._glTexture=e,e)))}_loadFromBasis(e,t){return this._loadAsync(()=>async function(e,t,r){null==_&&(_=await b());const i=new _.BasisFile(new Uint8Array(r));if(!T(i))return null;i.startTranscoding();const n=S(e,t,i.getNumLevels(0),i.getHasAlpha(),i.getImageWidth(0,0),i.getImageHeight(0,0),(e,t)=>i.getImageTranscodedSizeInBytes(0,e,t),(e,t,r)=>i.transcodeImage(r,0,e,t,0,0));return i.close(),i.delete(),n}(e,this._createDescriptor(e),t).then(e=>(this._glTexture=e,e)))}_loadFromPixelData(e,t){(0,L.vA)(this._parameters.width>0&&this._parameters.height>0);const r=this._createDescriptor(e);return r.pixelFormat=1===this._parameters.components?6409:3===this._parameters.components?6407:6408,6407!==r.pixelFormat&&6408!==r.pixelFormat||(r.compress=this._parameters.compressionOptions),r.width=this._parameters.width??0,r.height=this._parameters.height??0,this._glTexture=new g.g(e,r,t),this._glTexture}_loadFromURL(e,t){return this._loadAsync(async r=>{const i=await(0,d.D)(t,{signal:r});return(0,s.Te)(r),this._loadFromImage(e,i)})}_loadFromImageElement(e,t){return t.complete?this._loadFromImage(e,t):this._loadAsync(async r=>{const i=await(0,h.Sx)(t,t.src,!1,r);return(0,s.Te)(r),this._loadFromImage(e,i)})}_loadFromVideoElement(e,t){return t.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA?this._loadFromImage(e,t):this._loadFromVideoElementAsync(e,t)}_loadFromVideoElementAsync(e,t){return this._loadAsync(r=>new Promise((n,a)=>{const l=()=>{t.removeEventListener("loadeddata",c),t.removeEventListener("error",u),(0,o.xt)(d)},c=()=>{t.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&(l(),n(this._loadFromImage(e,t)))},u=e=>{l(),a(e||new i.A("texture:load-error","Failed to load video"))};t.addEventListener("loadeddata",c),t.addEventListener("error",u);const d=(0,s.u7)(r,()=>u((0,s.NK)()))}))}_loadFromImage(e,t){let r=t;r instanceof HTMLVideoElement||(r=N(r,e.parameters));const i=G(r);this._parameters.width=i.width,this._parameters.height=i.height;const n=this._createDescriptor(e);return n.pixelFormat=3===this._parameters.components?6407:6408,n.width=i.width,n.height=i.height,n.compress=this._parameters.compressionOptions,this._glTexture=new g.g(e,n,r),this._emptyTexture=null,this.events.emit("loaded"),this._glTexture}_loadAsync(e){const t=new AbortController;this._loadingController=t;const r=e(t.signal);this._loadingPromise=r;const i=()=>{this._loadingController===t&&(this._loadingController=null),this._loadingPromise===r&&(this._loadingPromise=null),this._emptyTexture=null};return r.then(i,i),r}unload(){if(this._glTexture=(0,o.WD)(this._glTexture),this._emptyTexture=null,null!=this._loadingController){const e=this._loadingController;this._loadingController=null,this._loadingPromise=null,e.abort()}this.events.emit("unloaded")}get parameters(){return this._parameters}}function G(e){return e instanceof HTMLVideoElement?{width:e.videoWidth,height:e.videoHeight}:e}const U={wrap:{s:10497,t:10497},mipmap:!0,noUnpackFlip:!1,preMultiplyAlpha:!1}},49255:(e,t,r)=>{function i(e){return 4===e||5===e||6===e||7===e}function n(e){return function(e){return s(e)||function(e){return 2===e}(e)}(e)||3===e}function o(e){return function(e){return 0===e}(e)||a(e)}function s(e){return o(e)||function(e){return 8===e||9===e}(e)}function a(e){return 1===e}function l(e){switch(e){case 2:case 4:case 5:case 6:case 7:return!0}return!1}r.d(t,{LG:()=>a,Mb:()=>s,PJ:()=>i,RN:()=>o,Vg:()=>l,iq:()=>n})},49718:(e,t,r)=>{r(51850),r(6867).i},49788:(e,t,r)=>{r.d(t,{Q:()=>i});const i=1/255.5},51406:(e,t,r)=>{r.d(t,{MU:()=>l,O1:()=>c,QM:()=>u,Sx:()=>a,q2:()=>s});var i=r(29242),n=r(31821),o=r(35644);function s(e,t){t.hasColorTextureTransform?(e.varyings.add("colorUV","vec2"),e.vertex.uniforms.add(new o.k("colorTextureTransformMatrix",e=>e.colorTextureTransformMatrix??i.zK)).code.add(n.H`void forwardColorUV(){
508
501
  colorUV = (colorTextureTransformMatrix * vec3(vuv0, 1.0)).xy;
509
502
  }`)):e.vertex.code.add(n.H`void forwardColorUV(){}`)}function a(e,t){t.hasNormalTextureTransform&&0!==t.textureCoordinateType?(e.varyings.add("normalUV","vec2"),e.vertex.uniforms.add(new o.k("normalTextureTransformMatrix",e=>e.normalTextureTransformMatrix??i.zK)).code.add(n.H`void forwardNormalUV(){
510
503
  normalUV = (normalTextureTransformMatrix * vec3(vuv0, 1.0)).xy;
@@ -631,7 +624,7 @@ float occlusion;`),u&&c.uniforms.add(1===p?new l.N("texMetallicRoughness",e=>e.t
631
624
  ${(0,s.If)(u,`applyMetallicRoughness(${d?"metallicRoughnessUV":"vuv0"});`)}
632
625
  ${(0,s.If)(h,`applyOcclusion(${m?"occlusionUV":"vuv0"});`)}
633
626
  }
634
- `)}(r(74810),r(65786)).Y},59907:(e,t,r)=>{r.d(t,{Hk:()=>h,Pq:()=>d,Ut:()=>u,p1:()=>m,tb:()=>p,uO:()=>a,vJ:()=>g,vx:()=>f}),r(38954);var i=r(51850),n=r(58083),o=r(13030),s=r(620);function a(e,t,r,i=1){const{data:n,indices:o}=e,s=t.typedBuffer,a=t.typedBufferStride,l=o.length;if(r*=a,1===i)for(let e=0;e<l;++e)s[r]=n[o[e]],r+=a;else for(let e=0;e<l;++e){const t=n[o[e]];for(let e=0;e<i;e++)s[r]=t,r+=a}}function l(e,t,r){const{data:i,indices:n}=e,o=t.typedBuffer,s=t.typedBufferStride,a=n.length;r*=s;for(let e=0;e<a;++e){const t=2*n[e];o[r]=i[t],o[r+1]=i[t+1],r+=s}}function c(e,t,r,i=1){const{data:n,indices:o}=e,s=t.typedBuffer,a=t.typedBufferStride,l=o.length;if(r*=a,1===i)for(let e=0;e<l;++e){const t=3*o[e];s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],r+=a}else for(let e=0;e<l;++e){const t=3*o[e];for(let e=0;e<i;++e)s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],r+=a}}function u(e,t,r,i=1){const{data:n,indices:o}=e,s=t.typedBuffer,a=t.typedBufferStride,l=o.length;if(r*=a,1===i)for(let e=0;e<l;++e){const t=4*o[e];s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],s[r+3]=n[t+3],r+=a}else for(let e=0;e<l;++e){const t=4*o[e];for(let e=0;e<i;++e)s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],s[r+3]=n[t+3],r+=a}}function d(e,t,r){const i=e.typedBuffer,n=e.typedBufferStride;t*=n;for(let e=0;e<r;++e)i[t]=0,i[t+1]=0,i[t+2]=0,i[t+3]=0,t+=n}function h(e,t,r,i,o=1){if(!t)return void c(e,r,i,o);const{data:s,indices:a}=e,l=r.typedBuffer,u=r.typedBufferStride,d=a.length,h=t[0],m=t[1],p=t[2],f=t[4],g=t[5],v=t[6],_=t[8],x=t[9],b=t[10],w=t[12],y=t[13],M=t[14];i*=u;let T=0,C=0,S=0;const E=(0,n.tZ)(t)?e=>{T=s[e]+w,C=s[e+1]+y,S=s[e+2]+M}:e=>{const t=s[e],r=s[e+1],i=s[e+2];T=h*t+f*r+_*i+w,C=m*t+g*r+x*i+y,S=p*t+v*r+b*i+M};if(1===o)for(let e=0;e<d;++e)E(3*a[e]),l[i]=T,l[i+1]=C,l[i+2]=S,i+=u;else for(let e=0;e<d;++e){E(3*a[e]);for(let e=0;e<o;++e)l[i]=T,l[i+1]=C,l[i+2]=S,i+=u}}function m(e,t,r,i,o=1){if(!t)return void c(e,r,i,o);const{data:s,indices:a}=e,l=t,u=r.typedBuffer,d=r.typedBufferStride,h=a.length,m=l[0],p=l[1],f=l[2],g=l[4],v=l[5],_=l[6],x=l[8],b=l[9],w=l[10],y=!(0,n.ut)(l),M=1e-6,T=1-M;i*=d;let C=0,S=0,E=0;const A=(0,n.tZ)(l)?e=>{C=s[e],S=s[e+1],E=s[e+2]}:e=>{const t=s[e],r=s[e+1],i=s[e+2];C=m*t+g*r+x*i,S=p*t+v*r+b*i,E=f*t+_*r+w*i};if(1===o)if(y)for(let e=0;e<h;++e){A(3*a[e]);const t=C*C+S*S+E*E;if(t<T&&t>M){const e=1/Math.sqrt(t);u[i]=C*e,u[i+1]=S*e,u[i+2]=E*e}else u[i]=C,u[i+1]=S,u[i+2]=E;i+=d}else for(let e=0;e<h;++e)A(3*a[e]),u[i]=C,u[i+1]=S,u[i+2]=E,i+=d;else for(let e=0;e<h;++e){if(A(3*a[e]),y){const e=C*C+S*S+E*E;if(e<T&&e>M){const t=1/Math.sqrt(e);C*=t,S*=t,E*=t}}for(let e=0;e<o;++e)u[i]=C,u[i+1]=S,u[i+2]=E,i+=d}}function p(e,t,r,i,n=1){const{data:o,indices:s}=e,a=r.typedBuffer,l=r.typedBufferStride,c=s.length;if(i*=l,t===o.length&&4===t){a[i]=o[0],a[i+1]=o[1],a[i+2]=o[2],a[i+3]=o[3];const e=new Uint32Array(r.typedBuffer.buffer,r.start),t=l/4,s=e[i/=4];i+=t;const u=c*n;for(let r=1;r<u;++r)e[i]=s,i+=t;return}if(1!==n)if(4!==t)for(let e=0;e<c;++e){const t=3*s[e];for(let e=0;e<n;++e)a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=255,i+=l}else for(let e=0;e<c;++e){const t=4*s[e];for(let e=0;e<n;++e)a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=o[t+3],i+=l}else{if(4===t){for(let e=0;e<c;++e){const t=4*s[e];a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=o[t+3],i+=l}return}for(let e=0;e<c;++e){const t=3*s[e];a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=255,i+=l}}}function f(e,t,r,i,n=1){const o=t.typedBuffer,s=t.typedBufferStride;if(i*=s,1===n)for(let t=0;t<r;++t)o[i]=e[0],o[i+1]=e[1],o[i+2]=e[2],o[i+3]=e[3],i+=s;else for(let t=0;t<r;++t)for(let t=0;t<n;++t)o[i]=e[0],o[i+1]=e[1],o[i+2]=e[2],o[i+3]=e[3],i+=s}function g(e,t,r,i,n,s,a){let l={numItems:0,numVerticesPerItem:0};for(const c of r.fields.keys()){const r=e.get(c),u=r?.indices;if(r&&u)"position"===c&&(l={numItems:1,numVerticesPerItem:u.length}),v(c,r,i,n,s,a);else if("olidColor"===c&&null!=t){const r=e.get("position")?.indices;if(r){const e=r.length;f(t,s.getField(c,o.XP),e,a)}}}return l}function v(e,t,r,i,a,d){switch(e){case"position":{(0,s.vA)(3===t.size);const i=a.getField(e,o.xs);(0,s.vA)(!!i,`No buffer view for ${e}`),h(t,r,i,d);break}case"normal":{(0,s.vA)(3===t.size);const r=a.getField(e,o.xs);(0,s.vA)(!!r,`No buffer view for ${e}`),m(t,i,r,d);break}case"normalCompressed":case"profileRight":case"profileUp":{(0,s.vA)(2===t.size);const r=a.getField(e,o.mJ);(0,s.vA)(!!r,`No buffer view for ${e}`),l(t,r,d);break}case"uv0":{(0,s.vA)(2===t.size);const r=a.getField(e,o.ZD)??a.getField(e,o.gH);(0,s.vA)(!!r,`No buffer view for ${e}`),l(t,r,d);break}case"uvi":{(0,s.vA)(2===t.size);const r=a.getField(e,o.mJ);(0,s.vA)(!!r,`No buffer view for ${e}`),l(t,r,d);break}case"color":case"symbolColor":{const r=a.getField(e,o.XP);(0,s.vA)(!!r,`No buffer view for ${e}`),(0,s.vA)(3===t.size||4===t.size),p(t,t.size,r,d);break}case"colorFeatureAttribute":case"opacityFeatureAttribute":case"sizeFeatureAttribute":{const r=a.getField(e,o.Y$)??a.getField(e,o.Y$);(0,s.vA)(!!r,`No buffer view for ${e}`),(0,s.vA)(1===t.size),function(e,t,r){const{data:i,indices:n}=e,o=t.typedBuffer,s=t.typedBufferStride,a=n.length,l=i[0];r*=s;for(let e=0;e<a;++e)o[r]=l,r+=s}(t,r,d);break}case"tangent":{(0,s.vA)(4===t.size);const i=a.getField(e,o.Eq);(0,s.vA)(!!i,`No buffer view for ${e}`),function(e,t,r,i,o=1){if(!t)return void u(e,r,i,o);const{data:s,indices:a}=e,l=t,c=r.typedBuffer,d=r.typedBufferStride,h=a.length,m=l[0],p=l[1],f=l[2],g=l[4],v=l[5],_=l[6],x=l[8],b=l[9],w=l[10],y=!(0,n.ut)(l),M=1e-6,T=1-M;if(i*=d,1===o)for(let e=0;e<h;++e){const t=4*a[e],r=s[t],n=s[t+1],o=s[t+2],l=s[t+3];let u=m*r+g*n+x*o,h=p*r+v*n+b*o,C=f*r+_*n+w*o;if(y){const e=u*u+h*h+C*C;if(e<T&&e>M){const t=1/Math.sqrt(e);u*=t,h*=t,C*=t}}c[i]=u,c[i+1]=h,c[i+2]=C,c[i+3]=l,i+=d}else for(let e=0;e<h;++e){const t=4*a[e],r=s[t],n=s[t+1],l=s[t+2],u=s[t+3];let h=m*r+g*n+x*l,C=p*r+v*n+b*l,S=f*r+_*n+w*l;if(y){const e=h*h+C*C+S*S;if(e<T&&e>M){const t=1/Math.sqrt(e);h*=t,C*=t,S*=t}}for(let e=0;e<o;++e)c[i]=h,c[i+1]=C,c[i+2]=S,c[i+3]=u,i+=d}}(t,r,i,d);break}case"profileVertexAndNormal":{(0,s.vA)(4===t.size);const r=a.getField(e,o.jz)??a.getField(e,o.Eq);(0,s.vA)(!!r,`No buffer view for ${e}`),u(t,r,d);break}case"profileAuxData":{(0,s.vA)(3===t.size);const r=a.getField(e,o.EC)??a.getField(e,o.xs);(0,s.vA)(!!r,`No buffer view for ${e}`),c(t,r,d);break}}}(0,i.vt)()},60517:(e,t,r)=>{r.d(t,{z:()=>c});var i=r(49255),n=r(22911),o=r(42593),s=r(63365),a=r(31821),l=r(49788);function c(e,t){e.include(o.Q,t),e.include(n.NL,t),e.fragment.include(s.a);const{output:r,oitPass:c,discardInvisibleFragments:u,snowCover:d}=t,h=9===r,m=(0,i.LG)(r),p=(0,i.RN)(r)&&1===c,f=(0,i.RN)(r)&&1!==c;let g=0;(f||m||p)&&e.outputs.add("fragColor","vec4",g++),m&&e.outputs.add("fragEmission","vec4",g++),p&&e.outputs.add("fragAlpha","float",g++),e.fragment.code.add(a.H`
627
+ `)}(r(74810),r(65786)).Y},59907:(e,t,r)=>{r.d(t,{Hk:()=>h,Pq:()=>d,Ut:()=>u,p1:()=>m,tb:()=>p,uO:()=>a,vJ:()=>g,vx:()=>f}),r(38954);var i=r(51850),n=r(58083),o=r(13030),s=r(620);function a(e,t,r,i=1){const{data:n,indices:o}=e,s=t.typedBuffer,a=t.typedBufferStride,l=o.length;if(r*=a,1===i)for(let e=0;e<l;++e)s[r]=n[o[e]],r+=a;else for(let e=0;e<l;++e){const t=n[o[e]];for(let e=0;e<i;e++)s[r]=t,r+=a}}function l(e,t,r){const{data:i,indices:n}=e,o=t.typedBuffer,s=t.typedBufferStride,a=n.length;r*=s;for(let e=0;e<a;++e){const t=2*n[e];o[r]=i[t],o[r+1]=i[t+1],r+=s}}function c(e,t,r,i=1){const{data:n,indices:o}=e,s=t.typedBuffer,a=t.typedBufferStride,l=o.length;if(r*=a,1===i)for(let e=0;e<l;++e){const t=3*o[e];s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],r+=a}else for(let e=0;e<l;++e){const t=3*o[e];for(let e=0;e<i;++e)s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],r+=a}}function u(e,t,r,i=1){const{data:n,indices:o}=e,s=t.typedBuffer,a=t.typedBufferStride,l=o.length;if(r*=a,1===i)for(let e=0;e<l;++e){const t=4*o[e];s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],s[r+3]=n[t+3],r+=a}else for(let e=0;e<l;++e){const t=4*o[e];for(let e=0;e<i;++e)s[r]=n[t],s[r+1]=n[t+1],s[r+2]=n[t+2],s[r+3]=n[t+3],r+=a}}function d(e,t,r){const i=e.typedBuffer,n=e.typedBufferStride;t*=n;for(let e=0;e<r;++e)i[t]=0,i[t+1]=0,i[t+2]=0,i[t+3]=0,t+=n}function h(e,t,r,i,o=1){if(!t)return void c(e,r,i,o);const{data:s,indices:a}=e,l=r.typedBuffer,u=r.typedBufferStride,d=a.length,h=t[0],m=t[1],p=t[2],f=t[4],g=t[5],v=t[6],_=t[8],x=t[9],b=t[10],w=t[12],y=t[13],M=t[14];i*=u;let T=0,C=0,S=0;const E=(0,n.tZ)(t)?e=>{T=s[e]+w,C=s[e+1]+y,S=s[e+2]+M}:e=>{const t=s[e],r=s[e+1],i=s[e+2];T=h*t+f*r+_*i+w,C=m*t+g*r+x*i+y,S=p*t+v*r+b*i+M};if(1===o)for(let e=0;e<d;++e)E(3*a[e]),l[i]=T,l[i+1]=C,l[i+2]=S,i+=u;else for(let e=0;e<d;++e){E(3*a[e]);for(let e=0;e<o;++e)l[i]=T,l[i+1]=C,l[i+2]=S,i+=u}}function m(e,t,r,i,o=1){if(!t)return void c(e,r,i,o);const{data:s,indices:a}=e,l=t,u=r.typedBuffer,d=r.typedBufferStride,h=a.length,m=l[0],p=l[1],f=l[2],g=l[4],v=l[5],_=l[6],x=l[8],b=l[9],w=l[10],y=!(0,n.ut)(l),M=1e-6,T=1-M;i*=d;let C=0,S=0,E=0;const A=(0,n.tZ)(l)?e=>{C=s[e],S=s[e+1],E=s[e+2]}:e=>{const t=s[e],r=s[e+1],i=s[e+2];C=m*t+g*r+x*i,S=p*t+v*r+b*i,E=f*t+_*r+w*i};if(1===o)if(y)for(let e=0;e<h;++e){A(3*a[e]);const t=C*C+S*S+E*E;if(t<T&&t>M){const e=1/Math.sqrt(t);u[i]=C*e,u[i+1]=S*e,u[i+2]=E*e}else u[i]=C,u[i+1]=S,u[i+2]=E;i+=d}else for(let e=0;e<h;++e)A(3*a[e]),u[i]=C,u[i+1]=S,u[i+2]=E,i+=d;else for(let e=0;e<h;++e){if(A(3*a[e]),y){const e=C*C+S*S+E*E;if(e<T&&e>M){const t=1/Math.sqrt(e);C*=t,S*=t,E*=t}}for(let e=0;e<o;++e)u[i]=C,u[i+1]=S,u[i+2]=E,i+=d}}function p(e,t,r,i,n=1){const{data:o,indices:s}=e,a=r.typedBuffer,l=r.typedBufferStride,c=s.length;if(i*=l,t===o.length&&4===t){a[i]=o[0],a[i+1]=o[1],a[i+2]=o[2],a[i+3]=o[3];const e=new Uint32Array(r.typedBuffer.buffer,r.start),t=l/4,s=e[i/=4];i+=t;const u=c*n;for(let r=1;r<u;++r)e[i]=s,i+=t;return}if(1!==n)if(4!==t)for(let e=0;e<c;++e){const t=3*s[e];for(let e=0;e<n;++e)a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=255,i+=l}else for(let e=0;e<c;++e){const t=4*s[e];for(let e=0;e<n;++e)a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=o[t+3],i+=l}else{if(4===t){for(let e=0;e<c;++e){const t=4*s[e];a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=o[t+3],i+=l}return}for(let e=0;e<c;++e){const t=3*s[e];a[i]=o[t],a[i+1]=o[t+1],a[i+2]=o[t+2],a[i+3]=255,i+=l}}}function f(e,t,r,i,n=1){const o=t.typedBuffer,s=t.typedBufferStride;if(i*=s,1===n)for(let t=0;t<r;++t)o[i]=e[0],o[i+1]=e[1],o[i+2]=e[2],o[i+3]=e[3],i+=s;else for(let t=0;t<r;++t)for(let t=0;t<n;++t)o[i]=e[0],o[i+1]=e[1],o[i+2]=e[2],o[i+3]=e[3],i+=s}function g(e,t,r,i,n,s,a){let l={numItems:0,numVerticesPerItem:0};for(const c of r.fields.keys()){const r=e.get(c),u=r?.indices;if(r&&u)"position"===c&&(l={numItems:1,numVerticesPerItem:u.length}),v(c,r,i,n,s,a);else if("olidColor"===c&&null!=t){const r=e.get("position")?.indices;if(r){const e=r.length;f(t,s.getField(c,o.XP),e,a)}}}return l}function v(e,t,r,i,a,d){switch(e){case"position":{(0,s.vA)(3===t.size);const i=a.getField(e,o.xs);(0,s.vA)(!!i,`No buffer view for ${e}`),h(t,r,i,d);break}case"normal":{(0,s.vA)(3===t.size);const r=a.getField(e,o.xs);(0,s.vA)(!!r,`No buffer view for ${e}`),m(t,i,r,d);break}case"normalCompressed":case"profileRight":case"profileUp":{(0,s.vA)(2===t.size);const r=a.getField(e,o.mJ);(0,s.vA)(!!r,`No buffer view for ${e}`),l(t,r,d);break}case"uv0":{(0,s.vA)(2===t.size);const r=a.getField(e,o.ZD)??a.getField(e,o.gH);(0,s.vA)(!!r,`No buffer view for ${e}`),l(t,r,d);break}case"uvi":{(0,s.vA)(2===t.size);const r=a.getField(e,o.mJ);(0,s.vA)(!!r,`No buffer view for ${e}`),l(t,r,d);break}case"color":case"symbolColor":{const r=a.getField(e,o.XP);(0,s.vA)(!!r,`No buffer view for ${e}`),(0,s.vA)(3===t.size||4===t.size),p(t,t.size,r,d);break}case"colorFeatureAttribute":case"opacityFeatureAttribute":case"sizeFeatureAttribute":{const r=a.getField(e,o.Y$)??a.getField(e,o.Y$);(0,s.vA)(!!r,`No buffer view for ${e}`),(0,s.vA)(1===t.size),function(e,t,r){const{data:i,indices:n}=e,o=t.typedBuffer,s=t.typedBufferStride,a=n.length,l=i[0];r*=s;for(let e=0;e<a;++e)o[r]=l,r+=s}(t,r,d);break}case"tangent":{(0,s.vA)(4===t.size);const i=a.getField(e,o.Eq);(0,s.vA)(!!i,`No buffer view for ${e}`),function(e,t,r,i,o=1){if(!t)return void u(e,r,i,o);const{data:s,indices:a}=e,l=t,c=r.typedBuffer,d=r.typedBufferStride,h=a.length,m=l[0],p=l[1],f=l[2],g=l[4],v=l[5],_=l[6],x=l[8],b=l[9],w=l[10],y=!(0,n.ut)(l),M=1e-6,T=1-M;if(i*=d,1===o)for(let e=0;e<h;++e){const t=4*a[e],r=s[t],n=s[t+1],o=s[t+2],l=s[t+3];let u=m*r+g*n+x*o,h=p*r+v*n+b*o,C=f*r+_*n+w*o;if(y){const e=u*u+h*h+C*C;if(e<T&&e>M){const t=1/Math.sqrt(e);u*=t,h*=t,C*=t}}c[i]=u,c[i+1]=h,c[i+2]=C,c[i+3]=l,i+=d}else for(let e=0;e<h;++e){const t=4*a[e],r=s[t],n=s[t+1],l=s[t+2],u=s[t+3];let h=m*r+g*n+x*l,C=p*r+v*n+b*l,S=f*r+_*n+w*l;if(y){const e=h*h+C*C+S*S;if(e<T&&e>M){const t=1/Math.sqrt(e);h*=t,C*=t,S*=t}}for(let e=0;e<o;++e)c[i]=h,c[i+1]=C,c[i+2]=S,c[i+3]=u,i+=d}}(t,r,i,d);break}case"profileVertexAndNormal":{(0,s.vA)(4===t.size);const r=a.getField(e,o.jz)??a.getField(e,o.Eq);(0,s.vA)(!!r,`No buffer view for ${e}`),u(t,r,d);break}case"profileAuxData":{(0,s.vA)(3===t.size);const r=a.getField(e,o.EC)??a.getField(e,o.xs);(0,s.vA)(!!r,`No buffer view for ${e}`),c(t,r,d);break}}}(0,i.vt)()},60517:(e,t,r)=>{r.d(t,{z:()=>c});var i=r(49255),n=r(63201),o=r(42593),s=r(63365),a=r(31821),l=r(49788);function c(e,t){e.include(o.Q,t),e.include(n.NL,t),e.fragment.include(s.a);const{output:r,oitPass:c,discardInvisibleFragments:u,snowCover:d}=t,h=9===r,m=(0,i.LG)(r),p=(0,i.RN)(r)&&1===c,f=(0,i.RN)(r)&&1!==c;let g=0;(f||m||p)&&e.outputs.add("fragColor","vec4",g++),m&&e.outputs.add("fragEmission","vec4",g++),p&&e.outputs.add("fragAlpha","float",g++),e.fragment.code.add(a.H`
635
628
  void outputColorHighlightOID(vec4 finalColor, const in vec3 vWorldPosition, vec3 emissiveSymbolColor ${(0,a.If)(d,", float snow")}) {
636
629
  ${(0,a.If)(h,"finalColor.a = 1.0;")}
637
630
 
@@ -676,7 +669,25 @@ return normalize(params.normalView);
676
669
  return dot(params.normalView, params.viewDirection) > 0.0 ? normalize(-params.normalView) : normalize(params.normalView);
677
670
  }`);break;case 2:r.code.add(n.H`vec3 shadingNormal(ShadingNormalParameters params) {
678
671
  return gl_FrontFacing ? normalize(params.normalView) : normalize(-params.normalView);
679
- }`);break;default:(0,i.Xb)(t.doubleSidedMode);case 3:}}},63365:(e,t,r)=>{r.d(t,{a:()=>n});var i=r(31821);function n(e){e.code.add(i.H`vec4 premultiplyAlpha(vec4 v) {
672
+ }`);break;default:(0,i.Xb)(t.doubleSidedMode);case 3:}}},63201:(e,t,r)=>{r.d(t,{NL:()=>p});var i=r(49255),n=r(99208),o=r(40876),s=r(31821);function a(e){e.code.add(s.H`
673
+ const float GAMMA = ${s.H.float(o.Tf)};
674
+ const float INV_GAMMA = ${s.H.float(1/o.Tf)};
675
+
676
+ vec4 delinearizeGamma(vec4 color) {
677
+ return vec4(pow(color.rgb, vec3(INV_GAMMA)), color.a);
678
+ }
679
+
680
+ vec3 linearizeGamma(vec3 color) {
681
+ return pow(color, vec3(GAMMA));
682
+ }
683
+ `)}var l=r(40710),c=r(33079),u=r(28421),d=r(20304),h=r(15976),m=r(63761);function p(e,t){if(!(0,i.RN)(t.output))return;e.fragment.include(a);const{emissionSource:r,hasEmissiveTextureTransform:o,bindType:p}=t,f=3===r||4===r||5===r;f&&(e.include(n.r,t),e.fragment.uniforms.add(1===p?new m.N("texEmission",e=>e.textureEmissive):new h.o("texEmission",e=>e.textureEmissive)));const g=2===r||f;g&&e.fragment.uniforms.add(1===p?new c.t("emissiveBaseColor",e=>e.emissiveBaseColor):new l.W("emissiveBaseColor",e=>e.emissiveBaseColor));const v=0!==r;v&&7!==r&&6!==r&&4!==r&&5!==r&&e.fragment.uniforms.add(1===p?new d.m("emissiveStrength",e=>e.emissiveStrength):new u.J("emissiveStrength",e=>e.emissiveStrength));const _=7===r,x=5===r,b=1===r||6===r||_;e.fragment.code.add(s.H`
684
+ vec4 getEmissions(vec3 symbolColor) {
685
+ vec4 emissions = ${g?x?"emissiveSource == 0 ? vec4(emissiveBaseColor, 1.0): vec4(linearizeGamma(symbolColor), 1.0)":"vec4(emissiveBaseColor, 1.0)":b?_?"emissiveSource == 0 ? vec4(0.0): vec4(linearizeGamma(symbolColor), 1.0)":"vec4(linearizeGamma(symbolColor), 1.0)":"vec4(0.0)"};
686
+ ${(0,s.If)(f,`${(0,s.If)(x,`if(emissiveSource == 0) {\n vec4 emissiveFromTex = textureLookup(texEmission, ${o?"emissiveUV":"vuv0"});\n emissions *= vec4(linearizeGamma(emissiveFromTex.rgb), emissiveFromTex.a);\n }`,`vec4 emissiveFromTex = textureLookup(texEmission, ${o?"emissiveUV":"vuv0"});\n emissions *= vec4(linearizeGamma(emissiveFromTex.rgb), emissiveFromTex.a);`)}\n emissions.w = emissions.rgb == vec3(0.0) ? 0.0: emissions.w;`)}
687
+ ${(0,s.If)(v,"emissions.rgb *= emissiveStrength;")}
688
+ return emissions;
689
+ }
690
+ `)}r(25634)},63365:(e,t,r)=>{r.d(t,{a:()=>n});var i=r(31821);function n(e){e.code.add(i.H`vec4 premultiplyAlpha(vec4 v) {
680
691
  return vec4(v.rgb * v.a, v.a);
681
692
  }
682
693
  vec3 rgb2hsv(vec3 c) {
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4946],{15142:(t,e,r)=>{r.d(e,{A:()=>c});var n=r(4576),i=r(21818);const o=(t,e,r,n)=>{let i=e,o=e;const s=r>>>1,a=t[i-1];for(;o<=s;){o=i<<1,o<r&&n(t[o-1],t[o])<0&&++o;const e=t[o-1];if(n(e,a)<=0)break;t[i-1]=e,i=o}t[i-1]=a},s=(t,e)=>t<e?-1:t>e?1:0;function a(t,e,r,n){void 0===e&&(e=0),void 0===r&&(r=t.length),void 0===n&&(n=s);for(let i=r>>>1;i>e;i--)o(t,i,r,n);const i=e+1;for(let s=r-1;s>e;s--){const r=t[e];t[e]=t[s],t[s]=r,o(t,i,s,n)}}function*l(t,e,r,n){void 0===e&&(e=0),void 0===r&&(r=t.length),void 0===n&&(n=s);for(let i=r>>>1;i>e;i--)o(t,i,r,n),yield;const i=e+1;for(let s=r-1;s>e;s--){const r=t[e];t[e]=t[s],t[s]=r,o(t,i,s,n),yield}}class c{constructor(t){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new n.vW,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=()=>u(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}at(t){if((t=Math.trunc(t)||0)<0&&(t+=this._length),!(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++,u(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,n.qh)(this.data,(0,i.zI)(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,n.qh)(this.data,(0,i.zI)(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,n.mW)(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){a(this.data,0,this.length,t)}iterableSort(t){return l(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){const{data:r,length:n}=this;for(let i=0;i<n;++i)if(t.call(e,r[i]))return r[i]}filterInPlace(t,e){let r=0;for(let n=0;n<this._length;++n){const i=this.data[n];t.call(e,i,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=i,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{data:r,length:n}=this;for(let i=0;i<n;++i)t.call(e,r[i],i,r)}forEach(t,e){this.data.slice(0,this.length).forEach(t,e)}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}*[Symbol.iterator](){for(let t=0;t<this.length;t++)yield this.data[t]}}function u(t){t.data.length>1.5*t.length&&(t.data.length=Math.floor(1.1*t.length))}},15903:(t,e,r)=>{function n(t){return!!t&&t.prototype?.declaredClass&&0===t.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(e,{P:()=>n})},26390:(t,e,r)=>{r.d(e,{d:()=>i});const n=[];function i(t){n.push(t),1===n.length&&queueMicrotask(()=>{const t=n.slice();n.length=0;for(const e of t)e()})}},40608:(t,e,r)=>{r.d(e,{$:()=>f}),r(44208);var n=r(53966),i=r(56454),o=r(85537),s=r(96156),a=r(62788),l=r(51822);const c=new Set,u=new Set;function f(t){return e=>{t??="esri.core.Accessor",e.prototype.declaredClass=t,p(e);const r=[],n=[];let a=e.prototype;for(;a;)a.hasOwnProperty("initialize")&&!c.has(a.initialize)&&(c.add(a.initialize),r.push(a.initialize)),a.hasOwnProperty("destroy")&&!u.has(a.destroy)&&(u.add(a.destroy),n.push(a.destroy)),a=Object.getPrototypeOf(a);c.clear(),u.clear();const l=class extends e{constructor(...t){if(super(...t),this.constructor===l&&"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)}}),n.length){let t=!1;const e=this[i.G];Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!t){this.__accessor__.lifecycle=o.v.DESTROYING,t=!0,e.call(this);for(let t=0;t<n.length;t++)n[t].call(this)}}})}Object.defineProperty(this,Symbol.dispose,{enumerable:!1,configurable:!0,value(){this.destroy()}}),this.postscript()}}};l.__accessorMetadata__=(0,s.tD)(e.prototype),l.prototype.declaredClass=t;const f=(t||"AccessorSubclass").split(".").slice(-1)[0];return Object.defineProperty(l,"name",{value:f,configurable:!0}),l}}function h(t,e){return null==e.get?function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0===r)return;e.mutable&&(0,a.gc)(r);const n=e.store;return n.has(t)?n.get(t):r.metadata.value}:function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0!==r)return r.getComputed(e)}}function p(t){const e=t.prototype,r=(0,s.tD)(e),n={};for(const t of Object.getOwnPropertyNames(r)){const e=r[t];(0,l.qk)(e),n[t]={enumerable:!0,configurable:!0,get:h(t,e),set(r){const n=this.__accessor__;if(void 0!==n){if(n.mutable)return n.initialized&&e.readOnly?d("read-only",t):n.lifecycle===o.v.CONSTRUCTED&&e.constructOnly?d("construct-only",t):void n.set(t,r)}else Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(t.prototype,n)}const d=(t,e)=>{n.A.getLogger("esri.core.Accessor").error(`cannot assign to ${t} property '${e}'`)}},47328:(t,e,r)=>{r.d(e,{i:()=>n});const n={Dirty:1,Overridden:2,Computing:4,NonNullable:8,HasDefaultValue:16,DepTrackingInitialized:32,AutoTracked:64,ExplicitlyTracking:128}},51822:(t,e,r)=>{r.d(e,{xF:()=>u,N5:()=>f,k4:()=>h,qk:()=>_});var n=r(56507),i=r(90360);function o(t){if(t.json||(t.json={}),a(t.json),l(t.json),s(t.json),t.json.origins)for(const e in t.json.origins)a(t.json.origins[e]),l(t.json.origins[e]),s(t.json.origins[e]);return!0}function s(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 l(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 c=r(67124);function u(t,e){return p(t,"any",e?.origin)}function f(t,e){return p(t,"read",e?.origin)}function h(t,e){return p(t,"write",e?.origin)}function p(t,e,r){let n=t?.json;if(n?.origins&&r){let t;t="link-chart"===r?n.origins[r]&&("any"===e||e in n.origins[r])?n.origins[r]:n.origins["web-map"]:n.origins[r],t&&("any"===e||e in t)&&(n=t)}return n}function d(t){return t.type?y(t):g(t)}function y(t){if(!t.type)return;let e=0,r=t.type;for(;Array.isArray(r)&&!(0,n.EK)(r);)r=r[0],e++;return{type:r,ndimArray:e}}function g(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 _(t){o(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?g(t.json):t.type?y(t):g(t)}(t);if(t.json.origins)for(const r in t.json.origins){const n=t.json.origins[r],o=n.types?d(n):e;(0,i.v)(o,n,!1),n.types&&!n.write&&t.json.write?.enabled&&(n.write={...t.json.write}),(0,c.v)(o,n)}(0,i.v)(e,t.json,!0),(0,c.v)(e,t.json)}(t))}},56454:(t,e,r)=>{r.d(e,{G:()=>n});const n=Symbol("Accessor-beforeDestroy")},56507:(t,e,r)=>{r.d(e,{EK:()=>N,GB:()=>c,GX:()=>l,MB:()=>S,Nd:()=>P,PZ:()=>v,Qp:()=>h,Uv:()=>$,Vr:()=>u,Zu:()=>z,_e:()=>O,aq:()=>M,dp:()=>w,e6:()=>T,eC:()=>j,gK:()=>C,jz:()=>E,wB:()=>A}),r(44208);var n=r(53966),i=r(91869);const o=()=>n.A.getLogger("esri.core.accessorSupport.ensureTypes");function s(t){if(null==t)return t;const e=new Date(t);return isNaN(e.getTime())?(o().error("Accessor#set",`Invalid date value: '${t}', falling back to current date`),new Date):e}function a(t){return null==t?t:!!t}function l(t){return null==t?t:t.toString()}function c(t,e=0){return null==t?t:(t=parseFloat(t),isNaN(t)?e:t)}function u(t){return null==t?t:Math.round(parseFloat(t))}function f(t){return null}function h(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}}function p(t){return t?.constructor&&void 0!==t.constructor.__accessorMetadata__}function d(t,e){return null!=e&&t&&!(e instanceof t)}function y(t){return t&&"isCollection"in t}function g(t){return t?.Type?"function"==typeof t.Type?t.Type:t.Type.base:null}function _(t,e){return!!p(e)&&(o().error("Accessor#set","Assigning an instance of '"+(e.declaredClass||"unknown")+"' which is not a subclass of '"+b(t)+"'"),!0)}function v(t,e){return null==e?e:y(t)?function(t,e){if(!e?.constructor||!y(e.constructor))return _(t,e)?e:new t(e);const r=g(t.prototype.itemType),n=g(e.constructor.prototype.itemType);return r?n?r===n?e:r.prototype.isPrototypeOf(n.prototype)?new t(e):(_(t,e),e):new t(e):e}(t,e):d(t,e)?_(t,e)?e:new t(e):e}function b(t){return t?.prototype?.declaredClass||"unknown"}const m=new WeakMap;function w(t,e){const r=function(t){switch(t){case Number:return t=>c(t);case E:return u;case Boolean:return a;case String:return l;case Date:return s;case $:return f;default:return(0,i.tE)(m,t,()=>v.bind(null,t))}}(t);return 1===arguments.length?r:r(e)}function A(t,e,r){return 1===arguments.length?A.bind(null,t):e?Array.isArray(e)?e.map(e=>t(e,r)):[t(e,r)]:e}function j(t,e){return 1===arguments.length?A(e=>w(t,e)):A(e=>w(t,e),e)}function k(t,e,r){return 0!==e&&Array.isArray(r)?r.map(r=>k(t,e-1,r)):t(r)}function O(t,e,r){if(2===arguments.length)return r=>O(t,e,r);if(!r)return r;r=k(t,e,r);let n=e,i=r;for(;n>0&&Array.isArray(i);)n--,i=i[0];if(void 0!==i)for(let t=0;t<n;t++)r=[r];return r}function T(t,e,r){return 2===arguments.length?O(e=>w(t,e),e):O(e=>w(t,e),e,r)}function N(t){return!!Array.isArray(t)&&!t.some(e=>{const r=typeof e;return!("string"===r||"number"===r||"function"===r&&t.length>1)})}function S(t,e){if(2===arguments.length)return S(t).call(null,e);const r=new Set,n=t.filter(t=>"function"!=typeof t),i=t.filter(t=>"function"==typeof t);for(const e of t)"string"!=typeof e&&"number"!=typeof e||r.add(e);let s=null,a=null;return(t,e)=>{if(null==t)return t;const l=typeof t,c="string"===l||"number"===l;return c&&(r.has(t)||i.some(t=>"string"===l&&t===String||"number"===l&&t===Number))||"object"===l&&i.some(e=>!d(e,t))?t:(c&&n.length?(s||(s=n.map(t=>"string"==typeof t?`'${t}'`:`${t}`).join(", ")),o().error("Accessor#set",`'${t}' is not a valid value for this property, only the following values are valid: ${s}`)):"object"==typeof t&&i.length?(a||(a=i.map(t=>b(t)).join(", ")),o().error("Accessor#set",`'${t}' is not a valid value for this property, value must be one of ${a}`)):o().error("Accessor#set",`'${t}' is not a valid value for this property`),e&&(e.valid=!1),null)}}function M(t,e){if(2===arguments.length)return M(t).call(null,e);const r={},n=[],i=[];for(const e in t.typeMap){const o=t.typeMap[e];r[e]=w(o),n.push(b(o)),i.push(e)}const s=()=>`'${n.join("', '")}'`,a=()=>`'${i.join("', '")}'`,l="string"==typeof t.key?e=>e[t.key]:t.key;return e=>{if(t.base&&!d(t.base,e))return e;if(null==e)return e;const n=l(e)||t.defaultKeyValue,i=r[n];if(!i)return o().error("Accessor#set",`Invalid property value, value needs to be one of ${s()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!d(t.typeMap[n],e))return e;if("string"==typeof t.key&&!p(e)){const r={};for(const n in e)n!==t.key&&(r[n]=e[n]);return i(r)}return i(e)}}class E{}class ${}const C={native:t=>({type:"native",value:t}),array:t=>({type:"array",value:t}),oneOf:t=>({type:"one-of",values:t})};function z(t){if(!t||!("type"in t))return!1;switch(t.type){case"native":case"array":case"one-of":return!0}return!1}function P(t){switch(t.type){case"native":return w(t.value);case"array":return A(P(t.value));case"one-of":return function(t){let e=null;return(r,n)=>I(r,t)?r:(null==e&&(e=x(t)),o().error("Accessor#set",`Invalid property value, value needs to be of type ${e}`),n&&(n.valid=!1),null)}(t);default:return null}}function x(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";case $:return"null";default:return b(t.value)}case"array":return`array of ${x(t.value)}`;case"one-of":{const e=t.values.map(t=>x(t));return`one of ${e.slice(0,-1)} or ${e[e.length-1]}`}}return"unknown"}function I(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;case $:return null===t}return t instanceof e.value;case"array":return!!Array.isArray(t)&&!t.some(t=>!I(t,e.value));case"one-of":return e.values.some(e=>I(t,e))}}},62788:(t,e,r)=>{r.d(e,{F_:()=>p,Xr:()=>b,a:()=>h,fE:()=>_,gc:()=>c}),r(44208);var n=r(53966),i=r(88620),o=r(47328);const s=new(r(67867).R),a=[];let l=s;function c(t){l.onAccessed(t)}let u=!1,f=!1;function h(t,e,r){if(u)return d(t,e,r);let n=null;return y(t),n=e.call(r),g(),n}function p(t,e){return h(s,t,e)}function d(t,e,r){const i=u;u=!0,y(t);let o=null;try{o=e.call(r)}catch(t){f&&n.A.getLogger("esri.core.accessorSupport.tracking").error(t)}return g(),u=i,o}function y(t){l=t,a.push(t)}function g(){const t=a.length;if(t>1){const e=a.pop();l=a[t-2],e.onTrackingEnd()}else if(1===t){const t=a.pop();l=s,t.onTrackingEnd()}else l=s}function _(t,e){if(e.flags&o.i.DepTrackingInitialized)return;e.flags|=o.i.DepTrackingInitialized;const r=f;f=!1,e.flags&o.i.AutoTracked?d(e.trackingTarget,e.metadata.get,t):b(t,e),f=r}const v=[];function b(t,e){e.flags&o.i.ExplicitlyTracking||(e.flags|=o.i.ExplicitlyTracking,d(e.trackingTarget,()=>{const r=e.metadata.dependsOn||v;for(const e of r)if("string"!=typeof e||e.includes(".")){const r=(0,i.AH)(e);for(let e=0,n=t;e<r.length&&null!=n&&"object"==typeof n;++e)n=m(n,r[e],e!==r.length-1)}else m(t,e,!1)}),e.flags&=~o.i.ExplicitlyTracking)}function m(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.at(e)}const o=(0,i.oY)(t);if(o){const e=o.propertiesByName.get(n);e&&(c(e),_(t,e))}return r?t[n]:void 0}},67076:(t,e,r)=>{r.d(e,{A:()=>i});var n=r(79907);class i extends n.A{constructor(t,e,r){super(t,e,r)}}i.prototype.type="warning"},67124:(t,e,r)=>{r.d(e,{B:()=>f,v:()=>a});var n=r(49186),i=r(53966),o=r(93637),s=r(15903);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,s.P)(t.type))?e.write.writer=h:r>1?e.write.writer=function(t){return(e,r,n,i)=>{let s;if(null===e)s=null;else{s=p(e,i,t);let r=t,n=s;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let t=0;t<r;t++)s=[s]}(0,o.sM)(n,s,r)}}(r):e.types?Array.isArray(e.types)?e.write.writer=function(t){return(e,r,n,i)=>e&&Array.isArray(e)?c(e.filter(e=>l(e,t,i)),r,n,i):c(e,r,n,i)}(e.types[0]):e.write.writer=function(t){return(e,r,n,i)=>e?l(e,t,i)?c(e,r,n,i):void 0:c(e,r,n,i)}(e.types):e.write.writer=c}function l(t,e,r){for(const r in e.typeMap)if(t instanceof e.typeMap[r])return!0;if(r?.messages){const o=e.errorContext??"type",s=`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.A(`${o}:unsupported`,s,{definition:t,context:r})),i.A.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer").error(s)}return!1}function c(t,e,r,n){(0,o.sM)(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?f(t):t}function f(t){return t===-1/0?-Number.MAX_VALUE:t===1/0?Number.MAX_VALUE:isNaN(t)?null:t}function h(t,e,r,n){let i;null===t?i=null:t&&"function"==typeof t.map?(i=t.map(t=>u(t,n)),"function"==typeof i.toArray&&(i=i.toArray())):i=[u(t,n)],(0,o.sM)(r,i,e)}function p(t,e,r){return 0!==r&&Array.isArray(t)?t.map(t=>p(t,e,r-1)):u(t,e)}},67867:(t,e,r)=>{r.d(e,{R:()=>n});class n{constructor(t){this.accessed=void 0,this._handles=void 0,this._observer=t}destroy(){this.accessed?.clear(),this.clear()}onAccessed(t){null!=this._observer&&t!==this._observer&&(null==this.accessed&&(this.accessed=new Set),this.accessed.add(t))}onTrackingEnd(){null!=this._observer&&(this.clear(),null!=this.accessed&&(null==this._handles&&(this._handles=[]),this.accessed.forEach(t=>{this._handles.push(t.observe(this._observer))}),this.accessed.clear()))}clear(){if(null!=this._handles){for(let t=0;t<this._handles.length;++t)this._handles[t].remove();this._handles.length=0}}}},85537:(t,e,r)=>{r.d(e,{v:()=>n});const n={INITIALIZING:0,CONSTRUCTING:1,CONSTRUCTED:2,DESTROYING:3,DESTROYED:4}},88620:(t,e,r)=>{r.d(e,{AH:()=>c,h1:()=>a,oY:()=>o,qg:()=>f,yh:()=>s});var n=r(36563),i=r(4718);function o(t){return t.__accessor__??null}function s(t,e){return null!=t?.metadata?.[e]}function a(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)=>{const o=n;if("__proto__"===o)return t;let s=null,a="merge";if(r&&(s=r.path?`${r.path}.${n}`:n,a=r.policy(s)),"replace"===a)return t[o]=e[o],t;if("replace-arrays"===a&&Array.isArray(t[o]))return t[o]=e[o],t;if(void 0===t[o])return t[o]=(0,i.o8)(e[o]),t;let c=t[o],u=e[o];if(c===u)return t;if(Array.isArray(u)||Array.isArray(t))c=c?Array.isArray(c)?t[o]=c.slice():t[o]=[c]:t[o]=[],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=s,t[o]=l(c,u,r),r.path=e}else t[o]=l(c,u,null);else t.hasOwnProperty(n)&&!e.hasOwnProperty(n)||(t[o]=u);return t},t||{}):t}function c(t){return Array.isArray(t)?t:t.split(".")}function u(t){return t.includes(",")?t.split(",").map(t=>t.trim()):[t.trim()]}function f(t,e,r,i){const o=function(t){if(Array.isArray(t)){const e=[];for(const r of t)e.push(...u(r));return e}return u(t)}(e);if(1!==o.length){const e=o.map(e=>i(t,e,r));return(0,n.vE)(e)}return i(t,o[0],r)}},90360:(t,e,r)=>{r.d(e,{C:()=>u,v:()=>c});var n=r(53966),i=r(93637),o=r(67076),s=r(96156),a=r(15903);const l=()=>n.A.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function c(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,i.sM)("read.reader",u(t),e))}function u(t){const e=t.ndimArray??0;if(e>1)return function(t){const e=f(t),r=h.bind(null,e),n=t.ndimArray??0;return(t,e,i)=>{if(null==t)return t;t=r(t,i,n);let o=n,s=t;for(;o>0&&Array.isArray(s);)o--,s=s[0];if(void 0!==s)for(let e=0;e<o;e++)t=[t];return t}}(t);if(1===e)return p(t);if("type"in t&&d(t.type)){const e=t.type.prototype?.itemType?.Type,r=p("function"==typeof e?{type:e}:{types:e});return(e,n,i)=>{const o=r(e,n,i);return o?new t.type(o):o}}return f(t)}function f(t){return"type"in t?function(t){return t.prototype.read?(e,r,n)=>{if(null==e)return e;const i=typeof e;if("object"!==i)return void l().error(`Expected JSON value of type 'object' to deserialize type '${t.prototype.declaredClass}', but got '${i}'`);const o=new t;return o.read(e,n),o}:t.fromJSON}(t.type):function(t){let e=null;const r=t.errorContext??"type",n=t.validate;return(i,a,c)=>{if(null==i)return i;const u=typeof i;if("object"!==u)return void l().error(`Expected JSON value of type 'object' to deserialize, but got '${u}'`);e||(e=function(t){const e={};for(const r in t.typeMap){const n=t.typeMap[r],i=(0,s.tD)(n.prototype);if("function"==typeof t.key)continue;const o=i[t.key];if(!o)continue;if(o.json?.type&&Array.isArray(o.json.type)&&1===o.json.type.length&&"string"==typeof o.json.type[0]){e[o.json.type[0]]=n;continue}const a=o.json?.write;if(!a?.writer){e[r]=n;continue}const l=a.target,c="string"==typeof l?l:t.key,u={};a.writer(r,u,c),u[c]&&(e[u[c]]=n)}return e}(t));const f=t.key;if("string"!=typeof f)return;const h=i[f],p=h?e[h]:t.defaultKeyValue?t.typeMap[t.defaultKeyValue]:void 0;if(!p){const t=`Type '${h||"unknown"}' is not supported`;return c?.messages&&i&&c.messages.push(new o.A(`${r}:unsupported`,t,{definition:i,context:c})),void l().error(t)}const d=new p;return d.read(i,c),n?n(d):d}}(t.types)}function h(t,e,r,n){return 0!==n&&Array.isArray(e)?e.map(e=>h(t,e,r,n-1)):t(e,void 0,r)}function p(t){const e=f(t);return(t,r,n)=>{if(null==t)return t;if(Array.isArray(t)){const r=[];for(const i of t){const t=e(i,void 0,n);void 0!==t&&r.push(t)}return r}const i=e(t,void 0,n);return void 0!==i?[i]:void 0}}function d(t){if(!(0,a.P)(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||d(t))}function g(t){for(const e in t.typeMap)if(!y(t.typeMap[e]))return!1;return!0}},93687:(t,e,r)=>{r.d(e,{A:()=>i});var n=r(44208);class i{constructor(t,e,r,n=1,i=0){this._ctor=t,this._acquireFunction=e,this._releaseFunction=r,this.allocationSize=n,this._pool=new Array(i),this._initialSize=i;for(let t=0;t<i;t++)this._pool[t]=new this._ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...t){let e;if(i.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?.acquire&&"function"==typeof t.acquire}(e)&&e.acquire(...t),e}release(t){var e;t&&!i.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()}static{this.test={disabled:!!(0,n.A)("esri-tests-disable-memory-pools")}}}},96156:(t,e,r)=>{r.d(e,{CX:()=>a,tD:()=>o,z4:()=>s});var n=r(4718),i=r(88620);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.o8)(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 t.constructor.__accessorMetadata__}function s(t,e){const r=o(t);let n=r[e];return n||(n=r[e]={}),n}function a(t,e){return(0,i.h1)(t,e,c)}const l=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function c(t){return l.test(t)?"replace":"merge"}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4946],{15142:(t,e,r)=>{r.d(e,{A:()=>c});var n=r(4576),i=r(21818);const o=(t,e,r,n)=>{let i=e,o=e;const s=r>>>1,a=t[i-1];for(;o<=s;){o=i<<1,o<r&&n(t[o-1],t[o])<0&&++o;const e=t[o-1];if(n(e,a)<=0)break;t[i-1]=e,i=o}t[i-1]=a},s=(t,e)=>t<e?-1:t>e?1:0;function a(t,e,r,n){void 0===e&&(e=0),void 0===r&&(r=t.length),void 0===n&&(n=s);for(let i=r>>>1;i>e;i--)o(t,i,r,n);const i=e+1;for(let s=r-1;s>e;s--){const r=t[e];t[e]=t[s],t[s]=r,o(t,i,s,n)}}function*l(t,e,r,n){void 0===e&&(e=0),void 0===r&&(r=t.length),void 0===n&&(n=s);for(let i=r>>>1;i>e;i--)o(t,i,r,n),yield;const i=e+1;for(let s=r-1;s>e;s--){const r=t[e];t[e]=t[s],t[s]=r,o(t,i,s,n),yield}}class c{constructor(t){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new n.vW,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=()=>u(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}at(t){if((t=Math.trunc(t)||0)<0&&(t+=this._length),!(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++,u(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,n.qh)(this.data,(0,i.zI)(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,n.qh)(this.data,(0,i.zI)(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,n.mW)(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){a(this.data,0,this.length,t)}iterableSort(t){return l(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){const{data:r,length:n}=this;for(let i=0;i<n;++i)if(t.call(e,r[i]))return r[i]}filterInPlace(t,e){let r=0;for(let n=0;n<this._length;++n){const i=this.data[n];t.call(e,i,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=i,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{data:r,length:n}=this;for(let i=0;i<n;++i)t.call(e,r[i],i,r)}forEach(t,e){this.data.slice(0,this.length).forEach(t,e)}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}*[Symbol.iterator](){for(let t=0;t<this.length;t++)yield this.data[t]}}function u(t){t.data.length>1.5*t.length&&(t.data.length=Math.floor(1.1*t.length))}},15903:(t,e,r)=>{function n(t){return!!t&&t.prototype?.declaredClass&&0===t.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(e,{P:()=>n})},26390:(t,e,r)=>{r.d(e,{d:()=>i});const n=[];function i(t){n.push(t),1===n.length&&queueMicrotask(()=>{const t=n.slice();n.length=0;for(const e of t)e()})}},40608:(t,e,r)=>{r.d(e,{$:()=>f}),r(44208);var n=r(53966),i=r(56454),o=r(85537),s=r(96156),a=r(62788),l=r(51822);const c=new Set,u=new Set;function f(t){return e=>{t??="esri.core.Accessor",e.prototype.declaredClass=t,p(e);const r=[],n=[];let a=e.prototype;for(;a;)a.hasOwnProperty("initialize")&&!c.has(a.initialize)&&(c.add(a.initialize),r.push(a.initialize)),a.hasOwnProperty("destroy")&&!u.has(a.destroy)&&(u.add(a.destroy),n.push(a.destroy)),a=Object.getPrototypeOf(a);c.clear(),u.clear();const l=class extends e{constructor(...t){if(super(...t),this.constructor===l&&"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)}}),n.length){let t=!1;const e=this[i.G];Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!t){this.__accessor__.lifecycle=o.v.DESTROYING,t=!0,e.call(this);for(let t=0;t<n.length;t++)n[t].call(this)}}})}Object.defineProperty(this,Symbol.dispose,{enumerable:!1,configurable:!0,value(){this.destroy()}}),this.postscript()}}};l.__accessorMetadata__=(0,s.tD)(e.prototype),l.prototype.declaredClass=t;const f=(t||"AccessorSubclass").split(".").slice(-1)[0];return Object.defineProperty(l,"name",{value:f,configurable:!0}),l}}function h(t,e){return null==e.get?function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0===r)return;e.mutable&&(0,a.gc)(r);const n=e.store;return n.has(t)?n.get(t):r.metadata.value}:function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0!==r)return r.getComputed(e)}}function p(t){const e=t.prototype,r=(0,s.tD)(e),n={};for(const t of Object.getOwnPropertyNames(r)){const e=r[t];(0,l.qk)(e),n[t]={enumerable:!0,configurable:!0,get:h(t,e),set(r){const n=this.__accessor__;if(void 0!==n){if(n.mutable)return n.initialized&&e.readOnly?d("read-only",t):n.lifecycle===o.v.CONSTRUCTED&&e.constructOnly?d("construct-only",t):void n.set(t,r)}else Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(t.prototype,n)}const d=(t,e)=>{n.A.getLogger("esri.core.Accessor").error(`cannot assign to ${t} property '${e}'`)}},47328:(t,e,r)=>{r.d(e,{i:()=>n});const n={Dirty:1,Overridden:2,Computing:4,NonNullable:8,HasDefaultValue:16,DepTrackingInitialized:32,AutoTracked:64,ExplicitlyTracking:128}},51822:(t,e,r)=>{r.d(e,{xF:()=>u,N5:()=>f,k4:()=>h,qk:()=>_});var n=r(56507),i=r(90360);function o(t){if(t.json||(t.json={}),a(t.json),l(t.json),s(t.json),t.json.origins)for(const e in t.json.origins)a(t.json.origins[e]),l(t.json.origins[e]),s(t.json.origins[e]);return!0}function s(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 l(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 c=r(67124);function u(t,e){return p(t,"any",e?.origin)}function f(t,e){return p(t,"read",e?.origin)}function h(t,e){return p(t,"write",e?.origin)}function p(t,e,r){let n=t?.json;if(n?.origins&&r){let t;t="link-chart"===r?n.origins[r]&&("any"===e||e in n.origins[r])?n.origins[r]:n.origins["web-map"]:n.origins[r],t&&("any"===e||e in t)&&(n=t)}return n}function d(t){return t.type?y(t):g(t)}function y(t){if(!t.type)return;let e=0,r=t.type;for(;Array.isArray(r)&&!(0,n.EK)(r);)r=r[0],e++;return{type:r,ndimArray:e}}function g(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 _(t){o(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?g(t.json):t.type?y(t):g(t)}(t);if(t.json.origins)for(const r in t.json.origins){const n=t.json.origins[r],o=n.types?d(n):e;(0,i.v)(o,n,!1),n.types&&!n.write&&t.json.write?.enabled&&(n.write={...t.json.write}),(0,c.v)(o,n)}(0,i.v)(e,t.json,!0),(0,c.v)(e,t.json)}(t))}},56454:(t,e,r)=>{r.d(e,{G:()=>n});const n=Symbol("Accessor-beforeDestroy")},56507:(t,e,r)=>{r.d(e,{EK:()=>N,GB:()=>c,GX:()=>l,MB:()=>S,Nd:()=>P,PZ:()=>v,Qp:()=>h,Uv:()=>$,Vr:()=>u,Zu:()=>z,_e:()=>O,aq:()=>M,dp:()=>w,e6:()=>T,eC:()=>j,gK:()=>C,jz:()=>E,wB:()=>A}),r(44208);var n=r(53966),i=r(91869);const o=()=>n.A.getLogger("esri.core.accessorSupport.ensureTypes");function s(t){if(null==t)return t;const e=new Date(t);return isNaN(e.getTime())?(o().error("Accessor#set",`Invalid date value: '${t}', falling back to current date`),new Date):e}function a(t){return null==t?t:!!t}function l(t){return null==t?t:t.toString()}function c(t,e=0){return null==t?t:(t=parseFloat(t),isNaN(t)?e:t)}function u(t){return null==t?t:Math.round(parseFloat(t))}function f(t){return null}function h(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}}function p(t){return t?.constructor&&void 0!==t.constructor.__accessorMetadata__}function d(t,e){return null!=e&&t&&!(e instanceof t)}function y(t){return t&&"isCollection"in t}function g(t){return t?.Type?"function"==typeof t.Type?t.Type:t.Type.base:null}function _(t,e){return!!p(e)&&(o().error("Accessor#set","Assigning an instance of '"+(e.declaredClass||"unknown")+"' which is not a subclass of '"+b(t)+"'"),!0)}function v(t,e){return null==e?e:y(t)?function(t,e){if(!e?.constructor||!y(e.constructor))return _(t,e)?e:new t(e);const r=g(t.prototype.itemType),n=g(e.constructor.prototype.itemType);return r?n?r===n?e:r.prototype.isPrototypeOf(n.prototype)?new t(e):(_(t,e),e):new t(e):e}(t,e):d(t,e)?_(t,e)?e:new t(e):e}function b(t){return t?.prototype?.declaredClass||"unknown"}const m=new WeakMap;function w(t,e){const r=function(t){switch(t){case Number:return t=>c(t);case E:return u;case Boolean:return a;case String:return l;case Date:return s;case $:return f;default:return(0,i.tE)(m,t,()=>v.bind(null,t))}}(t);return 1===arguments.length?r:r(e)}function A(t,e,r){return 1===arguments.length?A.bind(null,t):e?Array.isArray(e)?e.map(e=>t(e,r)):[t(e,r)]:e}function j(t,e){return 1===arguments.length?A(e=>w(t,e)):A(e=>w(t,e),e)}function k(t,e,r){return 0!==e&&Array.isArray(r)?r.map(r=>k(t,e-1,r)):t(r)}function O(t,e,r){if(2===arguments.length)return r=>O(t,e,r);if(!r)return r;r=k(t,e,r);let n=e,i=r;for(;n>0&&Array.isArray(i);)n--,i=i[0];if(void 0!==i)for(let t=0;t<n;t++)r=[r];return r}function T(t,e,r){return 2===arguments.length?O(e=>w(t,e),e):O(e=>w(t,e),e,r)}function N(t){return!!Array.isArray(t)&&!t.some(e=>{const r=typeof e;return!("string"===r||"number"===r||"function"===r&&t.length>1)})}function S(t,e){if(2===arguments.length)return S(t).call(null,e);const r=new Set,n=t.filter(t=>"function"!=typeof t),i=t.filter(t=>"function"==typeof t);for(const e of t)"string"!=typeof e&&"number"!=typeof e||r.add(e);let s=null,a=null;return(t,e)=>{if(null==t)return t;const l=typeof t,c="string"===l||"number"===l;return c&&(r.has(t)||i.some(t=>"string"===l&&t===String||"number"===l&&t===Number))||"object"===l&&i.some(e=>!d(e,t))?t:(c&&n.length?(s||(s=n.map(t=>"string"==typeof t?`'${t}'`:`${t}`).join(", ")),o().error("Accessor#set",`'${t}' is not a valid value for this property, only the following values are valid: ${s}`)):"object"==typeof t&&i.length?(a||(a=i.map(t=>b(t)).join(", ")),o().error("Accessor#set",`'${t}' is not a valid value for this property, value must be one of ${a}`)):o().error("Accessor#set",`'${t}' is not a valid value for this property`),e&&(e.valid=!1),null)}}function M(t,e){if(2===arguments.length)return M(t).call(null,e);const r={},n=[],i=[];for(const e in t.typeMap){const o=t.typeMap[e];r[e]=w(o),n.push(b(o)),i.push(e)}const s=()=>`'${n.join("', '")}'`,a=()=>`'${i.join("', '")}'`,l="string"==typeof t.key?e=>e[t.key]:t.key;return e=>{if(t.base&&!d(t.base,e))return e;if(null==e)return e;const n=l(e)||t.defaultKeyValue,i=r[n];if(!i)return o().error("Accessor#set",`Invalid property value, value needs to be one of ${s()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!d(t.typeMap[n],e))return e;if("string"==typeof t.key&&!p(e)){const r={};for(const n in e)n!==t.key&&(r[n]=e[n]);return i(r)}return i(e)}}class E{}class ${}const C={native:t=>({type:"native",value:t}),array:t=>({type:"array",value:t}),oneOf:t=>({type:"one-of",values:t})};function z(t){if(!t||!("type"in t))return!1;switch(t.type){case"native":case"array":case"one-of":return!0}return!1}function P(t){switch(t.type){case"native":return w(t.value);case"array":return A(P(t.value));case"one-of":return function(t){let e=null;return(r,n)=>I(r,t)?r:(null==e&&(e=x(t)),o().error("Accessor#set",`Invalid property value, value needs to be of type ${e}`),n&&(n.valid=!1),null)}(t);default:return null}}function x(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";case $:return"null";default:return b(t.value)}case"array":return`array of ${x(t.value)}`;case"one-of":{const e=t.values.map(t=>x(t));return`one of ${e.slice(0,-1)} or ${e[e.length-1]}`}}return"unknown"}function I(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;case $:return null===t}return t instanceof e.value;case"array":return!!Array.isArray(t)&&!t.some(t=>!I(t,e.value));case"one-of":return e.values.some(e=>I(t,e))}}},62788:(t,e,r)=>{r.d(e,{F_:()=>p,Xr:()=>b,a:()=>h,fE:()=>_,gc:()=>c}),r(44208);var n=r(53966),i=r(88620),o=r(47328);const s=new(r(67867).R),a=[];let l=s;function c(t){l.onAccessed(t)}let u=!1,f=!1;function h(t,e,r){if(u)return d(t,e,r);let n=null;return y(t),n=e.call(r),g(),n}function p(t,e){return h(s,t,e)}function d(t,e,r){const i=u;u=!0,y(t);let o=null;try{o=e.call(r)}catch(t){f&&n.A.getLogger("esri.core.accessorSupport.tracking").error(t)}return g(),u=i,o}function y(t){l=t,a.push(t)}function g(){const t=a.length;if(t>1){const e=a.pop();l=a[t-2],e.onTrackingEnd()}else if(1===t){const t=a.pop();l=s,t.onTrackingEnd()}else l=s}function _(t,e){if(e.flags&o.i.DepTrackingInitialized)return;e.flags|=o.i.DepTrackingInitialized;const r=f;f=!1,e.flags&o.i.AutoTracked?d(e.trackingTarget,e.metadata.get,t):b(t,e),f=r}const v=[];function b(t,e){e.flags&o.i.ExplicitlyTracking||(e.flags|=o.i.ExplicitlyTracking,d(e.trackingTarget,()=>{const r=e.metadata.dependsOn||v;for(const e of r)if("string"!=typeof e||e.includes(".")){const r=(0,i.AH)(e);for(let e=0,n=t;e<r.length&&null!=n&&"object"==typeof n;++e)n=m(n,r[e],e!==r.length-1)}else m(t,e,!1)}),e.flags&=~o.i.ExplicitlyTracking)}function m(t,e,r){const n=e.endsWith("?")?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.at(e)}const o=(0,i.oY)(t);if(o){const e=o.propertiesByName.get(n);e&&(c(e),_(t,e))}return r?t[n]:void 0}},67076:(t,e,r)=>{r.d(e,{A:()=>i});var n=r(79907);class i extends n.A{constructor(t,e,r){super(t,e,r)}}i.prototype.type="warning"},67124:(t,e,r)=>{r.d(e,{B:()=>f,v:()=>a});var n=r(49186),i=r(53966),o=r(93637),s=r(15903);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,s.P)(t.type))?e.write.writer=h:r>1?e.write.writer=function(t){return(e,r,n,i)=>{let s;if(null===e)s=null;else{s=p(e,i,t);let r=t,n=s;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let t=0;t<r;t++)s=[s]}(0,o.sM)(n,s,r)}}(r):e.types?Array.isArray(e.types)?e.write.writer=function(t){return(e,r,n,i)=>e&&Array.isArray(e)?c(e.filter(e=>l(e,t,i)),r,n,i):c(e,r,n,i)}(e.types[0]):e.write.writer=function(t){return(e,r,n,i)=>e?l(e,t,i)?c(e,r,n,i):void 0:c(e,r,n,i)}(e.types):e.write.writer=c}function l(t,e,r){for(const r in e.typeMap)if(t instanceof e.typeMap[r])return!0;if(r?.messages){const o=e.errorContext??"type",s=`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.A(`${o}:unsupported`,s,{definition:t,context:r})),i.A.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer").error(s)}return!1}function c(t,e,r,n){(0,o.sM)(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?f(t):t}function f(t){return t===-1/0?-Number.MAX_VALUE:t===1/0?Number.MAX_VALUE:isNaN(t)?null:t}function h(t,e,r,n){let i;null===t?i=null:t&&"function"==typeof t.map?(i=t.map(t=>u(t,n)),"function"==typeof i.toArray&&(i=i.toArray())):i=[u(t,n)],(0,o.sM)(r,i,e)}function p(t,e,r){return 0!==r&&Array.isArray(t)?t.map(t=>p(t,e,r-1)):u(t,e)}},67867:(t,e,r)=>{r.d(e,{R:()=>n});class n{constructor(t){this.accessed=void 0,this._handles=void 0,this._observer=t}destroy(){this.accessed?.clear(),this.clear()}onAccessed(t){null!=this._observer&&t!==this._observer&&(null==this.accessed&&(this.accessed=new Set),this.accessed.add(t))}onTrackingEnd(){null!=this._observer&&(this.clear(),null!=this.accessed&&(null==this._handles&&(this._handles=[]),this.accessed.forEach(t=>{this._handles.push(t.observe(this._observer))}),this.accessed.clear()))}clear(){if(null!=this._handles){for(let t=0;t<this._handles.length;++t)this._handles[t].remove();this._handles.length=0}}}},85537:(t,e,r)=>{r.d(e,{v:()=>n});const n={INITIALIZING:0,CONSTRUCTING:1,CONSTRUCTED:2,DESTROYING:3,DESTROYED:4}},88620:(t,e,r)=>{r.d(e,{AH:()=>c,h1:()=>a,oY:()=>o,qg:()=>f,yh:()=>s});var n=r(36563),i=r(4718);function o(t){return t.__accessor__??null}function s(t,e){return null!=t?.metadata?.[e]}function a(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)=>{const o=n;if("__proto__"===o)return t;let s=null,a="merge";if(r&&(s=r.path?`${r.path}.${n}`:n,a=r.policy(s)),"replace"===a)return t[o]=e[o],t;if("replace-arrays"===a&&Array.isArray(t[o]))return t[o]=e[o],t;if(void 0===t[o])return t[o]=(0,i.o8)(e[o]),t;let c=t[o],u=e[o];if(c===u)return t;if(Array.isArray(u)||Array.isArray(t))c=c?Array.isArray(c)?t[o]=c.slice():t[o]=[c]:t[o]=[],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=s,t[o]=l(c,u,r),r.path=e}else t[o]=l(c,u,null);else t.hasOwnProperty(n)&&!e.hasOwnProperty(n)||(t[o]=u);return t},t||{}):t}function c(t){return Array.isArray(t)?t:t.split(".")}function u(t){return t.includes(",")?t.split(",").map(t=>t.trim()):[t.trim()]}function f(t,e,r,i){const o=function(t){if(Array.isArray(t)){const e=[];for(const r of t)e.push(...u(r));return e}return u(t)}(e);if(1!==o.length){const e=o.map(e=>i(t,e,r));return(0,n.vE)(e)}return i(t,o[0],r)}},90360:(t,e,r)=>{r.d(e,{C:()=>u,v:()=>c});var n=r(53966),i=r(93637),o=r(67076),s=r(96156),a=r(15903);const l=()=>n.A.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function c(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,i.sM)("read.reader",u(t),e))}function u(t){const e=t.ndimArray??0;if(e>1)return function(t){const e=f(t),r=h.bind(null,e),n=t.ndimArray??0;return(t,e,i)=>{if(null==t)return t;t=r(t,i,n);let o=n,s=t;for(;o>0&&Array.isArray(s);)o--,s=s[0];if(void 0!==s)for(let e=0;e<o;e++)t=[t];return t}}(t);if(1===e)return p(t);if("type"in t&&d(t.type)){const e=t.type.prototype?.itemType?.Type,r=p("function"==typeof e?{type:e}:{types:e});return(e,n,i)=>{const o=r(e,n,i);return o?new t.type(o):o}}return f(t)}function f(t){return"type"in t?function(t){return t.prototype.read?(e,r,n)=>{if(null==e)return e;const i=typeof e;if("object"!==i)return void l().error(`Expected JSON value of type 'object' to deserialize type '${t.prototype.declaredClass}', but got '${i}'`);const o=new t;return o.read(e,n),o}:t.fromJSON}(t.type):function(t){let e=null;const r=t.errorContext??"type",n=t.validate;return(i,a,c)=>{if(null==i)return i;const u=typeof i;if("object"!==u)return void l().error(`Expected JSON value of type 'object' to deserialize, but got '${u}'`);e||(e=function(t){const e={};for(const r in t.typeMap){const n=t.typeMap[r],i=(0,s.tD)(n.prototype);if("function"==typeof t.key)continue;const o=i[t.key];if(!o)continue;if(o.json?.type&&Array.isArray(o.json.type)&&1===o.json.type.length&&"string"==typeof o.json.type[0]){e[o.json.type[0]]=n;continue}const a=o.json?.write;if(!a?.writer){e[r]=n;continue}const l=a.target,c="string"==typeof l?l:t.key,u={};a.writer(r,u,c),u[c]&&(e[u[c]]=n)}return e}(t));const f=t.key;if("string"!=typeof f)return;const h=i[f],p=h?e[h]:t.defaultKeyValue?t.typeMap[t.defaultKeyValue]:void 0;if(!p){const t=`Type '${h||"unknown"}' is not supported`;return c?.messages&&i&&c.messages.push(new o.A(`${r}:unsupported`,t,{definition:i,context:c})),void l().error(t)}const d=new p;return d.read(i,c),n?n(d):d}}(t.types)}function h(t,e,r,n){return 0!==n&&Array.isArray(e)?e.map(e=>h(t,e,r,n-1)):t(e,void 0,r)}function p(t){const e=f(t);return(t,r,n)=>{if(null==t)return t;if(Array.isArray(t)){const r=[];for(const i of t){const t=e(i,void 0,n);void 0!==t&&r.push(t)}return r}const i=e(t,void 0,n);return void 0!==i?[i]:void 0}}function d(t){if(!(0,a.P)(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||d(t))}function g(t){for(const e in t.typeMap)if(!y(t.typeMap[e]))return!1;return!0}},93687:(t,e,r)=>{r.d(e,{A:()=>i});var n=r(44208);class i{constructor(t,e,r,n=1,i=0){this._ctor=t,this._acquireFunction=e,this._releaseFunction=r,this.allocationSize=n,this._pool=new Array(i),this._initialSize=i;for(let t=0;t<i;t++)this._pool[t]=new this._ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...t){let e;if(i.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?.acquire&&"function"==typeof t.acquire}(e)&&e.acquire(...t),e}release(t){var e;t&&!i.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()}static{this.test={disabled:!!(0,n.A)("esri-tests-disable-memory-pools")}}}},96156:(t,e,r)=>{r.d(e,{CX:()=>a,tD:()=>o,z4:()=>s});var n=r(4718),i=r(88620);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.o8)(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 t.constructor.__accessorMetadata__}function s(t,e){const r=o(t);let n=r[e];return n||(n=r[e]={}),n}function a(t,e){return(0,i.h1)(t,e,c)}const l=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function c(t){return l.test(t)?"replace":"merge"}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7136,8110],{4197:(e,t,i)=>{i.d(t,{cj:()=>l,jh:()=>n,l5:()=>s,xm:()=>o});var r=i(34275);function n(e,t=!1){return e<=r.y9?t?new Array(e).fill(0):new Array(e):new Float64Array(e)}function o(e){return((0,r.iu)(e)?e.byteLength/8:e.length)<=r.y9?Array.from(e):new Float64Array(e)}function s(e,t,i){return Array.isArray(e)?e.slice(t,t+i):e.subarray(t,t+i)}function l(e){return[...e]}},17136:(e,t,i)=>{i.d(t,{O7:()=>v,el:()=>w});var r=i(92602),n=i(49186),o=i(53966),s=i(39829),l=i(82799),a=i(80754),u=i(21325),p=i(28735),y=i(78888),c=i(65864),f=i(2272),d=i(84952),m=i(92300);const h=()=>o.A.getLogger("esri.geometry.support.normalizeUtils");function g(e){return"polygon"===e[0].type}function b(e){return"polyline"===e[0].type}function M(e,t,i){if(t){const t=function(e,t){if(!(e instanceof l.A||e instanceof s.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw h().error(e),new n.A("internal:geometry",e)}const i=(0,a.r8)(e),r=[];for(const e of i){const i=[];r.push(i),i.push([e[0][0],e[0][1]]);for(let r=0;r<e.length-1;r++){const n=e[r][0],o=e[r][1],s=e[r+1][0],l=e[r+1][1],a=Math.sqrt((s-n)*(s-n)+(l-o)*(l-o)),u=(l-o)/a,p=(s-n)/a,y=a/t;if(y>1){for(let e=1;e<=y-1;e++){const r=e*t,s=p*r+n,l=u*r+o;i.push([s,l])}const e=(a+Math.floor(y-1)*t)/2,r=p*e+n,s=u*e+o;i.push([r,s])}i.push([s,l])}}return function(e){return"polygon"===e.type}(e)?new s.A({rings:r,spatialReference:e.spatialReference}):new l.A({paths:r,spatialReference:e.spatialReference})}(e,1e6);e=(0,p.ci)(t,!0)}return i&&(e=(0,a.kS)(e,i)),e}function x(e,t,i){if(Array.isArray(e)){const r=e[0];if(r>t){const i=(0,a.kd)(r,t);e[0]=r+i*(-2*t)}else if(r<i){const t=(0,a.kd)(r,i);e[0]=r+t*(-2*i)}}else{const r=e.x;if(r>t){const i=(0,a.kd)(r,t);e=e.clone().offset(i*(-2*t),0)}else if(r<i){const t=(0,a.kd)(r,i);e=e.clone().offset(t*(-2*i),0)}}return e}function T(e,t){let i=-1;for(let r=0;r<t.cutIndexes.length;r++){const n=t.cutIndexes[r],o=t.geometries[r],s=(0,a.r8)(o);for(let e=0;e<s.length;e++){const t=s[e];t.some(i=>{if(i[0]<180)return!0;{let i=0;for(let e=0;e<t.length;e++){const r=t[e][0];i=r>i?r:i}i=Number(i.toFixed(9));const r=-360*(0,a.kd)(i,180);for(let i=0;i<t.length;i++){const t=o.getPoint(e,i);o.setPoint(e,i,t.clone().offset(r,0))}return!0}})}if(n===i){if(g(e))for(const t of(0,a.r8)(o))e[n]=e[n].addRing(t);else if(b(e))for(const t of(0,a.r8)(o))e[n]=e[n].addPath(t)}else i=n,e[n]=o}return e}async function w(e,t,i){if(!Array.isArray(e))return w([e],t);t&&"string"!=typeof t&&h().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const n="string"==typeof t?t:t?.url??r.A.geometryServiceUrl;let o,g,b,v,S,C,F,N,O=0;const _=[],A=[];for(const t of e)if(null!=t)if(o||(o=t.spatialReference,g=(0,u.Vp)(o),b=o.isWebMercator,C=b?102100:4326,v=a.j7[C].maxX,S=a.j7[C].minX,F=a.j7[C].plus180Line,N=a.j7[C].minus180Line),g)if("mesh"===t.type)A.push(t);else if("point"===t.type)A.push(x(t.clone(),v,S));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>x(e,v,S)),A.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,g);A.push(e.rings?new s.A(e):e)}else if(t.extent){const e=t.extent,i=(0,a.kd)(e.xmin,S)*(2*v);let r=0===i?t.clone():(0,a.kS)(t.clone(),i);e.offset(i,0);let{xmin:n,xmax:o}=e;n=Number(n.toFixed(9)),o=Number(o.toFixed(9)),e.intersects(F)&&o!==v?(O=o>O?o:O,r=M(r,b),_.push(r),A.push("cut")):e.intersects(N)&&n!==S?(O=o*(2*v)>O?o*(2*v):O,r=M(r,b,360),_.push(r),A.push("cut")):A.push(r)}else A.push(t.clone());else A.push(t);else A.push(t);let I=(0,a.kd)(O,v),Z=-90;const L=I,j=new l.A;for(;I>0;){const e=360*I-180;j.addPath([[e,Z],[e,-1*Z]]),Z*=-1,I--}if(_.length>0&&L>0){const t=T(_,await async function(e,t,i,r){const n=(0,f.Dl)(e),o=t[0].spatialReference,s={...r,responseType:"json",query:{...n.query,f:"json",sr:(0,u.YX)(o),target:JSON.stringify({geometryType:(0,c.$B)(t[0]),geometries:t}),cutter:JSON.stringify(i)}},l=await(0,y.A)(n.path+"/cut",s),{cutIndexes:a,geometries:p=[]}=l.data;return{cutIndexes:a,geometries:p.map(e=>{const t=(0,c.rS)(e);return t.spatialReference=o,t})}}(n,_,j,i)),r=[],o=[];for(let i=0;i<A.length;i++){const n=A[i];if("cut"!==n)o.push(n);else{const n=t.shift(),s=e[i];null!=s&&"polygon"===s.type&&s.rings&&s.rings.length>1&&n.rings.length>=s.rings.length?(r.push(n),o.push("simplify")):o.push(b?(0,p.Gh)(n):n)}}if(!r.length)return o;const s=await async function(e,t,i){const r="string"==typeof e?(0,d.An)(e):e,n=t[0].spatialReference,o=(0,c.$B)(t[0]),s={...i,query:{...r.query,f:"json",sr:(0,u.YX)(n),geometries:JSON.stringify((0,m.X)(t))}},{data:l}=await(0,y.A)(r.path+"/simplify",s);return(0,m.V)(l.geometries,o,n)}(n,r,i),l=[];for(let e=0;e<o.length;e++){const t=o[e];"simplify"!==t?l.push(t):l.push(b?(0,p.Gh)(s.shift()):s.shift())}return l}const R=[];for(let e=0;e<A.length;e++){const t=A[e];if("cut"!==t)R.push(t);else{const e=_.shift();R.push(!0===b?(0,p.Gh)(e):e)}}return R}function v(e,t,i){const r=(0,u.Vp)(i);if(null==r)return e;const[n,o]=r.valid,s=2*o;let l=0,a=0;t>o?l=Math.ceil(Math.abs(t-o)/s):t<n&&(l=-Math.ceil(Math.abs(t-n)/s)),e>o?a=Math.ceil(Math.abs(e-o)/s):e<n&&(a=-Math.ceil(Math.abs(e-n)/s));let p=e+(l-a)*s;const y=p-t;return y>o?p-=s:y<n&&(p+=s),p}},17311:(e,t,i)=>{i.d(t,{A:()=>c});var r=i(31635),n=i(65008),o=i(4576),s=i(60999),l=i(7762),a=i(10107),u=(i(44208),i(53966),i(40608)),p=i(30524),y=i(43668);let c=class extends n.A{constructor(e){super(e),this._featureUtils=null,this.effectivePopupTemplate=null}get _arcadeTask(){return this.expressionsUsedInTitle.length>0?this._get("_arcadeTask")||(0,s.UT)(()=>(0,y.l)()):null}get featureUtilsPromise(){return this._get("featureUtilsPromise")??i.e(9926).then(i.bind(i,29926)).then(e=>this._featureUtils=e)}get calculatedExpressions(){const e=new l.A;if(!this.expressionsUsedInTitle.length)return e;if(!this._arcadeTask?.value){for(const t of this.expressionsUsedInTitle??[])e.push({name:t.name,invalid:!0});return e}for(const t of this.expressionsUsedInTitle)try{const i=this._arcadeTask.value.arcade.parseScript(t.expression,["$layer","$map","$datastore"]);if(i.isAsync){e.push({name:t.name,invalid:!0});break}e.push({name:t.name,syntax:i,invalid:!1,func:this._arcadeTask.value.arcade.compileScript(i,{vars:{$feature:"any"}})})}catch{e.push({name:t.name,invalid:!0});break}return e}get expressionsUsedInTitle(){let e=this.effectivePopupTemplate?.title??"";return"string"!=typeof e?[]:(e=e.toLowerCase(),this.effectivePopupTemplate?.expressionInfos?.filter(t=>e.includes(`{expression/${t.name.toLowerCase()}}`))??[])}get fieldInfoMap(){return this._featureUtils?this._createFieldInfoMap(this._featureUtils.getAllFieldInfos(this.effectivePopupTemplate)):null}get hasBadExpressions(){return this.calculatedExpressions.some(e=>!0===e.invalid)}get requiredFields(){const e=new Set;if(this._arcadeTask?.value&&!this.hasBadExpressions)for(const t of this.calculatedExpressions?.toArray()??[])try{const i=this._arcadeTask.value.arcade.extractFieldLiterals(t.syntax);for(const t of i){const i=t.split("."),r=this.fieldsIndex.get(i.at(-1)??"");r&&e.add(r.name)}}catch{}const t=this._extractFieldNames(this.workingTitle);for(const i of t){const t=this.fieldsIndex.get(i);t&&e.add(t.name)}return null!=this.objectIdField&&e.add(this.objectIdField),e}get titleFromDisplayField(){let e="";return this.displayField&&(e=this.fieldsIndex.get(this.displayField)?.name??""),e||(e=this.fieldsIndex.get(this.objectIdField)?.name??""),e?`{${e}}`:""}get workingTitle(){const e=this.effectivePopupTemplate?this.effectivePopupTemplate.title:"";return""===e||null==e||this.hasBadExpressions||"string"!=typeof e?this.titleFromDisplayField:e}async getTitle(e,t,i){const r=t.getObjectId()??t.attributes[e.objectIdField];return(await this.getTitles(e,[t],i)).get(r)??""}async getTitles(e,t,i){const r=new Map,n=i?.timeZone??"system";try{const[{substituteFieldsInLinksAndAttributes:o}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);i?.fetchMissingFields&&(t=await this._checkAndReQueryGraphics(e,t));const{fieldInfoMap:s,workingTitle:l}=this,a=l&&s;t.forEach(t=>{const i=t.getObjectId()??t.attributes[e.objectIdField],u=a?o({attributes:t.attributes,expressionAttributes:null,fieldInfoMap:s,globalAttributes:this._createFormattedAttributes(e,t,n).global,layer:e,text:l}):"";r.set(i,u)})}catch{}return r}async _checkAndReQueryGraphics(e,t){const i=t.map(t=>t.getObjectId()??t.attributes[e.objectIdField]).filter(o.Ru);if(i.length!==t.length)return t;if(t.some(e=>!(0,p.Kl)(e,this.requiredFields))){const r=e.createQuery();r.where="1=1",r.outFields=[...this.requiredFields],r.objectIds=i;const n=await e.queryFeatures(r);if(n?.features.length===t.length)return n.features}return t}_createFieldInfoMap(e){const t=new Map;if(!e)return t;for(const i of e){if(!i.fieldName)continue;const e=this.fieldsIndex.get(i.fieldName),r=e?.name??i.fieldName;i.fieldName=r,t.set(r.toLowerCase(),i)}return t}_createFormattedAttributes(e,t,i="system"){const r=this.effectivePopupTemplate?.fieldInfos??[],n={};if(!this._featureUtils)return{};if(!this.hasBadExpressions&&this.calculatedExpressions.length>0&&this._arcadeTask?.value){const i=this._arcadeTask.value.Feature.createFromGraphicLikeObject(t.geometry,t.attributes,e,null);for(const e of this.calculatedExpressions)try{n[`expression/${e.name}`]=e.func({vars:{$feature:i}})}catch{}}const o={...t.attributes,...n};return{global:this._featureUtils.formatAttributes({fieldInfos:r,attributes:o,graphic:t,timeZone:i,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,p.nw)(e).filter(e=>!(e.startsWith("relationships/")||e.startsWith("expression/")))}};(0,r.Cg)([(0,a.MZ)({readOnly:!0})],c.prototype,"_arcadeTask",null),(0,r.Cg)([(0,a.MZ)()],c.prototype,"_featureUtils",void 0),(0,r.Cg)([(0,a.MZ)({readOnly:!0})],c.prototype,"featureUtilsPromise",null),(0,r.Cg)([(0,a.MZ)({readOnly:!0})],c.prototype,"calculatedExpressions",null),(0,r.Cg)([(0,a.MZ)()],c.prototype,"displayField",void 0),(0,r.Cg)([(0,a.MZ)()],c.prototype,"effectivePopupTemplate",void 0),(0,r.Cg)([(0,a.MZ)()],c.prototype,"expressionsUsedInTitle",null),(0,r.Cg)([(0,a.MZ)()],c.prototype,"fieldsIndex",void 0),(0,r.Cg)([(0,a.MZ)()],c.prototype,"fieldInfoMap",null),(0,r.Cg)([(0,a.MZ)()],c.prototype,"fields",void 0),(0,r.Cg)([(0,a.MZ)()],c.prototype,"objectIdField",void 0),(0,r.Cg)([(0,a.MZ)()],c.prototype,"requiredFields",null),c=(0,r.Cg)([(0,u.$)("esri.layers.support.TitleCreator")],c)},22671:(e,t,i)=>{i.d(t,{A:()=>b});var r,n=i(31635),o=i(52106),s=i(66552),l=i(25482),a=i(4718),u=i(10107),p=(i(44208),i(53966),i(36005)),y=i(40608),c=i(43937),f=i(16930),d=i(65864),m=i(50498),h=i(20437);const g=new s.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let b=r=class extends l.o{constructor(e){super(e),this.displayFieldName=null,this.exceededTransferLimit=!1,this.features=[],this.fields=null,this.geometryType=null,this.hasM=!1,this.hasZ=!1,this.queryGeometry=null,this.spatialReference=null}readFeatures(e,t){return this.readFeaturesWithClass(e,t,o.A)}writeGeometryType(e,t,i,r){if(e)return void g.write(e,t,i,r);const{features:n}=this;if(n)for(const e of n)if(null!=e?.geometry)return void g.write(e.geometry.type,t,i,r)}readQueryGeometry(e,t){if(!e)return null;const i=!!e.spatialReference,r=(0,d.rS)(e);return r&&!i&&t.spatialReference&&(r.spatialReference=f.A.fromJSON(t.spatialReference)),r}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:i}=this;if(i)for(const e of i)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new r(this.cloneProperties())}cloneProperties(){return(0,a.o8)({displayFieldName:this.displayFieldName,exceededTransferLimit:this.exceededTransferLimit,features:this.features,fields:this.fields,geometryType:this.geometryType,hasM:this.hasM,hasZ:this.hasZ,queryGeometry:this.queryGeometry,spatialReference:this.spatialReference,transform:this.transform})}toJSON(e){const t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let i=0;i<t.features.length;i++){const r=t.features[i];if(r.geometry){const t=e?.[i];r.geometry=t?.toJSON()||r.geometry}}return t}quantize(e){const{scale:[t,i],translate:[r,n]}=e,o=this.features,s=this._getQuantizationFunction(this.geometryType,e=>Math.round((e-r)/t),e=>Math.round((n-e)/i));for(let e=0,t=o.length;e<t;e++)s?.(o[e].geometry)||(o.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:i}=this;if(!i)return this;const{translate:[r,n],scale:[o,s]}=i;let l=null,a=null;if(this.hasZ&&null!=i?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=i;l=i=>i*t+e}if(this.hasM&&null!=i?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=i;a=i=>null==i?i:i*t+e}const u=this._getHydrationFunction(e,e=>e*o+r,e=>n-e*s,l,a);for(const{geometry:e}of t)null!=e&&u&&u(e);return this.transform=null,this}readFeaturesWithClass(e,t,i){const r=f.A.fromJSON(t.spatialReference),n=[];for(let t=0;t<e.length;t++){const o=e[t],s=i.fromJSON(o),l=o.geometry?.spatialReference;null==s.geometry||l||(s.geometry.spatialReference=r);const a=o.aggregateGeometries,u=s.aggregateGeometries;if(a&&null!=u)for(const e in u){const t=u[e],i=a[e],n=i?.spatialReference;null==t||n||(t.spatialReference=r)}n.push(s)}return n}_quantizePoints(e,t,i){let r,n;const o=[];for(let s=0,l=e.length;s<l;s++){const l=e[s];if(s>0){const e=t(l[0]),s=i(l[1]);e===r&&s===n||(o.push([e-r,s-n]),r=e,n=s)}else r=t(l[0]),n=i(l[1]),o.push([r,n])}return o.length>0?o:null}_getQuantizationFunction(e,t,i){return"point"===e?e=>(e.x=t(e.x),e.y=i(e.y),e):"polyline"===e||"polygon"===e?e=>{const r=(0,d.Bi)(e)?e.rings:e.paths,n=[];for(let e=0,o=r.length;e<o;e++){const o=r[e],s=this._quantizePoints(o,t,i);s&&n.push(s)}return n.length>0?((0,d.Bi)(e)?e.rings=n:e.paths=n,e):null}:"multipoint"===e?e=>{const r=this._quantizePoints(e.points,t,i);return r&&r.length>0?(e.points=r,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,i,r,n){return"point"===e?e=>{e.x=t(e.x),e.y=i(e.y),r&&(e.z=r(e.z))}:"polyline"===e||"polygon"===e?e=>{const o=(0,d.Bi)(e)?e.rings:e.paths;let s,l;for(let e=0,r=o.length;e<r;e++){const r=o[e];for(let e=0,n=r.length;e<n;e++){const n=r[e];e>0?(s+=n[0],l+=n[1]):(s=n[0],l=n[1]),n[0]=t(s),n[1]=i(l)}}if(r&&n)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2]),i[3]=n(i[3])}}else if(r)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2])}}else if(n)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=n(i[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=i(e.ymin),e.xmax=t(e.xmax),e.ymax=i(e.ymax),r&&null!=e.zmax&&null!=e.zmin&&(e.zmax=r(e.zmax),e.zmin=r(e.zmin)),n&&null!=e.mmax&&null!=e.mmin&&(e.mmax=n(e.mmax),e.mmin=n(e.mmin))}:"multipoint"===e?e=>{const o=e.points;let s,l;for(let e=0,r=o.length;e<r;e++){const r=o[e];e>0?(s+=r[0],l+=r[1]):(s=r[0],l=r[1]),r[0]=t(s),r[1]=i(l)}if(r&&n)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=r(t[2]),t[3]=n(t[3])}else if(r)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=r(t[2])}else if(n)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=n(t[2])}}:null}};(0,n.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],b.prototype,"displayFieldName",void 0),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"exceededTransferLimit",void 0),(0,n.Cg)([(0,u.MZ)({type:[o.A],json:{write:!0}})],b.prototype,"features",void 0),(0,n.Cg)([(0,p.w)("features")],b.prototype,"readFeatures",null),(0,n.Cg)([(0,u.MZ)({type:[h.A],json:{write:!0}})],b.prototype,"fields",void 0),(0,n.Cg)([(0,u.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:g.read}}})],b.prototype,"geometryType",void 0),(0,n.Cg)([(0,c.K)("geometryType")],b.prototype,"writeGeometryType",null),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"hasM",void 0),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"hasZ",void 0),(0,n.Cg)([(0,u.MZ)({types:m.yR,json:{write:!0}})],b.prototype,"queryGeometry",void 0),(0,n.Cg)([(0,p.w)("queryGeometry")],b.prototype,"readQueryGeometry",null),(0,n.Cg)([(0,u.MZ)({type:f.A,json:{write:!0}})],b.prototype,"spatialReference",void 0),(0,n.Cg)([(0,c.K)("spatialReference")],b.prototype,"writeSpatialReference",null),(0,n.Cg)([(0,u.MZ)({json:{write:!0}})],b.prototype,"transform",void 0),b=r=(0,n.Cg)([(0,y.$)("esri.rest.support.FeatureSet")],b),b.prototype.toJSON.isDefaultToJSON=!0},33032:(e,t,i)=>{i.d(t,{H:()=>n,L:()=>r});const r=1;function n(e,t){let i=0;for(const r of t){const t=r.attributes?.[e];"number"==typeof t&&isFinite(t)&&(i=Math.max(i,t))}return i}},33143:(e,t,i)=>{i.d(t,{A:()=>c});var r=i(31635),n=i(69540),o=i(25482),s=i(10107),l=(i(44208),i(53966),i(87811),i(36005)),a=i(40608),u=i(43937),p=i(80451),y=i(29005);let c=class extends((0,n.O)(o.o)){constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const i of Object.keys(e))t[i]=(0,p.rS)(e[i]);return t}writeDomains(e,t){const i={};for(const t of Object.keys(e))e[t]&&(i[t]=e[t]?.toJSON());t.domains=i}};(0,r.Cg)([(0,s.MZ)({json:{write:!0}})],c.prototype,"id",void 0),(0,r.Cg)([(0,s.MZ)({json:{write:!0}})],c.prototype,"name",void 0),(0,r.Cg)([(0,s.MZ)({json:{write:!0}})],c.prototype,"domains",void 0),(0,r.Cg)([(0,l.w)("domains")],c.prototype,"readDomains",null),(0,r.Cg)([(0,u.K)("domains")],c.prototype,"writeDomains",null),(0,r.Cg)([(0,s.MZ)({type:[y.A],json:{write:!0}})],c.prototype,"templates",void 0),c=(0,r.Cg)([(0,a.$)("esri.layers.support.FeatureType")],c)},41366:(e,t,i)=>{i.d(t,{K:()=>c,Q:()=>u});var r=i(31635),n=i(66552),o=i(53966),s=i(10107),l=(i(44208),i(87811),i(93223)),a=i(40608);const u=(0,n.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),p="percent-of-total",y="field",c=e=>{const t=e;let i=class extends t{constructor(){super(...arguments),this.normalizationField=null,this.normalizationMaxValue=null,this.normalizationMinValue=null,this.normalizationTotal=null}get normalizationType(){let e=this._get("normalizationType");const t=!!this.normalizationField,i=null!=this.normalizationTotal;return t||i?(e=t&&y||i&&p||null,t&&i&&o.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==y&&e!==p||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,r.Cg)([(0,s.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],i.prototype,"normalizationField",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],i.prototype,"normalizationMaxValue",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],i.prototype,"normalizationMinValue",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],i.prototype,"normalizationTotal",void 0),(0,r.Cg)([(0,l.e)(u,{name:"parameters.normalizationType"})],i.prototype,"normalizationType",null),i=(0,r.Cg)([(0,a.$)("esri.rest.support.NormalizationBinParametersMixin")],i),i}},50498:(e,t,i)=>{i.d(t,{Ye:()=>y,gy:()=>p,yR:()=>c});var r=i(66552),n=i(5443),o=i(91075),s=i(48526),l=i(86738),a=i(39829),u=i(82799);const p=(0,r.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),y=(0,r.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),c={base:o.A,key:"type",typeMap:{extent:n.A,multipoint:s.A,point:l.A,polyline:u.A,polygon:a.A}}},52106:(e,t,i)=>{i.d(t,{A:()=>x});var r,n=i(31635),o=i(13874),s=i(69540),l=i(51447),a=i(25482),u=i(53966),p=i(36708),y=i(24326),c=i(10107),f=(i(44208),i(87811),i(40608)),d=i(12195),m=i(65864),h=i(50498),g=i(54339),b=i(33910);function M(e){if(null==e)return null;const t={};for(const i in e){const r=e[i];r&&(t[i]=r.toJSON())}return 0!==Object.keys(t).length?t:null}let x=class extends((0,s.O)(a.o)){static{r=this}constructor(e){super(e),this.isAggregate=!1,this.layer=null,this.origin=null,this.sourceLayer=null,this._version=0,Object.defineProperty(this,"uid",{value:(0,y.c)(),configurable:!0}),Object.defineProperty(this,"_lastMeshTransform",{value:{},configurable:!0,writable:!0,enumerable:!1}),arguments.length>1&&(0,l.eF)(u.A.getLogger(this),"Graphic",{version:"4.30"})}initialize(){this._watchMeshGeometryChanges()}set aggregateGeometries(e){const t=this._get("aggregateGeometries");JSON.stringify(t)!==JSON.stringify(e)&&this._set("aggregateGeometries",e)}set attributes(e){const t=this._get("attributes");t!==e&&(this._set("attributes",e),this._notifyLayer("attributes",t,e))}set geometry(e){const t=this._get("geometry");t!==e&&(this._set("geometry",e),"mesh"!==e?.type&&this._notifyLayer("geometry",t,e))}set popupTemplate(e){const t=this._get("popupTemplate");t!==e&&(this._set("popupTemplate",e),this._notifyLayer("popupTemplate",t,e))}set symbol(e){const t=this._get("symbol");t!==e&&(this._set("symbol",e),this._notifyLayer("symbol",t,e))}get version(){return this._version}set visible(e){const t=this._get("visible");t!==e&&(this._set("visible",e),this._notifyLayer("visible",t,e))}cloneShallow(){return new r({aggregateGeometries:this.aggregateGeometries,attributes:this.attributes,geometry:this.geometry,isAggregate:this.isAggregate,layer:this.layer,popupTemplate:this.popupTemplate,sourceLayer:this.sourceLayer,symbol:this.symbol,visible:this.visible,origin:this.origin})}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;const t=this.origin&&"layer"in this.origin?this.origin.layer:null;for(const i of[t,this.sourceLayer,this.layer])if(i&&"object"==typeof i){if("popupTemplate"in i&&i.popupTemplate)return i.popupTemplate;if(e&&"defaultPopupTemplate"in i&&null!=i.defaultPopupTemplate)return i.defaultPopupTemplate}return null}getAttribute(e){return this.attributes?.[e]}setAttribute(e,t){if(this.attributes){const i=this.getAttribute(e);this.attributes[e]=t,this._notifyLayer("attributes",i,t,e)}else this.attributes={[e]:t}}getObjectId(){const e=this.sourceLayer??this.layer;return e?(0,g.r)(this,e):null}getGlobalId(){const e=this.sourceLayer??this.layer;return e&&"globalIdField"in e&&e.globalIdField?this.getAttribute(e.globalIdField):null}toJSON(){return{aggregateGeometries:M(this.aggregateGeometries),geometry:null!=this.geometry?this.geometry.toJSON():null,symbol:null!=this.symbol?this.symbol.toJSON():null,attributes:(0,d.W)(this.attributes)?this.attributes.toJSON():{...this.attributes},popupTemplate:this.popupTemplate?.toJSON()??null}}notifyMeshTransformChanged(e={}){const{geometry:t}=this;if("mesh"===t?.type){const i={origin:t.origin,transform:t.transform};this._notifyLayer("origin-transform",i,i,e.action)}}_notifyLayer(e,t,i,r){if(this._version++,!this.layer||!("graphicChanged"in this.layer))return;const n={graphic:this,property:e,oldValue:t,newValue:i};"origin-transform"===e&&(n.action=r),"attributes"===e&&(n.attributeName=r),this.layer.graphicChanged(n)}_watchMeshGeometryChanges(){this.addHandles([(0,p.z7)(()=>"mesh"===this.geometry?.type&&this.geometry.vertexSpace.origin?{localMatrix:this.geometry.transform?.localMatrix,origin:this.geometry.vertexSpace.origin}:void 0,({localMatrix:e,origin:t})=>{this._lastMeshTransform.localMatrix===e&&this._lastMeshTransform.origin===t||(this._lastMeshTransform.localMatrix=e,this._lastMeshTransform.origin=t,this.notifyMeshTransformChanged())}),(0,p.z7)(()=>"mesh"===this.geometry?.type?{vertexAttributes:this.geometry.vertexAttributes}:void 0,()=>{const e=this.geometry;"mesh"===e?.type&&e.vertexSpace.origin?(this._lastMeshTransform.localMatrix=e.transform?.localMatrix,this._lastMeshTransform.origin=e.vertexSpace.origin):(this._lastMeshTransform.localMatrix=void 0,this._lastMeshTransform.origin=void 0),this._notifyLayer("geometry",this.geometry,this.geometry)},{equals:(e,t)=>e===t,sync:!0})])}};(0,n.Cg)([(0,c.MZ)({value:null,json:{read:function(e){if(!e)return null;const t={};for(const i in e){const r=(0,m.rS)(e[i]);r&&(t[i]=r)}return 0!==Object.keys(t).length?t:null}}})],x.prototype,"aggregateGeometries",null),(0,n.Cg)([(0,c.MZ)({value:null})],x.prototype,"attributes",null),(0,n.Cg)([(0,c.MZ)({value:null,types:h.yR,json:{read:m.rS}})],x.prototype,"geometry",null),(0,n.Cg)([(0,c.MZ)({type:Boolean})],x.prototype,"isAggregate",void 0),(0,n.Cg)([(0,c.MZ)({clonable:!1})],x.prototype,"layer",void 0),(0,n.Cg)([(0,c.MZ)({clonable:"reference"})],x.prototype,"origin",void 0),(0,n.Cg)([(0,c.MZ)({type:o.A,value:null})],x.prototype,"popupTemplate",null),(0,n.Cg)([(0,c.MZ)({clonable:"reference"})],x.prototype,"sourceLayer",void 0),(0,n.Cg)([(0,c.MZ)({value:null,types:b.Es})],x.prototype,"symbol",null),(0,n.Cg)([(0,c.MZ)({clonable:!1,json:{read:!1,write:!1}})],x.prototype,"_version",void 0),(0,n.Cg)([(0,c.MZ)({type:Boolean,value:!0})],x.prototype,"visible",null),x=r=(0,n.Cg)([(0,f.$)("esri.Graphic")],x)},54339:(e,t,i)=>{function r(e,t){switch(t.type){case"object-id":case"unique-id-simple":return e.attributes[t.fieldName];case"unique-id-composite":{const i=[];for(const r of t.fieldNames)i.push(e.attributes[r]??null);return JSON.stringify(i)}}}function n(e,t){if("uniqueIdFields"in t&&t.uniqueIdFields?.length){if(1===t.uniqueIdFields.length)return e.attributes?.[t.uniqueIdFields[0]];const i=t.uniqueIdFields.map(t=>e.attributes?.[t]);return JSON.stringify(i)}return"objectIdField"in t&&t.objectIdField?e.attributes?.[t.objectIdField]:null}i.d(t,{W:()=>r,r:()=>n})},58501:(e,t,i)=>{i.d(t,{q:()=>n});var r=i(62815);function n(e,t,i){if(!i?.features||!i.hasZ)return;const n=(0,r.N)(i.geometryType,t,e.outSpatialReference);if(null!=n)for(const e of i.features)n(e.geometry)}},70328:(e,t,i)=>{i.d(t,{BI:()=>M,DC:()=>y,Ej:()=>f,Ie:()=>g,Jt:()=>b,Ne:()=>d,RF:()=>p,aI:()=>T,fA:()=>s,gE:()=>a,hZ:()=>h,iT:()=>c,is:()=>x,qv:()=>w,vI:()=>m,vY:()=>l,v_:()=>v,vt:()=>o,w1:()=>u});var r=i(5443),n=(i(19419),i(4197));function o(e=v){return[e[0],e[1],e[2],e[3],e[4],e[5]]}function s(e,t,i,r,n,s,l=o()){return l[0]=e,l[1]=t,l[2]=i,l[3]=r,l[4]=n,l[5]=s,l}function l(e,t=o()){return function(e,t,i,r=o()){return h(r,w),function(e,t,i=0,r=t.length/3){let n=e[0],o=e[1],s=e[2],l=e[3],a=e[4],u=e[5];for(let e=0;e<r;e++)n=Math.min(n,t[i+3*e]),o=Math.min(o,t[i+3*e+1]),s=Math.min(s,t[i+3*e+2]),l=Math.max(l,t[i+3*e]),a=Math.max(a,t[i+3*e+1]),u=Math.max(u,t[i+3*e+2]);e[0]=n,e[1]=o,e[2]=s,e[3]=l,e[4]=a,e[5]=u}(r,e,t,i),r}(e,0,e.length/3,t)}function a(e,t=(0,n.jh)(24)){const[i,r,o,s,l,a]=e;return t[0]=i,t[1]=r,t[2]=o,t[3]=i,t[4]=r,t[5]=a,t[6]=i,t[7]=l,t[8]=o,t[9]=i,t[10]=l,t[11]=a,t[12]=s,t[13]=r,t[14]=o,t[15]=s,t[16]=r,t[17]=a,t[18]=s,t[19]=l,t[20]=o,t[21]=s,t[22]=l,t[23]=a,t}function u(e,t){const i=isFinite(e[2])||isFinite(e[5]);return new r.A(i?{xmin:e[0],xmax:e[3],ymin:e[1],ymax:e[4],zmin:e[2],zmax:e[5],spatialReference:t}:{xmin:e[0],xmax:e[3],ymin:e[1],ymax:e[4],spatialReference:t})}function p(e,t){e[0]=Math.min(e[0],t[0]),e[1]=Math.min(e[1],t[1]),e[2]=Math.min(e[2],t[2]),e[3]=Math.max(e[3],t[3]),e[4]=Math.max(e[4],t[4]),e[5]=Math.max(e[5],t[5])}function y(e,t){e[0]=Math.min(e[0],t[0]),e[1]=Math.min(e[1],t[1]),e[3]=Math.max(e[3],t[2]),e[4]=Math.max(e[4],t[3])}function c(e,t){e[0]=Math.min(e[0],t[0]),e[1]=Math.min(e[1],t[1]),e[2]=Math.min(e[2],t[2]),e[3]=Math.max(e[3],t[0]),e[4]=Math.max(e[4],t[1]),e[5]=Math.max(e[5],t[2])}function f(e,t=[0,0,0]){return t[0]=function(e){return e[0]>=e[3]?0:e[3]-e[0]}(e),t[1]=function(e){return e[1]>=e[4]?0:e[4]-e[1]}(e),t[2]=function(e){return e[2]>=e[5]?0:e[5]-e[2]}(e),t}function d(e,t,i=e){return i[0]=t[0],i[1]=t[1],i[2]=t[2],i!==e&&(i[3]=e[3],i[4]=e[4],i[5]=e[5]),i}function m(e,t,i=e){return i[3]=t[0],i[4]=t[1],i[5]=t[2],i!==e&&(i[0]=e[0],i[1]=e[1],i[2]=e[2]),e}function h(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e}function g(e){return e?h(e,w):o(w)}function b(e,t){return e[0]=t[0],e[1]=t[1],e[2]=Number.NEGATIVE_INFINITY,e[3]=t[2],e[4]=t[3],e[5]=Number.POSITIVE_INFINITY,e}function M(e,t,i,r,n){return e[0]=t,e[1]=i,e[2]=Number.NEGATIVE_INFINITY,e[3]=r,e[4]=n,e[5]=Number.POSITIVE_INFINITY,e}function x(e){return 6===e.length}function T(e,t,i){if(null==e||null==t)return e===t;if(!x(e)||!x(t))return!1;if(i){for(let r=0;r<e.length;r++)if(!i(e[r],t[r]))return!1}else for(let i=0;i<e.length;i++)if(e[i]!==t[i])return!1;return!0}const w=[1/0,1/0,1/0,-1/0,-1/0,-1/0],v=[0,0,0,0,0,0];o()},80754:(e,t,i)=>{i.d(t,{j7:()=>s,kS:()=>a,kd:()=>l,r8:()=>u});var r=i(82799),n=i(16930),o=i(65864);const s={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new r.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:n.A.WebMercator}),minus180Line:new r.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:n.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new r.A({paths:[[[180,-180],[180,180]]],spatialReference:n.A.WGS84}),minus180Line:new r.A({paths:[[[-180,-180],[-180,180]]],spatialReference:n.A.WGS84})}};function l(e,t){return Math.ceil((e-t)/(2*t))}function a(e,t){const i=u(e);for(const e of i)for(const i of e)i[0]+=t;return e}function u(e){return(0,o.Bi)(e)?e.rings:e.paths}},92300:(e,t,i)=>{i.d(t,{V:()=>o,X:()=>n});var r=i(65864);function n(e){return{geometryType:(0,r.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function o(e,t,i){const n=(0,r.xD)(t);return e.map(e=>{const t=n.fromJSON(e);return t.spatialReference=i,t})}},95466:(e,t,i)=>{i.d(t,{A:()=>f});var r=i(49186),n=i(53966),o=i(91869),s=i(3330),l=i(12195),a=i(30524),u=i(98623),p=i(56400),y=i(96285);const c=new Map;class f{static fromJSON(e){return new f(e.fields,e.timeZoneByFieldName)}static fromLayer(e){return new f(e.fields??[],g(e))}static fromLayerJSON(e){return new f(e.fields??[],g(e))}constructor(e=[],t){this._fieldsMap=new Map,this._normalizedFieldsMap=new Map,this._dateFieldsSet=new Set,this._numericFieldsSet=new Set,this._requiredFields=null,this.dateFields=[],this.numericFields=[],this.fields=e||[],this._timeZoneByFieldName=t?new Map(t):null;const i=[];for(const e of this.fields){const t=e?.name,r=m(t);if(t&&r){const n=d(t);this._fieldsMap.set(t,e),this._fieldsMap.set(n,e),this._normalizedFieldsMap.set(r,e),i.push(`${n}:${e.type}:${this._timeZoneByFieldName?.get(t)}`),(0,a.vE)(e)?(this.dateFields.push(e),this._dateFieldsSet.add(e)):(0,a.WA)(e)&&(this._numericFieldsSet.add(e),this.numericFields.push(e)),(0,a.te)(e)||(0,a.Xz)(e)||(e.editable=null==e.editable||!!e.editable,e.nullable=null==e.nullable||!!e.nullable)}}i.sort(),this.uid=i.join()}get requiredFields(){if(!this._requiredFields){this._requiredFields=[];for(const e of this.fields)(0,a.te)(e)||(0,a.Xz)(e)||e.nullable||void 0!==(0,a.lD)(e)||this._requiredFields.push(e)}return this._requiredFields}equals(e){return this.uid===e?.uid}has(e){return null!=this.get(e)}get(e){if(!e)return;let t=this._fieldsMap.get(e);return t||(t=this._fieldsMap.get(d(e))??this._normalizedFieldsMap.get(m(e)),t&&this._fieldsMap.set(e,t),t)}getTimeZone(e){const t=this.get(e&&"string"!=typeof e?e.name:e);return t?this._timeZoneByFieldName?this._timeZoneByFieldName.get(t.name):"date"===t.type||"esriFieldTypeDate"===t.type?(n.A.getLogger("esri.layers.support.FieldsIndex").errorOnce(new r.A("getTimeZone:no-timezone-information",`no time zone information for field '${t.name}'`)),u.n$):h.has(t.type)?u.L5:null:null}getLuxonTimeZone(e){const t=this.getTimeZone(e);return t?t===u.L5?s.GB.instance:t===u.n$?y.mQ.utcInstance:(0,o.tE)(c,t,()=>y.oh.create(t)):null}isDateField(e){return this._dateFieldsSet.has(this.get(e))}isTimeOnlyField(e){return(0,a.OH)(this.get(e))}isNumericField(e){return this._numericFieldsSet.has(this.get(e))}normalizeFieldName(e){return this.get(e)?.name??void 0}toJSON(){return{fields:this.fields.map(e=>(0,l.W)(e)?e.toJSON():e),timeZoneByFieldName:this._timeZoneByFieldName?Array.from(this._timeZoneByFieldName.entries()):null}}}function d(e){return e.trim().toLowerCase()}function m(e){return(0,a.rS)(e)?.toLowerCase()??""}const h=new Set(["time-only","date-only","timestamp-offset","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"]);function g(e){const t=new Map;if(!e.fields)return t;const i=!0===e.datesInUnknownTimezone,{timeInfo:r,editFieldsInfo:n}=e,o=(r?"startField"in r?r.startField:r.startTimeField:"")??"",s=(r?"endField"in r?r.endField:r.endTimeField:"")??"",l=function(e){return"dateFieldsTimeZone"in e}(e)?e.dateFieldsTimeZone??null:e.dateFieldsTimeReference?(0,p.ZS)(e.dateFieldsTimeReference):null,a=n?function(e){return"timeZone"in e}(n)?n.timeZone??l:n.dateFieldsTimeReference?(0,p.ZS)(n.dateFieldsTimeReference):l??u.n$:null,y=r?function(e){return"timeZone"in e}(r)?r.timeZone??l:r.timeReference?(0,p.ZS)(r.timeReference):l:null,c=new Map([[d(n?.creationDateField??""),a],[d(n?.editDateField??""),a],[d(o),y],[d(s),y]]);for(const{name:r,type:n}of e.fields)if(h.has(n))t.set(r,u.L5);else if("date"!==n&&"esriFieldTypeDate"!==n)t.set(r,null);else if(i)t.set(r,u.L5);else{const e=c.get(d(r??""))??l;t.set(r,e)}return t}},96299:(e,t,i)=>{i.r(t),i.d(t,{default:()=>U});var r=i(31635),n=i(52106),o=i(7762),s=i(49186),l=i(4718),a=i(92071),u=i(93637),p=i(67076),y=i(10107),c=(i(44208),i(53966),i(36005)),f=i(40608),d=i(43937),m=i(5443),h=i(98988),g=i(16930),b=i(19419),M=i(17136),x=i(21325),T=i(99959);const w=Symbol("isMapNotesGraphicOriginSymbol");var v;class S extends T.A{static{v=w}constructor(e,t){super(),this[v]=!0,this.type="map-notes",this.layer=e,this.sublayer=t}}var C=i(29784),F=i(94194),N=i(4146),O=i(33032),_=i(63074),A=i(16131),I=i(8303),Z=i(25036),L=i(20437),j=i(94985),R=i(31593),J=i(53930),G=i(68249);function z(e){return"markup"===e.featureCollectionType||e.layers.some(e=>null!=e.layerDefinition.visibilityField||!P(e))}function P({layerDefinition:e,featureSet:t}){const i=e.geometryType??t.geometryType;return B.find(t=>i===t.geometryTypeJSON&&e.drawingInfo?.renderer?.symbol?.type===t.identifyingSymbol.type)}function k(){return new m.A({xmin:-180,ymin:-90,xmax:180,ymax:90})}const q=new L.A({name:"OBJECTID",alias:"OBJECTID",type:"oid",nullable:!1,editable:!1}),E=new L.A({name:"title",alias:"Title",type:"string",nullable:!0,editable:!0,length:255}),B=[{geometryType:"polygon",geometryTypeJSON:"esriGeometryPolygon",id:"polygonLayer",layerId:0,title:"Polygons",identifyingSymbol:(new j.A).toJSON()},{geometryType:"polyline",geometryTypeJSON:"esriGeometryPolyline",id:"polylineLayer",layerId:1,title:"Polylines",identifyingSymbol:(new R.A).toJSON()},{geometryType:"multipoint",geometryTypeJSON:"esriGeometryMultipoint",id:"multipointLayer",layerId:2,title:"Multipoints",identifyingSymbol:(new J.A).toJSON()},{geometryType:"point",geometryTypeJSON:"esriGeometryPoint",id:"pointLayer",layerId:3,title:"Points",identifyingSymbol:(new J.A).toJSON()},{geometryType:"point",geometryTypeJSON:"esriGeometryPoint",id:"textLayer",layerId:4,title:"Text",identifyingSymbol:(new G.A).toJSON()}];let D=class extends((0,_.dM)((0,Z.j)((0,A.q)((0,I.A)((0,a.P)(N.A)))))){constructor(e){super(e),this.capabilities={operations:{supportsMapNotesEditing:!0}},this.featureCollections=null,this.featureCollectionJSON=null,this.featureCollectionType="notes",this.legendEnabled=!1,this.listMode="hide-children",this.minScale=0,this.maxScale=0,this.spatialReference=g.A.WGS84,this.sublayers=new o.A(B.map(e=>new $({id:e.id,layerId:e.layerId,title:e.title,layer:this}))),this.title="Map Notes",this.type="map-notes",this.visibilityMode="inherited"}readCapabilities(e,t,i){return{operations:{supportsMapNotesEditing:!z(t)&&"portal-item"!==i?.origin}}}readFeatureCollections(e,t,i){if(!z(t))return null;const r=t.layers.map(e=>{const t=new C.default;return t.read(e,i),t});return new o.A({items:r})}readLegacyfeatureCollectionJSON(e,t){return z(t)?(0,l.o8)(t.featureCollection):null}get fullExtent(){const e=this.spatialReference,t=(0,b.Ie)();return null!=this.sublayers?this.sublayers.forEach(({fullBounds:e})=>null!=e?(0,b.fT)(t,e,t):t,t):this.featureCollectionJSON?.layers.some(e=>e.layerDefinition.extent)&&this.featureCollectionJSON.layers.forEach(i=>{const r=(0,h.projectOrLoad)(i.layerDefinition.extent,e).geometry;null!=r&&(0,b.fT)(t,r,t)}),(0,b.aI)(t,b.qv)?(0,h.projectOrLoad)(k(),e).geometry:(0,b.w1)(t,e)}readMinScale(e,t){for(const e of t.layers)if(null!=e.layerDefinition.minScale)return e.layerDefinition.minScale;return 0}readMaxScale(e,t){for(const e of t.layers)if(null!=e.layerDefinition.maxScale)return e.layerDefinition.maxScale;return 0}get multipointLayer(){return this._findSublayer("multipointLayer")}get pointLayer(){return this._findSublayer("pointLayer")}get polygonLayer(){return this._findSublayer("polygonLayer")}get polylineLayer(){return this._findSublayer("polylineLayer")}readSpatialReference(e,t){return t.layers.length?g.A.fromJSON(t.layers[0].layerDefinition.spatialReference):g.A.WGS84}readSublayers(e,t,i){if(z(t))return null;const r=[];let s=t.layers.reduce((e,t)=>Math.max(e,t.layerDefinition.id??-1),-1)+1;for(const e of t.layers){const{layerDefinition:t,featureSet:i}=e,o=t.id??s++,l=P(e);if(null!=l){const e=new $({id:l.id,title:t.name,layerId:o,layer:this,graphics:i.features.map(({geometry:e,symbol:t,attributes:i,popupInfo:r})=>n.A.fromJSON({attributes:i,geometry:e,symbol:t,popupTemplate:r}))});r.push(e)}}return new o.A(r)}writeSublayers(e,t,i,r){const{minScale:n,maxScale:o}=this;if(null==e)return;const l=e.some(e=>e.graphics.length>0);if(!this.capabilities.operations.supportsMapNotesEditing)return void(l&&r?.messages?.push(new s.A("map-notes-layer:editing-not-supported","New map notes cannot be added to this layer")));const a=[];let p=this.spatialReference.toJSON();e:for(const t of e)for(const e of t.graphics)if(null!=e.geometry){p=e.geometry.spatialReference.toJSON();break e}for(const t of B){const i=e.find(e=>t.id===e.id);this._writeMapNoteSublayer(a,i,t,n,o,p,r)}(0,u.sM)("featureCollection.layers",a,t)}get textLayer(){return this._findSublayer("textLayer")}load(e){return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Feature Collection"]},e)),Promise.resolve(this)}read(e,t){"featureCollection"in e&&(e=(0,l.o8)(e),Object.assign(e,e.featureCollection)),super.read(e,t)}async beforeSave(){if(null==this.sublayers)return;let e=null;const t=[];for(const i of this.sublayers)for(const r of i.graphics)if(null!=r.geometry){const i=r.geometry;e?(0,x.aI)(i.spatialReference,e)||((0,h.canProjectWithoutEngine)(i.spatialReference,e)||(0,h.isLoaded)()||await(0,h.load)(),r.geometry=(0,h.project)(i,e)):e=i.spatialReference,t.push(r)}const i=await(0,M.el)(t.map(e=>e.geometry));t.forEach((e,t)=>e.geometry=i[t])}_findSublayer(e){return null==this.sublayers?null:this.sublayers?.find(t=>t.id===e)??null}_writeMapNoteSublayer(e,t,i,r,n,o,s){const a=[];if(null!=t){for(const e of t.graphics)this._writeMapNote(a,e,i.geometryType,s);this._normalizeObjectIds(a,q),e.push({layerDefinition:{name:t.title,drawingInfo:{renderer:{type:"simple",symbol:(0,l.o8)(i.identifyingSymbol)}},id:t.layerId,geometryType:i.geometryTypeJSON,minScale:r,maxScale:n,objectIdField:"OBJECTID",fields:[q.toJSON(),E.toJSON()],spatialReference:o},featureSet:{features:a,geometryType:i.geometryTypeJSON}})}}_writeMapNote(e,t,i,r){if(null==t)return;const{geometry:n,symbol:o,popupTemplate:s}=t;if(null==n)return;if(n.type!==i)return void r?.messages?.push(new p.A("map-notes-layer:invalid-geometry-type",`Geometry "${n.type}" cannot be saved in "${i}" layer`,{graphic:t}));if(null==o)return void r?.messages?.push(new p.A("map-notes-layer:no-symbol","Skipping map notes with no symbol",{graphic:t}));const l={attributes:{...t.attributes},geometry:n.toJSON(),symbol:o.toJSON()};null!=s&&(l.popupInfo=s.toJSON()),e.push(l)}_normalizeObjectIds(e,t){const i=t.name;let r=(0,O.H)(i,e)+1;const n=new Set;for(const t of e){t.attributes||(t.attributes={});const{attributes:e}=t;(null==e[i]||n.has(e[i]))&&(e[i]=r++),n.add(e[i])}}};(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"capabilities",void 0),(0,r.Cg)([(0,c.w)(["portal-item","web-map"],"capabilities",["layers"])],D.prototype,"readCapabilities",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"featureCollections",void 0),(0,r.Cg)([(0,c.w)(["web-map","portal-item"],"featureCollections",["layers"])],D.prototype,"readFeatureCollections",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0,json:{origins:{"web-map":{write:{enabled:!0,target:"featureCollection"}}}}})],D.prototype,"featureCollectionJSON",void 0),(0,r.Cg)([(0,c.w)(["web-map","portal-item"],"featureCollectionJSON",["featureCollection"])],D.prototype,"readLegacyfeatureCollectionJSON",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0,json:{read:!0,write:{enabled:!0,ignoreOrigin:!0}}})],D.prototype,"featureCollectionType",void 0),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"fullExtent",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0,json:{origins:{"web-map":{write:{target:"featureCollection.showLegend",overridePolicy(){return{enabled:null!=this.featureCollectionJSON}}}}}}})],D.prototype,"legendEnabled",void 0),(0,r.Cg)([(0,y.MZ)({type:["show","hide","hide-children"]})],D.prototype,"listMode",void 0),(0,r.Cg)([(0,y.MZ)({type:Number,nonNullable:!0,json:{write:!1}})],D.prototype,"minScale",void 0),(0,r.Cg)([(0,c.w)(["web-map","portal-item"],"minScale",["layers"])],D.prototype,"readMinScale",null),(0,r.Cg)([(0,y.MZ)({type:Number,nonNullable:!0,json:{write:!1}})],D.prototype,"maxScale",void 0),(0,r.Cg)([(0,c.w)(["web-map","portal-item"],"maxScale",["layers"])],D.prototype,"readMaxScale",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"multipointLayer",null),(0,r.Cg)([(0,y.MZ)({value:"ArcGISFeatureLayer",type:["ArcGISFeatureLayer"]})],D.prototype,"operationalLayerType",void 0),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"pointLayer",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"polygonLayer",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"polylineLayer",null),(0,r.Cg)([(0,y.MZ)({type:g.A})],D.prototype,"spatialReference",void 0),(0,r.Cg)([(0,c.w)(["web-map","portal-item"],"spatialReference",["layers"])],D.prototype,"readSpatialReference",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0,json:{origins:{"web-map":{write:{ignoreOrigin:!0}}}}})],D.prototype,"sublayers",void 0),(0,r.Cg)([(0,c.w)("web-map","sublayers",["layers"])],D.prototype,"readSublayers",null),(0,r.Cg)([(0,d.K)("web-map","sublayers")],D.prototype,"writeSublayers",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],D.prototype,"textLayer",null),(0,r.Cg)([(0,y.MZ)()],D.prototype,"title",void 0),(0,r.Cg)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],D.prototype,"type",void 0),D=(0,r.Cg)([(0,f.$)("esri.layers.MapNotesLayer")],D);let $=class extends F.A{constructor(e){super(e),this.visibilityMode="inherited"}initialize(){for(const e of this.graphics)e.sourceLayer=this.layer;this.graphics.on("after-add",e=>{e.item.sourceLayer=this.layer,e.item.origin=this.graphicOrigin}),this.graphics.on("after-remove",e=>{e.item.sourceLayer=null,e.item.origin=null})}get fullExtent(){const e=this.layer?.spatialReference,t=this.fullBounds;return e?null==t?(0,h.projectOrLoad)(k(),e).geometry:(0,b.w1)(t,e):null}get fullBounds(){const e=this.layer?.spatialReference;if(!e)return null;const t=(0,b.Ie)();return this.graphics.forEach(i=>{const r=null!=i.geometry?(0,h.projectOrLoad)(i.geometry,e).geometry:null;null!=r&&(0,b.fT)(t,"point"===r.type?r:r.extent,t)}),(0,b.aI)(t,b.qv)?null:t}get graphicOrigin(){return new S(this.layer,this)}get sublayers(){return this.graphics}};(0,r.Cg)([(0,y.MZ)({readOnly:!0})],$.prototype,"fullExtent",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],$.prototype,"fullBounds",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],$.prototype,"graphicOrigin",null),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],$.prototype,"sublayers",null),(0,r.Cg)([(0,y.MZ)()],$.prototype,"layer",void 0),(0,r.Cg)([(0,y.MZ)()],$.prototype,"layerId",void 0),(0,r.Cg)([(0,y.MZ)({readOnly:!0})],$.prototype,"visibilityMode",void 0),$=(0,r.Cg)([(0,f.$)("esri.layers.MapNotesLayer.MapNotesSublayer")],$);const U=D}}]);