@arcgis/core 4.33.0-next.20250213 → 4.33.0-next.20250214

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 (241) hide show
  1. package/arcade/arcadeAsyncRuntime.js +1 -1
  2. package/arcade/arcadeCompiler.js +1 -1
  3. package/arcade/arcadeEnvironment.js +1 -1
  4. package/arcade/arcadeRuntime.js +1 -1
  5. package/arcade/featureSetUtils.js +1 -1
  6. package/arcade/featureset/actions/GroupBy.js +1 -1
  7. package/arcade/featureset/actions/OrderBy.js +1 -1
  8. package/arcade/functions/date.js +1 -1
  9. package/arcade/functions/feature.js +1 -1
  10. package/arcade/functions/featuresetbase.js +1 -1
  11. package/arcade/functions/featuresetgeom.js +1 -1
  12. package/arcade/functions/featuresetstats.js +1 -1
  13. package/arcade/functions/featuresetstring.js +1 -1
  14. package/arcade/functions/fieldStats.js +1 -1
  15. package/arcade/functions/geomasync.js +1 -1
  16. package/arcade/functions/geometry.js +1 -1
  17. package/arcade/functions/geomsync.js +1 -1
  18. package/arcade/functions/knowledgegraph.js +1 -1
  19. package/arcade/functions/maths.js +1 -1
  20. package/arcade/functions/string.js +1 -1
  21. package/arcade/geometry/functions.js +1 -1
  22. package/arcade/languageUtils.js +1 -1
  23. package/arcade.js +1 -1
  24. package/assets/esri/core/workers/RemoteClient.js +1 -1
  25. package/assets/esri/core/workers/chunks/{89960be0e525d42ccffe.js → 01f8f52a3f9e6fb72f64.js} +1 -1
  26. package/assets/esri/core/workers/chunks/{8191dd3d7451b2e7b95e.js → 041eebac192855fbf919.js} +1 -1
  27. package/assets/esri/core/workers/chunks/09cbf45dc7b026957d3e.js +1 -0
  28. package/assets/esri/core/workers/chunks/{1a286d43daa3b811c30d.js → 1661ac4e1b6c6af6ee0f.js} +1 -1
  29. package/assets/esri/core/workers/chunks/197dc75a1c10c0fbf65a.js +1 -0
  30. package/assets/esri/core/workers/chunks/238bcf6514a1f214cc8a.js +1 -0
  31. package/assets/esri/core/workers/chunks/{efded84870064c3d8210.js → 23a045fccc005079bd58.js} +1 -1
  32. package/assets/esri/core/workers/chunks/32fee5446ee0b0a6c4bd.js +1 -0
  33. package/assets/esri/core/workers/chunks/{f429d95eb986f3d215f3.js → 391c200274bbeb92404c.js} +1 -1
  34. package/assets/esri/core/workers/chunks/3c44b4bf7fe407ec1d70.js +1 -0
  35. package/assets/esri/core/workers/chunks/3eacb4d1275f2d87825f.js +1 -0
  36. package/assets/esri/core/workers/chunks/{c0af54cc5938176ce764.js → 3fe7be535affae31de7e.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{c061cad8323f0469e7e4.js → 42f21349f488a14198e4.js} +1 -1
  38. package/assets/esri/core/workers/chunks/48eb5cbb4555acc56984.js +1 -0
  39. package/assets/esri/core/workers/chunks/4927b33f7e9daf059765.js +1 -0
  40. package/assets/esri/core/workers/chunks/50bab11c32bf4001edd7.js +1 -0
  41. package/assets/esri/core/workers/chunks/5c9a7b1dedd146cc65d2.js +1 -0
  42. package/assets/esri/core/workers/chunks/5d8120c84e5a164cb1bc.js +1 -0
  43. package/assets/esri/core/workers/chunks/{7a9e1696dc6120df15b0.js → 60ca6a2e9f1e2c969aab.js} +1 -1
  44. package/assets/esri/core/workers/chunks/679cc23be07ededb3992.js +1 -0
  45. package/assets/esri/core/workers/chunks/{9f122278e917c9ce5f95.js → 67c1e2c17ea3ca27248c.js} +1 -1
  46. package/assets/esri/core/workers/chunks/69b55259f90e8e4bc2aa.js +1 -0
  47. package/assets/esri/core/workers/chunks/69e0ff74e44962d97049.js +1 -0
  48. package/assets/esri/core/workers/chunks/6ca4b5d1a076c6079472.js +1 -0
  49. package/assets/esri/core/workers/chunks/{7058001bf66f9f3d5d45.js → 6d02d66234a7b74e5c14.js} +1 -1
  50. package/assets/esri/core/workers/chunks/{77bfd4f819096cb754ae.js → 6e92569a4a82592b95dc.js} +1 -1
  51. package/assets/esri/core/workers/chunks/6f007703662e714b2f0a.js +1 -0
  52. package/assets/esri/core/workers/chunks/744bdf2bb0cc38e6a7b1.js +1 -0
  53. package/assets/esri/core/workers/chunks/7bf9ebff90bb02bec8e7.js +1 -0
  54. package/assets/esri/core/workers/chunks/{8b6580329e1e35ea4190.js → 7c03489438f51a5170f3.js} +1 -1
  55. package/assets/esri/core/workers/chunks/7e77e4288ed205128b87.js +1 -0
  56. package/assets/esri/core/workers/chunks/80c3e933b43ea79b30de.js +1 -0
  57. package/assets/esri/core/workers/chunks/830844f7fb7557d30f34.js +1 -0
  58. package/assets/esri/core/workers/chunks/8a66d06132c8803033c9.js +1 -0
  59. package/assets/esri/core/workers/chunks/{e9993d4f2bfdc434fbcc.js → 8f4bcca8b0525e19374f.js} +1 -1
  60. package/assets/esri/core/workers/chunks/95047f145ebda65c3d8e.js +1 -0
  61. package/assets/esri/core/workers/chunks/9968c6654d048c9add0c.js +1 -0
  62. package/assets/esri/core/workers/chunks/{b50176897ffadc53573e.js → 9bbfa8dc4124b5273d28.js} +1 -1
  63. package/assets/esri/core/workers/chunks/a2b548fbfa2eb5e6f2a7.js +1 -0
  64. package/assets/esri/core/workers/chunks/a37825705e49b60e5d4b.js +1 -0
  65. package/assets/esri/core/workers/chunks/{211c32244e05164dcd38.js → aebbaa7ab7a6b3b1579c.js} +2 -2
  66. package/assets/esri/core/workers/chunks/b90b7ffc1e9363ed18e0.js +1 -0
  67. package/assets/esri/core/workers/chunks/{a39977478a6c57d2e8fb.js → bd2dcc55ac3418421ee5.js} +1 -1
  68. package/assets/esri/core/workers/chunks/{83fe9a8002a4fc96e534.js → bd38717780fffa49d36c.js} +1 -1
  69. package/assets/esri/core/workers/chunks/{c77ade444aa2f3f2b599.js → bdc9dec6a359d2e3705c.js} +1 -1
  70. package/assets/esri/core/workers/chunks/bf127fe767174e2715b5.js +1 -0
  71. package/assets/esri/core/workers/chunks/c3806be4a760735e6082.js +1 -0
  72. package/assets/esri/core/workers/chunks/cb3148cf11a420d6e9ab.js +1 -0
  73. package/assets/esri/core/workers/chunks/{8d8f5f08d730270e1165.js → cb9a27176bd5de2c34ca.js} +1 -1
  74. package/assets/esri/core/workers/chunks/cdf942020b7054628dc9.js +1 -0
  75. package/assets/esri/core/workers/chunks/d6c3df07cfaa6bb639e9.js +1 -0
  76. package/assets/esri/core/workers/chunks/ed89a108b032b982b12f.js +1 -0
  77. package/assets/esri/core/workers/chunks/ee5b82873ff80cb4ba34.js +1 -0
  78. package/assets/esri/core/workers/chunks/{d0656e9d30eb3a66a8db.js → f976233ad5e5b718ba83.js} +1 -1
  79. package/assets/esri/themes/base/widgets/_Directions.scss +30 -9
  80. package/assets/esri/themes/base/widgets/_Editor.scss +1 -0
  81. package/assets/esri/themes/dark/main.css +1 -1
  82. package/assets/esri/themes/light/main.css +1 -1
  83. package/assets/esri/themes/light/view.css +1 -1
  84. package/chunks/arcade.js +1 -1
  85. package/chunks/array.js +1 -1
  86. package/chunks/languageUtils.js +1 -1
  87. package/copyright.txt +26 -19
  88. package/core/colorUtils.js +1 -1
  89. package/core/deprecate.js +1 -1
  90. package/editing/templateUtils.js +1 -1
  91. package/geohash/geohashUtils.js +1 -1
  92. package/interfaces.d.ts +634 -129
  93. package/intl/locale.js +1 -1
  94. package/layers/FeatureLayer.js +1 -1
  95. package/layers/GeoJSONLayer.js +1 -1
  96. package/layers/ImageryTileLayer.js +1 -1
  97. package/layers/OGCFeatureLayer.js +1 -1
  98. package/layers/RouteLayer.js +1 -1
  99. package/layers/SubtypeGroupLayer.js +1 -1
  100. package/layers/WFSLayer.js +1 -1
  101. package/layers/graphics/data/queryUtils.js +1 -1
  102. package/layers/mixins/ArcGISImageService.js +1 -1
  103. package/layers/mixins/ImageryTileMixin.js +1 -1
  104. package/layers/mixins/TrackableLayer.d.ts +4 -0
  105. package/layers/save/imageryUtils.js +1 -1
  106. package/layers/support/ExportImageServiceParameters.js +1 -1
  107. package/layers/support/SubtypeSublayer.js +1 -1
  108. package/layers/support/TitleCreator.js +5 -0
  109. package/layers/support/TrackInfo.d.ts +4 -0
  110. package/layers/support/TrackInfo.js +1 -1
  111. package/layers/support/TrackPartInfo.d.ts +4 -0
  112. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  113. package/layers/support/rasterDatasets/WCSRaster.js +1 -1
  114. package/layers/support/rasterDatasets/datasetUtils.js +5 -0
  115. package/layers/support/rasterFormats/RasterCodec.js +1 -1
  116. package/layers/support/rasterFormats/TiffDecoder.js +1 -1
  117. package/layers/support/rasterFormats/pixelRangeUtils.js +1 -1
  118. package/layers/support/rasterFunctions/creators/createLocalFunctions.js +1 -1
  119. package/layers/support/rasterFunctions/creators/createStatisticsFunctions.js +1 -1
  120. package/networks/UtilityNetwork.js +1 -1
  121. package/networks/support/networkFieldUtils.js +5 -0
  122. package/package.json +1 -1
  123. package/renderers/support/rasterRendererHelper.js +1 -1
  124. package/rest/query/executeForIds.js +1 -1
  125. package/rest/support/BinParametersBase.js +1 -1
  126. package/support/arcadeUtils.js +1 -1
  127. package/support/revision.js +1 -1
  128. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  129. package/symbols/cim/rasterizingUtils.js +1 -1
  130. package/symbols/support/previewCIMSymbol.js +1 -1
  131. package/symbols/support/previewSymbol2D.js +1 -1
  132. package/symbols/support/symbolUtils.js +1 -1
  133. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
  134. package/views/2d/layers/RouteLayerView2D.js +1 -1
  135. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  136. package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
  137. package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
  138. package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
  139. package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
  140. package/views/2d/layers/support/RouteLayerInteraction.js +1 -1
  141. package/views/3d/interactive/editingTools/transform/ScaleRotateMeshAdapter.js +1 -1
  142. package/views/3d/interactive/editingTools/transform/TransformTool3D.js +1 -1
  143. package/views/3d/layers/I3SMeshView3D.js +1 -1
  144. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  145. package/views/3d/layers/graphics/graphicUtils.js +1 -1
  146. package/views/3d/layers/i3s/BuildingFilterUtil.js +1 -1
  147. package/views/3d/layers/i3s/I3SMaterialUtil.js +1 -1
  148. package/views/3d/layers/i3s/SymbologyInfo.js +5 -0
  149. package/views/3d/state/controllers/PinchAndPanControllerGlobal.js +1 -1
  150. package/views/3d/state/utils/navigationUtils.js +1 -1
  151. package/views/3d/webgl-engine/collections/Component/ComponentData.js +1 -1
  152. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  153. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  154. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +14 -14
  155. package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
  156. package/views/3d/webgl-engine/core/renderPasses/RenderPass.js +1 -1
  157. package/views/3d/webgl-engine/core/renderPasses/RenderPassIdentifier.js +5 -0
  158. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  159. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +2 -2
  160. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  161. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  162. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  163. package/views/3d/webgl-engine/materials/renderers/PerBufferData.js +1 -1
  164. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  165. package/views/View.js +1 -1
  166. package/views/draw/DrawAction.js +1 -1
  167. package/views/layers/FeatureLayerView.js +1 -1
  168. package/views/layers/ImageryTileLayerView.js +1 -1
  169. package/views/support/RequiredFieldsOptions.js +5 -0
  170. package/views/webgl/Texture.js +1 -1
  171. package/widgets/BasemapGallery.js +1 -1
  172. package/widgets/BasemapToggle.js +1 -1
  173. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  174. package/widgets/BatchAttributeForm.js +1 -1
  175. package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
  176. package/widgets/Compass/CompassViewModel.js +1 -1
  177. package/widgets/DirectionalPad.js +1 -1
  178. package/widgets/Directions/DirectionsViewModel.js +1 -1
  179. package/widgets/Directions.js +1 -1
  180. package/widgets/Editor/AddAssociationWorkflow.js +1 -1
  181. package/widgets/Editor/EditorViewModel.js +1 -1
  182. package/widgets/Editor.js +1 -1
  183. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +1 -1
  184. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  185. package/widgets/Fullscreen.js +1 -1
  186. package/widgets/Home.js +1 -1
  187. package/widgets/LayerList/LayerListItem.js +1 -1
  188. package/widgets/LayerList/ListItem.js +1 -1
  189. package/widgets/LayerList/support/layerListUtils.js +1 -1
  190. package/widgets/Legend/LegendViewModel.js +1 -1
  191. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  192. package/widgets/Legend.js +1 -1
  193. package/widgets/Locate.js +1 -1
  194. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  195. package/widgets/OrientedImageryViewer/adapters/sketch/DigitizationAdapter.js +1 -1
  196. package/widgets/OrientedImageryViewer/components/ImageOverlays.js +1 -1
  197. package/widgets/OrientedImageryViewer/constants.js +1 -1
  198. package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
  199. package/widgets/OrientedImageryViewer/symbols.js +1 -1
  200. package/widgets/OrientedImageryViewer.js +1 -1
  201. package/widgets/ScaleBar.js +1 -1
  202. package/widgets/Swipe.js +1 -1
  203. package/widgets/TableList/ListItem.js +1 -1
  204. package/widgets/TableList.js +1 -1
  205. package/widgets/Track.js +1 -1
  206. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  207. package/widgets/UtilityNetworkTrace.js +1 -1
  208. package/widgets/support/GoTo.js +1 -1
  209. package/widgets/support/goToUtils.js +5 -0
  210. package/assets/esri/core/workers/chunks/03f51ea011ffbcfb7c7d.js +0 -1
  211. package/assets/esri/core/workers/chunks/122ed10cac9f192e1eec.js +0 -1
  212. package/assets/esri/core/workers/chunks/1249fd2f83caeaefd8ce.js +0 -1
  213. package/assets/esri/core/workers/chunks/144e534d4ac1aafab60d.js +0 -1
  214. package/assets/esri/core/workers/chunks/15ad8036736a32652c9b.js +0 -1
  215. package/assets/esri/core/workers/chunks/177d4c2c10ef7369006f.js +0 -1
  216. package/assets/esri/core/workers/chunks/1d282700e76285a1684c.js +0 -1
  217. package/assets/esri/core/workers/chunks/282c2d52011b331d4704.js +0 -1
  218. package/assets/esri/core/workers/chunks/35392bf8f21005ad6170.js +0 -1
  219. package/assets/esri/core/workers/chunks/37cfd102b6ab5b959f9d.js +0 -1
  220. package/assets/esri/core/workers/chunks/6a9a1cd8134a903dd05a.js +0 -1
  221. package/assets/esri/core/workers/chunks/73d03c208242778e67bf.js +0 -1
  222. package/assets/esri/core/workers/chunks/7485588bd24217669578.js +0 -1
  223. package/assets/esri/core/workers/chunks/80d3aa3f27ad5b2b969b.js +0 -1
  224. package/assets/esri/core/workers/chunks/8939479cd433cc53f6c1.js +0 -1
  225. package/assets/esri/core/workers/chunks/8a2f3ce46eeac853b3a9.js +0 -1
  226. package/assets/esri/core/workers/chunks/8f31fbb1d549230ee3db.js +0 -1
  227. package/assets/esri/core/workers/chunks/91384398f01485631f70.js +0 -1
  228. package/assets/esri/core/workers/chunks/9421ae38fdf986b9b107.js +0 -1
  229. package/assets/esri/core/workers/chunks/94225d92afbdb10dfedb.js +0 -1
  230. package/assets/esri/core/workers/chunks/99c136b800e5fc7e04f4.js +0 -1
  231. package/assets/esri/core/workers/chunks/9b74635d80d029498da1.js +0 -1
  232. package/assets/esri/core/workers/chunks/a9274c9132e7a2691abb.js +0 -1
  233. package/assets/esri/core/workers/chunks/af917f69d9c6e9937263.js +0 -1
  234. package/assets/esri/core/workers/chunks/ca6180e572e69540c183.js +0 -1
  235. package/assets/esri/core/workers/chunks/cccd215b0a4890551957.js +0 -1
  236. package/assets/esri/core/workers/chunks/d074c916b414432a7b6a.js +0 -1
  237. package/assets/esri/core/workers/chunks/de638753a30c9aa41bad.js +0 -1
  238. package/assets/esri/core/workers/chunks/e6633f0326a44477f630.js +0 -1
  239. package/assets/esri/core/workers/chunks/eb0ce7937813d1be1284.js +0 -1
  240. package/assets/esri/core/workers/chunks/f2cf05fbbb51d657d300.js +0 -1
  241. package/assets/esri/core/workers/chunks/f4ba823c8acd60c7c82d.js +0 -1
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3186],{17311:(e,t,s)=>{s.d(t,{A:()=>f});var i=s(90237),r=s(69622),n=s(60999),a=s(5503),l=s(10107),o=(s(44208),s(53966),s(87811),s(40608)),u=s(30524),c=s(71386);let d=class extends r.A{constructor(e){super(e),this._featureUtils=null,this.effectivePopupTemplate=null}get _arcadeTask(){return this.expressionsUsedInTitle.length>0?this._get("_arcadeTask")||(0,n.UT)((()=>(0,c.lw)())):null}get featureUtilsPromise(){return this._get("featureUtilsPromise")??s.e(9926).then(s.bind(s,29926)).then((e=>this._featureUtils=e))}get calculatedExpressions(){const e=new a.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 s=this._arcadeTask.value.arcade.parseScript(t.expression,["$layer","$map","$datastore"]);if(s.isAsync){e.push({name:t.name,invalid:!0});break}e.push({name:t.name,syntax:s,invalid:!1,func:this._arcadeTask.value.arcade.compileScript(s,{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 s=this._arcadeTask.value.arcade.extractFieldLiterals(t.syntax);for(const t of s){const s=t.split("."),i=this.fieldsIndex.get(s.at(-1)??"");i&&e.add(i.name)}}catch{}const t=this._extractFieldNames(this.workingTitle);for(const s of t){const t=this.fieldsIndex.get(s);t&&e.add(t.name)}return 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,s){try{const{attributes:i}=t,r=s?.timeZone??"system",[{substituteFieldsInLinksAndAttributes:n}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);if(s.fetchMissingFields&&(t=await this._checkAndReQueryGraphic(e,t)),this.workingTitle&&this.fieldInfoMap){const s=this._createFormattedAttributes(e,t,r).global;return n({attributes:i,expressionAttributes:null,fieldInfoMap:this.fieldInfoMap,globalAttributes:s,layer:e,text:this.workingTitle})}return""}catch{}return""}async _checkAndReQueryGraphic(e,t){const s=t.getObjectId();if(null==s)return t;if(!(0,u.Kl)(this.requiredFields,t)){const t=e.createQuery();t.where="1=1",t.outFields=[...this.requiredFields],t.objectIds=[s];const i=await e.queryFeatures(t);if(1===i?.features.length)return i.features[0]}return t}_createFieldInfoMap(e){const t=new Map;if(!e)return t;for(const s of e){if(!s.fieldName)continue;const e=this.fieldsIndex.get(s.fieldName),i=e?.name??s.fieldName;s.fieldName=i,t.set(i.toLowerCase(),s)}return t}_createFormattedAttributes(e,t,s="system"){const i=this.effectivePopupTemplate?.fieldInfos??[],r={};if(!this._featureUtils)return{};if(!this.hasBadExpressions&&this.calculatedExpressions.length>0&&this._arcadeTask?.value){const s=this._arcadeTask.value.Feature.createFromGraphicLikeObject(t.geometry,t.attributes,e,null);for(const e of this.calculatedExpressions)try{r[`expression/${e.name}`]=e.func({vars:{$feature:s}})}catch{}}const n={...t.attributes,...r};return{global:this._featureUtils.formatAttributes({fieldInfos:i,attributes:n,graphic:t,timeZone:s,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,u.nw)(e).filter((e=>!(0===e.indexOf("relationships/")||0===e.indexOf("expression/"))))}};(0,i._)([(0,l.MZ)({readOnly:!0})],d.prototype,"_arcadeTask",null),(0,i._)([(0,l.MZ)()],d.prototype,"_featureUtils",void 0),(0,i._)([(0,l.MZ)({readOnly:!0})],d.prototype,"featureUtilsPromise",null),(0,i._)([(0,l.MZ)({readOnly:!0})],d.prototype,"calculatedExpressions",null),(0,i._)([(0,l.MZ)()],d.prototype,"displayField",void 0),(0,i._)([(0,l.MZ)()],d.prototype,"effectivePopupTemplate",void 0),(0,i._)([(0,l.MZ)()],d.prototype,"expressionsUsedInTitle",null),(0,i._)([(0,l.MZ)()],d.prototype,"fieldsIndex",void 0),(0,i._)([(0,l.MZ)()],d.prototype,"fieldInfoMap",null),(0,i._)([(0,l.MZ)()],d.prototype,"fields",void 0),(0,i._)([(0,l.MZ)()],d.prototype,"objectIdField",void 0),(0,i._)([(0,l.MZ)()],d.prototype,"requiredFields",null),d=(0,i._)([(0,o.$)("esri.layers.support.TitleCreator")],d);const f=d},41560:(e,t,s)=>{s.d(t,{Ch:()=>a,mW:()=>n});var i=s(34727),r=s(39516);function n(e,t){return{...t,filterMode:e.mode}}function a(e,t,s){const n=function(e){if("manual"===u(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:s,maxScale:i}of e.filters)t[0]=Math.max(t[0],c(s)),t[1]=Math.min(t[1],d(i));return t}(e);if(n&&((0,i.gg)(t,n[0])||(0,i.ZH)(s,n[1])))return"";const a=Array.from(l(e,t,s)),o=function(e,t,s){if(0===e.length)return!0;const r=c(e.at(0)?.minScale),n=d(e.at(-1)?.maxScale);if((0,i.ZH)(r,t)||(0,i.gg)(n,s))return!0;for(let t=0;t<e.length-1;t++){const s=e[t],r=e[t+1];if((0,i.ZH)(c(r.minScale),d(s.maxScale)))return!0}return!1}(a,t,s)?"1=1":a.map((e=>e.where||"1=1")).reduce(((e,t)=>(0,r.IW)(e,t)),"");return o&&"1=1"!==o?o:""}function*l(e,t,s){if("manual"===u(e)){const t=e.filters.find((t=>t.id===e.activeFilterId));t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const i of e.filters)o(i.minScale,i.maxScale,t,s)&&(yield i)}}function o(e,t,s,r){return e=c(e),s=c(s),t=d(t),!(!(0,i.Sp)(s,e)&&(r??s)>e||(0,i.Hx)(t,s)||void 0!==r&&(0,i.Sp)(r,e))}function u(e){return"mode"in e?e.mode:e.filterMode}function c(e){return e||Number.POSITIVE_INFINITY}function d(e){return e||0}},92935:(e,t,s)=>{var i;s.d(t,{X:()=>i}),function(e){e[e.SAVE=0]="SAVE",e[e.SAVE_AS=1]="SAVE_AS"}(i||(i={}))}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3186,4521,4601,8330,9340],{39516:(e,t,i)=>{let r;async function o(){return null==r&&(r=i.e(4123).then(i.bind(i,44123)).then((e=>new e.WhereClauseCache(500,500)))),r}async function n(e,t){const i=await o(),r=i.get(e,t);if(null==r)throw i.getError(e,t);return r}function s(e,t){return e||=null,t||=null,"1=1"===e?t??e:"1=1"===t?e??t:e&&t?`(${e}) AND (${t})`:e??t}function a(e,t){return e||=null,t||=null,"1=1"===e||"1=1"===t||e===t?"1=1"===e?e:t:e&&t?`(${e}) OR (${t})`:e??t}i.d(t,{GP:()=>n,IW:()=>a,mA:()=>s})},13069:(e,t,i)=>{i.d(t,{AG:()=>a,lk:()=>o,vD:()=>s,yS:()=>n});const r="randomUUID"in crypto;function o(){if(r)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function n(){return`{${o().toUpperCase()}}`}function s(){return`{${o()}}`}function a(e){const t=e.toUpperCase();return"{"!==e[0]?`{${t}}`:t}},97927:(e,t,i)=>{i.r(t),i.d(t,{default:()=>V});var r=i(90237),o=i(49186),n=i(4718),s=i(93637),a=i(10107),l=(i(44208),i(53966),i(40608)),p=i(13600),u=i(82935),c=i(66552),d=i(69540),f=i(25482),y=(i(87811),i(69622)),m=i(21325);let h=class extends y.A{set horizontalWKID(e){e?(0,m.fn)({wkid:+e})?this._set("horizontalWKID",+e):this._set("horizontalWKID",e):this._set("horizontalWKID",null)}set verticalWKID(e){e?this._set("verticalWKID",isFinite(e)&&(0,m.fn)({wkid:+e})?+e:null):this._set("verticalWKID",null)}get isAdvanced(){const{affineTransformations:e,focalLength:t,principalOffsetPoint:i,radialDistortionCoefficients:r,tangentialDistortionCoefficients:o}=this;return e?.length>1&&!Number.isNaN(t)&&i?.length>1&&r?.length>1&&o?.length>1}};(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"affineTransformations",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"focalLength",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"principalOffsetPoint",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"radialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"tangentialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"horizontalWKID",null),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"verticalWKID",null),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"x",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"y",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"z",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],h.prototype,"type",void 0),h=(0,r._)([(0,l.$)("esri.layers.orientedImagery.core.CameraOrientation")],h);const g=h;let v=class extends(d.A.ClonableMixin(f.A.JSONSupportMixin(g))){constructor(){super(...arguments),this.type=1}toString(){const{type:e,horizontalWKID:t,verticalWKID:i,x:r,y:o,z:n,heading:s,pitch:a,roll:l,affineTransformations:p,focalLength:u,principalOffsetPoint:c,radialDistortionCoefficients:d,tangentialDistortionCoefficients:f}=this,y=[e,t,i,r,o,n,s,a,l];return this.isAdvanced&&(p?.forEach((e=>y.push(e))),y.push(u),c?.forEach((e=>y.push(e))),d?.forEach((e=>y.push(e))),f?.forEach((e=>y.push(e)))),y.map((e=>Number.isNaN(e)?"":e)).join("|")}};(0,r._)([(0,a.MZ)({json:{write:!0}})],v.prototype,"type",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"affineTransformations",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"focalLength",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"principalOffsetPoint",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"radialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"tangentialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"heading",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"pitch",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"roll",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"x",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"y",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"z",void 0),v=(0,r._)([(0,l.$)("esri.layers.orientedImagery.core.CameraOrientationHPR")],v);const _=v;let w=class extends(d.A.ClonableMixin(f.A.JSONSupportMixin(g))){constructor(){super(...arguments),this.type=4}toString(){const{type:e,latitude:t,longitude:i,ellipsoidRadius:r,squaredEccentricity:o,properties:n}=this,s=`${n}`.split("|");return s.splice(1,1),`${e}|${t}|${i}|${r}|${o}|${s.join("|")}`}};(0,r._)([(0,a.MZ)({json:{write:!0}})],w.prototype,"type",void 0),(0,r._)([(0,a.MZ)({json:{write:!0},type:Number})],w.prototype,"latitude",void 0),(0,r._)([(0,a.MZ)({json:{write:!0},type:Number})],w.prototype,"longitude",void 0),(0,r._)([(0,a.MZ)({json:{write:!0},type:Number})],w.prototype,"ellipsoidRadius",void 0),(0,r._)([(0,a.MZ)({json:{write:!0},type:Number})],w.prototype,"squaredEccentricity",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],w.prototype,"properties",void 0),w=(0,r._)([(0,l.$)("esri.layers.orientedImagery.core.CameraOrientationLTP")],w);const x=w;let M=class extends(d.A.ClonableMixin(f.A.JSONSupportMixin(g))){constructor(){super(...arguments),this.type=2}toString(){const{type:e,horizontalWKID:t,verticalWKID:i,x:r,y:o,z:n,omega:s,phi:a,kappa:l,affineTransformations:p,focalLength:u,principalOffsetPoint:c,radialDistortionCoefficients:d,tangentialDistortionCoefficients:f}=this,y=[e,t,i,r,o,n,s,a,l];return this.isAdvanced&&(p?.forEach((e=>y.push(e))),y.push(u),c?.forEach((e=>y.push(e))),d?.forEach((e=>y.push(e))),f?.forEach((e=>y.push(e)))),y.map((e=>isNaN(e)?"":e)).join("|")}};(0,r._)([(0,a.MZ)({json:{write:!0}})],M.prototype,"type",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],M.prototype,"affineTransformations",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"focalLength",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],M.prototype,"principalOffsetPoint",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],M.prototype,"radialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],M.prototype,"tangentialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"omega",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"phi",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"kappa",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"x",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"y",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"z",void 0),M=(0,r._)([(0,l.$)("esri.layers.orientedImagery.core.CameraOrientationOPK")],M);const Z=M;let j=class extends(d.A.ClonableMixin(f.A.JSONSupportMixin(g))){constructor(){super(...arguments),this.type=3}get isAdvanced(){const{affineTransformations:e,focalLength:t,principalOffsetPoint:i,radialDistortionCoefficients:r,tangentialDistortionCoefficients:o}=this;return e?.length>1||!Number.isNaN(t)||i?.length>1||r?.length>1||o?.length>1}toString(){const{type:e,horizontalWKID:t,verticalWKID:i,x:r,y:o,z:n,yaw:s,pitch:a,roll:l,affineTransformations:p,focalLength:u,principalOffsetPoint:c,radialDistortionCoefficients:d,tangentialDistortionCoefficients:f}=this,y=[e,t,i,r,o,n,s,a,l];return this.isAdvanced&&(p?.forEach((e=>y.push(e))),y.push(u),c?.forEach((e=>y.push(e))),c?.forEach((e=>y.push(e))),d?.forEach((e=>y.push(e))),f?.forEach((e=>y.push(e)))),y.map((e=>Number.isNaN(e)?"":e)).join("|")}};(0,r._)([(0,a.MZ)({json:{write:!0}})],j.prototype,"type",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],j.prototype,"affineTransformations",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],j.prototype,"focalLength",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],j.prototype,"principalOffsetPoint",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],j.prototype,"radialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({type:[Number],json:{write:!0}})],j.prototype,"tangentialDistortionCoefficients",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],j.prototype,"yaw",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],j.prototype,"pitch",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],j.prototype,"roll",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],j.prototype,"x",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],j.prototype,"y",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],j.prototype,"z",void 0),j=(0,r._)([(0,l.$)("esri.layers.orientedImagery.core.CameraOrientationYPR")],j);const b=j;var P;!function(e){e[e.HPR=1]="HPR",e[e.OPK=2]="OPK",e[e.YPR=3]="YPR",e[e.LTP=4]="LTP"}(P||(P={}));const N=new Map;N.set(`${P.OPK}`,{desc:"Using Omega Phi Kappa",constructor:Z}),N.set(`${P.HPR}`,{desc:"Using Heading, Pitch and Roll",constructor:_}),N.set(`${P.YPR}`,{desc:"Using Yaw, Pitch and Roll",constructor:b}),N.set(`${P.LTP}`,{desc:"Using Local Tangent Plane",constructor:x});let I=class extends(d.A.ClonableMixin(f.A)){constructor(){super(...arguments),this.url=null}};(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],I.prototype,"lod",void 0),(0,r._)([(0,a.MZ)({type:String,json:{write:!0}})],I.prototype,"rasterFunction",void 0),(0,r._)([(0,a.MZ)({type:String,json:{write:!0}})],I.prototype,"url",void 0),I=(0,r._)([(0,l.$)("esri.layers.orientedImagery.core.ElevationSourceDefinitions.ElevationSource")],I);let S=class extends(d.A.ClonableMixin(f.A)){constructor(){super(...arguments),this.constantElevation=null}};function T(e,t,i){return e?null!=(r=e)&&"number"==typeof r.constantElevation?new S(e):function(e,t,i){let{url:r}=e;return r?(r=function(e,t,i){return t&&(e=`${t}${e}`),i&&(e+=`${i}`),e}(r,t,i),new I({...e,url:r})):null}(e,t,i):e;var r}(0,r._)([(0,a.MZ)({type:Number,json:{write:!0}})],S.prototype,"constantElevation",void 0),S=(0,r._)([(0,l.$)("esri.layers.orientedImagery.core.ElevationSourceDefinitions.ConstantElevation")],S);const A=new c.J({Minutes:"minutes",Hours:"hours",Days:"days",Weeks:"weeks",Months:"months",Years:"years"}),O=new c.J({Feet:"feet",Meter:"meter"}),E=new c.J({360:"360",Horizontal:"horizontal",Inspection:"inspection",Nadir:"nadir",Oblique:"oblique","":null}),z=new Map;z.set(`${P.HPR}`,(function(e){const[t,i,r,o,n,s,a,l,p,u,c,d,f,y,m,h,g,v,_,w,x,M]=e.slice(1);return{horizontalWKID:t,verticalWKID:i,x:r,y:o,z:n,heading:s,pitch:a,roll:l,...F([p,u,c,d,f,y],[h,g],[v,_,w],[x,M],m)}})),z.set(`${P.YPR}`,(function(e){const[t,i,r,o,n,s,a,l,p,u,c,d,f,y,m,h,g,v,_,w,x,M]=e.slice(1);return{horizontalWKID:t,verticalWKID:i,x:r,y:o,z:n,yaw:s,pitch:a,roll:l,...F([p,u,c,d,f,y],[h,g],[v,_,w],[x,M],m)}})),z.set(`${P.OPK}`,(function(e){const[t,i,r,o,n,s,a,l,p,u,c,d,f,y,m,h,g,v,_,w,x,M]=e.slice(1);return{horizontalWKID:t,verticalWKID:i,x:r,y:o,z:n,omega:s,phi:a,kappa:l,...F([p,u,c,d,f,y],[h,g],[v,_,w],[x,M],m)}})),z.set(`${P.LTP}`,(function(e){const[t,i,r,o,n,...s]=e.slice(1),a=z.get(n),l=N.get(n)?.constructor;return a&&l?{latitude:t,longitude:i,ellipsoidRadius:r,squaredEccentricity:o,properties:new l(a([n,"",...s]))}:null}));const D=e=>{const t=e.map((e=>parseFloat(e))).filter((e=>!isNaN(e)));if(t.length===e.length)return t};function F(e,t,i,r,o){const n=D(e),s=D(t),a=D(i),l=D(r);return{affineTransformations:6===n?.length?n:void 0,focalLength:6===n?.length?parseFloat(o):void 0,principalOffsetPoint:2!==s?.length?[0,0]:s,radialDistortionCoefficients:3!==a?.length?[0,0,0]:a,tangentialDistortionCoefficients:2!==l?.length?[0,0]:l}}var $=i(79677),R=i(92935);const C=new Set(["demPathPrefix","demPathSuffix","depthImagePathPrefix","depthImagePathSuffix","elevationSource","horizontalMeasurementUnit","verticalMeasurementUnit","videoPathPrefix","videoPathSuffix","timeAnimation","visibilityTimeExtent"]),U=(e,t)=>!C.has(t)&&e;function L(e,t,i,r){const{name:o,write:n,read:s}=((e,t,i)=>{const r=`orientedImageryProperties.${e}`;return{name:r,write:t?{ignoreOrigin:!0,target:r,writer:t}:{ignoreOrigin:!0},read:i?{ignoreOrigin:!0,source:r,reader:i}:{ignoreOrigin:!0}}})(e,t,i),a={name:o,write:n,read:s,origins:{service:{name:`orientedImageryInfo.${o}`,write:t,read:i},"web-scene":{name:o,write:U(n,e),read:U(s,e)},"web-map":{name:o,write:n,read:s}}};return r&&a.origins?(a.type=r,a.origins["web-map"].type=r,a.origins["web-scene"].type=r,a):a}let k=class extends p.default{constructor(){super(...arguments),this.cameraHeading=null,this.cameraHeight=null,this.cameraPitch=null,this.cameraRoll=null,this.coveragePercent=null,this.demPathPrefix=null,this.demPathSuffix=null,this.depthImagePathPrefix=null,this.depthImagePathSuffix=null,this.elevationSource=null,this.farDistance=null,this.geometryType="point",this.horizontalFieldOfView=null,this.horizontalMeasurementUnit=null,this.imagePathPrefix=null,this.imagePathSuffix=null,this.imageRotation=null,this.maximumDistance=null,this.nearDistance=null,this.operationalLayerType="OrientedImageryLayer",this.orientationAccuracy=null,this.orientedImageryType=null,this.supportedSourceTypes=new Set(["Oriented Imagery Layer"]),this.type="oriented-imagery",this.timeIntervalUnit="days",this.useViewTime=!0,this.verticalFieldOfView=null,this.verticalMeasurementUnit=null,this.videoPathPrefix=null,this.videoPathSuffix=null,this.visibilityTimeExtent=null}get effectiveElevationSource(){const{elevationSource:e,demPathPrefix:t,demPathSuffix:i}=this;return T(e,t,i)}async save(e){return this._debouncedSaveOperations(R.X.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(R.X.SAVE_AS,t,e)}findFirstValidLayerId(e){return e.layers?.find((e=>this.supportedSourceTypes.has(e.type)))?.id}_verifySource(){if(super._verifySource(),"point"!==this.geometryType)throw new o.A("oriented-imagery-layer:invalid-geometry-type","OrientedImageryLayer only supports point geometry type")}};var K;(0,r._)([(0,a.MZ)({type:Number,json:L("cameraHeading")})],k.prototype,"cameraHeading",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("cameraHeight")})],k.prototype,"cameraHeight",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("cameraPitch")})],k.prototype,"cameraPitch",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("cameraRoll")})],k.prototype,"cameraRoll",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("coveragePercent")})],k.prototype,"coveragePercent",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("demPathPrefix")})],k.prototype,"demPathPrefix",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("demPathSuffix")})],k.prototype,"demPathSuffix",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("depthImagePathPrefix")})],k.prototype,"depthImagePathPrefix",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("depthImagePathSuffix")})],k.prototype,"depthImagePathSuffix",void 0),(0,r._)([(0,a.MZ)({type:Object,json:L("elevationSource")})],k.prototype,"elevationSource",void 0),(0,r._)([(0,a.MZ)({readOnly:!0})],k.prototype,"effectiveElevationSource",null),(0,r._)([(0,a.MZ)({type:Number,json:L("farDistance")})],k.prototype,"farDistance",void 0),(0,r._)([(0,a.MZ)()],k.prototype,"geometryType",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("horizontalFieldOfView")})],k.prototype,"horizontalFieldOfView",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("horizontalMeasurementUnit")})],k.prototype,"horizontalMeasurementUnit",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("imagePathPrefix")})],k.prototype,"imagePathPrefix",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("imagePathSuffix")})],k.prototype,"imagePathSuffix",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("imageRotation")})],k.prototype,"imageRotation",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("maximumDistance")})],k.prototype,"maximumDistance",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("nearDistance")})],k.prototype,"nearDistance",void 0),(0,r._)([(0,a.MZ)({type:["OrientedImageryLayer"],json:{origins:{"portal-item":{name:"layerType",write:{enabled:!0,ignoreOrigin:!0}}}}})],k.prototype,"operationalLayerType",void 0),(0,r._)([(0,a.MZ)({json:{...L("orientationAccuracy",((e,t,i)=>{(0,s.sM)(i,e.join(";"),t)}),(e=>{const t=e?.split(";")?.map(Number);return function(e){return Array.isArray(e)&&9===e?.length&&!e.some(isNaN)}(t)?t:[0,0,0,0,0,0,0,0,0]}),String)}})],k.prototype,"orientationAccuracy",void 0),(0,r._)([(0,a.MZ)({json:{...L("orientedImageryType",E.write,E.read,E.jsonValues.slice(1))}})],k.prototype,"orientedImageryType",void 0),(0,r._)([(0,a.MZ)({json:{read:!1},value:"oriented-imagery",readOnly:!0})],k.prototype,"type",void 0),(0,r._)([(0,a.MZ)({type:A.apiValues,json:{...L("timeIntervalUnit",A.write,A.read,A.jsonValues)}})],k.prototype,"timeIntervalUnit",void 0),(0,r._)([(0,a.MZ)((K=(0,n.o8)(u.B),K.json?(K.json.origins=K.json.origins??{},K.json.origins["web-scene"]={write:!1,read:!1},K):K))],k.prototype,"useViewTime",void 0),(0,r._)([(0,a.MZ)({type:Number,json:L("verticalFieldOfView")})],k.prototype,"verticalFieldOfView",void 0),(0,r._)([(0,a.MZ)({type:O.apiValues,json:{...L("verticalMeasurementUnit",O.write,O.read,O.jsonValues)}})],k.prototype,"verticalMeasurementUnit",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("videoPathPrefix")})],k.prototype,"videoPathPrefix",void 0),(0,r._)([(0,a.MZ)({type:String,json:L("videoPathSuffix")})],k.prototype,"videoPathSuffix",void 0),(0,r._)([(0,a.MZ)({type:$.A,json:{origins:{"web-scene":{write:!1,read:!1}}}})],k.prototype,"visibilityTimeExtent",void 0),k=(0,r._)([(0,l.$)("esri.layers.OrientedImageryLayer")],k);const V=k},32756:(e,t,i)=>{i.d(t,{Rr:()=>l,fY:()=>u,ne:()=>p});var r=i(90237),o=i(93637),n=i(10107),s=(i(44208),i(53966),i(87811),i(40608)),a=i(91880);function l(e,t,i){if(!e)return null;const r=e.find((e=>!!e.field));if(!r)return null;const o=new a.A;return o.read(r,i),[o]}const p={type:[a.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:l},write:{writer:function(e,t,i,r){const n=e.find((e=>!!e.field));n&&(0,o.sM)(i,[n.toJSON()],t)}}}},u=e=>{let t=class extends e{constructor(){super(...arguments),this.orderBy=null}};return(0,r._)([(0,n.MZ)(p)],t.prototype,"orderBy",void 0),t=(0,r._)([(0,s.$)("esri.layers.mixins.OrderedLayer")],t),t}},33143:(e,t,i)=>{i.d(t,{A:()=>f});var r=i(90237),o=i(69540),n=i(25482),s=i(10107),a=(i(44208),i(53966),i(87811),i(36005)),l=i(40608),p=i(43937),u=i(80451),c=i(29005);let d=class extends(o.A.ClonableMixin(n.A)){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,u.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._)([(0,s.MZ)({json:{write:!0}})],d.prototype,"id",void 0),(0,r._)([(0,s.MZ)({json:{write:!0}})],d.prototype,"name",void 0),(0,r._)([(0,s.MZ)({json:{write:!0}})],d.prototype,"domains",void 0),(0,r._)([(0,a.w)("domains")],d.prototype,"readDomains",null),(0,r._)([(0,p.K)("domains")],d.prototype,"writeDomains",null),(0,r._)([(0,s.MZ)({type:[c.A],json:{write:!0}})],d.prototype,"templates",void 0),d=(0,r._)([(0,l.$)("esri.layers.support.FeatureType")],d);const f=d},91880:(e,t,i)=>{i.d(t,{A:()=>c});var r,o=i(90237),n=i(66552),s=i(25482),a=i(10107),l=(i(44208),i(53966),i(87811),i(40608));const p=new n.J({asc:"ascending",desc:"descending"});let u=class extends s.A{static{r=this}constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new r({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,o._)([(0,a.MZ)({type:String,json:{write:!0}})],u.prototype,"field",void 0),(0,o._)([(0,a.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],u.prototype,"valueExpression",void 0),(0,o._)([(0,a.MZ)({type:p.apiValues,json:{type:p.jsonValues,read:p.read,write:p.write}})],u.prototype,"order",void 0),u=r=(0,o._)([(0,l.$)("esri.layers.support.OrderByInfo")],u);const c=u},17311:(e,t,i)=>{i.d(t,{A:()=>d});var r=i(90237),o=i(69622),n=i(60999),s=i(5503),a=i(10107),l=(i(44208),i(53966),i(87811),i(40608)),p=i(30524),u=i(71386);let c=class extends o.A{constructor(e){super(e),this._featureUtils=null,this.effectivePopupTemplate=null}get _arcadeTask(){return this.expressionsUsedInTitle.length>0?this._get("_arcadeTask")||(0,n.UT)((()=>(0,u.lw)())):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 s.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 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){try{const{attributes:r}=t,o=i?.timeZone??"system",[{substituteFieldsInLinksAndAttributes:n}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);if(i.fetchMissingFields&&(t=await this._checkAndReQueryGraphic(e,t)),this.workingTitle&&this.fieldInfoMap){const i=this._createFormattedAttributes(e,t,o).global;return n({attributes:r,expressionAttributes:null,fieldInfoMap:this.fieldInfoMap,globalAttributes:i,layer:e,text:this.workingTitle})}return""}catch{}return""}async _checkAndReQueryGraphic(e,t){const i=t.getObjectId();if(null==i)return t;if(!(0,p.Kl)(this.requiredFields,t)){const t=e.createQuery();t.where="1=1",t.outFields=[...this.requiredFields],t.objectIds=[i];const r=await e.queryFeatures(t);if(1===r?.features.length)return r.features[0]}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??[],o={};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{o[`expression/${e.name}`]=e.func({vars:{$feature:i}})}catch{}}const n={...t.attributes,...o};return{global:this._featureUtils.formatAttributes({fieldInfos:r,attributes:n,graphic:t,timeZone:i,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,p.nw)(e).filter((e=>!(0===e.indexOf("relationships/")||0===e.indexOf("expression/"))))}};(0,r._)([(0,a.MZ)({readOnly:!0})],c.prototype,"_arcadeTask",null),(0,r._)([(0,a.MZ)()],c.prototype,"_featureUtils",void 0),(0,r._)([(0,a.MZ)({readOnly:!0})],c.prototype,"featureUtilsPromise",null),(0,r._)([(0,a.MZ)({readOnly:!0})],c.prototype,"calculatedExpressions",null),(0,r._)([(0,a.MZ)()],c.prototype,"displayField",void 0),(0,r._)([(0,a.MZ)()],c.prototype,"effectivePopupTemplate",void 0),(0,r._)([(0,a.MZ)()],c.prototype,"expressionsUsedInTitle",null),(0,r._)([(0,a.MZ)()],c.prototype,"fieldsIndex",void 0),(0,r._)([(0,a.MZ)()],c.prototype,"fieldInfoMap",null),(0,r._)([(0,a.MZ)()],c.prototype,"fields",void 0),(0,r._)([(0,a.MZ)()],c.prototype,"objectIdField",void 0),(0,r._)([(0,a.MZ)()],c.prototype,"requiredFields",null),c=(0,r._)([(0,l.$)("esri.layers.support.TitleCreator")],c);const d=c},41560:(e,t,i)=>{i.d(t,{Ch:()=>s,mW:()=>n});var r=i(34727),o=i(39516);function n(e,t){return{...t,filterMode:e.mode}}function s(e,t,i){const n=function(e){if("manual"===p(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:i,maxScale:r}of e.filters)t[0]=Math.max(t[0],u(i)),t[1]=Math.min(t[1],c(r));return t}(e);if(n&&((0,r.gg)(t,n[0])||(0,r.ZH)(i,n[1])))return"";const s=Array.from(a(e,t,i)),l=function(e,t,i){if(0===e.length)return!0;const o=u(e.at(0)?.minScale),n=c(e.at(-1)?.maxScale);if((0,r.ZH)(o,t)||(0,r.gg)(n,i))return!0;for(let t=0;t<e.length-1;t++){const i=e[t],o=e[t+1];if((0,r.ZH)(u(o.minScale),c(i.maxScale)))return!0}return!1}(s,t,i)?"1=1":s.map((e=>e.where||"1=1")).reduce(((e,t)=>(0,o.IW)(e,t)),"");return l&&"1=1"!==l?l:""}function*a(e,t,i){if("manual"===p(e)){const t=e.filters.find((t=>t.id===e.activeFilterId));t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const r of e.filters)l(r.minScale,r.maxScale,t,i)&&(yield r)}}function l(e,t,i,o){return e=u(e),i=u(i),t=c(t),!(!(0,r.Sp)(i,e)&&(o??i)>e||(0,r.Hx)(t,i)||void 0!==o&&(0,r.Sp)(o,e))}function p(e){return"mode"in e?e.mode:e.filterMode}function u(e){return e||Number.POSITIVE_INFINITY}function c(e){return e||0}},32730:(e,t,i)=>{i.d(t,{BI:()=>h,D3:()=>y,XJ:()=>m,lc:()=>f,mX:()=>v,rU:()=>g,tH:()=>Z});var r=i(799);const o="__begin__",n="__end__",s=new RegExp(o,"ig"),a=new RegExp(n,"ig"),l=new RegExp("^"+o,"i"),p=new RegExp(n+"$","i"),u='"',c=u+" + ",d=" + "+u;function f(e){return e.replaceAll(new RegExp("\\[","g"),"{").replaceAll(new RegExp("\\]","g"),"}")}function y(e){return e.replaceAll(new RegExp("\\{","g"),"[").replaceAll(new RegExp("\\}","g"),"]")}function m(e){const t={expression:"",type:"none"};return e.labelExpressionInfo?e.labelExpressionInfo.value?(t.expression=e.labelExpressionInfo.value,t.type="conventional"):e.labelExpressionInfo.expression&&(t.expression=e.labelExpressionInfo.expression,t.type="arcade"):null!=e.labelExpression&&(t.expression=f(e.labelExpression),t.type="conventional"),t}function h(e){const t=m(e);switch(t.type){case"conventional":return v(t.expression);case"arcade":return t.expression}return null}function g(e){const t=m(e);switch(t.type){case"conventional":return function(e){const t=e?.match(_);return t?.[1].trim()||null}(t.expression);case"arcade":return Z(t.expression)}return null}function v(e){let t;return e?(t=(0,r.HC)(e,(e=>o+'$feature["'+e+'"]'+n)),t=l.test(t)?t.replace(l,""):u+t,t=p.test(t)?t.replace(p,""):t+u,t=t.replaceAll(s,c).replaceAll(a,d)):t='""',t}const _=/^\s*\{([^}]+)\}\s*$/i,w=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*$/i,x=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(\1|\3)(\5)\s*\));?\s*$/i,M=/^\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(.+)(\1)\s*\));?\s*$/i;function Z(e){if(!e)return null;let t=w.exec(e)||x.exec(e);return t?t[1]||t[3]:(t=M.exec(e),t?t[2]:null)}},58501:(e,t,i)=>{i.d(t,{q:()=>o});var r=i(62815);function o(e,t,i){if(!i?.features||!i.hasZ)return;const o=(0,r.N)(i.geometryType,t,e.outSpatialReference);if(null!=o)for(const e of i.features)o(e.geometry)}},22671:(e,t,i)=>{i.d(t,{A:()=>_});var r,o=i(90237),n=i(52106),s=i(66552),a=i(25482),l=i(4718),p=i(10107),u=(i(44208),i(53966),i(36005)),c=i(40608),d=i(43937),f=i(16930),y=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 v=r=class extends a.A{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,n.A)}writeGeometryType(e,t,i,r){if(e)return void g.write(e,t,i,r);const{features:o}=this;if(o)for(const e of o)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,y.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,l.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,o]}=e,n=this.features,s=this._getQuantizationFunction(this.geometryType,(e=>Math.round((e-r)/t)),(e=>Math.round((o-e)/i)));for(let e=0,t=n.length;e<t;e++)s?.(n[e].geometry)||(n.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,o],scale:[n,s]}=i;let a=null,l=null;if(this.hasZ&&null!=i?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=i;a=i=>i*t+e}if(this.hasM&&null!=i?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=i;l=i=>null==i?i:i*t+e}const p=this._getHydrationFunction(e,(e=>e*n+r),(e=>o-e*s),a,l);for(const{geometry:e}of t)null!=e&&p&&p(e);return this.transform=null,this}readFeaturesWithClass(e,t,i){const r=f.A.fromJSON(t.spatialReference),o=[];for(let t=0;t<e.length;t++){const n=e[t],s=i.fromJSON(n),a=n.geometry?.spatialReference;null==s.geometry||a||(s.geometry.spatialReference=r);const l=n.aggregateGeometries,p=s.aggregateGeometries;if(l&&null!=p)for(const e in p){const t=p[e],i=l[e],o=i?.spatialReference;null==t||o||(t.spatialReference=r)}o.push(s)}return o}_quantizePoints(e,t,i){let r,o;const n=[];for(let s=0,a=e.length;s<a;s++){const a=e[s];if(s>0){const e=t(a[0]),s=i(a[1]);e===r&&s===o||(n.push([e-r,s-o]),r=e,o=s)}else r=t(a[0]),o=i(a[1]),n.push([r,o])}return n.length>0?n: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,y.Bi)(e)?e.rings:e.paths,o=[];for(let e=0,n=r.length;e<n;e++){const n=r[e],s=this._quantizePoints(n,t,i);s&&o.push(s)}return o.length>0?((0,y.Bi)(e)?e.rings=o:e.paths=o,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,o){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 n=(0,y.Bi)(e)?e.rings:e.paths;let s,a;for(let e=0,r=n.length;e<r;e++){const r=n[e];for(let e=0,o=r.length;e<o;e++){const o=r[e];e>0?(s+=o[0],a+=o[1]):(s=o[0],a=o[1]),o[0]=t(s),o[1]=i(a)}}if(r&&o)for(let e=0,t=n.length;e<t;e++){const t=n[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2]),i[3]=o(i[3])}}else if(r)for(let e=0,t=n.length;e<t;e++){const t=n[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2])}}else if(o)for(let e=0,t=n.length;e<t;e++){const t=n[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=o(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)),o&&null!=e.mmax&&null!=e.mmin&&(e.mmax=o(e.mmax),e.mmin=o(e.mmin))}:"multipoint"===e?e=>{const n=e.points;let s,a;for(let e=0,r=n.length;e<r;e++){const r=n[e];e>0?(s+=r[0],a+=r[1]):(s=r[0],a=r[1]),r[0]=t(s),r[1]=i(a)}if(r&&o)for(let e=0,t=n.length;e<t;e++){const t=n[e];t[2]=r(t[2]),t[3]=o(t[3])}else if(r)for(let e=0,t=n.length;e<t;e++){const t=n[e];t[2]=r(t[2])}else if(o)for(let e=0,t=n.length;e<t;e++){const t=n[e];t[2]=o(t[2])}}:null}};(0,o._)([(0,p.MZ)({type:String,json:{write:!0}})],v.prototype,"displayFieldName",void 0),(0,o._)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"exceededTransferLimit",void 0),(0,o._)([(0,p.MZ)({type:[n.A],json:{write:!0}})],v.prototype,"features",void 0),(0,o._)([(0,u.w)("features")],v.prototype,"readFeatures",null),(0,o._)([(0,p.MZ)({type:[h.A],json:{write:!0}})],v.prototype,"fields",void 0),(0,o._)([(0,p.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:g.read}}})],v.prototype,"geometryType",void 0),(0,o._)([(0,d.K)("geometryType")],v.prototype,"writeGeometryType",null),(0,o._)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasM",void 0),(0,o._)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasZ",void 0),(0,o._)([(0,p.MZ)({types:m.yR,json:{write:!0}})],v.prototype,"queryGeometry",void 0),(0,o._)([(0,u.w)("queryGeometry")],v.prototype,"readQueryGeometry",null),(0,o._)([(0,p.MZ)({type:f.A,json:{write:!0}})],v.prototype,"spatialReference",void 0),(0,o._)([(0,d.K)("spatialReference")],v.prototype,"writeSpatialReference",null),(0,o._)([(0,p.MZ)({json:{write:!0}})],v.prototype,"transform",void 0),v=r=(0,o._)([(0,c.$)("esri.rest.support.FeatureSet")],v),v.prototype.toJSON.isDefaultToJSON=!0;const _=v},41366:(e,t,i)=>{i.d(t,{K:()=>d,Q:()=>p});var r=i(90237),o=i(66552),n=i(53966),s=i(10107),a=(i(44208),i(87811),i(93223)),l=i(40608);const p=(0,o.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),u="percent-of-total",c="field",d=e=>{let t=class extends e{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&&c||i&&u||null,t&&i&&n.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==c&&e!==u||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,r._)([(0,s.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],t.prototype,"normalizationField",void 0),(0,r._)([(0,s.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],t.prototype,"normalizationMaxValue",void 0),(0,r._)([(0,s.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],t.prototype,"normalizationMinValue",void 0),(0,r._)([(0,s.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],t.prototype,"normalizationTotal",void 0),(0,r._)([(0,a.e)(p,{name:"parameters.normalizationType"})],t.prototype,"normalizationType",null),t=(0,r._)([(0,l.$)("esri.rest.support.NormalizationBinParametersMixin")],t),t}},92935:(e,t,i)=>{var r;i.d(t,{X:()=>r}),function(e){e[e.SAVE=0]="SAVE",e[e.SAVE_AS=1]="SAVE_AS"}(r||(r={}))}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9547],{19547:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Ae});var i=n(90237),s=n(13874),o=n(69540),a=n(49186),r=n(92071),l=n(74887),c=n(36708),u=n(10107),p=(n(44208),n(53966)),d=(n(87811),n(40608)),m=n(4146),f=n(63074),g=n(69208),h=n(89015),v=n(16131),y=n(8303),b=n(54310),w=n(25036),x=n(82935),C=n(10873),I=n(20437),S=n(74797),D=n(5443),A=n(38458),T=n(78888),L=n(50103);function V(e){return e.endsWith("?")?e.slice(0,-1):e}function M(e){return e.filter((({coverageSubType:e})=>null==e||""===e||/^rectified(grid|dataset)/i.test(e)))}function N(e){const t={};for(let n=0;n<e.childNodes.length;n++){const i=e.childNodes[n];if(1!==i.nodeType)continue;const s=(0,L.vv)(i).toLowerCase();switch(s){case"title":case"abstract":t[s]=(0,L.mX)(i);break;case"identifier":t.id=(0,L.mX)(i);break;case"wgs84boundingbox":{const e=(0,L.pN)(i,"LowerCorner"),n=(0,L.pN)(i,"UpperCorner");t.lonLatEnvelope=new D.A({xmin:e[0],ymin:e[1],xmax:n[0],ymax:n[1],spatialReference:{wkid:4326}})}break;case"coveragesummary":t.coverageSummaries=t.coverageSummaries||[],t.coverageSummaries.push(N(i))}}return t}function R(e,t){if(e.coverageSummaries)for(let n=0;n<e.coverageSummaries.length;n++)e.coverageSummaries[n].abstract=e.coverageSummaries[n].abstract||e.abstract,e.coverageSummaries[n].lonLatEnvelope=e.coverageSummaries[n].lonLatEnvelope||e.lonLatEnvelope,e.coverageSummaries[n].title=e.coverageSummaries[n].title||e.title,R(e.coverageSummaries[n],t);null!=e.id&&t.push(e)}function P(e){const t=(0,L.V6)(e.querySelector("Operation[name=GetCapabilities]"),"Get")?.getAttribute("xlink:href")||"",n=(0,L.V6)(e.querySelector("Operation[name=DescribeCoverage]"),"Get")?.getAttribute("xlink:href")||"",i=(0,L.V6)(e.querySelector("Operation[name=GetCoverage]"),"Get")?.getAttribute("xlink:href")||"";return{getCapabilities:V(t),describeCoverage:V(n),getCoverage:V(i)}}function E(e,t=null){let n=null;n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;let i=n.documentElement.getAttribute("version");"1.0"===i?i="1.0.0":"1.1"===i&&(i="1.1.0");const s=i||t||"1.0.0",o=s.slice(0,3);let r;if("2.0"===o)r=function(e){const t=(0,L.V6)(e,"ServiceIdentification"),n=(0,L.mX)(t,"Title"),i=(0,L.Dy)(t,"ServiceTypeVersion"),s=(0,L.Dy)(t,"Profile"),o=P((0,L.V6)(e,"OperationsMetadata")),a=(0,L.IC)(e,"Contents/CoverageSummary"),r=[];for(let e=0;e<a.length;e++){const t=a[e],n=(0,L.mX)(t,"CoverageId"),i=(0,L.V6)(t,"WGS84BoundingBox");let s;if(i){const e=(0,L.pN)(i,"LowerCorner"),t=(0,L.pN)(i,"UpperCorner");s=new D.A({xmin:e[0],ymin:e[1],xmax:t[0],ymax:t[1],spatialReference:{wkid:4326}})}const o=(0,L.mX)(t,"CoverageSubtype")||"RectifiedGridCoverage";r.push({id:n,lonLatEnvelope:s,coverageSubType:o})}const l=(0,L.V6)(e,"ServiceMetadata");return{name:n,supportedVersions:i,supportedFormats:(0,L.Dy)(l,"formatSupported"),supportedInterpolations:(0,L.Dy)(l,"interpolationSupported").concat((0,L.Dy)(l,"InterpolationSupported")),onlineResources:o,profiles:s,coverages:r,gridCoverages:M(r),version:"2.0.1"}}(n);else if("1.1"===o)r=function(e){const t=(0,L.mX)(e,"ServiceIdentification/Title"),n=(0,L.Dy)(e,"ServiceIdentification/ServiceTypeVersion"),i=P((0,L.V6)(e,"OperationsMetadata")),s=[],o=(0,L.V6)(e,"Contents");for(let e=0;e<o.childNodes.length;e++){const t=o.childNodes[e];1===t.nodeType&&(0,L.g7)(t,"CoverageSummary")&&R(N(t),s)}const a=(0,L.Dy)(o,"SupportedFormat");return{name:t,onlineResources:i,coverages:s,gridCoverages:M(s),supportedVersions:n,supportedFormats:a,version:"1.1.0"}}(n);else{if("1.0"!==o)throw new a.A("wcsraster:parsecapabilities","the capabilities version is not supported");r=function(e){const t=(0,L.mX)(e,"Service/name"),n=(0,L.V6)(e,"Capability"),i=(0,L.V6)(n,"GetCapabilities/Get/OnlineResource")?.getAttribute("xlink:href")??"",s=(0,L.V6)(n,"DescribeCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",o=(0,L.V6)(n,"GetCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",a={getCapabilities:V(i),describeCoverage:V(s),getCoverage:V(o)},r=(0,L.IC)(e,"CoverageOfferingBrief"),l=[];for(let e=0;e<r.length;e++){const t=r[e],n=(0,L.mX)(t,"name"),i=(0,L.IC)(t,"pos"),s=(0,L.pN)(i[0]),o=(0,L.pN)(i[1]),a=new D.A({xmin:s[0],ymin:s[1],xmax:o[0],ymax:o[1],spatialReference:{wkid:4326}});l.push({id:n,lonLatEnvelope:a})}return{name:t,onlineResources:a,coverages:l,gridCoverages:M(l),supportedVersions:["1.0.0"],version:"1.0.0"}}(n)}return r.version=s,r}var O=n(39829),X=n(87186),$=n(77301);function _(e){e.variables.forEach((e=>e.dimensions.forEach((e=>e.values??=(0,$.Xg)(e)))))}function k(e){return{requestResponseCRSs:(0,L.Dy)(e,"requestResponseCRSs").map((e=>e.split(":")[1])),nativeCRSs:(0,L.Dy)(e,"nativeCRSs").map((e=>e.split(":")[1]))}}function F(e,t){const n=(0,L.Dy)(e,"1.0.0"===t?"interpolationMethod":"InterpolationMethod"),i="1.0.0"===t?e.getAttribute("default"):(0,L.mX)(e,"InterpolationMethods/Default");return null!=i?[i].concat(n.filter((e=>e.toLowerCase()!==i.toLowerCase()))):n}function G(e){return null==e?["nearest"]:e.map((e=>{const t=e.toLowerCase();return t.includes("nearest")?"nearest":t.includes("linear")?"bilinear":t.includes("cubic")?"cubic":null})).filter((e=>!!e))}function B(e){const t=(0,L.IC)(e,"pos"),n=(0,L.pN)(t[0]),i=(0,L.pN)(t[1]);return new D.A({xmin:n[0],ymin:n[1],xmax:i[0],ymax:i[1],spatialReference:{wkid:4326}})}function j(e,t){const n=(0,L.Dy)(e,t);return n?.length&&""!==n[0]&&!isNaN(Number(n[0]))?n.map((e=>Number(e))):null}function W(e){const t=(0,L.pN)(e,"MinimumValue"),n=(0,L.pN)(e,"MaximumValue");return t.length&&n.length?t.map(((e,t)=>({min:e,max:n[t],avg:-1,stddev:-1}))):null}function q(e){return null==e?null:e.every((t=>t===e[0]))?e[0]:e}function Z(e){const t=[],n=(0,L.IC)(e,"RangeSet");let i=[];for(let e=0;e<n.length;e++){const s=(0,L.mX)(n[e],"name"),o=(0,L.mX)(n[e],"label"),a=[],r=j(n[e],"nullValues/singleValue"),l=(0,L.IC)(n[e],"AxisDescription");for(let e=0;e<l.length;e++){const t=(0,L.mX)(l[e],"name"),n=(0,L.mX)(l[e],"label"),s=(0,L.Dy)(l[e],"singleValue");if(0===s.length){const t=(0,L.mX)(l[e],"min"),n=(0,L.mX)(l[e],"max"),i=Number((0,L.mX)(l[e],"res"))||1;if(null!==t&&null!==n)for(let e=parseInt(t,10);e<=parseInt(n,10);e+=i)s.push(e.toString())}"band"===t.toLowerCase()&&(i=s),a.push({name:t,label:n,values:s})}t.push({name:s,label:o,nullValues:r,axis:a})}return{rangeSet:t,bandNames:i}}function U(e=null){if(!e)return{resolution:null,units:null};let t=e.toUpperCase();const n=["Years","Months","Days","Hours","Minutes","Seconds"];let i,s,o;return t.includes("PT")?(t=t.slice(2),o=["H","M","S"].findIndex((e=>t.includes(e))),i=n[3+o],s=parseFloat(t.slice(0,-1))):(t=t.slice(1),o=["Y","M","D"].findIndex((e=>t.includes(e))),o>-1&&(i=n[o]),s=parseFloat(t.slice(0,-1))),{resolution:s,units:i}}function z(e){const t=(0,L.IC)(e,"timeposition");if(t.length>0){const e=[];for(let n=0;n<t.length;n++)e.push(new Date((0,L.mX)(t[n])));return{begin:e[0],end:e[e.length-1],values:e}}const n=(0,L.V6)(e,"timePeriod")||(0,L.V6)(e,"TimePeriod");return n?{begin:new Date((0,L.mX)(n,"beginPosition")||(0,L.mX)(n,"BeginPosition")),end:new Date((0,L.mX)(n,"endPosition")||(0,L.mX)(n,"EndPosition")),...U((0,L.mX)(n,"timeResolution")||(0,L.mX)(n,"TimeResolution"))}:null}function H(e){const t=(0,L.V6)(e,"spatialDomain"),n=(0,L.V6)(t,"Envelope")||(0,L.V6)(t,"EnvelopeWithTimePeriod"),i=n.getAttribute("srsName").split(":"),s=i[i.length-1],o=(0,L.IC)(n,"pos"),a=(0,L.pN)(o[0]),r=(0,L.pN)(o[1]),l=parseInt(s,10),c=isNaN(l)?null:{wkid:l},u=new D.A({xmin:a[0],ymin:a[1],xmax:r[0],ymax:r[1],spatialReference:c}),p=(0,L.V6)(t,"RectifiedGrid"),d=(0,L.mX)(p,"low").split(" "),m=(0,L.mX)(p,"high").split(" "),f=parseInt(m[0],10)-parseInt(d[0],10)+1,g=parseInt(m[1],10)-parseInt(d[1],10)+1,h=(0,L.pN)(t,"origin/pos"),v=(0,L.IC)(t,"offsetVector"),y={envelope:u,columns:f,rows:g,offset:{x:parseFloat((0,L.mX)(v[0]).split(" ")[0]),y:parseFloat((0,L.mX)(v[1]).split(" ")[1])},origin:{x:h[0],y:h[1]}},b=(0,L.V6)(e,"temporalDomain")||(0,L.V6)(e,"TemporalDomain");return{spatialDomain:y,temporalDomain:b?z(b):null}}function Y(e){if(!e.temporalDomain)return null;const{begin:t,end:n,values:i,units:s,resolution:o}=e.temporalDomain,a={variables:[{name:"default",description:"",dimensions:[{name:"StdTime",description:"",unit:"ISO8601",values:i?.map((e=>e.getTime())),hasRegularIntervals:!i,interval:o,intervalUnit:s,extent:[t.getTime(),n.getTime()]}]}]};return _(a),a}function Q(e,t){const n=[],i=(0,L.IC)(e,"Field");let s,o=[];for(let e=0;e<i.length;e++){const a=(0,L.mX)(i[e],"Identifier"),r=(0,L.mX)(i[e],"Description"),l=(0,L.mX)(i[e],"Definition"),c=(0,L.mX)(i[e],"Abstract"),u=(0,L.mX)(i[e],"Title"),p=j(i[e],"NullValue"),d=(0,L.V6)(i[e],"AllowedValues"),m=d?W(d):null,f=F(i[e],"1.1.0"),g=[],h=(0,L.IC)(i[e],"Axis");for(let e=0;e<h.length;e++){const n=h[e].getAttribute("identifier"),i=(0,L.mX)(h[e],"UOM"),a=(0,L.mX)(h[e],"DataType"),r=(0,L.Dy)(h[e],"Key");t&&!n.toLowerCase().includes("band")||(o=r,s=p),g.push({identifier:n,uom:i,dataType:a,values:r,bandNoDataValues:s})}n.push({identifier:a,description:r,definition:l,abstract:c,title:u,supportedInterpolations:f,axis:g,nullValues:p,statistics:m})}return{rangeSet:n,bandNames:o,bandNoDataValues:s,statistics:n[0].statistics}}function J(e,t){if(!t.temporalDomain)return null;const n=e.filter((e=>!e.identifier.toLowerCase().includes("field_1")&&!e.axis.some((e=>e.identifier.includes("band"))))),i=[];if(n.length&&n.forEach((e=>{const t=e.axis.map((e=>{const t=e.values.map((t=>"ISO8601"===e.uom?(t=t.trim()).toLowerCase().includes("z")?new Date(t).getTime():new Date(t+"Z").getTime():parseFloat(t.trim()))),n=[Math.min.apply(null,t),Math.max.apply(null,t)];return{name:e.identifier.trim(),description:"",field:e.identifier.trim(),unit:e.uom?e.uom.trim():"",hasRegularIntervals:!1,values:t,extent:n}}));i.push({name:e.identifier.trim(),description:e.description?.trim()??"",unit:"",dimensions:t,statistics:e.statistics})})),t.temporalDomain){const{begin:e,end:n,values:s,units:o,resolution:a}=t.temporalDomain;i.some((e=>e.dimensions.some((e=>"stdtime"===e.name.toLowerCase()))))||i.forEach((t=>{t.dimensions.push({name:"StdTime",description:"",unit:"ISO8601",values:s?.map((e=>e.getTime())),hasRegularIntervals:!s,interval:a,intervalUnit:o,extent:[e.getTime(),n.getTime()]})}))}if(i.length){const e={variables:i};return _(e),e}return null}function K(e){const t=(0,L.V6)(e,"SpatialDomain"),n=(0,L.V6)(t,"GridCRS"),i=(0,L.mX)(n,"GridBaseCRS"),s=(0,L.mX)(n,"GridOrigin"),o=s?.split(" ").map((e=>parseFloat(e)))??[0,0],a=(0,L.pN)(n,"GridOffsets"),r=(0,L.IC)(t,"BoundingBox");let l,c,u,p;for(let e=0;e<r.length;e++){const t=r[e].getAttribute("crs")?.toLowerCase();if(null!=t)if(t.includes("imagecrs")){const t=(0,L.pN)(r[e],"LowerCorner"),n=(0,L.pN)(r[e],"UpperCorner");l=n[0]-t[0]+1,c=n[1]-t[1]+1}else if(t.indexOf("epsg")>0){const n=t.split(":");u=parseInt(n[n.length-1],10);const i=(0,L.pN)(r[e],"LowerCorner"),s=(0,L.pN)(r[e],"UpperCorner");p=new D.A({xmin:i[0],ymin:i[1],xmax:s[0],ymax:s[1],spatialReference:{wkid:u}})}}const d=l>c,m=p.xmax-p.xmin>p.ymax-p.ymin;let f=!1;(0,A.m)(u)&&(d===m?f=!1:(f=!0,p=new D.A({xmin:p.ymin,ymin:p.xmin,xmax:p.ymax,ymax:p.xmax,spatialReference:{wkid:u}})));const g={columns:l,rows:c,origin:{x:o[0],y:o[1]},offset:{x:a[0],y:a[a.length-1]},gridBaseCRS:i,envelope:p,useEPSGAxis:f},h=(0,L.V6)(e,"temporalDomain")||(0,L.V6)(e,"TemporalDomain");return{spatialDomain:g,temporalDomain:h?z(h):null}}function ee(e){const t=(0,L.V6)(e,"Envelope")||(0,L.V6)(e,"EnvelopeWithTimePeriod"),n=t.getAttribute("srsName"),i=n.slice(n.lastIndexOf("/")+1),s=t.getAttribute("axisLabels").split(" ").map((e=>e.trim())).filter((e=>""!==e.trim())),o=(0,L.pN)(t,"lowerCorner"),a=(0,L.pN)(t,"upperCorner"),r=!["y","lat","latitude","north","nor","n","b"].includes(s[0].toLowerCase());let l;const c=parseInt(i,10),u=isNaN(c)?null:{wkid:c};l=new D.A(r?{xmin:o[0],ymin:o[1],xmax:a[0],ymax:a[1],spatialReference:u}:{xmin:o[1],ymin:o[0],xmax:a[1],ymax:a[0],spatialReference:u});const p={mins:o,maxs:a},d=t.getAttribute("uomLabels").trim().split(" ");let m,f;if((0,L.g7)(t,"EnvelopeWithTimePeriod")){m=new Date((0,L.mX)(e,"beginPosition")||(0,L.mX)(e,"BeginPosition")),f=new Date((0,L.mX)(e,"endPosition")||(0,L.mX)(e,"EndPosition"));const t=d?.findIndex((e=>"oledatetime"===e?.toLowerCase()));t>-1&&(d[t]="ISO8601")}return{envelope:l,axisLabels:s,uomLabels:d.length?d:null,envelopeAllDims:p,beginPosition:m,endPosition:f,isEastFirst:r}}function te(e,t){const n=[],i=(0,L.IC)(e,"DataRecord"),s=[];let o,a=[];for(let e=0;e<i.length;e++){const r=(0,L.IC)(i[e],"field"),l=[];for(let e=0;e<r.length;e++){const n=r[e].getAttribute("name"),i=(0,L.mX)(r[e],"description")||"",c=(0,L.V6)(r[e],"uom")?.getAttribute("code")||"",u=(0,L.pN)(r[e],"interval"),p=j(r[e],"nilValue")?.[0];t&&!n.toLowerCase().includes("band")||(s.push(n),u?.length&&(o=o||[],o.push({min:u[0],max:u[1],avg:-1,stddev:-1})),a.push(p)),l.push({name:n,description:i,uom:c,allowedValues:u,nilValue:p})}n.push(l)}return a.some((e=>null!=e))||(a=null),{rangeType:n,bandNames:s,bandStats:o,bandNoDataValues:a}}function ne(e){let t=1,n="";const i=.01;return Math.abs(e-1/24)<1/24*i?n="Hours":Math.abs(e-1)<1*i?n="Days":e<1?(t=Math.round(24*e),n="Hours"):e>28-i&&e<31+i||Math.round(e/30)<12?n="Months":e>365-i&&e<366+i&&(n="Years"),{interval:t,intervalUnit:n}}function ie(e,t,n){if(n.axisLabels.length<=2)return null;const i=[];for(let t=0;t<e.length;t++){const n=e[t];for(let e=0;e<n.length;e++)n[e].name.toLowerCase().includes("band")||i.push(n[e])}const s=[];if(i.length){const e=[];for(let i=2;i<n.axisLabels.length;i++){const s=t.uomLabels?.[i]?.trim()??"",o=n.axisLabels[i].toLowerCase().includes("time")||"iso8601"===s.toLowerCase()||"oledatetime"===s.toLowerCase();let a,r;if(o){const e=ne(n.offset[i]);a=e.interval,r=e.intervalUnit}else a=n.offset[i],r=s;const l=[];o?(l.push(ae(t.envelopeAllDims.mins[i])),l.push(ae(t.envelopeAllDims.maxs[i]))):(l.push(t.envelopeAllDims.mins[i]),l.push(t.envelopeAllDims.maxs[i])),e.push({name:n.axisLabels[i].trim(),description:n.axisLabels[i].trim(),unit:o?"ISO8601":s,hasRegularIntervals:!0,extent:l,interval:a,intervalUnit:r})}if(i.forEach((t=>{const{allowedValues:n}=t,i=2===n?.length?[{min:n[0],max:n[1],avg:-1,stddev:-1}]:null;s.push({name:t.name.trim(),description:t.description?.trim()??"",unit:t.uom.trim(),statistics:i,dimensions:[...e]})})),s.length){const e={variables:s};return _(e),e}}return null}function se(e,t){const n=(0,L.V6)(e,"RectifiedGrid"),i=(0,L.pN)(n,"low"),s=(0,L.pN)(n,"high"),o=[];for(let e=0;e<i.length;e++)o.push(s[e]-i[e]+1);const a=(0,L.mX)(n,"axisLabels").split(" "),r=(0,L.pN)(n,"origin/pos"),l=(0,L.IC)(n,"offsetVector"),c=[];for(let e=0;e<l.length;e++){const t=(0,L.pN)(l[e]),n=t.findIndex((e=>0!==e));c[n]=t[n]}let u,p,d,m=!1;return t?.length&&a?.length&&(m=[...t].sort(((e,t)=>e<t?-1:1)).join(",")===[...a].sort(((e,t)=>e<t?-1:1)).join(",")),["y","lat","latitude","north","nor","n","b"].includes((m?a:t)[0].toLowerCase())?(u=o[1],p=o[0],d={y:Math.abs(c[0]),x:Math.abs(c[1])}):(u=o[0],p=o[1],d={x:Math.abs(c[0]),y:Math.abs(c[1])}),{columns:u,rows:p,origin:r,offset:c,resolution:d,gridSamples:o,axisLabels:a,hasSameAxisLabelsAsBoundedBy:m}}function oe(e){const t=(0,L.V6)(e,"EarthObservation");if(!t)return null;const n=(0,L.V6)(t,"phenomenonTime"),i=n?z(n):null,s=(0,L.V6)(t,"phenomenonTime"),o=s?z(s):null,a=(0,L.mX)(t,"featureOfInterest/Footprint/multiExtentOf/MultiSurface/surfaceMembers/Polygon/exterior/LinearRing/posList");let r=null;if(a){const e=a.split(" ").map((e=>e.trim())).filter((e=>null!=e&&""!==e)).map(Number);if(e.length){const t=[];for(let n=0;n<e.length/2;n+=2)t.push(e[n],e[n+1]);r=new O.A({rings:[[t]]})}}return{observation:{phenomenonTime:i,resultTime:o,footprint:r,identifier:(0,L.mX)(e,"metaDataProperty/EarthObservationMetaData/identifier"),acquisitionType:(0,L.mX)(e,"metaDataProperty/EarthObservationMetaData/acquisitionType"),status:(0,L.mX)(e,"metaDataProperty/EarthObservationMetaData/status")}}}function ae(e){return Math.round(24*(e-25569)*3600*1e3)}async function re(e,t){const{coverageIds:n,version:i,customParameters:s,signal:o}=t,r=i.slice(0,3),c="1.0"===r?"coverage":"1.1"===r?"identifiers":"coverageId",u={service:"WCS",request:"DescribeCoverage",version:i,[c]:n.join(","),...s};try{const{data:t}=await(0,T.A)(e,{query:u,responseType:"xml",signal:o});return function(e,t){let n=null;if(n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e,"1.0.0"===t)return(0,L.IC)(n,"CoverageOffering").map((e=>function(e){const t={version:"1.0"};let n,i=[];for(let s=0;s<e.childNodes.length;s++){const o=e.childNodes[s];if(1===o.nodeType)if((0,L.g7)(o,"description"))t.description=(0,L.mX)(o);else if((0,L.g7)(o,"name"))t.name=(0,L.mX)(o);else if((0,L.g7)(o,"label"))t.label=(0,L.mX)(o);else if((0,L.g7)(o,"supportedFormats"))t.supportedFormats=(0,L.Dy)(o,"formats");else if((0,L.g7)(o,"supportedCRSs"))t.supportedCRSs=k(o);else if((0,L.g7)(o,"supportedInterpolations"))t.supportedInterpolations=F(o,"1.0.0");else if((0,L.g7)(o,"lonLatEnvelope"))t.lonLatEnvelope=B(o);else if((0,L.g7)(o,"rangeSet")){const e=Z(o);t.rangeSet=e.rangeSet,i=e.bandNames;const s=e.rangeSet[0].nullValues;s?.length&&(n=q(s))}else(0,L.g7)(o,"domainSet")&&(t.domainSet=H(o))}const s=G(t.supportedInterpolations),{name:o,description:a,label:r,lonLatEnvelope:l,supportedFormats:c}=t,{spatialDomain:u}=t.domainSet,p={x:Math.abs(u.offset.x),y:Math.abs(u.offset.y)},d=Y(t.domainSet),m=new X.A({width:u.columns,height:u.rows,pixelSize:p,pixelType:"unknown",extent:u.envelope,spatialReference:u.envelope.spatialReference,bandCount:i.length||1,noDataValue:n,multidimensionalInfo:d});return{id:o,title:t.name,description:a||r,lonLatEnvelope:l,rasterInfo:m,bandNames:i,supportedFormats:c,supportedInterpolations:s,coverageDescription:t,version:"1.0.0",useEPSGAxis:!1}}(e)));const i=(0,L.IC)(n,"CoverageDescription");return"1.1.0"===t||"1.1.1"===t||"1.1.2"===t?i.map((e=>function(e,t){const n=[],i=[],s={supportedFormats:n,supportedCRSs:i,version:"1.1"};let o,a,r=[];for(let t=0;t<e.childNodes.length;t++){const l=e.childNodes[t];if(1!==l.nodeType)continue;const c=(0,L.vv)(l).toLowerCase();switch(c){case"title":case"abstract":case"identifier":s[c]=(0,L.mX)(l);break;case"supportedformat":{const e=(0,L.mX)(l);n.includes(e)||n.push(e)}break;case"supportedcrs":{const e=(0,L.mX)(l);i.includes(e)||i.push(e)}break;case"range":{const e=Q(l,!!s.domain?.temporalDomain);s.range=e.rangeSet,r=e.bandNames;const{bandNoDataValues:t}=e;t?.length&&(o=q(t)),a=e.statistics}break;case"domain":s.domain=K(l)}}const l=G(s.range[0].supportedInterpolations),{identifier:c,abstract:u,title:p,domain:d,range:m}=s,f={x:Math.abs(d.spatialDomain.offset.x),y:Math.abs(d.spatialDomain.offset.y)},g=J(m,d);g&&(o=m[0].nullValues,1===o?.length&&(o=o[0]));const h=new X.A({width:d.spatialDomain.columns,height:d.spatialDomain.rows,pixelSize:f,pixelType:"unknown",extent:d.spatialDomain.envelope,spatialReference:d.spatialDomain.envelope.spatialReference,bandCount:r.length||1,noDataValue:o,statistics:a,multidimensionalInfo:g});return{id:c,title:s.title,description:u||p,bandNames:r,rasterInfo:h,supportedFormats:n,supportedInterpolations:l,coverageDescription:s,version:t,useEPSGAxis:d.spatialDomain.useEPSGAxis}}(e,t))):i.map((e=>function(e){const t={version:"2.0"};let n,i,s=[];for(let o=0;o<e.childNodes.length;o++){const a=e.childNodes[o];if(1===a.nodeType)if((0,L.g7)(a,"coverageId"))t.coverageId=(0,L.mX)(a);else if((0,L.g7)(a,"ServiceParameters"))t.serviceParameters={supportedFormats:(0,L.Dy)(a,"nativeFormat")};else if((0,L.g7)(a,"boundedBy"))t.boundedBy=ee(a);else if((0,L.g7)(a,"rangeType")){const e=te(a,t.boundedBy?.axisLabels.length>2||t.domainSet?.axisLabels.length>2);t.rangeType=e.rangeType,s=e.bandNames,n=e.bandStats;const{bandNoDataValues:o}=e;o?.length&&(i=q(o))}else if((0,L.g7)(a,"domainSet"))t.domainSet=se(a,t.boundedBy?.axisLabels);else if((0,L.g7)(a,"metadata")){const e=(0,L.V6)(a,"EOMetadata");t.eoMetadata=e?oe(e):null}}const{coverageId:o,boundedBy:a,domainSet:r,rangeType:l,serviceParameters:c}=t,u=ie(l,a,r);return!n&&u&&(n=u?.variables[0].statistics),null!=u&&(i=l[0][0].nilValue),{id:o,title:o,description:o,bandNames:s,rasterInfo:new X.A({width:r.columns,height:r.rows,pixelSize:r.resolution,pixelType:"unknown",extent:a.envelope,spatialReference:a.envelope.spatialReference,bandCount:s.length||1,statistics:n,noDataValue:i,multidimensionalInfo:u}),supportedFormats:c.supportedFormats,coverageDescription:t,version:"2.0.1",useEPSGAxis:!1}}(e)))}(t,i)}catch(e){if(!(0,l.zf)(e))throw new a.A("wcslayer:open","wcs coverage description is not valid or supported");throw e}}var le=n(45617),ce=n(4916);function ue(e){const t=function(e){const t=e.getHeader?.("Content-Type")?.split(";");if(!t)return null;if(!(t[0].trim()??"").startsWith("multipart/"))return null;const n={boundary:"",start:"",type:""};for(let e=1;e<t.length;e++){const i=t[e].indexOf("=");if(i>0){const s=t[e].slice(0,i).trim(),o=t[e].slice(i+1).trim();n[s]=o.startsWith('"')?o.slice(1,-1):o}}return n}(e);return t?{isMultipart:!0,data:t.boundary?pe(e.data,t,0):null}:{isMultipart:!1,data:null}}function pe(e,t,n=0){const i="--"+t.boundary,s=[];for(let e=0;e<i.length;e++)s.push(i.charCodeAt(e));const o=[],a="\n--"+t.boundary+"--";for(let e=0;e<a.length;e++)o.push(a.charCodeAt(e));const r=[10],l=[13,10],c=[],u=s.length,p=new Uint8Array(e,n),d=p.length-u;let m=0,f=0;for(let e=0;e<d;e++){for(f=0;f<u&&p[e+f]===s[f];f++);if(f!==u)continue;let n=!1;if(m){const i=de(p.subarray(m,e),t);c.push(i),n=!!i.isValidImage}if(e+=u-1,p[e+1]===r[0]?e+=1:p[e+1]===l[0]&&p[e+2]===l[1]&&(e+=2),m=e+1,n)break}const g=o.length;for(let e=p.length-g-10;e<p.length-g;e++){for(f=0;f<g&&p[e+f]===o[f];f++);if(f===g){c.push(de(p.subarray(m,e),t));break}}return c}function de(e,t){const n=String.fromCharCode.apply(null,e.subarray(0,Math.min(300,e.length))).split("\n"),i=Math.min(n.length,7),s={contentDisposition:"inline"};let o=0;for(let a=0;a<i;a++)if(n[a].length<4)o=o+n[a].length+1;else if("content"===n[a].slice(0,7).toLowerCase()){o=o+n[a].length+1;const e=n[a].indexOf(":");if(-1===e)continue;const t=n[a].slice(0,e).trim(),i=n[a].slice(e+1).trim();switch(t.toLowerCase()){case"content-type":s.contentType=i;break;case"content-description":s.contentDescription=i;break;case"content-transfer-encoding":s.contentTransferEncoding=i;break;case"content-id":s.contentID=i;break;case"content-disposition":s.contentDisposition=i;break;case"content-location":s.contentLocation=i}}else{if(s.contentDisposition.toLowerCase().includes("inline")&&n[a].length>=4&&s.contentType?.toLowerCase().indexOf("image")>-1){let t=!0,n=e.subarray(o,e.length);if(s.contentType.toLowerCase().indexOf("tif")>0){if("base64"===s.contentTransferEncoding){let e="";const t=n;for(let n=0;n<t.length;n+=65535){const i=t.subarray(n,n+65535>t.length-1?t.length-1:n+65535);e+=String.fromCharCode.apply(null,i)}const i=atob(e);n=new Uint8Array(i.length);for(let e=0;e<n.length;e++)n[e]=i.charCodeAt(e)}t=73===n[0]&&73===n[1]||77===n[0]&&77===n[1]}if(t){let t=n.buffer;"base64"!==s.contentTransferEncoding&&(t=new ArrayBuffer(e.length-o),n=new Uint8Array(t),n.set(e.subarray(o,e.length))),s.contentData=t,s.isValidImage=!0}break}if((""===t.start||s.contentID===t.start)&&s.contentType){if(s.contentType.includes("text")||s.contentType.includes("xml")){s.contentData=String.fromCharCode.apply(null,e.subarray(o,e.length));break}s.contentData=e.subarray(o,e.length)}}return s}var me=n(51244),fe=n(28435);const ge=["nearest neighbor","bilinear","bicubic"],he=["nearest","linear","cubic"],ve="response is not a supported multipart/related mediaType with inline tiff, switching to compatibility mode",ye=new Set(["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"]);let be=class extends ce.A{constructor(){super(...arguments),this.datasetFormat="WCSServer",this.tileType="Raster"}async fetchRawTile(e,t,n,i={}){if(this.isBlockOutside(e,t,n))return null;const{nativePixelSize:s,spatialReference:o}=this.rasterInfo,r=2**e,l=s.x*r,c=s.y*r,{blockWidth:u,blockHeight:p}=this.getBlockWidthHeight(e),{origin:d}=this.rasterInfo.storageInfo.tileInfo,m=this.getTileExtent({x:l,y:c},t,n,d,o,[u,p]),f=this.rasterInfo.extent,g=m.xmax>f.xmax,h=m.ymin<f.ymin,v=g||h;let y=m,b=u,w=p;if(v&&(y=m.clone().intersection(f),null!=y&&(g&&(b=Math.floor((y.xmax-y.xmin)/l),y.xmax=y.xmin+l*b),h&&(w=Math.floor((y.ymax-y.ymin)/c),y.ymin=y.ymax-c*w))),null==y||b<=1||w<=1)return null;const x=await this._getCoverage(y,b,w,r,i);if(!x)return null;const{coverageDescription:C}=this.coverageInfo,{noDataValue:I,multidimensionalInfo:S}=this.rasterInfo,{multidimensionalDefinition:D}=i;let A;if(null!=S&&null!=D&&D.length){const e=D[0].variableName;if("2.0"===C.version){const t=C.rangeType[0].find((t=>t.name===e));A=t?.nilValue}else if("1.1"===C.version){const t=C.range.find((t=>t.identifier===e));A=t?.nullValues}}const T=A??I,L=await this.decodePixelBlock(x,{width:b,height:w,planes:null,pixelType:null,tiffNoDataValue:Array.isArray(T)?T[0]:T});if(null==L)return null;if(L&&(L.width!==b||L.height!==w))throw new a.A("wcsraster-fetch",`the response has unexpected dimension width: ${L.width}, height: {pixelBlock.height}`);return v?(0,fe.$Q)(L,{x:0,y:0},{width:p,height:p}):L}async _open(e){const{customFetchParameters:t}=this.ioConfig,n=e?.signal,i=await async function(e,t){const{version:n,customParameters:i,signal:s}=t??{},o=n?.startsWith("1.0")?"version":"acceptVersions",r={service:"WCS",request:"GetCapabilities",[o]:n,...i};try{let{data:n}=await(0,T.A)(e,{query:r,responseType:"xml",signal:s});return t?.version||function(e){let t=null;t="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;const n=t.documentElement.getAttribute("version"),i=n?.slice(0,3);return null!=i&&i<"2.1"}(n)||(r[o]="2.0.1",({data:n}=await(0,T.A)(e,{query:r,responseType:"xml",signal:s}))),E(n)}catch(e){if(!(0,l.zf)(e))throw new a.A("wcslayer:open","wcs capabilities is not valid or supported");throw e}}(this.url,{version:t?.version??this.version,customParameters:t,signal:n});if(this.capabilities=i,!this.version){let e=i.version.slice(0,3);"2.0"===e||"1.1"===e||"1.0"===e?this.version=i.version:(e=i.supportedVersions.find((e=>"2.0.1"===e))||i.supportedVersions.find((e=>"2.0"===e.slice(0,3)))||i.supportedVersions.find((e=>"1.1"===e.slice(0,3)))||i.supportedVersions.find((e=>"1.0"===e.slice(0,3)))||"1.0.0",this.version=e)}const{version:s}=this;if(!ye.has(s))throw new a.A("wcsraster-open",`unsupported WCS version ${s}`);const{gridCoverages:o}=i;if(!o.length)throw new a.A("wcsraster-open","cannot find rectified grid coverages");this.coverageId??=o[0].id;const{coverageId:r}=this,c=o.find((e=>e.id===r));if(null==c)throw new a.A("wcsraster-open",`the coverageId ${r} does not exist in capabilities`);const u=await re(this.url,{coverageIds:[r],version:s,customParameters:t,signal:n});if(this.coverageInfo=u[0],"2.0"===s.slice(0,3)){const{coverageInfo:e}=this;e.lonLatEnvelope=c.lonLatEnvelope,e.supportedInterpolations=G(i.supportedInterpolations),this._patchDimensionValues201(r,n)}this.datasetName=this.coverageInfo.title;const{rasterInfo:p}=this.coverageInfo;if(this.createRemoteDatasetStorageInfo(p,512,512),this._set("rasterInfo",p),null==p.spatialReference)throw new a.A("wcsraster-open",`coverage without spatial reference is not supported: ${r}`);const{pixelType:d,bandCount:m}=await this._getPixelTypeAndBandCount(n);p.pixelType=d,1===p.bandCount&&m>1&&(p.bandCount=m),this.updateTileInfo()}async _patchDimensionValues201(e,t){const{coverageInfo:n}=this,i=n.rasterInfo.multidimensionalInfo?.variables,s=ye.has("1.1.2")?"1.1.2":ye.has("1.1.1")?"1.1.1":ye.has("1.1.0")?"1.1.0":null,{customFetchParameters:o}=this.ioConfig;if(i&&s)try{const n=this.url.includes("/ImageServer/"),a=e.length>8&&e.startsWith("Coverage")&&n?e.slice(8):e,r=await re(this.url,{coverageIds:[a??e],version:s,customParameters:o,signal:t}).catch((()=>{if(a)return re(this.url,{coverageIds:[e],version:s,customParameters:o,signal:t})})),l=r?.[0].rasterInfo.multidimensionalInfo?.variables;if(l)for(const e of i){const t=l.find((({name:t})=>t===e.name));if(t?.dimensions?.length)for(let i=e.dimensions.length-1;i>=0;i--){const s=e.dimensions[i],o=t.dimensions.find((({name:e})=>e===s.name));o?o.values&&o.extent?.join(",")===s.extent?.join(",")&&(e.dimensions[i]={...s,values:o.values}):n&&e.dimensions.splice(i,1)}}}catch{}}async _getPixelTypeAndBandCount(e){const{pixelSize:t,extent:n,multidimensionalInfo:i}=this.rasterInfo,s=n.center,o=new D.A({xmin:s.x-t.x,xmax:s.x+t.x,ymin:s.y-t.y,ymax:s.y+t.y,spatialReference:n.spatialReference});let r=[];if(null!=i){const e=i.variables[0];r=[],e.dimensions.forEach((t=>{r.push(new le.A({variableName:e.name,dimensionName:t.name,values:t.hasRegularIntervals?t.extent?.[0]:t.values?.[0],isSlice:!0}))}))}const{coverageDescription:l}=this.coverageInfo,c={interpolation:"nearest",multidimensionalDefinition:r,signal:e},{version:u}=l,{ioConfig:d}=this,m="2.0"===u&&null==d.allowAnyMediaType||"1.1"===u&&null==d.use2GridOffsets;let f;try{f=await this._getCoverage(o,2,2,1,c,!0)}catch(e){if(!m)throw e;if("1.1"===u){if(!e.details?.isResolutionMismatch)throw e;d.use2GridOffsets=!0}}if(!f&&m&&("2.0"===u&&(d.allowAnyMediaType=!0),f=await this._getCoverage(o,2,2,1,c),f&&p.A.getLogger(this).warn("wcsraster:getcoverage",ve)),!f)throw new a.A("wcsraster-open","unable to determine pixel type");const g=await this.decodePixelBlock(f,{width:2,height:2,planes:null,pixelType:null});if(null==g)throw new a.A("wcsraster-open","unable to determine pixel type");return{pixelType:g.pixelType,bandCount:g.getPlaneCount()??0}}async _getCoverage(e,t,n,i,s,o=!1){const{coverageDescription:r}=this.coverageInfo,{version:l}=r,c="2.0"===l?this._getCoverage201Parameters(e,t,n,i,s,r):"1.1"===l?this._getCoverage110Parameters(e,t,n,s,r):this._getCoverage100Parameters(e,t,n,s),u="2.0"===l?await this.request(this._constructWCS201Url(c),{signal:s.signal,responseType:"array-buffer"}):await this.request(this.url,{query:c,signal:s.signal,responseType:"array-buffer"});if("1.0"===l)return u.data;if("2.0"===l&&!1!==this.ioConfig.allowAnyMediaType&&"tiff"===(0,me.g)(u.data))return o&&(this.ioConfig.allowAnyMediaType=!0,p.A.getLogger(this).warn("wcsraster:getcoverage",ve)),u.data;const d=ue(u);if(d.isMultipart&&d.data){const e=d.data.find((e=>e.isValidImage));return o&&"base64"===e?.contentTransferEncoding&&p.A.getLogger(this).warn("wcsraster:getcoverage","response is base64 encoded which may impact layer display performance"),e?.contentData}const m=new Uint8Array(u.data,0,Math.min(u.data.byteLength,2e3)),f=String.fromCharCode.apply(null,m).toLowerCase().includes("exception"),g=f&&String.fromCharCode.apply(null,m).includes("A non-zero RESX/RESY or WIDTH/HEIGHT is required but neither was provided");if(f)throw new a.A("wcsraster:getcoverage","server returns an exception",{isResolutionMismatch:g});throw new a.A("wcsraster:getcoverage","response is not a supported multipart mediaType with inline tiff")}_getInterpolationIndex(e){return e&&this.coverageInfo.supportedInterpolations?.includes(e)?"nearest"===e?0:"bilinear"===e?1:"cubic"===e?2:0:0}_getCoverage100Parameters(e,t,n,i){const s=`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`,o=e.spatialReference.wkid,a=(this.coverageInfo.supportedFormats||[]).find((e=>e.toLowerCase().includes("tiff")))||"GEOTIFF",{bandIds:r,interpolation:l}=i,c=this._getInterpolationIndex(l),u=r?r.map((e=>this.coverageInfo.bandNames[e])):null,p=ge[c],{multidimensionalDefinition:d}=i;let m;if(null!=d&&null!=this.rasterInfo.multidimensionalInfo){const e=d.find((e=>"StdTime"===e.dimensionName));let t=e?.values;t&&t.length>0&&(Array.isArray(t[0])&&(t=t[0]),m=t.map((e=>we(e))).join(","))}return{service:"WCS",request:"GetCoverage",version:this.version,coverage:this.coverageId,format:a,crs:`EPSG:${o}`,bbox:s,width:t,height:n,time:m,interpolation:p,band:u?.join(",")}}_getCoverage110Parameters(e,t,n,i,s){const{multidimensionalDefinition:o,bandIds:a,interpolation:r}=i,l=e.spatialReference.wkid,c=`urn:ogc:def:crs:EPSG::${l}`,u=(this.coverageInfo.supportedFormats||[]).find((e=>e.toLowerCase().includes("tiff")))||"image/tiff",p=this._getInterpolationIndex(r),d=he[p],m=null==r||0===this.coverageInfo.supportedInterpolations?.indexOf(r),f=s.domain.spatialDomain,g=f.origin.x<=f.envelope.xmin&&f.origin.y<=f.envelope.ymin,h=e.width/t,v=e.height/n*(g?1:-1),y=g?[e.xmin,e.ymin]:[e.xmin,e.ymax],b=f.useEPSGAxis&&(0,A.m)(l),w=b?`${y[1]},${y[0]}`:`${y[0]},${y[1]}`,x=this.ioConfig.use2GridOffsets,C=b?x?`${v},${h}`:`${v},0,0,${h}`:x?`${h},${v}`:`${h},0,0,${v}`,I=h/2,S=e.xmin+I,D=e.xmax-I,T=Math.abs(v)/2,L=e.ymin+T,V=e.ymax-T,M=b?`${L},${S},${V},${D},${c}`:`${S},${L},${D},${V},${c}`,N=s.range.find((e=>e.axis.some((e=>e.identifier.toLowerCase().includes("band")))));let R,P=N&&d&&a?m?`${N.identifier}[${N.axis[0].identifier}[${a.join(",")}]]`:`${N.identifier}:${d}[${N.axis[0].identifier}[${a.join(",")}]]`:null;if(null!=o&&o.length)for(let e=0;e<o.length;e++){let t=o[e].values;const n=o[e].dimensionName?.toLowerCase(),i=o[e].variableName?.toLowerCase(),a=s.range.find((e=>e.identifier.toLowerCase()===i));if(t.length>0)if(Array.isArray(t[0])&&(t=t[0]),"stdtime"===n)R=t.map((e=>we(e))).join(",");else if(a){const e=a.axis.find((e=>e.identifier.toLowerCase()===n));e&&(P=m?a.identifier+"["+e.identifier+"["+t.join(",")+"]]":a.identifier+":"+d+"["+e.identifier+"["+t.join(",")+"]]")}e===o.length-1&&a&&!P&&(P=m?a.identifier:a.identifier+":"+d)}return{service:"WCS",request:"GetCoverage",version:this.version,identifier:this.coverageId,format:u,crs:`EPSG:${l}`,boundingbox:M,gridCS:"urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS",gridType:"urn:ogc:def:method:WCS:1.1:2dGridIn2dCrs",gridOrigin:w,gridOffsets:C,gridBaseCRS:c,timeSequence:R,rangeSubset:P}}_getCoverage201Parameters(e,t,n,i,s,o){const{multidimensionalDefinition:a,interpolation:r}=s,l=this._getInterpolationIndex(r);let c=null;const{supportedInterpolations:u}=this.capabilities;if(u?.length)switch(l){case 0:c=u.find((e=>e.toLowerCase().includes("nearest")));break;case 1:c=u.find((e=>e.toLowerCase().includes("linear")));break;case 2:c=u.find((e=>e.toLowerCase().includes("cubic")||e.toLowerCase().includes("quadratic")))}const p=(this.coverageInfo.supportedFormats||[]).find((e=>e.toLowerCase().includes("tiff")))||"image/tiff",{bandNames:d}=this.coverageInfo,{boundedBy:m,domainSet:f,rangeType:g}=o,h=m.isEastFirst?0:1,v=1-h,{axisLabels:y}=m,b=y[h],w=y[v],x=`http://www.opengis.net/def/crs/EPSG/0/${e.spatialReference.wkid}`,C=x,I=[];I.push(`${b}(${e.xmin},${e.xmax})`),I.push(`${w}(${e.ymin},${e.ymax})`);const S=[];if(y.length>2)for(let e=2;e<y.length;e++){const t=f.origin[e];if(y[e].toLowerCase().includes("time")){let n=t.toString();m.uomLabels?.[e].toLowerCase().includes("ole")&&(S.push(y[e]),n=we(t,!0)),I.push(y[e]+",http://www.opengis.net("+n+")")}else I.push(y[e]+",http://www.opengis.net("+t+")")}let D=null;if(null!=a&&a.length){const e=[];g.forEach((t=>t.forEach((t=>e.push(t.name)))));const t=[];for(let n=0;n<a.length;n++){const i=y.find((e=>e===a[n].dimensionName)),s=e.find((e=>e===a[n].variableName));if(t.includes(s)||t.push(s),i){let e=a[n].values;if(e.length>0){Array.isArray(e[0])&&(e=e[0]);let t="";t=i.toLowerCase().includes("time")?e.map((e=>we(e))).join(","):e.join(",");const n=I.findIndex((e=>0===e.indexOf(i+",http://www.opengis.net")));-1===n&&I.push(i+",http://www.opengis.net("+t+")"),-1===n||I[n].includes("("+t+")")||I.splice(n,1,i+",http://www.opengis.net("+t+")")}}}t.length&&(D=t.join(","))}else d?.length>=2&&(D=(s.bandIds?s.bandIds.map((e=>d[e])):d).join(","));const A=I.join("&subset="),T=!o.domainSet.hasSameAxisLabelsAsBoundedBy&&!1!==this.ioConfig.allowScaleFactor,L=T?null:`${b}(${t}),${w}(${n})`,V=T?1/i:null;return{service:"WCS",request:"GetCoverage",version:this.version,coverageId:this.coverageId,rangesubset:D,interpolation:c,scaleSize:L,scaleFactor:V,subset:A,format:p,mediaType:this.ioConfig.allowAnyMediaType?null:"multipart/related",outputcrs:x,subsettingcrs:C}}_constructWCS201Url(e){const t={...this.ioConfig.customFetchParameters,...e},n=[];return Object.keys(t).forEach((e=>{const i=t[e];null!=i&&("subset"===e?"string"==typeof i&&i.split("&subset=").forEach((e=>{e&&n.push(`subset=${encodeURIComponent(e)}`)})):n.push(`${e}=${encodeURIComponent(i)}`))})),`${encodeURI(this.url)}?${n.join("&")}`}};function we(e,t=!1){return(t?new Date(ae(e)):new Date(e)).toISOString()}(0,i._)([(0,u.MZ)({type:String,json:{write:!0}})],be.prototype,"datasetFormat",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],be.prototype,"tileType",void 0),(0,i._)([(0,u.MZ)({type:String,json:{write:!0}})],be.prototype,"version",void 0),(0,i._)([(0,u.MZ)({type:String,json:{write:!0}})],be.prototype,"coverageId",void 0),be=(0,i._)([(0,d.$)("esri.layers.support.rasterDatasets.WCSRaster")],be);const xe=be;var Ce=n(30291),Ie=n(92935);const Se=new Set(["milliseconds","seconds","minutes","hours","days","weeks","months","years","decades","centuries"]);let De=class extends((0,f.dM)((0,w.j)((0,v.q)((0,y.A)((0,g.d)((0,h.o)((0,x.e)((0,b.J)((0,r.P)(o.A.ClonableMixin(m.A))))))))))){constructor(...e){super(...e),this.coverageId=null,this.version=null,this.isReference=null,this.legendEnabled=!0,this.noData=0,this.operationalLayerType="WCS",this.type="wcs",this.popupEnabled=!0,this.popupTemplate=null,this.fields=null,this._debouncedSaveOperations=(0,l.sg)((async(e,t,i)=>{const{save:s,saveAs:o}=await n.e(9838).then(n.bind(n,59838));switch(e){case Ie.X.SAVE:return s(this,t);case Ie.X.SAVE_AS:return o(this,i,t)}}))}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["WCS"]},e).catch(l.QP).then((()=>this._openRaster(t)))),Promise.resolve(this)}get coverageInfo(){return this.raster.coverageInfo}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){return[(0,S.rZ)("Pixel Value")]}createPopupTemplate(e){return(0,Ce.tn)({fields:this.rasterFields,title:this.title},e)}async save(e){return this._debouncedSaveOperations(Ie.X.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(Ie.X.SAVE_AS,t,e)}async _openRaster(e){const t=new xe({url:this.url,version:this.version,coverageId:this.coverageId,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters}});if(await t.open({signal:e}),!t.rasterInfo)throw t.destroy(),new a.A("wcs-layer:load","cannot load resources on "+this.url);const{rasterInfo:n}=t;null==n.noDataValue&&(n.noDataValue=this.noData),this._set("serviceRasterInfo",n),this._set("spatialReference",n.spatialReference),null==this.title&&this.setAtOrigin("title",t.datasetName,"service"),null==this.coverageId&&this.setAtOrigin("coverageId",t.coverageInfo.id,"service"),null==this.version&&t.version&&this.setAtOrigin("version",t.version,"service"),this.setAtOrigin("tileInfo",t.rasterInfo.storageInfo.tileInfo,"service");const{multidimensionalInfo:i}=n;if(null!=i){const e=i.variables[0].dimensions.find((({name:e})=>"StdTime"===e));if(e){let t=e.extent?.[0]??e.values[0];Array.isArray(t)&&(t=t[0]);let n=e.extent?.[1]??e.values[e.values.length-1];Array.isArray(n)&&(n=n[1]);const i=Se.has(e.intervalUnit?.toLowerCase())?e.intervalUnit?.toLowerCase():null;this.set("timeInfo",{startField:"StdTime",fullTimeExtent:{start:t,end:n},timeZone:null,interval:i?{value:e.interval,unit:i}:null})}}this.raster=t,this._configDefaultSettings(),this.addHandles((0,c.wB)((()=>this.customParameters),(e=>this.raster.ioConfig.customFetchParameters=e)))}};(0,i._)([(0,u.MZ)({type:String,nonNullable:!0,json:{name:"wcsInfo.coverageId",write:{isRequired:!0,ignoreOrigin:!0}}})],De.prototype,"coverageId",void 0),(0,i._)([(0,u.MZ)()],De.prototype,"coverageInfo",null),(0,i._)([(0,u.MZ)({type:["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"],nonNullable:!0,json:{name:"wcsInfo.version",write:{isRequired:!0,ignoreOrigin:!0}}})],De.prototype,"version",void 0),(0,i._)([(0,u.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],De.prototype,"isReference",void 0),(0,i._)([(0,u.MZ)({json:{read:!0,write:!0}})],De.prototype,"blendMode",void 0),(0,i._)([(0,u.MZ)(C.fV)],De.prototype,"legendEnabled",void 0),(0,i._)([(0,u.MZ)({type:["show","hide"]})],De.prototype,"listMode",void 0),(0,i._)([(0,u.MZ)()],De.prototype,"noData",void 0),(0,i._)([(0,u.MZ)({type:["WCS"]})],De.prototype,"operationalLayerType",void 0),(0,i._)([(0,u.MZ)()],De.prototype,"raster",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],De.prototype,"type",void 0),(0,i._)([(0,u.MZ)(C.M6)],De.prototype,"popupEnabled",void 0),(0,i._)([(0,u.MZ)({type:s.A,json:{name:"popupInfo",write:!0}})],De.prototype,"popupTemplate",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],De.prototype,"defaultPopupTemplate",null),(0,i._)([(0,u.MZ)({readOnly:!0,type:[I.A]})],De.prototype,"fields",void 0),(0,i._)([(0,u.MZ)({readOnly:!0,type:[I.A]})],De.prototype,"rasterFields",null),De=(0,i._)([(0,d.$)("esri.layers.WCSLayer")],De);const Ae=De},38458:(e,t,n)=>{n.d(t,{m:()=>s});const i=[[3819,3819],[3821,3824],[3889,3889],[3906,3906],[4001,4025],[4027,4036],[4039,4047],[4052,4055],[4074,4075],[4080,4081],[4120,4176],[4178,4185],[4188,4216],[4218,4289],[4291,4304],[4306,4319],[4322,4326],[4463,4463],[4470,4470],[4475,4475],[4483,4483],[4490,4490],[4555,4558],[4600,4646],[4657,4765],[4801,4811],[4813,4821],[4823,4824],[4901,4904],[5013,5013],[5132,5132],[5228,5229],[5233,5233],[5246,5246],[5252,5252],[5264,5264],[5324,5340],[5354,5354],[5360,5360],[5365,5365],[5370,5373],[5381,5381],[5393,5393],[5451,5451],[5464,5464],[5467,5467],[5489,5489],[5524,5524],[5527,5527],[5546,5546],[2044,2045],[2081,2083],[2085,2086],[2093,2093],[2096,2098],[2105,2132],[2169,2170],[2176,2180],[2193,2193],[2200,2200],[2206,2212],[2319,2319],[2320,2462],[2523,2549],[2551,2735],[2738,2758],[2935,2941],[2953,2953],[3006,3030],[3034,3035],[3038,3051],[3058,3059],[3068,3068],[3114,3118],[3126,3138],[3150,3151],[3300,3301],[3328,3335],[3346,3346],[3350,3352],[3366,3366],[3389,3390],[3416,3417],[3833,3841],[3844,3850],[3854,3854],[3873,3885],[3907,3910],[4026,4026],[4037,4038],[4417,4417],[4434,4434],[4491,4554],[4839,4839],[5048,5048],[5105,5130],[5253,5259],[5269,5275],[5343,5349],[5479,5482],[5518,5519],[5520,5520],[20004,20032],[20064,20092],[21413,21423],[21473,21483],[21896,21899],[22171,22177],[22181,22187],[22191,22197],[25884,25884],[27205,27232],[27391,27398],[27492,27492],[28402,28432],[28462,28492],[30161,30179],[30800,30800],[31251,31259],[31275,31279],[31281,31290],[31466,31700]];function s(e){return null!=e&&i.some((([t,n])=>e>=t&&e<=n))}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9547],{19547:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Ae});var i=n(90237),s=n(13874),o=n(69540),a=n(49186),r=n(92071),l=n(74887),c=n(36708),u=n(10107),p=(n(44208),n(53966)),d=(n(87811),n(40608)),m=n(4146),f=n(63074),g=n(69208),h=n(89015),v=n(16131),y=n(8303),b=n(54310),w=n(25036),x=n(82935),C=n(10873),I=n(20437),S=n(74797),D=n(5443),A=n(38458),T=n(78888),L=n(50103);function V(e){return e.endsWith("?")?e.slice(0,-1):e}function M(e){return e.filter((({coverageSubType:e})=>null==e||""===e||/^rectified(grid|dataset)/i.test(e)))}function N(e){const t={};for(let n=0;n<e.childNodes.length;n++){const i=e.childNodes[n];if(1!==i.nodeType)continue;const s=(0,L.vv)(i).toLowerCase();switch(s){case"title":case"abstract":t[s]=(0,L.mX)(i);break;case"identifier":t.id=(0,L.mX)(i);break;case"wgs84boundingbox":{const e=(0,L.pN)(i,"LowerCorner"),n=(0,L.pN)(i,"UpperCorner");t.lonLatEnvelope=new D.A({xmin:e[0],ymin:e[1],xmax:n[0],ymax:n[1],spatialReference:{wkid:4326}})}break;case"coveragesummary":t.coverageSummaries=t.coverageSummaries||[],t.coverageSummaries.push(N(i))}}return t}function R(e,t){if(e.coverageSummaries)for(let n=0;n<e.coverageSummaries.length;n++)e.coverageSummaries[n].abstract=e.coverageSummaries[n].abstract||e.abstract,e.coverageSummaries[n].lonLatEnvelope=e.coverageSummaries[n].lonLatEnvelope||e.lonLatEnvelope,e.coverageSummaries[n].title=e.coverageSummaries[n].title||e.title,R(e.coverageSummaries[n],t);null!=e.id&&t.push(e)}function P(e){const t=(0,L.V6)(e.querySelector("Operation[name=GetCapabilities]"),"Get")?.getAttribute("xlink:href")||"",n=(0,L.V6)(e.querySelector("Operation[name=DescribeCoverage]"),"Get")?.getAttribute("xlink:href")||"",i=(0,L.V6)(e.querySelector("Operation[name=GetCoverage]"),"Get")?.getAttribute("xlink:href")||"";return{getCapabilities:V(t),describeCoverage:V(n),getCoverage:V(i)}}function E(e,t=null){let n=null;n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;let i=n.documentElement.getAttribute("version");"1.0"===i?i="1.0.0":"1.1"===i&&(i="1.1.0");const s=i||t||"1.0.0",o=s.slice(0,3);let r;if("2.0"===o)r=function(e){const t=(0,L.V6)(e,"ServiceIdentification"),n=(0,L.mX)(t,"Title"),i=(0,L.Dy)(t,"ServiceTypeVersion"),s=(0,L.Dy)(t,"Profile"),o=P((0,L.V6)(e,"OperationsMetadata")),a=(0,L.IC)(e,"Contents/CoverageSummary"),r=[];for(let e=0;e<a.length;e++){const t=a[e],n=(0,L.mX)(t,"CoverageId"),i=(0,L.V6)(t,"WGS84BoundingBox");let s;if(i){const e=(0,L.pN)(i,"LowerCorner"),t=(0,L.pN)(i,"UpperCorner");s=new D.A({xmin:e[0],ymin:e[1],xmax:t[0],ymax:t[1],spatialReference:{wkid:4326}})}const o=(0,L.mX)(t,"CoverageSubtype")||"RectifiedGridCoverage";r.push({id:n,lonLatEnvelope:s,coverageSubType:o})}const l=(0,L.V6)(e,"ServiceMetadata");return{name:n,supportedVersions:i,supportedFormats:(0,L.Dy)(l,"formatSupported"),supportedInterpolations:(0,L.Dy)(l,"interpolationSupported").concat((0,L.Dy)(l,"InterpolationSupported")),onlineResources:o,profiles:s,coverages:r,gridCoverages:M(r),version:"2.0.1"}}(n);else if("1.1"===o)r=function(e){const t=(0,L.mX)(e,"ServiceIdentification/Title"),n=(0,L.Dy)(e,"ServiceIdentification/ServiceTypeVersion"),i=P((0,L.V6)(e,"OperationsMetadata")),s=[],o=(0,L.V6)(e,"Contents");for(let e=0;e<o.childNodes.length;e++){const t=o.childNodes[e];1===t.nodeType&&(0,L.g7)(t,"CoverageSummary")&&R(N(t),s)}const a=(0,L.Dy)(o,"SupportedFormat");return{name:t,onlineResources:i,coverages:s,gridCoverages:M(s),supportedVersions:n,supportedFormats:a,version:"1.1.0"}}(n);else{if("1.0"!==o)throw new a.A("wcsraster:parsecapabilities","the capabilities version is not supported");r=function(e){const t=(0,L.mX)(e,"Service/name"),n=(0,L.V6)(e,"Capability"),i=(0,L.V6)(n,"GetCapabilities/Get/OnlineResource")?.getAttribute("xlink:href")??"",s=(0,L.V6)(n,"DescribeCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",o=(0,L.V6)(n,"GetCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",a={getCapabilities:V(i),describeCoverage:V(s),getCoverage:V(o)},r=(0,L.IC)(e,"CoverageOfferingBrief"),l=[];for(let e=0;e<r.length;e++){const t=r[e],n=(0,L.mX)(t,"name"),i=(0,L.IC)(t,"pos"),s=(0,L.pN)(i[0]),o=(0,L.pN)(i[1]),a=new D.A({xmin:s[0],ymin:s[1],xmax:o[0],ymax:o[1],spatialReference:{wkid:4326}});l.push({id:n,lonLatEnvelope:a})}return{name:t,onlineResources:a,coverages:l,gridCoverages:M(l),supportedVersions:["1.0.0"],version:"1.0.0"}}(n)}return r.version=s,r}var $=n(39829),O=n(87186),X=n(77301);function _(e){e.variables.forEach((e=>e.dimensions.forEach((e=>e.values??=(0,X.Xg)(e)))))}function k(e){return{requestResponseCRSs:(0,L.Dy)(e,"requestResponseCRSs").map((e=>e.split(":")[1])),nativeCRSs:(0,L.Dy)(e,"nativeCRSs").map((e=>e.split(":")[1]))}}function F(e,t){const n=(0,L.Dy)(e,"1.0.0"===t?"interpolationMethod":"InterpolationMethod"),i="1.0.0"===t?e.getAttribute("default"):(0,L.mX)(e,"InterpolationMethods/Default");return null!=i?[i].concat(n.filter((e=>e.toLowerCase()!==i.toLowerCase()))):n}function G(e){return null==e?["nearest"]:e.map((e=>{const t=e.toLowerCase();return t.includes("nearest")?"nearest":t.includes("linear")?"bilinear":t.includes("cubic")?"cubic":null})).filter((e=>!!e))}function B(e){const t=(0,L.IC)(e,"pos"),n=(0,L.pN)(t[0]),i=(0,L.pN)(t[1]);return new D.A({xmin:n[0],ymin:n[1],xmax:i[0],ymax:i[1],spatialReference:{wkid:4326}})}function j(e,t){const n=(0,L.Dy)(e,t);return n?.length&&""!==n[0]&&!isNaN(Number(n[0]))?n.map((e=>Number(e))):null}function W(e){const t=(0,L.pN)(e,"MinimumValue"),n=(0,L.pN)(e,"MaximumValue");return t.length&&n.length?t.map(((e,t)=>({min:e,max:n[t],avg:-1,stddev:-1}))):null}function q(e){return null==e?null:e.every((t=>t===e[0]))?e[0]:e}function Z(e){const t=[],n=(0,L.IC)(e,"RangeSet");let i=[];for(let e=0;e<n.length;e++){const s=(0,L.mX)(n[e],"name"),o=(0,L.mX)(n[e],"label"),a=[],r=j(n[e],"nullValues/singleValue"),l=(0,L.IC)(n[e],"AxisDescription");for(let e=0;e<l.length;e++){const t=(0,L.mX)(l[e],"name"),n=(0,L.mX)(l[e],"label"),s=(0,L.Dy)(l[e],"singleValue");if(0===s.length){const t=(0,L.mX)(l[e],"min"),n=(0,L.mX)(l[e],"max"),i=Number((0,L.mX)(l[e],"res"))||1;if(null!==t&&null!==n)for(let e=parseInt(t,10);e<=parseInt(n,10);e+=i)s.push(e.toString())}"band"===t.toLowerCase()&&(i=s),a.push({name:t,label:n,values:s})}t.push({name:s,label:o,nullValues:r,axis:a})}return{rangeSet:t,bandNames:i}}function U(e=null){if(!e)return{resolution:null,units:null};let t=e.toUpperCase();const n=["Years","Months","Days","Hours","Minutes","Seconds"];let i,s,o;return t.includes("PT")?(t=t.slice(2),o=["H","M","S"].findIndex((e=>t.includes(e))),i=n[3+o],s=parseFloat(t.slice(0,-1))):(t=t.slice(1),o=["Y","M","D"].findIndex((e=>t.includes(e))),o>-1&&(i=n[o]),s=parseFloat(t.slice(0,-1))),{resolution:s,units:i}}function z(e){const t=(0,L.IC)(e,"timeposition");if(t.length>0){const e=[];for(let n=0;n<t.length;n++)e.push(new Date((0,L.mX)(t[n])));return{begin:e[0],end:e[e.length-1],values:e}}const n=(0,L.V6)(e,"timePeriod")||(0,L.V6)(e,"TimePeriod");return n?{begin:new Date((0,L.mX)(n,"beginPosition")||(0,L.mX)(n,"BeginPosition")),end:new Date((0,L.mX)(n,"endPosition")||(0,L.mX)(n,"EndPosition")),...U((0,L.mX)(n,"timeResolution")||(0,L.mX)(n,"TimeResolution"))}:null}function H(e){const t=(0,L.V6)(e,"spatialDomain"),n=(0,L.V6)(t,"Envelope")||(0,L.V6)(t,"EnvelopeWithTimePeriod"),i=n.getAttribute("srsName").split(":"),s=i[i.length-1],o=(0,L.IC)(n,"pos"),a=(0,L.pN)(o[0]),r=(0,L.pN)(o[1]),l=parseInt(s,10),c=isNaN(l)?null:{wkid:l},u=new D.A({xmin:a[0],ymin:a[1],xmax:r[0],ymax:r[1],spatialReference:c}),p=(0,L.V6)(t,"RectifiedGrid"),d=(0,L.mX)(p,"low").split(" "),m=(0,L.mX)(p,"high").split(" "),f=parseInt(m[0],10)-parseInt(d[0],10)+1,g=parseInt(m[1],10)-parseInt(d[1],10)+1,h=(0,L.pN)(t,"origin/pos"),v=(0,L.IC)(t,"offsetVector"),y={envelope:u,columns:f,rows:g,offset:{x:parseFloat((0,L.mX)(v[0]).split(" ")[0]),y:parseFloat((0,L.mX)(v[1]).split(" ")[1])},origin:{x:h[0],y:h[1]}},b=(0,L.V6)(e,"temporalDomain")||(0,L.V6)(e,"TemporalDomain");return{spatialDomain:y,temporalDomain:b?z(b):null}}function Y(e){if(!e.temporalDomain)return null;const{begin:t,end:n,values:i,units:s,resolution:o}=e.temporalDomain,a={variables:[{name:"default",description:"",dimensions:[{name:"StdTime",description:"",unit:"ISO8601",values:i?.map((e=>e.getTime())),hasRegularIntervals:!i,interval:o,intervalUnit:s,extent:[t.getTime(),n.getTime()]}]}]};return _(a),a}function Q(e,t){const n=[],i=(0,L.IC)(e,"Field");let s,o=[];for(let e=0;e<i.length;e++){const a=(0,L.mX)(i[e],"Identifier"),r=(0,L.mX)(i[e],"Description"),l=(0,L.mX)(i[e],"Definition"),c=(0,L.mX)(i[e],"Abstract"),u=(0,L.mX)(i[e],"Title"),p=j(i[e],"NullValue"),d=(0,L.V6)(i[e],"AllowedValues"),m=d?W(d):null,f=F(i[e],"1.1.0"),g=[],h=(0,L.IC)(i[e],"Axis");for(let e=0;e<h.length;e++){const n=h[e].getAttribute("identifier"),i=(0,L.mX)(h[e],"UOM"),a=(0,L.mX)(h[e],"DataType"),r=(0,L.Dy)(h[e],"Key");t&&!n.toLowerCase().includes("band")||(o=r,s=p),g.push({identifier:n,uom:i,dataType:a,values:r,bandNoDataValues:s})}n.push({identifier:a,description:r,definition:l,abstract:c,title:u,supportedInterpolations:f,axis:g,nullValues:p,statistics:m})}return{rangeSet:n,bandNames:o,bandNoDataValues:s,statistics:n[0].statistics}}function J(e,t){if(!t.temporalDomain)return null;const n=e.filter((e=>!e.identifier.toLowerCase().includes("field_1")&&!e.axis.some((e=>e.identifier.includes("band"))))),i=[];if(n.length&&n.forEach((e=>{const t=e.axis.map((e=>{const t=e.values.map((t=>"ISO8601"===e.uom?(t=t.trim()).toLowerCase().includes("z")?new Date(t).getTime():new Date(t+"Z").getTime():parseFloat(t.trim()))),n=[Math.min.apply(null,t),Math.max.apply(null,t)];return{name:e.identifier.trim(),description:"",field:e.identifier.trim(),unit:e.uom?e.uom.trim():"",hasRegularIntervals:!1,values:t,extent:n}}));i.push({name:e.identifier.trim(),description:e.description?.trim()??"",unit:"",dimensions:t,statistics:e.statistics})})),t.temporalDomain){const{begin:e,end:n,values:s,units:o,resolution:a}=t.temporalDomain;i.some((e=>e.dimensions.some((e=>"stdtime"===e.name.toLowerCase()))))||i.forEach((t=>{t.dimensions.push({name:"StdTime",description:"",unit:"ISO8601",values:s?.map((e=>e.getTime())),hasRegularIntervals:!s,interval:a,intervalUnit:o,extent:[e.getTime(),n.getTime()]})}))}if(i.length){const e={variables:i};return _(e),e}return null}function K(e){const t=(0,L.V6)(e,"SpatialDomain"),n=(0,L.V6)(t,"GridCRS"),i=(0,L.mX)(n,"GridBaseCRS"),s=(0,L.mX)(n,"GridOrigin"),o=s?.split(" ").map((e=>parseFloat(e)))??[0,0],a=(0,L.pN)(n,"GridOffsets"),r=(0,L.IC)(t,"BoundingBox");let l,c,u,p;for(let e=0;e<r.length;e++){const t=r[e].getAttribute("crs")?.toLowerCase();if(null!=t)if(t.includes("imagecrs")){const t=(0,L.pN)(r[e],"LowerCorner"),n=(0,L.pN)(r[e],"UpperCorner");l=n[0]-t[0]+1,c=n[1]-t[1]+1}else if(t.indexOf("epsg")>0){const n=t.split(":");u=parseInt(n[n.length-1],10);const i=(0,L.pN)(r[e],"LowerCorner"),s=(0,L.pN)(r[e],"UpperCorner");p=new D.A({xmin:i[0],ymin:i[1],xmax:s[0],ymax:s[1],spatialReference:{wkid:u}})}}const d=l>c,m=p.xmax-p.xmin>p.ymax-p.ymin;let f=!1;(0,A.m)(u)&&(d===m?f=!1:(f=!0,p=new D.A({xmin:p.ymin,ymin:p.xmin,xmax:p.ymax,ymax:p.xmax,spatialReference:{wkid:u}})));const g={columns:l,rows:c,origin:{x:o[0],y:o[1]},offset:{x:a[0],y:a[a.length-1]},gridBaseCRS:i,envelope:p,useEPSGAxis:f},h=(0,L.V6)(e,"temporalDomain")||(0,L.V6)(e,"TemporalDomain");return{spatialDomain:g,temporalDomain:h?z(h):null}}function ee(e){const t=(0,L.V6)(e,"Envelope")||(0,L.V6)(e,"EnvelopeWithTimePeriod"),n=t.getAttribute("srsName"),i=n.slice(n.lastIndexOf("/")+1),s=t.getAttribute("axisLabels").split(" ").map((e=>e.trim())).filter((e=>""!==e.trim())),o=(0,L.pN)(t,"lowerCorner"),a=(0,L.pN)(t,"upperCorner"),r=!["y","lat","latitude","north","nor","n","b"].includes(s[0].toLowerCase());let l;const c=parseInt(i,10),u=isNaN(c)?null:{wkid:c};l=new D.A(r?{xmin:o[0],ymin:o[1],xmax:a[0],ymax:a[1],spatialReference:u}:{xmin:o[1],ymin:o[0],xmax:a[1],ymax:a[0],spatialReference:u});const p={mins:o,maxs:a},d=t.getAttribute("uomLabels").trim().split(" ");let m,f;if((0,L.g7)(t,"EnvelopeWithTimePeriod")){m=new Date((0,L.mX)(e,"beginPosition")||(0,L.mX)(e,"BeginPosition")),f=new Date((0,L.mX)(e,"endPosition")||(0,L.mX)(e,"EndPosition"));const t=d?.findIndex((e=>"oledatetime"===e?.toLowerCase()));t>-1&&(d[t]="ISO8601")}return{envelope:l,axisLabels:s,uomLabels:d.length?d:null,envelopeAllDims:p,beginPosition:m,endPosition:f,isEastFirst:r}}function te(e,t){const n=[],i=(0,L.IC)(e,"DataRecord"),s=[];let o,a=[];for(let e=0;e<i.length;e++){const r=(0,L.IC)(i[e],"field"),l=[];for(let e=0;e<r.length;e++){const n=r[e].getAttribute("name"),i=(0,L.mX)(r[e],"description")||"",c=(0,L.V6)(r[e],"uom")?.getAttribute("code")||"",u=(0,L.pN)(r[e],"interval"),p=j(r[e],"nilValue")?.[0];t&&!n.toLowerCase().includes("band")||(s.push(n),u?.length&&(o=o||[],o.push({min:u[0],max:u[1],avg:-1,stddev:-1})),a.push(p)),l.push({name:n,description:i,uom:c,allowedValues:u,nilValue:p})}n.push(l)}return a.some((e=>null!=e))||(a=null),{rangeType:n,bandNames:s,bandStats:o,bandNoDataValues:a}}function ne(e){let t=1,n="";const i=.01;return Math.abs(e-1/24)<1/24*i?n="Hours":Math.abs(e-1)<1*i?n="Days":e<1?(t=Math.round(24*e),n="Hours"):e>28-i&&e<31+i||Math.round(e/30)<12?n="Months":e>365-i&&e<366+i&&(n="Years"),{interval:t,intervalUnit:n}}function ie(e,t,n){if(n.axisLabels.length<=2)return null;const i=[];for(let t=0;t<e.length;t++){const n=e[t];for(let e=0;e<n.length;e++)n[e].name.toLowerCase().includes("band")||i.push(n[e])}const s=[];if(i.length){const e=[];for(let i=2;i<n.axisLabels.length;i++){const s=t.uomLabels?.[i]?.trim()??"",o=n.axisLabels[i].toLowerCase().includes("time")||"iso8601"===s.toLowerCase()||"oledatetime"===s.toLowerCase();let a,r;if(o){const e=ne(n.offset[i]);a=e.interval,r=e.intervalUnit}else a=n.offset[i],r=s;const l=[];o?(l.push(ae(t.envelopeAllDims.mins[i])),l.push(ae(t.envelopeAllDims.maxs[i]))):(l.push(t.envelopeAllDims.mins[i]),l.push(t.envelopeAllDims.maxs[i])),e.push({name:n.axisLabels[i].trim(),description:n.axisLabels[i].trim(),unit:o?"ISO8601":s,hasRegularIntervals:!0,extent:l,interval:a,intervalUnit:r})}if(i.forEach((t=>{const{allowedValues:n}=t,i=2===n?.length?[{min:n[0],max:n[1],avg:-1,stddev:-1}]:null;s.push({name:t.name.trim(),description:t.description?.trim()??"",unit:t.uom.trim(),statistics:i,dimensions:[...e]})})),s.length){const e={variables:s};return _(e),e}}return null}function se(e,t){const n=(0,L.V6)(e,"RectifiedGrid"),i=(0,L.pN)(n,"low"),s=(0,L.pN)(n,"high"),o=[];for(let e=0;e<i.length;e++)o.push(s[e]-i[e]+1);const a=(0,L.mX)(n,"axisLabels").split(" "),r=(0,L.pN)(n,"origin/pos"),l=(0,L.IC)(n,"offsetVector"),c=[];for(let e=0;e<l.length;e++){const t=(0,L.pN)(l[e]),n=t.findIndex((e=>0!==e));c[n]=t[n]}let u,p,d,m=!1;return t?.length&&a?.length&&(m=[...t].sort(((e,t)=>e<t?-1:1)).join(",")===[...a].sort(((e,t)=>e<t?-1:1)).join(",")),["y","lat","latitude","north","nor","n","b"].includes((m?a:t)[0].toLowerCase())?(u=o[1],p=o[0],d={y:Math.abs(c[0]),x:Math.abs(c[1])}):(u=o[0],p=o[1],d={x:Math.abs(c[0]),y:Math.abs(c[1])}),{columns:u,rows:p,origin:r,offset:c,resolution:d,gridSamples:o,axisLabels:a,hasSameAxisLabelsAsBoundedBy:m}}function oe(e){const t=(0,L.V6)(e,"EarthObservation");if(!t)return null;const n=(0,L.V6)(t,"phenomenonTime"),i=n?z(n):null,s=(0,L.V6)(t,"phenomenonTime"),o=s?z(s):null,a=(0,L.mX)(t,"featureOfInterest/Footprint/multiExtentOf/MultiSurface/surfaceMembers/Polygon/exterior/LinearRing/posList");let r=null;if(a){const e=a.split(" ").map((e=>e.trim())).filter((e=>null!=e&&""!==e)).map(Number);if(e.length){const t=[];for(let n=0;n<e.length/2;n+=2)t.push(e[n],e[n+1]);r=new $.A({rings:[[t]]})}}return{observation:{phenomenonTime:i,resultTime:o,footprint:r,identifier:(0,L.mX)(e,"metaDataProperty/EarthObservationMetaData/identifier"),acquisitionType:(0,L.mX)(e,"metaDataProperty/EarthObservationMetaData/acquisitionType"),status:(0,L.mX)(e,"metaDataProperty/EarthObservationMetaData/status")}}}function ae(e){return Math.round(24*(e-25569)*3600*1e3)}async function re(e,t){const{coverageIds:n,version:i,customParameters:s,signal:o}=t,r=i.slice(0,3),c="1.0"===r?"coverage":"1.1"===r?"identifiers":"coverageId",u={service:"WCS",request:"DescribeCoverage",version:i,[c]:n.join(","),...s};try{const{data:t}=await(0,T.A)(e,{query:u,responseType:"xml",signal:o});return function(e,t){let n=null;if(n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e,"1.0.0"===t)return(0,L.IC)(n,"CoverageOffering").map((e=>function(e){const t={version:"1.0"};let n,i=[];for(let s=0;s<e.childNodes.length;s++){const o=e.childNodes[s];if(1===o.nodeType)if((0,L.g7)(o,"description"))t.description=(0,L.mX)(o);else if((0,L.g7)(o,"name"))t.name=(0,L.mX)(o);else if((0,L.g7)(o,"label"))t.label=(0,L.mX)(o);else if((0,L.g7)(o,"supportedFormats"))t.supportedFormats=(0,L.Dy)(o,"formats");else if((0,L.g7)(o,"supportedCRSs"))t.supportedCRSs=k(o);else if((0,L.g7)(o,"supportedInterpolations"))t.supportedInterpolations=F(o,"1.0.0");else if((0,L.g7)(o,"lonLatEnvelope"))t.lonLatEnvelope=B(o);else if((0,L.g7)(o,"rangeSet")){const e=Z(o);t.rangeSet=e.rangeSet,i=e.bandNames;const s=e.rangeSet[0].nullValues;s?.length&&(n=q(s))}else(0,L.g7)(o,"domainSet")&&(t.domainSet=H(o))}const s=G(t.supportedInterpolations),{name:o,description:a,label:r,lonLatEnvelope:l,supportedFormats:c}=t,{spatialDomain:u}=t.domainSet,p={x:Math.abs(u.offset.x),y:Math.abs(u.offset.y)},d=Y(t.domainSet),m=new O.A({width:u.columns,height:u.rows,pixelSize:p,pixelType:"unknown",extent:u.envelope,spatialReference:u.envelope.spatialReference,bandCount:i.length||1,noDataValue:n,multidimensionalInfo:d});return{id:o,title:t.name,description:a||r,lonLatEnvelope:l,rasterInfo:m,bandNames:i,supportedFormats:c,supportedInterpolations:s,coverageDescription:t,version:"1.0.0",useEPSGAxis:!1}}(e)));const i=(0,L.IC)(n,"CoverageDescription");return"1.1.0"===t||"1.1.1"===t||"1.1.2"===t?i.map((e=>function(e,t){const n=[],i=[],s={supportedFormats:n,supportedCRSs:i,version:"1.1"};let o,a,r=[];for(let t=0;t<e.childNodes.length;t++){const l=e.childNodes[t];if(1!==l.nodeType)continue;const c=(0,L.vv)(l).toLowerCase();switch(c){case"title":case"abstract":case"identifier":s[c]=(0,L.mX)(l);break;case"supportedformat":{const e=(0,L.mX)(l);n.includes(e)||n.push(e)}break;case"supportedcrs":{const e=(0,L.mX)(l);i.includes(e)||i.push(e)}break;case"range":{const e=Q(l,!!s.domain?.temporalDomain);s.range=e.rangeSet,r=e.bandNames;const{bandNoDataValues:t}=e;t?.length&&(o=q(t)),a=e.statistics}break;case"domain":s.domain=K(l)}}const l=G(s.range[0].supportedInterpolations),{identifier:c,abstract:u,title:p,domain:d,range:m}=s,f={x:Math.abs(d.spatialDomain.offset.x),y:Math.abs(d.spatialDomain.offset.y)},g=J(m,d);g&&(o=m[0].nullValues,1===o?.length&&(o=o[0]));const h=new O.A({width:d.spatialDomain.columns,height:d.spatialDomain.rows,pixelSize:f,pixelType:"unknown",extent:d.spatialDomain.envelope,spatialReference:d.spatialDomain.envelope.spatialReference,bandCount:r.length||1,noDataValue:o,statistics:a,multidimensionalInfo:g});return{id:c,title:s.title,description:u||p,bandNames:r,rasterInfo:h,supportedFormats:n,supportedInterpolations:l,coverageDescription:s,version:t,useEPSGAxis:d.spatialDomain.useEPSGAxis}}(e,t))):i.map((e=>function(e){const t={version:"2.0"};let n,i,s=[];for(let o=0;o<e.childNodes.length;o++){const a=e.childNodes[o];if(1===a.nodeType)if((0,L.g7)(a,"coverageId"))t.coverageId=(0,L.mX)(a);else if((0,L.g7)(a,"ServiceParameters"))t.serviceParameters={supportedFormats:(0,L.Dy)(a,"nativeFormat")};else if((0,L.g7)(a,"boundedBy"))t.boundedBy=ee(a);else if((0,L.g7)(a,"rangeType")){const e=te(a,t.boundedBy?.axisLabels.length>2||t.domainSet?.axisLabels.length>2);t.rangeType=e.rangeType,s=e.bandNames,n=e.bandStats;const{bandNoDataValues:o}=e;o?.length&&(i=q(o))}else if((0,L.g7)(a,"domainSet"))t.domainSet=se(a,t.boundedBy?.axisLabels);else if((0,L.g7)(a,"metadata")){const e=(0,L.V6)(a,"EOMetadata");t.eoMetadata=e?oe(e):null}}const{coverageId:o,boundedBy:a,domainSet:r,rangeType:l,serviceParameters:c}=t,u=ie(l,a,r);return!n&&u&&(n=u?.variables[0].statistics),null!=u&&(i=l[0][0].nilValue),{id:o,title:o,description:o,bandNames:s,rasterInfo:new O.A({width:r.columns,height:r.rows,pixelSize:r.resolution,pixelType:"unknown",extent:a.envelope,spatialReference:a.envelope.spatialReference,bandCount:s.length||1,statistics:n,noDataValue:i,multidimensionalInfo:u}),supportedFormats:c.supportedFormats,coverageDescription:t,version:"2.0.1",useEPSGAxis:!1}}(e)))}(t,i)}catch(e){if(!(0,l.zf)(e))throw new a.A("wcslayer:open","wcs coverage description is not valid or supported");throw e}}var le=n(45617),ce=n(4916);function ue(e){const t=function(e){const t=e.getHeader?.("Content-Type")?.split(";");if(!t)return null;if(!(t[0].trim()??"").startsWith("multipart/"))return null;const n={boundary:"",start:"",type:""};for(let e=1;e<t.length;e++){const i=t[e].indexOf("=");if(i>0){const s=t[e].slice(0,i).trim(),o=t[e].slice(i+1).trim();n[s]=o.startsWith('"')?o.slice(1,-1):o}}return n}(e);return t?{isMultipart:!0,data:t.boundary?pe(e.data,t,0):null}:{isMultipart:!1,data:null}}function pe(e,t,n=0){const i="--"+t.boundary,s=[];for(let e=0;e<i.length;e++)s.push(i.charCodeAt(e));const o=[],a="\n--"+t.boundary+"--";for(let e=0;e<a.length;e++)o.push(a.charCodeAt(e));const r=[10],l=[13,10],c=[],u=s.length,p=new Uint8Array(e,n),d=p.length-u;let m=0,f=0;for(let e=0;e<d;e++){for(f=0;f<u&&p[e+f]===s[f];f++);if(f!==u)continue;let n=!1;if(m){const i=de(p.subarray(m,e),t);c.push(i),n=!!i.isValidImage}if(e+=u-1,p[e+1]===r[0]?e+=1:p[e+1]===l[0]&&p[e+2]===l[1]&&(e+=2),m=e+1,n)break}const g=o.length;for(let e=p.length-g-10;e<p.length-g;e++){for(f=0;f<g&&p[e+f]===o[f];f++);if(f===g){c.push(de(p.subarray(m,e),t));break}}return c}function de(e,t){const n=String.fromCharCode.apply(null,e.subarray(0,Math.min(300,e.length))).split("\n"),i=Math.min(n.length,7),s={contentDisposition:"inline"};let o=0;for(let a=0;a<i;a++)if(n[a].length<4)o=o+n[a].length+1;else if("content"===n[a].slice(0,7).toLowerCase()){o=o+n[a].length+1;const e=n[a].indexOf(":");if(-1===e)continue;const t=n[a].slice(0,e).trim(),i=n[a].slice(e+1).trim();switch(t.toLowerCase()){case"content-type":s.contentType=i;break;case"content-description":s.contentDescription=i;break;case"content-transfer-encoding":s.contentTransferEncoding=i;break;case"content-id":s.contentID=i;break;case"content-disposition":s.contentDisposition=i;break;case"content-location":s.contentLocation=i}}else{if(s.contentDisposition.toLowerCase().includes("inline")&&n[a].length>=4&&s.contentType?.toLowerCase().indexOf("image")>-1){let t=!0,n=e.subarray(o,e.length);if(s.contentType.toLowerCase().indexOf("tif")>0){if("base64"===s.contentTransferEncoding){let e="";const t=n;for(let n=0;n<t.length;n+=65535){const i=t.subarray(n,n+65535>t.length-1?t.length-1:n+65535);e+=String.fromCharCode.apply(null,i)}const i=atob(e);n=new Uint8Array(i.length);for(let e=0;e<n.length;e++)n[e]=i.charCodeAt(e)}t=73===n[0]&&73===n[1]||77===n[0]&&77===n[1]}if(t){let t=n.buffer;"base64"!==s.contentTransferEncoding&&(t=new ArrayBuffer(e.length-o),n=new Uint8Array(t),n.set(e.subarray(o,e.length))),s.contentData=t,s.isValidImage=!0}break}if((""===t.start||s.contentID===t.start)&&s.contentType){if(s.contentType.includes("text")||s.contentType.includes("xml")){s.contentData=String.fromCharCode.apply(null,e.subarray(o,e.length));break}s.contentData=e.subarray(o,e.length)}}return s}var me=n(51244),fe=n(28435);const ge=["nearest neighbor","bilinear","bicubic"],he=["nearest","linear","cubic"],ve="response is not a supported multipart/related mediaType with inline tiff, switching to compatibility mode",ye=new Set(["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"]);let be=class extends ce.A{constructor(){super(...arguments),this.datasetFormat="WCSServer",this.tileType="Raster"}get rasterId(){return`${this.url}-${this.coverageId}-${this.version}`}async fetchRawTile(e,t,n,i={}){if(this.isBlockOutside(e,t,n))return null;const{nativePixelSize:s,spatialReference:o}=this.rasterInfo,r=2**e,l=s.x*r,c=s.y*r,{blockWidth:u,blockHeight:p}=this.getBlockWidthHeight(e),{origin:d}=this.rasterInfo.storageInfo.tileInfo,m=this.getTileExtent({x:l,y:c},t,n,d,o,[u,p]),f=this.rasterInfo.extent,g=m.xmax>f.xmax,h=m.ymin<f.ymin,v=g||h;let y=m,b=u,w=p;if(v&&(y=m.clone().intersection(f),null!=y&&(g&&(b=Math.floor((y.xmax-y.xmin)/l),y.xmax=y.xmin+l*b),h&&(w=Math.floor((y.ymax-y.ymin)/c),y.ymin=y.ymax-c*w))),null==y||b<=1||w<=1)return null;const x=await this._getCoverage(y,b,w,r,i);if(!x)return null;const{coverageDescription:C}=this.coverageInfo,{noDataValue:I,multidimensionalInfo:S}=this.rasterInfo,{multidimensionalDefinition:D}=i;let A;if(null!=S&&null!=D&&D.length){const e=D[0].variableName;if("2.0"===C.version){const t=C.rangeType[0].find((t=>t.name===e));A=t?.nilValue}else if("1.1"===C.version){const t=C.range.find((t=>t.identifier===e));A=t?.nullValues}}const T=A??I,L=await this.decodePixelBlock(x,{width:b,height:w,planes:null,pixelType:null,tiffNoDataValue:Array.isArray(T)?T[0]:T,matchAllNoData:!0});if(null==L)return null;if(L&&(L.width!==b||L.height!==w))throw new a.A("wcsraster-fetch",`the response has unexpected dimension width: ${L.width}, height: {pixelBlock.height}`);return v?(0,fe.$Q)(L,{x:0,y:0},{width:p,height:p}):L}async _open(e){const{customFetchParameters:t}=this.ioConfig,n=e?.signal,i=await async function(e,t){const{version:n,customParameters:i,signal:s}=t??{},o=n?.startsWith("1.0")?"version":"acceptVersions",r={service:"WCS",request:"GetCapabilities",[o]:n,...i};try{let{data:n}=await(0,T.A)(e,{query:r,responseType:"xml",signal:s});return t?.version||function(e){let t=null;t="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;const n=t.documentElement.getAttribute("version"),i=n?.slice(0,3);return null!=i&&i<"2.1"}(n)||(r[o]="2.0.1",({data:n}=await(0,T.A)(e,{query:r,responseType:"xml",signal:s}))),E(n)}catch(e){if(!(0,l.zf)(e))throw new a.A("wcslayer:open","wcs capabilities is not valid or supported");throw e}}(this.url,{version:t?.version??this.version,customParameters:t,signal:n});if(this.capabilities=i,!this.version){let e=i.version.slice(0,3);"2.0"===e||"1.1"===e||"1.0"===e?this.version=i.version:(e=i.supportedVersions.find((e=>"2.0.1"===e))||i.supportedVersions.find((e=>"2.0"===e.slice(0,3)))||i.supportedVersions.find((e=>"1.1"===e.slice(0,3)))||i.supportedVersions.find((e=>"1.0"===e.slice(0,3)))||"1.0.0",this.version=e)}const{version:s}=this;if(!ye.has(s))throw new a.A("wcsraster-open",`unsupported WCS version ${s}`);const{gridCoverages:o}=i;if(!o.length)throw new a.A("wcsraster-open","cannot find rectified grid coverages");this.coverageId??=o[0].id;const{coverageId:r}=this,c=o.find((e=>e.id===r));if(null==c)throw new a.A("wcsraster-open",`the coverageId ${r} does not exist in capabilities`);const u=await re(this.url,{coverageIds:[r],version:s,customParameters:t,signal:n});if(this.coverageInfo=u[0],"2.0"===s.slice(0,3)){const{coverageInfo:e}=this;e.lonLatEnvelope=c.lonLatEnvelope,e.supportedInterpolations=G(i.supportedInterpolations),this._patchDimensionValues201(r,n)}this.datasetName=this.coverageInfo.title;const{rasterInfo:p}=this.coverageInfo;if(this.createRemoteDatasetStorageInfo(p,512,512),this._set("rasterInfo",p),null==p.spatialReference)throw new a.A("wcsraster-open",`coverage without spatial reference is not supported: ${r}`);const{pixelType:d,bandCount:m}=await this._getPixelTypeAndBandCount(n);p.pixelType=d,1===p.bandCount&&m>1&&(p.bandCount=m),this.updateTileInfo()}async _patchDimensionValues201(e,t){const{coverageInfo:n}=this,i=n.rasterInfo.multidimensionalInfo?.variables,s=ye.has("1.1.2")?"1.1.2":ye.has("1.1.1")?"1.1.1":ye.has("1.1.0")?"1.1.0":null,{customFetchParameters:o}=this.ioConfig;if(i&&s)try{const n=this.url.includes("/ImageServer/"),a=e.length>8&&e.startsWith("Coverage")&&n?e.slice(8):e,r=await re(this.url,{coverageIds:[a??e],version:s,customParameters:o,signal:t}).catch((()=>{if(a)return re(this.url,{coverageIds:[e],version:s,customParameters:o,signal:t})})),l=r?.[0].rasterInfo.multidimensionalInfo?.variables;if(l)for(const e of i){const t=l.find((({name:t})=>t===e.name));if(t?.dimensions?.length)for(let i=e.dimensions.length-1;i>=0;i--){const s=e.dimensions[i],o=t.dimensions.find((({name:e})=>e===s.name));o?o.values&&o.extent?.join(",")===s.extent?.join(",")&&(e.dimensions[i]={...s,values:o.values}):n&&e.dimensions.splice(i,1)}}}catch{}}async _getPixelTypeAndBandCount(e){const{pixelSize:t,extent:n,multidimensionalInfo:i}=this.rasterInfo,s=n.center,o=new D.A({xmin:s.x-t.x,xmax:s.x+t.x,ymin:s.y-t.y,ymax:s.y+t.y,spatialReference:n.spatialReference});let r=[];if(null!=i){const e=i.variables[0];r=[],e.dimensions.forEach((t=>{r.push(new le.A({variableName:e.name,dimensionName:t.name,values:t.hasRegularIntervals?t.extent?.[0]:t.values?.[0],isSlice:!0}))}))}const{coverageDescription:l}=this.coverageInfo,c={interpolation:"nearest",multidimensionalDefinition:r,signal:e},{version:u}=l,{ioConfig:d}=this,m="2.0"===u&&null==d.allowAnyMediaType||"1.1"===u&&null==d.use2GridOffsets;let f;try{f=await this._getCoverage(o,2,2,1,c,!0)}catch(e){if(!m)throw e;if("1.1"===u){if(!e.details?.isResolutionMismatch)throw e;d.use2GridOffsets=!0}}if(!f&&m&&("2.0"===u&&(d.allowAnyMediaType=!0),f=await this._getCoverage(o,2,2,1,c),f&&p.A.getLogger(this).warn("wcsraster:getcoverage",ve)),!f)throw new a.A("wcsraster-open","unable to determine pixel type");const g=await this.decodePixelBlock(f,{width:2,height:2,planes:null,pixelType:null});if(null==g)throw new a.A("wcsraster-open","unable to determine pixel type");return{pixelType:g.pixelType,bandCount:g.getPlaneCount()??0}}async _getCoverage(e,t,n,i,s,o=!1){const{coverageDescription:r}=this.coverageInfo,{version:l}=r,c="2.0"===l?this._getCoverage201Parameters(e,t,n,i,s,r):"1.1"===l?this._getCoverage110Parameters(e,t,n,s,r):this._getCoverage100Parameters(e,t,n,s),u="2.0"===l?await this.request(this._constructWCS201Url(c),{signal:s.signal,responseType:"array-buffer"}):await this.request(this.url,{query:c,signal:s.signal,responseType:"array-buffer"});if("1.0"===l)return u.data;if("2.0"===l&&!1!==this.ioConfig.allowAnyMediaType&&"tiff"===(0,me.g)(u.data))return o&&(this.ioConfig.allowAnyMediaType=!0,p.A.getLogger(this).warn("wcsraster:getcoverage",ve)),u.data;const d=ue(u);if(d.isMultipart&&d.data){const e=d.data.find((e=>e.isValidImage));return o&&"base64"===e?.contentTransferEncoding&&p.A.getLogger(this).warn("wcsraster:getcoverage","response is base64 encoded which may impact layer display performance"),e?.contentData}const m=new Uint8Array(u.data,0,Math.min(u.data.byteLength,2e3)),f=String.fromCharCode.apply(null,m).toLowerCase().includes("exception"),g=f&&String.fromCharCode.apply(null,m).includes("A non-zero RESX/RESY or WIDTH/HEIGHT is required but neither was provided");if(f)throw new a.A("wcsraster:getcoverage","server returns an exception",{isResolutionMismatch:g});throw new a.A("wcsraster:getcoverage","response is not a supported multipart mediaType with inline tiff")}_getInterpolationIndex(e){return e&&this.coverageInfo.supportedInterpolations?.includes(e)?"nearest"===e?0:"bilinear"===e?1:"cubic"===e?2:0:0}_getCoverage100Parameters(e,t,n,i){const s=`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`,o=e.spatialReference.wkid,a=(this.coverageInfo.supportedFormats||[]).find((e=>e.toLowerCase().includes("tiff")))||"GEOTIFF",{bandIds:r,interpolation:l}=i,c=this._getInterpolationIndex(l),u=r?r.map((e=>this.coverageInfo.bandNames[e])):null,p=ge[c],{multidimensionalDefinition:d}=i;let m;if(null!=d&&null!=this.rasterInfo.multidimensionalInfo){const e=d.find((e=>"StdTime"===e.dimensionName));let t=e?.values;t&&t.length>0&&(Array.isArray(t[0])&&(t=t[0]),m=t.map((e=>we(e))).join(","))}return{service:"WCS",request:"GetCoverage",version:this.version,coverage:this.coverageId,format:a,crs:`EPSG:${o}`,bbox:s,width:t,height:n,time:m,interpolation:p,band:u?.join(",")}}_getCoverage110Parameters(e,t,n,i,s){const{multidimensionalDefinition:o,bandIds:a,interpolation:r}=i,l=e.spatialReference.wkid,c=`urn:ogc:def:crs:EPSG::${l}`,u=(this.coverageInfo.supportedFormats||[]).find((e=>e.toLowerCase().includes("tiff")))||"image/tiff",p=this._getInterpolationIndex(r),d=he[p],m=null==r||0===this.coverageInfo.supportedInterpolations?.indexOf(r),f=s.domain.spatialDomain,g=f.origin.x<=f.envelope.xmin&&f.origin.y<=f.envelope.ymin,h=e.width/t,v=e.height/n*(g?1:-1),y=g?[e.xmin,e.ymin]:[e.xmin,e.ymax],b=f.useEPSGAxis&&(0,A.m)(l),w=b?`${y[1]},${y[0]}`:`${y[0]},${y[1]}`,x=this.ioConfig.use2GridOffsets,C=b?x?`${v},${h}`:`${v},0,0,${h}`:x?`${h},${v}`:`${h},0,0,${v}`,I=h/2,S=e.xmin+I,D=e.xmax-I,T=Math.abs(v)/2,L=e.ymin+T,V=e.ymax-T,M=b?`${L},${S},${V},${D},${c}`:`${S},${L},${D},${V},${c}`,N=s.range.find((e=>e.axis.some((e=>e.identifier.toLowerCase().includes("band")))));let R,P=N&&d&&a?m?`${N.identifier}[${N.axis[0].identifier}[${a.join(",")}]]`:`${N.identifier}:${d}[${N.axis[0].identifier}[${a.join(",")}]]`:null;if(null!=o&&o.length)for(let e=0;e<o.length;e++){let t=o[e].values;const n=o[e].dimensionName?.toLowerCase(),i=o[e].variableName?.toLowerCase(),a=s.range.find((e=>e.identifier.toLowerCase()===i));if(t.length>0)if(Array.isArray(t[0])&&(t=t[0]),"stdtime"===n)R=t.map((e=>we(e))).join(",");else if(a){const e=a.axis.find((e=>e.identifier.toLowerCase()===n));e&&(P=m?a.identifier+"["+e.identifier+"["+t.join(",")+"]]":a.identifier+":"+d+"["+e.identifier+"["+t.join(",")+"]]")}e===o.length-1&&a&&!P&&(P=m?a.identifier:a.identifier+":"+d)}return{service:"WCS",request:"GetCoverage",version:this.version,identifier:this.coverageId,format:u,crs:`EPSG:${l}`,boundingbox:M,gridCS:"urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS",gridType:"urn:ogc:def:method:WCS:1.1:2dGridIn2dCrs",gridOrigin:w,gridOffsets:C,gridBaseCRS:c,timeSequence:R,rangeSubset:P}}_getCoverage201Parameters(e,t,n,i,s,o){const{multidimensionalDefinition:a,interpolation:r}=s,l=this._getInterpolationIndex(r);let c=null;const{supportedInterpolations:u}=this.capabilities;if(u?.length)switch(l){case 0:c=u.find((e=>e.toLowerCase().includes("nearest")));break;case 1:c=u.find((e=>e.toLowerCase().includes("linear")));break;case 2:c=u.find((e=>e.toLowerCase().includes("cubic")||e.toLowerCase().includes("quadratic")))}const p=(this.coverageInfo.supportedFormats||[]).find((e=>e.toLowerCase().includes("tiff")))||"image/tiff",{bandNames:d}=this.coverageInfo,{boundedBy:m,domainSet:f,rangeType:g}=o,h=m.isEastFirst?0:1,v=1-h,{axisLabels:y}=m,b=y[h],w=y[v],x=`http://www.opengis.net/def/crs/EPSG/0/${e.spatialReference.wkid}`,C=x,I=[];I.push(`${b}(${e.xmin},${e.xmax})`),I.push(`${w}(${e.ymin},${e.ymax})`);const S=[];if(y.length>2)for(let e=2;e<y.length;e++){const t=f.origin[e];if(y[e].toLowerCase().includes("time")){let n=t.toString();m.uomLabels?.[e].toLowerCase().includes("ole")&&(S.push(y[e]),n=we(t,!0)),I.push(y[e]+",http://www.opengis.net("+n+")")}else I.push(y[e]+",http://www.opengis.net("+t+")")}let D=null;if(null!=a&&a.length){const e=[];g.forEach((t=>t.forEach((t=>e.push(t.name)))));const t=[];for(let n=0;n<a.length;n++){const i=y.find((e=>e===a[n].dimensionName)),s=e.find((e=>e===a[n].variableName));if(t.includes(s)||t.push(s),i){let e=a[n].values;if(e.length>0){Array.isArray(e[0])&&(e=e[0]);let t="";t=i.toLowerCase().includes("time")?e.map((e=>we(e))).join(","):e.join(",");const n=I.findIndex((e=>0===e.indexOf(i+",http://www.opengis.net")));-1===n&&I.push(i+",http://www.opengis.net("+t+")"),-1===n||I[n].includes("("+t+")")||I.splice(n,1,i+",http://www.opengis.net("+t+")")}}}t.length&&(D=t.join(","))}else d?.length>=2&&(D=(s.bandIds?s.bandIds.map((e=>d[e])):d).join(","));const A=I.join("&subset="),T=!o.domainSet.hasSameAxisLabelsAsBoundedBy&&!1!==this.ioConfig.allowScaleFactor,L=T?null:`${b}(${t}),${w}(${n})`,V=T?1/i:null;return{service:"WCS",request:"GetCoverage",version:this.version,coverageId:this.coverageId,rangesubset:D,interpolation:c,scaleSize:L,scaleFactor:V,subset:A,format:p,mediaType:this.ioConfig.allowAnyMediaType?null:"multipart/related",outputcrs:x,subsettingcrs:C}}_constructWCS201Url(e){const t={...this.ioConfig.customFetchParameters,...e},n=[];return Object.keys(t).forEach((e=>{const i=t[e];null!=i&&("subset"===e?"string"==typeof i&&i.split("&subset=").forEach((e=>{e&&n.push(`subset=${encodeURIComponent(e)}`)})):n.push(`${e}=${encodeURIComponent(i)}`))})),`${encodeURI(this.url)}?${n.join("&")}`}};function we(e,t=!1){return(t?new Date(ae(e)):new Date(e)).toISOString()}(0,i._)([(0,u.MZ)({type:String,json:{write:!0}})],be.prototype,"datasetFormat",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],be.prototype,"tileType",void 0),(0,i._)([(0,u.MZ)({type:String,json:{write:!0}})],be.prototype,"version",void 0),(0,i._)([(0,u.MZ)({type:String,json:{write:!0}})],be.prototype,"coverageId",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],be.prototype,"rasterId",null),be=(0,i._)([(0,d.$)("esri.layers.support.rasterDatasets.WCSRaster")],be);const xe=be;var Ce=n(30291),Ie=n(92935);const Se=new Set(["milliseconds","seconds","minutes","hours","days","weeks","months","years","decades","centuries"]);let De=class extends((0,f.dM)((0,w.j)((0,v.q)((0,y.A)((0,g.d)((0,h.o)((0,x.e)((0,b.J)((0,r.P)(o.A.ClonableMixin(m.A))))))))))){constructor(...e){super(...e),this.coverageId=null,this.version=null,this.isReference=null,this.legendEnabled=!0,this.noData=0,this.operationalLayerType="WCS",this.type="wcs",this.popupEnabled=!0,this.popupTemplate=null,this.fields=null,this._debouncedSaveOperations=(0,l.sg)((async(e,t,i)=>{const{save:s,saveAs:o}=await n.e(9838).then(n.bind(n,59838));switch(e){case Ie.X.SAVE:return s(this,t);case Ie.X.SAVE_AS:return o(this,i,t)}}))}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["WCS"]},e).catch(l.QP).then((()=>this._openRaster(t)))),Promise.resolve(this)}get coverageInfo(){return this.raster.coverageInfo}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){return[(0,S.rZ)("Pixel Value")]}createPopupTemplate(e){return(0,Ce.tn)({fields:this.rasterFields,title:this.title},e)}async save(e){return this._debouncedSaveOperations(Ie.X.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(Ie.X.SAVE_AS,t,e)}async _openRaster(e){const t=new xe({url:this.url,version:this.version,coverageId:this.coverageId,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters}});if(await t.open({signal:e}),!t.rasterInfo)throw t.destroy(),new a.A("wcs-layer:load","cannot load resources on "+this.url);const{rasterInfo:n}=t;null==n.noDataValue&&(n.noDataValue=this.noData),this._set("serviceRasterInfo",n),this._set("spatialReference",n.spatialReference),null==this.title&&this.setAtOrigin("title",t.datasetName,"service"),null==this.coverageId&&this.setAtOrigin("coverageId",t.coverageInfo.id,"service"),null==this.version&&t.version&&this.setAtOrigin("version",t.version,"service"),this.setAtOrigin("tileInfo",t.rasterInfo.storageInfo.tileInfo,"service");const{multidimensionalInfo:i}=n;if(null!=i){const e=i.variables[0].dimensions.find((({name:e})=>"StdTime"===e));if(e){let t=e.extent?.[0]??e.values[0];Array.isArray(t)&&(t=t[0]);let n=e.extent?.[1]??e.values[e.values.length-1];Array.isArray(n)&&(n=n[1]);const i=Se.has(e.intervalUnit?.toLowerCase())?e.intervalUnit?.toLowerCase():null;this.set("timeInfo",{startField:"StdTime",fullTimeExtent:{start:t,end:n},timeZone:null,interval:i?{value:e.interval,unit:i}:null})}}this.raster=t,this._configDefaultSettings(),this.addHandles((0,c.wB)((()=>this.customParameters),(e=>this.raster.ioConfig.customFetchParameters=e)))}};(0,i._)([(0,u.MZ)({type:String,nonNullable:!0,json:{name:"wcsInfo.coverageId",write:{isRequired:!0,ignoreOrigin:!0}}})],De.prototype,"coverageId",void 0),(0,i._)([(0,u.MZ)()],De.prototype,"coverageInfo",null),(0,i._)([(0,u.MZ)({type:["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"],nonNullable:!0,json:{name:"wcsInfo.version",write:{isRequired:!0,ignoreOrigin:!0}}})],De.prototype,"version",void 0),(0,i._)([(0,u.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],De.prototype,"isReference",void 0),(0,i._)([(0,u.MZ)({json:{read:!0,write:!0}})],De.prototype,"blendMode",void 0),(0,i._)([(0,u.MZ)(C.fV)],De.prototype,"legendEnabled",void 0),(0,i._)([(0,u.MZ)({type:["show","hide"]})],De.prototype,"listMode",void 0),(0,i._)([(0,u.MZ)()],De.prototype,"noData",void 0),(0,i._)([(0,u.MZ)({type:["WCS"]})],De.prototype,"operationalLayerType",void 0),(0,i._)([(0,u.MZ)()],De.prototype,"raster",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],De.prototype,"type",void 0),(0,i._)([(0,u.MZ)(C.M6)],De.prototype,"popupEnabled",void 0),(0,i._)([(0,u.MZ)({type:s.A,json:{name:"popupInfo",write:!0}})],De.prototype,"popupTemplate",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],De.prototype,"defaultPopupTemplate",null),(0,i._)([(0,u.MZ)({readOnly:!0,type:[I.A]})],De.prototype,"fields",void 0),(0,i._)([(0,u.MZ)({readOnly:!0,type:[I.A]})],De.prototype,"rasterFields",null),De=(0,i._)([(0,d.$)("esri.layers.WCSLayer")],De);const Ae=De},38458:(e,t,n)=>{n.d(t,{m:()=>s});const i=[[3819,3819],[3821,3824],[3889,3889],[3906,3906],[4001,4025],[4027,4036],[4039,4047],[4052,4055],[4074,4075],[4080,4081],[4120,4176],[4178,4185],[4188,4216],[4218,4289],[4291,4304],[4306,4319],[4322,4326],[4463,4463],[4470,4470],[4475,4475],[4483,4483],[4490,4490],[4555,4558],[4600,4646],[4657,4765],[4801,4811],[4813,4821],[4823,4824],[4901,4904],[5013,5013],[5132,5132],[5228,5229],[5233,5233],[5246,5246],[5252,5252],[5264,5264],[5324,5340],[5354,5354],[5360,5360],[5365,5365],[5370,5373],[5381,5381],[5393,5393],[5451,5451],[5464,5464],[5467,5467],[5489,5489],[5524,5524],[5527,5527],[5546,5546],[2044,2045],[2081,2083],[2085,2086],[2093,2093],[2096,2098],[2105,2132],[2169,2170],[2176,2180],[2193,2193],[2200,2200],[2206,2212],[2319,2319],[2320,2462],[2523,2549],[2551,2735],[2738,2758],[2935,2941],[2953,2953],[3006,3030],[3034,3035],[3038,3051],[3058,3059],[3068,3068],[3114,3118],[3126,3138],[3150,3151],[3300,3301],[3328,3335],[3346,3346],[3350,3352],[3366,3366],[3389,3390],[3416,3417],[3833,3841],[3844,3850],[3854,3854],[3873,3885],[3907,3910],[4026,4026],[4037,4038],[4417,4417],[4434,4434],[4491,4554],[4839,4839],[5048,5048],[5105,5130],[5253,5259],[5269,5275],[5343,5349],[5479,5482],[5518,5519],[5520,5520],[20004,20032],[20064,20092],[21413,21423],[21473,21483],[21896,21899],[22171,22177],[22181,22187],[22191,22197],[25884,25884],[27205,27232],[27391,27398],[27492,27492],[28402,28432],[28462,28492],[30161,30179],[30800,30800],[31251,31259],[31275,31279],[31281,31290],[31466,31700]];function s(e){return null!=e&&i.some((([t,n])=>e>=t&&e<=n))}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4934],{13069:(e,t,r)=>{r.d(t,{AG:()=>a,lk:()=>i,vD:()=>n,yS:()=>o});const s="randomUUID"in crypto;function i(){if(s)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function o(){return`{${i().toUpperCase()}}`}function n(){return`{${i()}}`}function a(e){const t=e.toUpperCase();return"{"!==e[0]?`{${t}}`:t}},83960:(e,t,r)=>{r.d(t,{X_:()=>n,oW:()=>l,zx:()=>a});var s=r(34727),i=r(83047);const o=96;function n(e,t){const r=t||e.extent,s=e.width,n=(0,i.GA)(r?.spatialReference);return r&&s?r.width/s*n*i.dy*o:0}function a(e,t,r){return function(e,t){return 0===t||(0,s.Sp)(e,t)||e<t}(e,t)&&function(e,t){return 0===t||(0,s.Sp)(e,t)||e>t}(e,r)}function l(e,t){return(0,s.Sp)(e,t)?0:(e||Number.POSITIVE_INFINITY)>(t||Number.POSITIVE_INFINITY)?1:-1}},87152:(e,t,r)=>{r.r(t),r.d(t,{default:()=>L});var s=r(90237),i=r(13874),o=r(92071),n=r(10107),a=(r(44208),r(53966),r(87811),r(40608)),l=r(5443),p=r(16930),u=r(50498),d=r(4146),c=r(49186),y=r(92474),m=r(799),h=r(75321),f=r(4071),g=r(22671);let v=class extends y.A{constructor(){super(...arguments),this.featureDefinition=null,this.type="ogc-feature"}load(e){return this.addResolvingPromise(this._loadOGCServices(this.layer,e)),this.when()}getSource(){const{featureDefinition:{collection:e,layerDefinition:t,spatialReference:r,supportedCrs:s},layer:{apiKey:i,customParameters:o,effectiveMaxRecordCount:n}}=this;return{type:"ogc-source",collection:e,layerDefinition:t,maxRecordCount:n,queryParameters:{apiKey:i,customParameters:o},spatialReference:r,supportedCrs:s}}queryExtent(e,t={}){return null}queryFeatureCount(e,t={}){return null}queryFeatures(e,t={}){return this.queryFeaturesJSON(e,t).then((e=>g.A.fromJSON(e)))}queryFeaturesJSON(e,t={}){const r=this.getSource();return this.load(t).then((()=>(0,h.bW)(r,e,t)))}queryObjectIds(e,t={}){return null}serviceSupportsSpatialReference(e){return!(!e.isWGS84&&!e.isWebMercator&&!this.featureDefinition.supportedCrs[e.wkid])}_conformsToType(e,t){const r=new RegExp(`^${(0,m.Cj)(t)}$`,"i");return e.conformsTo.some((e=>r.test(e)))??!1}_getCapabilities(e,t){return{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:e},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!1,supportsQueryBins:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1,supportsAsyncConvert3D:!1},query:{maxRecordCount:t,maxRecordCountFactor:void 0,standardMaxRecordCount:void 0,supportsCacheHint:!1,supportsCentroid:!1,supportsCurrentUser:!1,supportsDisjointSpatialRelationship:!1,supportsDistance:!1,supportsDistinct:!1,supportsExtent:!1,supportsFormatPBF:!1,supportsGeometryProperties:!1,supportsHavingClause:!1,supportsHistoricMoment:!1,supportsMaxRecordCountFactor:!1,supportsOrderBy:!1,supportsPagination:!1,supportsPercentileStatistics:!1,supportsQuantization:!1,supportsQuantizationEditMode:!1,supportsQueryByAnonymous:!1,supportsQueryByOthers:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsReturnMesh:!1,supportsStandardizedQueriesOnly:!1,supportsTopFeaturesQuery:!1,supportsStatistics:!1,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1},supportsDefaultSpatialReference:!1,supportsFullTextSearch:!1,supportsCompactGeometry:!1,supportsSqlExpression:!1,supportsTrueCurve:!1,tileMaxRecordCount:void 0},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:f.$,editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUploadWithItemId:!1,supportsUpdateWithoutM:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}_getMaxRecordCount(e){const t=e?.components?.parameters;return t?.limit?.schema?.maximum??t?.limitFeatures?.schema?.maximum}_getStorageSpatialReference(e){const t=e.storageCrs??h.QE,r=(0,h.J0)(t);return null==r?p.A.WGS84:new p.A({wkid:r})}_getSupportedSpatialReferences(e,t){const r="#/crs",s=e.crs??[h.QE],i=s.includes(r)?s.filter((e=>e!==r)).concat(t.crs??[]):s,o=/^http:\/\/www\.opengis.net\/def\/crs\/epsg\/.*\/3785$/i;return i.filter((e=>!o.test(e)))}async _loadOGCServices(e,t){const r=null!=t?t.signal:null,{apiKey:s,collectionId:i,customParameters:o,fields:n,geometryType:a,hasZ:l,objectIdField:p,timeInfo:d,url:y}=e,f={fields:n?.map((e=>e.toJSON())),geometryType:u.Ye.toJSON(a),hasZ:l??!1,objectIdField:p,timeInfo:d?.toJSON()},g={apiKey:s,customParameters:o,signal:r},v=await(0,h.Ki)(y,g),[w,_]=await Promise.all([(0,h.Px)(v,g),(0,h.bV)(v,g)]);if(!this._conformsToType(w,"http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/geojson"))throw new c.A("ogc-feature-layer:no-geojson-support","Server does not support geojson");const M=_.collections.find((({id:e})=>e===i));if(!M)throw new c.A("ogc-feature-layer:collection-not-found","Server does not contain the named collection");const x=this._conformsToType(w,"http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/oas30")?await(0,h.GA)(v,g):null,T=await(0,h.GL)(M,f,g),S=this._getMaxRecordCount(x),F=this._getCapabilities(T.hasZ,S),I=this._getStorageSpatialReference(M).toJSON(),A=this._getSupportedSpatialReferences(M,_),b=new RegExp(`^${(0,m.Cj)(h.vJ)}`,"i"),Z={};for(const e of A){const t=(0,h.J0)(e);null!=t&&(Z[t]||(Z[t]=e.replace(b,"")))}this.featureDefinition={capabilities:F,collection:M,layerDefinition:T,spatialReference:I,supportedCrs:Z}}};(0,s._)([(0,n.MZ)()],v.prototype,"featureDefinition",void 0),(0,s._)([(0,n.MZ)({constructOnly:!0})],v.prototype,"layer",void 0),(0,s._)([(0,n.MZ)()],v.prototype,"type",void 0),v=(0,s._)([(0,a.$)("esri.layers.graphics.sources.OGCFeatureSource")],v);var w=r(52136),_=r(63074),M=r(69208),x=r(6455),T=r(87718),S=r(76294),F=r(16131),I=r(32756),A=r(8303),b=r(54310),Z=r(25036),R=r(82935),C=r(68109),j=r(10873),O=r(33143),P=r(20437),E=r(17036),D=r(30524),U=r(46499),N=r(39383),B=r(13112),z=r(61956),G=r(30291);const Q=(0,E.p)();let $=class extends((0,x.FJ)((0,w.p)((0,M.d)((0,S.J)((0,T.F)((0,_.dM)((0,I.fY)((0,R.e)((0,C.d)((0,Z.j)((0,F.q)((0,A.A)((0,b.J)((0,o.P)(d.A))))))))))))))){constructor(e){super(e),this.capabilities=null,this.collectionId=null,this.copyright=null,this.description=null,this.displayField=null,this.elevationInfo=null,this.fields=null,this.fieldsIndex=null,this.fullExtent=null,this.geometryType=null,this.hasZ=void 0,this.labelingInfo=null,this.labelsVisible=!0,this.legendEnabled=!0,this.maxRecordCount=null,this.objectIdField=null,this.operationalLayerType="OGCFeatureLayer",this.popupEnabled=!0,this.popupTemplate=null,this.screenSizePerspectiveEnabled=!0,this.source=new v({layer:this}),this.spatialReference=null,this.title=null,this.type="ogc-feature",this.typeIdField=null,this.types=null,this.url=null}destroy(){this.source?.destroy()}load(e){return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["OGCFeatureServer"]},e).then((()=>this._fetchService(e)))),this.when()}get defaultPopupTemplate(){return this.createPopupTemplate()}get effectiveMaxRecordCount(){return this.maxRecordCount??this.capabilities?.query.maxRecordCount??5e3}get isTable(){return this.loaded&&null==this.geometryType}set renderer(e){(0,D.yp)(e,this.fieldsIndex),this._set("renderer",e)}on(e,t){return super.on(e,t)}createPopupTemplate(e){return(0,G.tn)(this,e)}createQuery(){return new z.A}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){let r,s=!1;const i=t?.feature?.attributes,o=this.typeIdField&&i?.[this.typeIdField];return null!=o&&this.types&&(s=this.types.some((t=>t.id==o&&(r=t.domains?.[e],"inherited"===r?.type&&(r=this._getLayerDomain(e)),!0)))),s||r||(r=this._getLayerDomain(e)),r}queryFeatures(e,t){return this.load().then((()=>this.source.queryFeatures(z.A.from(e)||this.createQuery(),t))).then((e=>(e?.features?.forEach((e=>{e.layer=e.sourceLayer=this})),e)))}serviceSupportsSpatialReference(e){return this.source?.serviceSupportsSpatialReference(e)??!1}async _fetchService(e){await this.source.load(e),this.read(this.source.featureDefinition,{origin:"service"}),(0,D.yp)(this.renderer,this.fieldsIndex),(0,D.sv)(this.timeInfo,this.fieldsIndex)}_getLayerDomain(e){if(!this.fields)return null;for(const t of this.fields)if(t.name===e&&t.domain)return t.domain;return null}};(0,s._)([(0,n.MZ)({readOnly:!0,json:{origins:{service:{read:!0}}}})],$.prototype,"capabilities",void 0),(0,s._)([(0,n.MZ)({type:String,json:{write:!0}})],$.prototype,"collectionId",void 0),(0,s._)([(0,n.MZ)({type:String})],$.prototype,"copyright",void 0),(0,s._)([(0,n.MZ)({readOnly:!0})],$.prototype,"defaultPopupTemplate",null),(0,s._)([(0,n.MZ)({readOnly:!0,type:String,json:{origins:{service:{name:"collection.description"}}}})],$.prototype,"description",void 0),(0,s._)([(0,n.MZ)({type:String})],$.prototype,"displayField",void 0),(0,s._)([(0,n.MZ)({type:Number})],$.prototype,"effectiveMaxRecordCount",null),(0,s._)([(0,n.MZ)(j.Yj)],$.prototype,"elevationInfo",void 0),(0,s._)([(0,n.MZ)({type:[P.A],json:{origins:{service:{name:"layerDefinition.fields"}}}})],$.prototype,"fields",void 0),(0,s._)([(0,n.MZ)(Q.fieldsIndex)],$.prototype,"fieldsIndex",void 0),(0,s._)([(0,n.MZ)({readOnly:!0,type:l.A,json:{origins:{service:{name:"layerDefinition.extent"}}}})],$.prototype,"fullExtent",void 0),(0,s._)([(0,n.MZ)({type:u.gy.apiValues,json:{origins:{service:{name:"layerDefinition.geometryType",read:{reader:u.gy.read}}}}})],$.prototype,"geometryType",void 0),(0,s._)([(0,n.MZ)({type:Boolean,json:{origins:{service:{name:"layerDefinition.hasZ"}}}})],$.prototype,"hasZ",void 0),(0,s._)([(0,n.MZ)({type:Boolean,readOnly:!0})],$.prototype,"isTable",null),(0,s._)([(0,n.MZ)({type:[U.A],json:{origins:{"web-document":{name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:N.w},write:!0}}}})],$.prototype,"labelingInfo",void 0),(0,s._)([(0,n.MZ)(j.kF)],$.prototype,"labelsVisible",void 0),(0,s._)([(0,n.MZ)(j.fV)],$.prototype,"legendEnabled",void 0),(0,s._)([(0,n.MZ)({type:Number})],$.prototype,"maxRecordCount",void 0),(0,s._)([(0,n.MZ)({type:String,json:{origins:{service:{name:"layerDefinition.objectIdField"}}}})],$.prototype,"objectIdField",void 0),(0,s._)([(0,n.MZ)({type:["OGCFeatureLayer"]})],$.prototype,"operationalLayerType",void 0),(0,s._)([(0,n.MZ)(j.M6)],$.prototype,"popupEnabled",void 0),(0,s._)([(0,n.MZ)({type:i.A,json:{name:"popupInfo",write:!0}})],$.prototype,"popupTemplate",void 0),(0,s._)([(0,n.MZ)({types:B.Hg,json:{origins:{service:{name:"layerDefinition.drawingInfo.renderer",write:!1},"web-scene":{types:B.XJ,name:"layerDefinition.drawingInfo.renderer",write:!0}},name:"layerDefinition.drawingInfo.renderer",write:!0}})],$.prototype,"renderer",null),(0,s._)([(0,n.MZ)(j.PY)],$.prototype,"screenSizePerspectiveEnabled",void 0),(0,s._)([(0,n.MZ)({readOnly:!0})],$.prototype,"source",void 0),(0,s._)([(0,n.MZ)({readOnly:!0,type:p.A,json:{origins:{service:{read:!0}}}})],$.prototype,"spatialReference",void 0),(0,s._)([(0,n.MZ)({type:String,json:{write:{enabled:!0,ignoreOrigin:!0,isRequired:!0},origins:{service:{name:"collection.title"}}}})],$.prototype,"title",void 0),(0,s._)([(0,n.MZ)({readOnly:!0,json:{read:!1}})],$.prototype,"type",void 0),(0,s._)([(0,n.MZ)({type:String,readOnly:!0})],$.prototype,"typeIdField",void 0),(0,s._)([(0,n.MZ)({type:[O.A]})],$.prototype,"types",void 0),(0,s._)([(0,n.MZ)(j.OZ)],$.prototype,"url",void 0),$=(0,s._)([(0,a.$)("esri.layers.OGCFeatureLayer")],$);const L=$},99352:(e,t,r)=>{r.d(t,{F:()=>s,P:()=>i});const s={supportsStatistics:!0,supportsPercentileStatistics:!0,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1},supportsCentroid:!0,supportsCacheHint:!0,supportsCurrentUser:!1,supportsDistance:!0,supportsDistinct:!0,supportsExtent:!0,supportsGeometryProperties:!1,supportsHavingClause:!0,supportsOrderBy:!0,supportsPagination:!0,supportsQuantization:!0,supportsQuantizationEditMode:!1,supportsQueryGeometry:!0,supportsResultType:!0,supportsReturnMesh:!1,supportsSqlExpression:!0,supportsMaxRecordCountFactor:!1,supportsStandardizedQueriesOnly:!0,supportsTopFeaturesQuery:!1,supportsQueryByAnonymous:!0,supportsQueryByOthers:!0,supportsHistoricMoment:!1,supportsFormatPBF:!1,supportsDisjointSpatialRelationship:!0,supportsDefaultSpatialReference:!1,supportsFullTextSearch:!1,supportsCompactGeometry:!1,maxRecordCountFactor:void 0,maxRecordCount:void 0,standardMaxRecordCount:void 0,tileMaxRecordCount:void 0,supportsTrueCurve:!1},i={supportsDate:!0,supportsFixedInterval:!0,supportsAutoInterval:!0,supportsFixedBoundaries:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsSnapToData:!1,supportsReturnFullIntervalBin:!1,supportsFirstDayOfWeek:!1,supportsNormalization:!0,supportedStatistics:{count:!0,sum:!0,avg:!0,var:!0,stddev:!0,min:!0,max:!0,percentileContinuous:!0,percentileDiscrete:!0,envelope:!0,centroid:!0,convexHull:!0},supportedNormalizationTypes:{field:!0,log:!0,naturalLog:!0,percentOfTotal:!0,squareRoot:!0}}},52136:(e,t,r)=>{r.d(t,{p:()=>n});var s=r(90237),i=r(10107),o=(r(44208),r(53966),r(87811),r(40608));const n=e=>{let t=class extends e{get apiKey(){return this._isOverridden("apiKey")?this._get("apiKey"):"portalItem"in this?this.portalItem?.apiKey:null}set apiKey(e){null!=e?this._override("apiKey",e):(this._clearOverride("apiKey"),this.clear("apiKey","user"))}};return(0,s._)([(0,i.MZ)({type:String})],t.prototype,"apiKey",null),t=(0,s._)([(0,o.$)("esri.layers.mixins.APIKeyMixin")],t),t}},69208:(e,t,r)=>{r.d(t,{d:()=>n});var s=r(90237),i=r(10107),o=(r(44208),r(53966),r(87811),r(40608));const n=e=>{let t=class extends e{constructor(){super(...arguments),this.customParameters=null}};return(0,s._)([(0,i.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],t.prototype,"customParameters",void 0),t=(0,s._)([(0,o.$)("esri.layers.mixins.CustomParametersMixin")],t),t}},6455:(e,t,r)=>{r.d(t,{FJ:()=>_,Dp:()=>M,KV:()=>x});var s=r(90237),i=r(93637),o=r(10107),n=(r(44208),r(53966),r(87811),r(40608)),a=r(89317),l=r(69540),p=r(5503),u=r(25482),d=r(43937),c=r(83960),y=r(13069);const m={write:{overridePolicy:(e,t,r)=>({enabled:!r||"scale"===r.filterMode})}};let h=class extends(l.A.ClonableMixin(u.A)){constructor(e){super(e),this.id=(0,y.lk)(),this.maxScale=0,this.minScale=0,this.title="",this.where=null}};(0,s._)([(0,o.MZ)({type:String,json:{write:!0}})],h.prototype,"id",void 0),(0,s._)([(0,o.MZ)({type:Number,json:m})],h.prototype,"maxScale",void 0),(0,s._)([(0,o.MZ)({type:Number,json:m})],h.prototype,"minScale",void 0),(0,s._)([(0,o.MZ)({type:String,json:{write:!0}})],h.prototype,"title",void 0),(0,s._)([(0,o.MZ)({type:String,json:{write:!0}})],h.prototype,"where",void 0),h=(0,s._)([(0,n.$)("esri.layers.support.DisplayFilter")],h);const f=h;var g=r(41560);let v=class extends(l.A.ClonableMixin(u.A)){constructor(e){super(e),this.activeFilterId=null,this.filters=new(p.A.ofType(f)),this.mode="manual"}writeFilters(e,t,r,s){const i=e.toArray();"scale"===this.mode&&i.sort(((e,t)=>{const r=(0,c.oW)(t.minScale,e.minScale),s=e.maxScale-t.maxScale;return 0===r?s:r})),t[r]=i.map((e=>e.toJSON(s)))}write(e,t){return super.write(e,(0,g.mW)(this,t))}};(0,s._)([(0,o.MZ)({type:String,json:{write:{overridePolicy:(e,t,r)=>({enabled:"manual"===r.filterMode,isRequired:!0})}}})],v.prototype,"activeFilterId",void 0),(0,s._)([(0,o.MZ)({type:p.A.ofType(f),nonNullable:!0,json:{write:!0}})],v.prototype,"filters",void 0),(0,s._)([(0,d.K)("filters")],v.prototype,"writeFilters",null),(0,s._)([(0,o.MZ)({type:["manual","scale"],nonNullable:!0,json:{name:"filterMode",write:!0}})],v.prototype,"mode",void 0),v=(0,s._)([(0,n.$)("esri.layers.support.DisplayFilterInfo")],v);const w=v,_=e=>{let t=class extends e{constructor(){super(...arguments),this.displayFilterEnabled=!0,this.displayFilterInfo=null}};return(0,s._)([(0,o.MZ)(M)],t.prototype,"displayFilterEnabled",void 0),(0,s._)([(0,o.MZ)(x)],t.prototype,"displayFilterInfo",void 0),t=(0,s._)([(0,n.$)("esri.layers.mixins.DisplayFilteredLayer")],t),t},M={type:Boolean,json:{name:"layerDefinition.disableDisplayFilter",read:{reader:e=>!e},write:{layerContainerTypes:a.K,writer(e,t,r){(0,i.sM)(r,!e,t)}},origins:{"web-scene":{write:!1,read:!1}}}},x={type:w,json:{name:"layerDefinition.displayFilterInfo",write:{enabled:!0,allowNull:!0,layerContainerTypes:a.K},origins:{"web-scene":{write:!1,read:!1}}}}},32756:(e,t,r)=>{r.d(t,{Rr:()=>l,fY:()=>u,ne:()=>p});var s=r(90237),i=r(93637),o=r(10107),n=(r(44208),r(53966),r(87811),r(40608)),a=r(91880);function l(e,t,r){if(!e)return null;const s=e.find((e=>!!e.field));if(!s)return null;const i=new a.A;return i.read(s,r),[i]}const p={type:[a.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:l},write:{writer:function(e,t,r,s){const o=e.find((e=>!!e.field));o&&(0,i.sM)(r,[o.toJSON()],t)}}}},u=e=>{let t=class extends e{constructor(){super(...arguments),this.orderBy=null}};return(0,s._)([(0,o.MZ)(p)],t.prototype,"orderBy",void 0),t=(0,s._)([(0,n.$)("esri.layers.mixins.OrderedLayer")],t),t}},8303:(e,t,r)=>{r.d(t,{A:()=>x});var s=r(90237),i=r(92602),o=r(70333),n=r(78888),a=r(60999),l=r(49186),p=r(53966),u=r(97768),d=r(74887),c=r(84952),y=r(10107),m=(r(44208),r(87811),r(36005)),h=r(40608),f=r(43937),g=r(83531),v=r(20655),w=r(80812),_=r(41318),M=r(10407);const x=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,u.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new w.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:s}=await r.e(1204).then(r.bind(r,41204));return(0,d.Te)(t),await s({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,d.zf)(e)||p.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch((e=>((0,d.QP)(e),!0))))}async setUserPrivileges(e,t){if(!i.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:s},content:{updateItem:i}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",s),this._set("userHasUpdateItemPrivileges",i)}catch(e){(0,d.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const s=!o.id?.findCredential(this.url),i=e===r.id;if(i&&r.portal.user)return this._getUserPrivileges(r,s);let n,a;if(i)n=r.portal.url;else try{n=await(0,g.wI)(this.url,t)}catch(e){(0,d.QP)(e)}if(!n||!(0,c.b8)(n,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(o.id?.getCredential(`${n}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,d.QP)(e)}const l=!0,p=!1,u=!1;if(!a)return{features:{edit:l,fullEdit:p},content:{updateItem:u}};try{if(i?await r.reload():(r=new w.default({id:e,portal:{url:n}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,s)}catch(e){(0,d.QP)(e)}return{features:{edit:l,fullEdit:p},content:{updateItem:u}}}_getUserPrivileges(e,t){const r=(0,M.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,d.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?o.id?.findCredential(this.url):null;if(!t)return!0;const r=T.credential===t?T.user:await this._fetchEditingUser(e);return T.credential=t,T.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const r=o.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;const s=`${r.owningSystemUrl}/sharing/rest`,i=v.A.getDefault();if(i&&i.loaded&&(0,c.S8)(i.restUrl)===(0,c.S8)(s))return i.user;const l=`${s}/community/self`,p=null!=e?e.signal:null,u=await(0,a.Ke)((0,n.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:p}));return u.ok?_.A.fromJSON(u.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,s=this.portalItem?.id&&(this.portalItem.portal||v.A.getDefault());return r&&s&&!(0,c.ut)(s.restUrl,r.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,s._)([(0,y.MZ)({type:w.default})],t.prototype,"portalItem",null),(0,s._)([(0,m.w)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,s._)([(0,f.K)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,s._)([(0,y.MZ)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,s._)([(0,y.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,s._)([(0,y.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,s._)([(0,y.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,s._)([(0,h.$)("esri.layers.mixins.PortalLayer")],t),t},T={credential:null,user:null}},82935:(e,t,r)=>{r.d(t,{B:()=>y,e:()=>m});var s=r(90237),i=r(10107),o=(r(44208),r(53966),r(87811),r(36005)),n=r(40608),a=r(89317),l=r(30524),p=r(96184),u=r(73133),d=r(79677),c=r(10184);const y={type:Boolean,json:{read:{source:"timeAnimation"},write:{target:"timeAnimation",layerContainerTypes:a.K}}},m=e=>{let t=class extends e{constructor(){super(...arguments),this.timeExtent=null,this.timeOffset=null,this.useViewTime=!0}readOffset(e,t){const r=t.timeInfo.exportOptions;if(!r)return null;const s=r.timeOffset,i=u.j.fromJSON(r.timeOffsetUnits);return s&&i?new c.A({value:s,unit:i}):null}set timeInfo(e){(0,l.sv)(e,this.fieldsIndex),this._set("timeInfo",e)}};return(0,s._)([(0,i.MZ)({type:d.A,json:{write:!1}})],t.prototype,"timeExtent",void 0),(0,s._)([(0,i.MZ)({type:c.A})],t.prototype,"timeOffset",void 0),(0,s._)([(0,o.w)("service","timeOffset",["timeInfo.exportOptions"])],t.prototype,"readOffset",null),(0,s._)([(0,i.MZ)({value:null,type:p.A,json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],t.prototype,"timeInfo",null),(0,s._)([(0,i.MZ)(y)],t.prototype,"useViewTime",void 0),t=(0,s._)([(0,n.$)("esri.layers.mixins.TemporalLayer")],t),t}},68109:(e,t,r)=>{r.d(t,{d:()=>x});var s=r(90237),i=r(10107),o=(r(44208),r(53966),r(87811),r(40608)),n=r(13874),a=r(69540),l=r(25482),p=r(93637),u=r(43937),d=r(50820),c=r(10873),y=r(46499),m=r(13112);let h=class extends(a.A.ClonableMixin(l.A)){constructor(e){super(e),this.labelingInfo=null,this.labelsVisible=!0,this.renderer=null,this.visible=!0}};(0,s._)([(0,i.MZ)({type:[y.A],json:{write:!0}})],h.prototype,"labelingInfo",void 0),(0,s._)([(0,i.MZ)(c.kF)],h.prototype,"labelsVisible",void 0),(0,s._)([(0,i.MZ)({types:m.Hg,json:{write:!0}})],h.prototype,"renderer",void 0),(0,s._)([(0,i.MZ)({type:Boolean,json:{write:!0}})],h.prototype,"visible",void 0),h=(0,s._)([(0,o.$)("esri.layers.support.TrackPartInfo")],h);const f=h;var g=r(96576),v=r(59868),w=r(10184);let _=class extends(a.A.ClonableMixin(l.A)){constructor(e){super(e),this.enabled=!0,this.fields=[],this.latestObservations=new f({renderer:new g.A({symbol:v.UK.clone()})}),this.maxDisplayDuration=null,this.maxDisplayObservationsPerTrack=0,this.popupEnabled=!0,this.popupTemplate=null,this.previousObservations=new f({renderer:new g.A({symbol:v.UK.clone()})}),this.trackLines=new f({renderer:new g.A({symbol:v.A7.clone()})}),this.timeField="startTimeField"}writeFields(e,t,r){const s=e.filter((e=>"avg_angle"!==e.statisticType)).map((e=>e.toJSON()));(0,p.sM)(r,s,t)}};(0,s._)([(0,i.MZ)({type:Boolean,json:{write:!0}})],_.prototype,"enabled",void 0),(0,s._)([(0,i.MZ)({type:[d.A],json:{write:!0}})],_.prototype,"fields",void 0),(0,s._)([(0,u.K)("fields")],_.prototype,"writeFields",null),(0,s._)([(0,i.MZ)({type:f,json:{write:!0}})],_.prototype,"latestObservations",void 0),(0,s._)([(0,i.MZ)({type:w.A,json:{write:!0}})],_.prototype,"maxDisplayDuration",void 0),(0,s._)([(0,i.MZ)({type:Number,json:{write:!0}})],_.prototype,"maxDisplayObservationsPerTrack",void 0),(0,s._)([(0,i.MZ)(c.M6)],_.prototype,"popupEnabled",void 0),(0,s._)([(0,i.MZ)({type:n.A,json:{name:"popupInfo",write:!0}})],_.prototype,"popupTemplate",void 0),(0,s._)([(0,i.MZ)({type:f,json:{write:!0}})],_.prototype,"previousObservations",void 0),(0,s._)([(0,i.MZ)({type:f,json:{write:!0}})],_.prototype,"trackLines",void 0),(0,s._)([(0,i.MZ)({type:["timeReceived","startTimeField","endTimeField"],json:{read:!0,write:!0}})],_.prototype,"timeField",void 0),_=(0,s._)([(0,o.$)("esri.layers.support.TrackInfo")],_);const M=_,x=e=>{let t=class extends e{constructor(){super(...arguments),this.trackInfo=null}};return(0,s._)([(0,i.MZ)({type:M})],t.prototype,"trackInfo",void 0),t=(0,s._)([(0,o.$)("esri.layers.mixins.TrackableLayer")],t),t}},29005:(e,t,r)=>{r.d(t,{A:()=>d});var s=r(90237),i=r(69540),o=r(66552),n=r(25482),a=r(10107),l=(r(44208),r(53966),r(87811),r(40608));const p=new o.J({esriFeatureEditToolAutoCompletePolygon:"auto-complete-polygon",esriFeatureEditToolCircle:"circle",esriFeatureEditToolEllipse:"ellipse",esriFeatureEditToolFreehand:"freehand",esriFeatureEditToolLine:"line",esriFeatureEditToolNone:"none",esriFeatureEditToolPoint:"point",esriFeatureEditToolPolygon:"polygon",esriFeatureEditToolRectangle:"rectangle",esriFeatureEditToolArrow:"arrow",esriFeatureEditToolTriangle:"triangle",esriFeatureEditToolLeftArrow:"left-arrow",esriFeatureEditToolRightArrow:"right-arrow",esriFeatureEditToolUpArrow:"up-arrow",esriFeatureEditToolDownArrow:"down-arrow"});let u=class extends(i.A.ClonableMixin(n.A)){constructor(e){super(e),this.name=null,this.description=null,this.drawingTool=null,this.prototype=null,this.thumbnail=null}};(0,s._)([(0,a.MZ)({json:{write:!0}})],u.prototype,"name",void 0),(0,s._)([(0,a.MZ)({json:{write:!0}})],u.prototype,"description",void 0),(0,s._)([(0,a.MZ)({json:{read:p.read,write:p.write}})],u.prototype,"drawingTool",void 0),(0,s._)([(0,a.MZ)({json:{write:!0}})],u.prototype,"prototype",void 0),(0,s._)([(0,a.MZ)({json:{write:!0}})],u.prototype,"thumbnail",void 0),u=(0,s._)([(0,l.$)("esri.layers.support.FeatureTemplate")],u);const d=u},33143:(e,t,r)=>{r.d(t,{A:()=>y});var s=r(90237),i=r(69540),o=r(25482),n=r(10107),a=(r(44208),r(53966),r(87811),r(36005)),l=r(40608),p=r(43937),u=r(80451),d=r(29005);let c=class extends(i.A.ClonableMixin(o.A)){constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const r of Object.keys(e))t[r]=(0,u.rS)(e[r]);return t}writeDomains(e,t){const r={};for(const t of Object.keys(e))e[t]&&(r[t]=e[t]?.toJSON());t.domains=r}};(0,s._)([(0,n.MZ)({json:{write:!0}})],c.prototype,"id",void 0),(0,s._)([(0,n.MZ)({json:{write:!0}})],c.prototype,"name",void 0),(0,s._)([(0,n.MZ)({json:{write:!0}})],c.prototype,"domains",void 0),(0,s._)([(0,a.w)("domains")],c.prototype,"readDomains",null),(0,s._)([(0,p.K)("domains")],c.prototype,"writeDomains",null),(0,s._)([(0,n.MZ)({type:[d.A],json:{write:!0}})],c.prototype,"templates",void 0),c=(0,s._)([(0,l.$)("esri.layers.support.FeatureType")],c);const y=c},91880:(e,t,r)=>{r.d(t,{A:()=>d});var s,i=r(90237),o=r(66552),n=r(25482),a=r(10107),l=(r(44208),r(53966),r(87811),r(40608));const p=new o.J({asc:"ascending",desc:"descending"});let u=class extends n.A{static{s=this}constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new s({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,i._)([(0,a.MZ)({type:String,json:{write:!0}})],u.prototype,"field",void 0),(0,i._)([(0,a.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],u.prototype,"valueExpression",void 0),(0,i._)([(0,a.MZ)({type:p.apiValues,json:{type:p.jsonValues,read:p.read,write:p.write}})],u.prototype,"order",void 0),u=s=(0,i._)([(0,l.$)("esri.layers.support.OrderByInfo")],u);const d=u},96184:(e,t,r)=>{r.d(t,{A:()=>h});var s=r(90237),i=r(69540),o=r(25482),n=r(10107),a=(r(44208),r(53966),r(87811),r(36005)),l=r(40608),p=r(43937),u=r(79677),d=r(10184),c=r(56400);function y(e,t){return d.A.fromJSON({value:e,unit:t})}let m=class extends(i.A.ClonableMixin(o.A)){constructor(e){super(e),this.cumulative=!1,this.endField=null,this.fullTimeExtent=null,this.hasLiveData=!1,this.interval=null,this.startField=null,this.timeZone=null,this.trackIdField=null,this.useTime=!0,this.stops=null}readFullTimeExtent(e,t){return t.timeExtent&&Array.isArray(t.timeExtent)&&2===t.timeExtent.length?u.A.fromArray(t.timeExtent):null}writeFullTimeExtent(e,t){null!=e?.start&&null!=e.end?t.timeExtent=e.toArray():t.timeExtent=null}readInterval(e,t){return t.timeInterval&&t.timeIntervalUnits?y(t.timeInterval,t.timeIntervalUnits):t.defaultTimeInterval&&t.defaultTimeIntervalUnits?y(t.defaultTimeInterval,t.defaultTimeIntervalUnits):null}writeInterval(e,t){t.timeInterval=e?.toJSON().value??null,t.timeIntervalUnits=e?.toJSON().unit??null}};(0,s._)([(0,n.MZ)({type:Boolean,json:{name:"exportOptions.timeDataCumulative",write:!0}})],m.prototype,"cumulative",void 0),(0,s._)([(0,n.MZ)({type:String,json:{name:"endTimeField",write:{enabled:!0,allowNull:!0}}})],m.prototype,"endField",void 0),(0,s._)([(0,n.MZ)({type:u.A,json:{write:{enabled:!0,allowNull:!0}}})],m.prototype,"fullTimeExtent",void 0),(0,s._)([(0,a.w)("fullTimeExtent",["timeExtent"])],m.prototype,"readFullTimeExtent",null),(0,s._)([(0,p.K)("fullTimeExtent")],m.prototype,"writeFullTimeExtent",null),(0,s._)([(0,n.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"hasLiveData",void 0),(0,s._)([(0,n.MZ)({type:d.A,json:{write:{enabled:!0,allowNull:!0}}})],m.prototype,"interval",void 0),(0,s._)([(0,a.w)("interval",["timeInterval","timeIntervalUnits","defaultTimeInterval","defaultTimeIntervalUnits"])],m.prototype,"readInterval",null),(0,s._)([(0,p.K)("interval")],m.prototype,"writeInterval",null),(0,s._)([(0,n.MZ)({type:String,json:{name:"startTimeField",write:{enabled:!0,allowNull:!0}}})],m.prototype,"startField",void 0),(0,s._)([(0,n.MZ)((0,c.P6)("timeReference",!0))],m.prototype,"timeZone",void 0),(0,s._)([(0,n.MZ)({type:String,json:{write:{enabled:!0,allowNull:!0}}})],m.prototype,"trackIdField",void 0),(0,s._)([(0,n.MZ)({type:Boolean,json:{name:"exportOptions.useTime",write:!0}})],m.prototype,"useTime",void 0),(0,s._)([(0,n.MZ)({type:[Date],json:{read:!1}})],m.prototype,"stops",void 0),m=(0,s._)([(0,l.$)("esri.layers.support.TimeInfo")],m);const h=m},4071:(e,t,r)=>{r.d(t,{$:()=>s,P:()=>i});const s={supportsDate:!1,supportsFixedInterval:!1,supportsAutoInterval:!1,supportsFixedBoundaries:!1,supportsStackBy:!1,supportsSplitBy:!1,supportsSnapToData:!1,supportsReturnFullIntervalBin:!1,supportsFirstDayOfWeek:!1,supportsNormalization:!1,supportedStatistics:void 0,supportedNormalizationTypes:void 0},i={analytics:{supportsCacheHint:!1},attachment:{supportsContentType:!1,supportsExifInfo:!1,supportsKeywords:!1,supportsName:!1,supportsSize:!1,supportsCacheHint:!1,supportsOrderByFields:!1,supportsResize:!1},data:{isVersioned:!1,isBranchVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:!1},editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1,supportsAsyncApplyEdits:!1,zDefault:void 0},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryBins:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1,supportsAsyncConvert3D:!1},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:s,query:{maxRecordCount:0,maxRecordCountFactor:0,standardMaxRecordCount:0,supportsCacheHint:!1,supportsCentroid:!1,supportsCompactGeometry:!1,supportsCurrentUser:!1,supportsDefaultSpatialReference:!1,supportsFullTextSearch:!1,supportsDisjointSpatialRelationship:!1,supportsDistance:!1,supportsDistinct:!1,supportsExtent:!1,supportsFormatPBF:!1,supportsGeometryProperties:!1,supportsHavingClause:!1,supportsHistoricMoment:!1,supportsMaxRecordCountFactor:!1,supportsOrderBy:!1,supportsPagination:!1,supportsPercentileStatistics:!1,supportsQuantization:!1,supportsQuantizationEditMode:!1,supportsQueryByAnonymous:!1,supportsQueryByOthers:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsReturnMesh:!1,supportsSqlExpression:!1,supportsStandardizedQueriesOnly:!1,supportsTopFeaturesQuery:!1,supportsTrueCurve:!1,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1},supportsStatistics:!1,tileMaxRecordCount:0}}},17036:(e,t,r)=>{r.d(t,{p:()=>l});var s=r(44208),i=r(53966),o=r(20437),n=r(95466),a=r(30524);function l(){return{fields:{type:[o.A],value:null,set:function(e){if(e&&(0,s.A)("big-integer-warning-enabled")){const t=e.filter((e=>"big-integer"===e.type||"oid"===e.type&&(e.length||0)>=8));if(t.length){const e=t.map((e=>`'${e.name}'`)).join(", ");i.A.getLogger(this).warn("#fields",`Layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}') references big-integer field(s): ${e}, support for which is experimental. Only integers less than ${Number.MAX_SAFE_INTEGER} (Number.MAX_SAFE_INTEGER) are supported.`)}}this._set("fields",e)}},fieldsIndex:{readOnly:!0,get(){return n.A.fromLayer(this)}},outFields:{type:[String],json:{read:!1},set:function(e){this._userOutFields=e,this.notifyChange("outFields")},get:function(){const e=this._userOutFields;if(!e?.length)return null;if(e.includes("*"))return["*"];if(!this.fields)return e;for(const t of e){const r=this.fieldsIndex?.has(t);r||i.A.getLogger("esri.layers.support.fieldProperties").error("field-attributes-layer:invalid-field",`Invalid field ${t} found in outFields`,{layer:this,outFields:e})}return(0,a.DB)(this.fieldsIndex,e)}}}}},73133:(e,t,r)=>{r.d(t,{j:()=>s});const s=(0,r(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:void 0})},22671:(e,t,r)=>{r.d(t,{A:()=>w});var s,i=r(90237),o=r(52106),n=r(66552),a=r(25482),l=r(4718),p=r(10107),u=(r(44208),r(53966),r(36005)),d=r(40608),c=r(43937),y=r(16930),m=r(65864),h=r(50498),f=r(20437);const g=new n.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let v=s=class extends a.A{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,r,s){if(e)return void g.write(e,t,r,s);const{features:i}=this;if(i)for(const e of i)if(null!=e?.geometry)return void g.write(e.geometry.type,t,r,s)}readQueryGeometry(e,t){if(!e)return null;const r=!!e.spatialReference,s=(0,m.rS)(e);return s&&!r&&t.spatialReference&&(s.spatialReference=y.A.fromJSON(t.spatialReference)),s}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:r}=this;if(r)for(const e of r)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new s(this.cloneProperties())}cloneProperties(){return(0,l.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 r=0;r<t.features.length;r++){const s=t.features[r];if(s.geometry){const t=e?.[r];s.geometry=t?.toJSON()||s.geometry}}return t}quantize(e){const{scale:[t,r],translate:[s,i]}=e,o=this.features,n=this._getQuantizationFunction(this.geometryType,(e=>Math.round((e-s)/t)),(e=>Math.round((i-e)/r)));for(let e=0,t=o.length;e<t;e++)n?.(o[e].geometry)||(o.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:r}=this;if(!r)return this;const{translate:[s,i],scale:[o,n]}=r;let a=null,l=null;if(this.hasZ&&null!=r?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=r;a=r=>r*t+e}if(this.hasM&&null!=r?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=r;l=r=>null==r?r:r*t+e}const p=this._getHydrationFunction(e,(e=>e*o+s),(e=>i-e*n),a,l);for(const{geometry:e}of t)null!=e&&p&&p(e);return this.transform=null,this}readFeaturesWithClass(e,t,r){const s=y.A.fromJSON(t.spatialReference),i=[];for(let t=0;t<e.length;t++){const o=e[t],n=r.fromJSON(o),a=o.geometry?.spatialReference;null==n.geometry||a||(n.geometry.spatialReference=s);const l=o.aggregateGeometries,p=n.aggregateGeometries;if(l&&null!=p)for(const e in p){const t=p[e],r=l[e],i=r?.spatialReference;null==t||i||(t.spatialReference=s)}i.push(n)}return i}_quantizePoints(e,t,r){let s,i;const o=[];for(let n=0,a=e.length;n<a;n++){const a=e[n];if(n>0){const e=t(a[0]),n=r(a[1]);e===s&&n===i||(o.push([e-s,n-i]),s=e,i=n)}else s=t(a[0]),i=r(a[1]),o.push([s,i])}return o.length>0?o:null}_getQuantizationFunction(e,t,r){return"point"===e?e=>(e.x=t(e.x),e.y=r(e.y),e):"polyline"===e||"polygon"===e?e=>{const s=(0,m.Bi)(e)?e.rings:e.paths,i=[];for(let e=0,o=s.length;e<o;e++){const o=s[e],n=this._quantizePoints(o,t,r);n&&i.push(n)}return i.length>0?((0,m.Bi)(e)?e.rings=i:e.paths=i,e):null}:"multipoint"===e?e=>{const s=this._quantizePoints(e.points,t,r);return s&&s.length>0?(e.points=s,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,r,s,i){return"point"===e?e=>{e.x=t(e.x),e.y=r(e.y),s&&(e.z=s(e.z))}:"polyline"===e||"polygon"===e?e=>{const o=(0,m.Bi)(e)?e.rings:e.paths;let n,a;for(let e=0,s=o.length;e<s;e++){const s=o[e];for(let e=0,i=s.length;e<i;e++){const i=s[e];e>0?(n+=i[0],a+=i[1]):(n=i[0],a=i[1]),i[0]=t(n),i[1]=r(a)}}if(s&&i)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=s(r[2]),r[3]=i(r[3])}}else if(s)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=s(r[2])}}else if(i)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=r(e.ymin),e.xmax=t(e.xmax),e.ymax=r(e.ymax),s&&null!=e.zmax&&null!=e.zmin&&(e.zmax=s(e.zmax),e.zmin=s(e.zmin)),i&&null!=e.mmax&&null!=e.mmin&&(e.mmax=i(e.mmax),e.mmin=i(e.mmin))}:"multipoint"===e?e=>{const o=e.points;let n,a;for(let e=0,s=o.length;e<s;e++){const s=o[e];e>0?(n+=s[0],a+=s[1]):(n=s[0],a=s[1]),s[0]=t(n),s[1]=r(a)}if(s&&i)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=s(t[2]),t[3]=i(t[3])}else if(s)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=s(t[2])}else if(i)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=i(t[2])}}:null}};(0,i._)([(0,p.MZ)({type:String,json:{write:!0}})],v.prototype,"displayFieldName",void 0),(0,i._)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"exceededTransferLimit",void 0),(0,i._)([(0,p.MZ)({type:[o.A],json:{write:!0}})],v.prototype,"features",void 0),(0,i._)([(0,u.w)("features")],v.prototype,"readFeatures",null),(0,i._)([(0,p.MZ)({type:[f.A],json:{write:!0}})],v.prototype,"fields",void 0),(0,i._)([(0,p.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:g.read}}})],v.prototype,"geometryType",void 0),(0,i._)([(0,c.K)("geometryType")],v.prototype,"writeGeometryType",null),(0,i._)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasM",void 0),(0,i._)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasZ",void 0),(0,i._)([(0,p.MZ)({types:h.yR,json:{write:!0}})],v.prototype,"queryGeometry",void 0),(0,i._)([(0,u.w)("queryGeometry")],v.prototype,"readQueryGeometry",null),(0,i._)([(0,p.MZ)({type:y.A,json:{write:!0}})],v.prototype,"spatialReference",void 0),(0,i._)([(0,c.K)("spatialReference")],v.prototype,"writeSpatialReference",null),(0,i._)([(0,p.MZ)({json:{write:!0}})],v.prototype,"transform",void 0),v=s=(0,i._)([(0,d.$)("esri.rest.support.FeatureSet")],v),v.prototype.toJSON.isDefaultToJSON=!0;const w=v},41366:(e,t,r)=>{r.d(t,{K:()=>c,Q:()=>p});var s=r(90237),i=r(66552),o=r(53966),n=r(10107),a=(r(44208),r(87811),r(93223)),l=r(40608);const p=(0,i.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),u="percent-of-total",d="field",c=e=>{let t=class extends e{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,r=null!=this.normalizationTotal;return t||r?(e=t&&d||r&&u||null,t&&r&&o.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==d&&e!==u||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,s._)([(0,n.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],t.prototype,"normalizationField",void 0),(0,s._)([(0,n.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],t.prototype,"normalizationMaxValue",void 0),(0,s._)([(0,n.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],t.prototype,"normalizationMinValue",void 0),(0,s._)([(0,n.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],t.prototype,"normalizationTotal",void 0),(0,s._)([(0,a.e)(p,{name:"parameters.normalizationType"})],t.prototype,"normalizationType",null),t=(0,s._)([(0,l.$)("esri.rest.support.NormalizationBinParametersMixin")],t),t}},10184:(e,t,r)=>{r.d(t,{A:()=>c});var s=r(90237),i=r(69540),o=r(25482),n=r(88930),a=r(10107),l=(r(44208),r(53966),r(87811),r(93223)),p=r(40608),u=r(73133);let d=class extends(i.A.ClonableMixin(o.A)){constructor(e){super(e),this.unit="milliseconds",this.value=0}toMilliseconds(){return(0,n.t)(this.value,this.unit,"milliseconds")}};(0,s._)([(0,l.e)(u.j,{nonNullable:!0})],d.prototype,"unit",void 0),(0,s._)([(0,a.MZ)({type:Number,json:{write:!0},nonNullable:!0})],d.prototype,"value",void 0),d=(0,s._)([(0,p.$)("esri.time.TimeInterval")],d);const c=d}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2393,3186,6263],{39516:(e,t,n)=>{let r;async function i(){return null==r&&(r=n.e(4123).then(n.bind(n,44123)).then((e=>new e.WhereClauseCache(500,500)))),r}async function s(e,t){const n=await i(),r=n.get(e,t);if(null==r)throw n.getError(e,t);return r}function a(e,t){return e||=null,t||=null,"1=1"===e?t??e:"1=1"===t?e??t:e&&t?`(${e}) AND (${t})`:e??t}function o(e,t){return e||=null,t||=null,"1=1"===e||"1=1"===t||e===t?"1=1"===e?e:t:e&&t?`(${e}) OR (${t})`:e??t}n.d(t,{GP:()=>s,IW:()=>o,mA:()=>a})},32756:(e,t,n)=>{n.d(t,{Rr:()=>l,fY:()=>c,ne:()=>u});var r=n(90237),i=n(93637),s=n(10107),a=(n(44208),n(53966),n(87811),n(40608)),o=n(91880);function l(e,t,n){if(!e)return null;const r=e.find((e=>!!e.field));if(!r)return null;const i=new o.A;return i.read(r,n),[i]}const u={type:[o.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:l},write:{writer:function(e,t,n,r){const s=e.find((e=>!!e.field));s&&(0,i.sM)(n,[s.toJSON()],t)}}}},c=e=>{let t=class extends e{constructor(){super(...arguments),this.orderBy=null}};return(0,r._)([(0,s.MZ)(u)],t.prototype,"orderBy",void 0),t=(0,r._)([(0,a.$)("esri.layers.mixins.OrderedLayer")],t),t}},33143:(e,t,n)=>{n.d(t,{A:()=>f});var r=n(90237),i=n(69540),s=n(25482),a=n(10107),o=(n(44208),n(53966),n(87811),n(36005)),l=n(40608),u=n(43937),c=n(80451),p=n(29005);let d=class extends(i.A.ClonableMixin(s.A)){constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const n of Object.keys(e))t[n]=(0,c.rS)(e[n]);return t}writeDomains(e,t){const n={};for(const t of Object.keys(e))e[t]&&(n[t]=e[t]?.toJSON());t.domains=n}};(0,r._)([(0,a.MZ)({json:{write:!0}})],d.prototype,"id",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],d.prototype,"name",void 0),(0,r._)([(0,a.MZ)({json:{write:!0}})],d.prototype,"domains",void 0),(0,r._)([(0,o.w)("domains")],d.prototype,"readDomains",null),(0,r._)([(0,u.K)("domains")],d.prototype,"writeDomains",null),(0,r._)([(0,a.MZ)({type:[p.A],json:{write:!0}})],d.prototype,"templates",void 0),d=(0,r._)([(0,l.$)("esri.layers.support.FeatureType")],d);const f=d},91880:(e,t,n)=>{n.d(t,{A:()=>p});var r,i=n(90237),s=n(66552),a=n(25482),o=n(10107),l=(n(44208),n(53966),n(87811),n(40608));const u=new s.J({asc:"ascending",desc:"descending"});let c=class extends a.A{static{r=this}constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new r({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,i._)([(0,o.MZ)({type:String,json:{write:!0}})],c.prototype,"field",void 0),(0,i._)([(0,o.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],c.prototype,"valueExpression",void 0),(0,i._)([(0,o.MZ)({type:u.apiValues,json:{type:u.jsonValues,read:u.read,write:u.write}})],c.prototype,"order",void 0),c=r=(0,i._)([(0,l.$)("esri.layers.support.OrderByInfo")],c);const p=c},17311:(e,t,n)=>{n.d(t,{A:()=>d});var r=n(90237),i=n(69622),s=n(60999),a=n(5503),o=n(10107),l=(n(44208),n(53966),n(87811),n(40608)),u=n(30524),c=n(71386);let p=class extends i.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,c.lw)())):null}get featureUtilsPromise(){return this._get("featureUtilsPromise")??n.e(9926).then(n.bind(n,29926)).then((e=>this._featureUtils=e))}get calculatedExpressions(){const e=new a.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 n=this._arcadeTask.value.arcade.parseScript(t.expression,["$layer","$map","$datastore"]);if(n.isAsync){e.push({name:t.name,invalid:!0});break}e.push({name:t.name,syntax:n,invalid:!1,func:this._arcadeTask.value.arcade.compileScript(n,{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 n=this._arcadeTask.value.arcade.extractFieldLiterals(t.syntax);for(const t of n){const n=t.split("."),r=this.fieldsIndex.get(n.at(-1)??"");r&&e.add(r.name)}}catch{}const t=this._extractFieldNames(this.workingTitle);for(const n of t){const t=this.fieldsIndex.get(n);t&&e.add(t.name)}return 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,n){try{const{attributes:r}=t,i=n?.timeZone??"system",[{substituteFieldsInLinksAndAttributes:s}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);if(n.fetchMissingFields&&(t=await this._checkAndReQueryGraphic(e,t)),this.workingTitle&&this.fieldInfoMap){const n=this._createFormattedAttributes(e,t,i).global;return s({attributes:r,expressionAttributes:null,fieldInfoMap:this.fieldInfoMap,globalAttributes:n,layer:e,text:this.workingTitle})}return""}catch{}return""}async _checkAndReQueryGraphic(e,t){const n=t.getObjectId();if(null==n)return t;if(!(0,u.Kl)(this.requiredFields,t)){const t=e.createQuery();t.where="1=1",t.outFields=[...this.requiredFields],t.objectIds=[n];const r=await e.queryFeatures(t);if(1===r?.features.length)return r.features[0]}return t}_createFieldInfoMap(e){const t=new Map;if(!e)return t;for(const n of e){if(!n.fieldName)continue;const e=this.fieldsIndex.get(n.fieldName),r=e?.name??n.fieldName;n.fieldName=r,t.set(r.toLowerCase(),n)}return t}_createFormattedAttributes(e,t,n="system"){const r=this.effectivePopupTemplate?.fieldInfos??[],i={};if(!this._featureUtils)return{};if(!this.hasBadExpressions&&this.calculatedExpressions.length>0&&this._arcadeTask?.value){const n=this._arcadeTask.value.Feature.createFromGraphicLikeObject(t.geometry,t.attributes,e,null);for(const e of this.calculatedExpressions)try{i[`expression/${e.name}`]=e.func({vars:{$feature:n}})}catch{}}const s={...t.attributes,...i};return{global:this._featureUtils.formatAttributes({fieldInfos:r,attributes:s,graphic:t,timeZone:n,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,u.nw)(e).filter((e=>!(0===e.indexOf("relationships/")||0===e.indexOf("expression/"))))}};(0,r._)([(0,o.MZ)({readOnly:!0})],p.prototype,"_arcadeTask",null),(0,r._)([(0,o.MZ)()],p.prototype,"_featureUtils",void 0),(0,r._)([(0,o.MZ)({readOnly:!0})],p.prototype,"featureUtilsPromise",null),(0,r._)([(0,o.MZ)({readOnly:!0})],p.prototype,"calculatedExpressions",null),(0,r._)([(0,o.MZ)()],p.prototype,"displayField",void 0),(0,r._)([(0,o.MZ)()],p.prototype,"effectivePopupTemplate",void 0),(0,r._)([(0,o.MZ)()],p.prototype,"expressionsUsedInTitle",null),(0,r._)([(0,o.MZ)()],p.prototype,"fieldsIndex",void 0),(0,r._)([(0,o.MZ)()],p.prototype,"fieldInfoMap",null),(0,r._)([(0,o.MZ)()],p.prototype,"fields",void 0),(0,r._)([(0,o.MZ)()],p.prototype,"objectIdField",void 0),(0,r._)([(0,o.MZ)()],p.prototype,"requiredFields",null),p=(0,r._)([(0,l.$)("esri.layers.support.TitleCreator")],p);const d=p},41560:(e,t,n)=>{n.d(t,{Ch:()=>a,mW:()=>s});var r=n(34727),i=n(39516);function s(e,t){return{...t,filterMode:e.mode}}function a(e,t,n){const s=function(e){if("manual"===u(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:n,maxScale:r}of e.filters)t[0]=Math.max(t[0],c(n)),t[1]=Math.min(t[1],p(r));return t}(e);if(s&&((0,r.gg)(t,s[0])||(0,r.ZH)(n,s[1])))return"";const a=Array.from(o(e,t,n)),l=function(e,t,n){if(0===e.length)return!0;const i=c(e.at(0)?.minScale),s=p(e.at(-1)?.maxScale);if((0,r.ZH)(i,t)||(0,r.gg)(s,n))return!0;for(let t=0;t<e.length-1;t++){const n=e[t],i=e[t+1];if((0,r.ZH)(c(i.minScale),p(n.maxScale)))return!0}return!1}(a,t,n)?"1=1":a.map((e=>e.where||"1=1")).reduce(((e,t)=>(0,i.IW)(e,t)),"");return l&&"1=1"!==l?l:""}function*o(e,t,n){if("manual"===u(e)){const t=e.filters.find((t=>t.id===e.activeFilterId));t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const r of e.filters)l(r.minScale,r.maxScale,t,n)&&(yield r)}}function l(e,t,n,i){return e=c(e),n=c(n),t=p(t),!(!(0,r.Sp)(n,e)&&(i??n)>e||(0,r.Hx)(t,n)||void 0!==i&&(0,r.Sp)(i,e))}function u(e){return"mode"in e?e.mode:e.filterMode}function c(e){return e||Number.POSITIVE_INFINITY}function p(e){return e||0}},32730:(e,t,n)=>{n.d(t,{BI:()=>h,D3:()=>m,XJ:()=>y,lc:()=>f,mX:()=>x,rU:()=>g,tH:()=>E});var r=n(799);const i="__begin__",s="__end__",a=new RegExp(i,"ig"),o=new RegExp(s,"ig"),l=new RegExp("^"+i,"i"),u=new RegExp(s+"$","i"),c='"',p=c+" + ",d=" + "+c;function f(e){return e.replaceAll(new RegExp("\\[","g"),"{").replaceAll(new RegExp("\\]","g"),"}")}function m(e){return e.replaceAll(new RegExp("\\{","g"),"[").replaceAll(new RegExp("\\}","g"),"]")}function y(e){const t={expression:"",type:"none"};return e.labelExpressionInfo?e.labelExpressionInfo.value?(t.expression=e.labelExpressionInfo.value,t.type="conventional"):e.labelExpressionInfo.expression&&(t.expression=e.labelExpressionInfo.expression,t.type="arcade"):null!=e.labelExpression&&(t.expression=f(e.labelExpression),t.type="conventional"),t}function h(e){const t=y(e);switch(t.type){case"conventional":return x(t.expression);case"arcade":return t.expression}return null}function g(e){const t=y(e);switch(t.type){case"conventional":return function(e){const t=e?.match(_);return t?.[1].trim()||null}(t.expression);case"arcade":return E(t.expression)}return null}function x(e){let t;return e?(t=(0,r.HC)(e,(e=>i+'$feature["'+e+'"]'+s)),t=l.test(t)?t.replace(l,""):c+t,t=u.test(t)?t.replace(u,""):t+c,t=t.replaceAll(a,p).replaceAll(o,d)):t='""',t}const _=/^\s*\{([^}]+)\}\s*$/i,w=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*$/i,v=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(\1|\3)(\5)\s*\));?\s*$/i,I=/^\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(.+)(\1)\s*\));?\s*$/i;function E(e){if(!e)return null;let t=w.exec(e)||v.exec(e);return t?t[1]||t[3]:(t=I.exec(e),t?t[2]:null)}},83531:(e,t,n)=>{n.d(t,{BR:()=>c,Ov:()=>o,TU:()=>a,W_:()=>l,XX:()=>s,tk:()=>p,wI:()=>u});var r=n(70333),i=n(78888);const s={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function a(e){const t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function o(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function l(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}async function u(e,t){const n=r.id?.findServerInfo(e);if(null!=n?.currentVersion)return n.owningSystemUrl||null;const s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;const a=`${e.slice(0,s)}/rest/info`,o=null!=t?t.signal:null,{data:l}=await(0,i.A)(a,{query:{f:"json"},responseType:"json",signal:o});return l?.owningSystemUrl||null}function c(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"catalog":case"catalog-footprint":case"csv":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function p(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}},10407:(e,t,n)=>{n.d(t,{It:()=>f,LG:()=>a,OM:()=>u,Sm:()=>c,Y:()=>o,bK:()=>l,mm:()=>d,sQ:()=>p});var r=n(57251),i=n(16930),s=n(28735);function a(e,t){if(!o(e,t)){const n=e.typeKeywords;n?n.push(t):e.typeKeywords=[t]}}function o(e,t){return!!e.typeKeywords?.includes(t)}function l(e){return o(e,d.HOSTED_SERVICE)}function u(e,t){const n=e.typeKeywords;if(n){const e=n.indexOf(t);e>-1&&n.splice(e,1)}}function c(e,t,n){n?a(e,t):u(e,t)}async function p(e){const t=e.clone().normalize();let n;if(t.length>1)for(const e of t)n?e.width>n.width&&(n=e):n=e;else n=t[0];return async function(e){const t=e.spatialReference;if(t.isWGS84)return e.clone();if(t.isWebMercator)return(0,s.ci)(e);const n=i.A.WGS84;return await(0,r.initializeProjection)(t,n),(0,r.project)(e,n)}(n)}const d={DEVELOPER_BASEMAP:"DeveloperBasemap",JSAPI:"ArcGIS API for JavaScript",METADATA:"Metadata",MULTI_LAYER:"Multilayer",SINGLE_LAYER:"Singlelayer",TABLE:"Table",HOSTED_SERVICE:"Hosted Service",LOCAL_SCENE:"ViewingMode-Local",TILED_IMAGERY:"Tiled Imagery",GROUP_LAYER_MAP:"Map",ORIENTED_IMAGERY_LAYER:"OrientedImageryLayer"};function f(e){const{portal:t,isOrgItem:n,itemControl:r}=e,i=t.user?.privileges;let s=!i||i.includes("features:user:edit"),a=!!n&&!!i?.includes("features:user:fullEdit");const o="update"===r||"admin"===r;return o?a=s=!0:a&&(s=!0),{features:{edit:s,fullEdit:a},content:{updateItem:o}}}},58501:(e,t,n)=>{n.d(t,{q:()=>i});var r=n(62815);function i(e,t,n){if(!n?.features||!n.hasZ)return;const i=(0,r.N)(n.geometryType,t,e.outSpatialReference);if(null!=i)for(const e of n.features)i(e.geometry)}},41366:(e,t,n)=>{n.d(t,{K:()=>d,Q:()=>u});var r=n(90237),i=n(66552),s=n(53966),a=n(10107),o=(n(44208),n(87811),n(93223)),l=n(40608);const u=(0,i.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),c="percent-of-total",p="field",d=e=>{let t=class extends e{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,n=null!=this.normalizationTotal;return t||n?(e=t&&p||n&&c||null,t&&n&&s.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==p&&e!==c||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,r._)([(0,a.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],t.prototype,"normalizationField",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],t.prototype,"normalizationMaxValue",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],t.prototype,"normalizationMinValue",void 0),(0,r._)([(0,a.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],t.prototype,"normalizationTotal",void 0),(0,r._)([(0,o.e)(u,{name:"parameters.normalizationType"})],t.prototype,"normalizationType",null),t=(0,r._)([(0,l.$)("esri.rest.support.NormalizationBinParametersMixin")],t),t}},92935:(e,t,n)=>{var r;n.d(t,{X:()=>r}),function(e){e[e.SAVE=0]="SAVE",e[e.SAVE_AS=1]="SAVE_AS"}(r||(r={}))}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3804],{35982:(e,t,r)=>{r.d(t,{B:()=>c});var s=r(4576),i=r(36563),n=r(53966),a=r(74887),o=r(29953);class c{constructor(e,t,r,s,i={}){this._mainMethod=t,this._transferLists=r,this._listeners=[],this._promise=(0,o.ho)(e,{...i,schedule:s}).then((e=>{if(void 0===this._thread){this._thread=e,this._promise=null,i.hasInitialize&&this.broadcast({},"initialize");for(const e of this._listeners)this._connectListener(e)}else e.close()})),this._promise.catch((t=>n.A.getLogger("esri.core.workers.WorkerHandle").error(`Failed to initialize ${e} worker: ${t}`)))}on(e,t){const r={removed:!1,eventName:e,callback:t,threadHandle:null};return this._listeners.push(r),this._connectListener(r),(0,i.hA)((()=>{r.removed=!0,(0,s.TF)(this._listeners,r),this._thread&&null!=r.threadHandle&&r.threadHandle.remove()}))}destroy(){this._thread&&(this._thread.close(),this._thread=null),this._promise=null,this._listeners.length=0,this._transferLists={}}invoke(e,t){return this.invokeMethod(this._mainMethod,e,t)}invokeMethod(e,t,r){if(this._thread){const s=this._transferLists[e],i=s?s(t):[];return this._thread.invoke(e,t,{transferList:i,signal:r})}return this._promise?this._promise.then((()=>((0,a.Te)(r),this.invokeMethod(e,t,r)))):Promise.reject(null)}broadcast(e,t){return this._thread?Promise.all(this._thread.broadcast(t,e)).then((()=>{})):this._promise?this._promise.then((()=>this.broadcast(e,t))):Promise.reject()}get promise(){return this._promise}_connectListener(e){this._thread&&this._thread.on(e.eventName,e.callback).then((t=>{e.removed||(e.threadHandle=t)}))}}},36421:(e,t,r)=>{var s;r.d(t,{p:()=>s}),function(e){e[e.Texture=0]="Texture",e[e.RenderBuffer=1]="RenderBuffer"}(s||(s={}))},14113:(e,t,r)=>{r.d(t,{N5:()=>c});var s=r(49186),i=(r(44208),r(53966)),n=r(69270);const a=()=>i.A.getLogger("esri.views.3d.webgl-engine.core.shaderModules.shaderBuilder");class o{constructor(){this._includedModules=new Map}include(e,t){this._includedModules.has(e)?this._includedModules.get(e):(this._includedModules.set(e,t),e(this.builder,t))}}class c extends o{constructor(){super(...arguments),this.vertex=new _,this.fragment=new _,this.attributes=new d,this.varyings=new m,this.extensions=new p,this.outputs=new A}get fragmentUniforms(){return this.fragment.uniforms.entries}get builder(){return this}generate(e,t=!1){const r=this.extensions.generateSource(e),s=this.attributes.generateSource(e),i=this.varyings.generateSource(e),n="vertex"===e?this.vertex:this.fragment,a=n.uniforms.generateSource(),o=n.code.generateSource(),c=n.main.generateSource(t),l="vertex"===e?T:g,h=n.constants.generateSource(),u=this.outputs.generateSource(e);return`#version 300 es\n${r.join("\n")}\n${l}\n${h.join("\n")}\n${a.join("\n")}\n${s.join("\n")}\n${i.join("\n")}\n${u.join("\n")}\n${o.join("\n")}\n${c.join("\n")}`}generateBind(e){const t=new Map;this.vertex.uniforms.entries.forEach((e=>{const r=e.bind[n.c.Bind];r&&t.set(e.name,r)})),this.fragment.uniforms.entries.forEach((e=>{const r=e.bind[n.c.Bind];r&&t.set(e.name,r)}));const r=Array.from(t.values()),s=r.length;return t=>{for(let i=0;i<s;++i)r[i](e,t)}}generateBindPass(e){const t=new Map;this.vertex.uniforms.entries.forEach((e=>{const r=e.bind[n.c.Pass];r&&t.set(e.name,r)})),this.fragment.uniforms.entries.forEach((e=>{const r=e.bind[n.c.Pass];r&&t.set(e.name,r)}));const r=Array.from(t.values()),s=r.length;return(t,i)=>{for(let n=0;n<s;++n)r[n](e,t,i)}}generateBindDraw(e){const t=new Map;this.vertex.uniforms.entries.forEach((e=>{const r=e.bind[n.c.Draw];r&&t.set(e.name,r)})),this.fragment.uniforms.entries.forEach((e=>{const r=e.bind[n.c.Draw];r&&t.set(e.name,r)}));const r=Array.from(t.values()),s=r.length;return(t,i,n)=>{for(let a=0;a<s;++a)r[a](e,n,t,i)}}}class l{constructor(e){this._stage=e,this._entries=new Map}add(...e){for(const t of e)this._add(t);return this._stage}get(e){return this._entries.get(e)}_add(e){if(null!=e){if(this._entries.has(e.name)&&!this._entries.get(e.name).equals(e))throw new s.A(`Duplicate uniform name ${e.name} for different uniform type`);this._entries.set(e.name,e)}else a().error(`Trying to add null Uniform from ${(new Error).stack}.`)}generateSource(){return Array.from(this._entries.values()).map((e=>null!=e.arraySize?`uniform ${e.type} ${e.name}[${e.arraySize}];`:`uniform ${e.type} ${e.name};`))}get entries(){return Array.from(this._entries.values())}}class h{constructor(e){this._stage=e,this._bodies=new Array}add(e){return this._bodies.push(e),this._stage}generateSource(e){if(this._bodies.length>0)return[`void main() {\n ${this._bodies.join("\n")||""} \n}`];if(e)throw new s.A("Shader does not contain main function body.");return[]}}class u{constructor(e){this._stage=e,this._entries=new Array}add(e){return this._entries.push(e),this._stage}generateSource(){return this._entries}}class _ extends o{constructor(){super(...arguments),this.uniforms=new l(this),this.main=new h(this),this.code=new u(this),this.constants=new E(this)}get builder(){return this}}class d{constructor(){this._entries=new Array}add(e,t){this._entries.push([e,t])}generateSource(e){return"fragment"===e?[]:this._entries.map((e=>`in ${e[1]} ${e[0]};`))}}class m{constructor(){this._entries=new Map}add(e,t){this._entries.has(e)?a().warn(`Ignoring duplicate varying ${t} ${e}`):this._entries.set(e,t)}generateSource(e){const t=new Array;return this._entries.forEach(((r,s)=>t.push("vertex"===e?`out ${r} ${s};`:`in ${r} ${s};`))),t}}class p{constructor(){this._entries=new Set}add(e){this._entries.add(e)}generateSource(e){const t="vertex"===e?p.ALLOWLIST_VERTEX:p.ALLOWLIST_FRAGMENT;return Array.from(this._entries).filter((e=>t.includes(e))).map((e=>`#extension ${e} : enable`))}static{this.ALLOWLIST_FRAGMENT=["GL_EXT_shader_texture_lod","GL_OES_standard_derivatives"]}static{this.ALLOWLIST_VERTEX=[]}}class A{constructor(){this._entries=new Map}add(e,t,r=0){const s=this._entries.get(r);s?.name!==e||s?.type!==t?this._entries.set(r,{name:e,type:t}):a().warn(`Fragment shader output location ${r} occupied`)}static{this.DEFAULT_TYPE="vec4"}static{this.DEFAULT_NAME="fragColor"}generateSource(e){if("vertex"===e)return[];0===this._entries.size&&this._entries.set(0,{name:A.DEFAULT_NAME,type:A.DEFAULT_TYPE});const t=new Array;return this._entries.forEach(((e,r)=>t.push(`layout(location = ${r}) out ${e.type} ${e.name};`))),t}}class E{constructor(e){this._stage=e,this._entries=new Set}add(e,t,r){let s="ERROR_CONSTRUCTOR_STRING";switch(t){case"float":s=E._numberToFloatStr(r);break;case"int":s=E._numberToIntStr(r);break;case"bool":s=r.toString();break;case"vec2":s=`vec2(${E._numberToFloatStr(r[0])}, ${E._numberToFloatStr(r[1])})`;break;case"vec3":s=`vec3(${E._numberToFloatStr(r[0])}, ${E._numberToFloatStr(r[1])}, ${E._numberToFloatStr(r[2])})`;break;case"vec4":s=`vec4(${E._numberToFloatStr(r[0])}, ${E._numberToFloatStr(r[1])}, ${E._numberToFloatStr(r[2])}, ${E._numberToFloatStr(r[3])})`;break;case"ivec2":s=`ivec2(${E._numberToIntStr(r[0])}, ${E._numberToIntStr(r[1])})`;break;case"ivec3":s=`ivec3(${E._numberToIntStr(r[0])}, ${E._numberToIntStr(r[1])}, ${E._numberToIntStr(r[2])})`;break;case"ivec4":s=`ivec4(${E._numberToIntStr(r[0])}, ${E._numberToIntStr(r[1])}, ${E._numberToIntStr(r[2])}, ${E._numberToIntStr(r[3])})`;break;case"mat2":case"mat3":case"mat4":s=`${t}(${Array.prototype.map.call(r,(e=>E._numberToFloatStr(e))).join(", ")})`}return this._entries.add(`const ${t} ${e} = ${s};`),this._stage}static _numberToIntStr(e){return e.toFixed(0)}static _numberToFloatStr(e){return Number.isInteger(e)?e.toFixed(1):e.toString()}generateSource(){return Array.from(this._entries)}}const g="#ifdef GL_FRAGMENT_PRECISION_HIGH\n precision highp float;\n precision highp int;\n precision highp sampler2D;\n#else\n precision mediump float;\n precision mediump int;\n precision mediump sampler2D;\n#endif",T="precision highp float;\nprecision highp sampler2D;"},4172:(e,t,r)=>{r.d(t,{g:()=>f});var s=r(49186),i=(r(44208),r(53966)),n=r(97768),a=r(74887),o=r(44794);(r(36708),r(35982)).B;new Set;var c=r(94656),l=r(63907),h=r(36421),u=r(67171);function _(e){(null!=e.width&&e.width<0||null!=e.height&&e.height<0||null!=e.depth&&e.depth<0)&&i.A.getLogger("esri/views/webgl/textureUtils").error("Negative dimension parameters are not allowed!")}function d(e){return null!=e&&"type"in e&&"compressed"===e.type}function m(e){return null!=e&&!d(e)&&!function(e){return null!=e&&"byteLength"in e}(e)}function p(e){return e===l.Ap.TEXTURE_3D||e===l.Ap.TEXTURE_2D_ARRAY}function A(e,t,r,s=1){let i=Math.max(t,r);return e===l.Ap.TEXTURE_3D&&(i=Math.max(i,s)),Math.floor(Math.log2(i))+1}function E(e){if(null!=e.internalFormat)return e.internalFormat===l.Ab.DEPTH_STENCIL?l.Ab.DEPTH24_STENCIL8:e.internalFormat;switch(e.dataType){case l.ld.FLOAT:switch(e.pixelFormat){case l.Ab.RGBA:return l.H0.RGBA32F;case l.Ab.RGB:return l.H0.RGB32F;default:throw new s.A("Unable to derive format")}case l.ld.UNSIGNED_BYTE:switch(e.pixelFormat){case l.Ab.RGBA:return l.H0.RGBA8;case l.Ab.RGB:return l.H0.RGB8}}return e.internalFormat=e.pixelFormat===l.Ab.DEPTH_STENCIL?l.Ab.DEPTH24_STENCIL8:e.pixelFormat}class g extends u.R{constructor(e,t){switch(super(),this.context=e,Object.assign(this,t),this.internalFormat){case l.H0.R16F:case l.H0.R16I:case l.H0.R16UI:case l.H0.R32F:case l.H0.R32I:case l.H0.R32UI:case l.H0.R8_SNORM:case l.H0.R8:case l.H0.R8I:case l.H0.R8UI:this.pixelFormat=l.Ab.RED}}static validate(e,t){return new g(e,t)}}const T=()=>i.A.getLogger("esri/views/webgl/Texture");let f=class e{static{this.TEXTURE_UNIT_FOR_UPDATES=0}constructor(e,t=null,r=null){if(this.type=h.p.Texture,this._glName=null,this._samplingModeDirty=!1,this._wrapModeDirty=!1,this._wasImmutablyAllocated=!1,this._compressionAbortController=(0,o.v)(null),"context"in e)this._descriptor=e,r=t;else{const r=g.validate(e,t);if(!r)throw new s.A("Texture descriptor invalid");this._descriptor=r}this._descriptor.target===l.Ap.TEXTURE_CUBE_MAP?this._setDataCubeMap(r):this.setData(r)}get glName(){return this._glName}get descriptor(){return this._descriptor}get usedMemory(){return(0,u.e)(this._descriptor)}get cachedMemory(){return this.usedMemory}get isDirty(){return this._samplingModeDirty||this._wrapModeDirty}get isCompressing(){return null!==this._compressionAbortController.value}dispose(){this.abortCompression(),this._descriptor.context.gl&&this._glName&&(this._descriptor.context.instanceCounter.decrement(l.vt.Texture,this),this._descriptor.context.unbindTexture(this),this._descriptor.context.gl.deleteTexture(this._glName),this._glName=null)}release(){this.dispose()}resize(e,t){const r=this._descriptor;if(r.width!==e||r.height!==t){if(this._wasImmutablyAllocated)throw new s.A("Immutable textures can't be resized!");r.width=e,r.height=t,this._descriptor.target===l.Ap.TEXTURE_CUBE_MAP?this._setDataCubeMap(null):this.setData(null)}}enableCompression(e){this._descriptor.shouldCompress=e}setData(e){return this.abortCompression(),!d(e)&&this._descriptor.internalFormat&&this._descriptor.internalFormat in l.CQ&&(this._descriptor.internalFormat=void 0),this._setData(e),this.isCompressing}updateData(t,r,i,n,a,o,c=0){o||T().error("An attempt to use uninitialized data!"),this._glName||T().error("An attempt to update uninitialized texture!");const l=this._descriptor;l.internalFormat=E(l);const{context:h,pixelFormat:u,dataType:_,target:p,isImmutable:A}=l;if(A&&!this._wasImmutablyAllocated)throw new s.A("Cannot update immutable texture before allocation!");const g=h.bindTexture(this,e.TEXTURE_UNIT_FOR_UPDATES,!0);(r<0||i<0||r+n>l.width||i+a>l.height)&&T().error("An attempt to update out of bounds of the texture!"),this._configurePixelStorage();const{gl:f}=h;c&&(n&&a||T().warn("Must pass width and height if `UNPACK_SKIP_ROWS` is used"),f.pixelStorei(f.UNPACK_SKIP_ROWS,c)),m(o)?f.texSubImage2D(p,t,r,i,n,a,u,_,o):d(o)?f.compressedTexSubImage2D(p,t,r,i,n,a,l.internalFormat,o.levels[t]):f.texSubImage2D(p,t,r,i,n,a,u,_,o),c&&f.pixelStorei(f.UNPACK_SKIP_ROWS,0),h.bindTexture(g,e.TEXTURE_UNIT_FOR_UPDATES)}updateData3D(t,r,i,n,a,o,c,l){l||T().error("An attempt to use uninitialized data!"),this._glName||T().error("An attempt to update an uninitialized texture!");const h=this._descriptor;h.internalFormat=E(h);const{context:u,pixelFormat:_,dataType:m,isImmutable:A,target:g}=h;if(A&&!this._wasImmutablyAllocated)throw new s.A("Cannot update immutable texture before allocation!");p(g)||T().warn("Attempting to set 3D texture data on a non-3D texture");const f=u.bindTexture(this,e.TEXTURE_UNIT_FOR_UPDATES);u.setActiveTexture(e.TEXTURE_UNIT_FOR_UPDATES),(r<0||i<0||n<0||r+a>h.width||i+o>h.height||n+c>h.depth)&&T().error("An attempt to update out of bounds of the texture!"),this._configurePixelStorage();const{gl:R}=u;if(d(l))l=l.levels[t],R.compressedTexSubImage3D(g,t,r,i,n,a,o,c,h.internalFormat,l);else{const e=l;R.texSubImage3D(g,t,r,i,n,a,o,c,_,m,e)}u.bindTexture(f,e.TEXTURE_UNIT_FOR_UPDATES)}generateMipmap(){const t=this._descriptor;if(!t.hasMipmap){if(this._wasImmutablyAllocated)throw new s.A("Cannot add mipmaps to immutable texture after allocation");t.hasMipmap=!0,this._samplingModeDirty=!0,_(t)}t.samplingMode===l.Cj.LINEAR?(this._samplingModeDirty=!0,t.samplingMode=l.Cj.LINEAR_MIPMAP_NEAREST):t.samplingMode===l.Cj.NEAREST&&(this._samplingModeDirty=!0,t.samplingMode=l.Cj.NEAREST_MIPMAP_NEAREST);const r=this._descriptor.context.bindTexture(this,e.TEXTURE_UNIT_FOR_UPDATES);this._descriptor.context.setActiveTexture(e.TEXTURE_UNIT_FOR_UPDATES),this._descriptor.context.gl.generateMipmap(t.target),this._descriptor.context.bindTexture(r,e.TEXTURE_UNIT_FOR_UPDATES)}clearMipmap(){const e=this._descriptor;if(e.hasMipmap){if(this._wasImmutablyAllocated)throw new s.A("Cannot delete mipmaps to immutable texture after allocation");e.hasMipmap=!1,this._samplingModeDirty=!0,_(e)}e.samplingMode===l.Cj.LINEAR_MIPMAP_NEAREST?(this._samplingModeDirty=!0,e.samplingMode=l.Cj.LINEAR):e.samplingMode===l.Cj.NEAREST_MIPMAP_NEAREST&&(this._samplingModeDirty=!0,e.samplingMode=l.Cj.NEAREST)}setSamplingMode(e){e!==this._descriptor.samplingMode&&(this._descriptor.samplingMode=e,this._samplingModeDirty=!0)}setWrapMode(e){e!==this._descriptor.wrapMode&&(this._descriptor.wrapMode=e,_(this._descriptor),this._wrapModeDirty=!0)}applyChanges(){this._samplingModeDirty&&(this._applySamplingMode(),this._samplingModeDirty=!1),this._wrapModeDirty&&(this._applyWrapMode(),this._wrapModeDirty=!1)}abortCompression(){this.isCompressing&&(this._compressionAbortController.value=(0,n.DC)(this._compressionAbortController.value))}_setData(t,r){const i=this._descriptor,n=i.context?.gl;if(!n)return;(0,c.Y2)(n),this._glName||(this._glName=n.createTexture(),i.context.instanceCounter.increment(l.vt.Texture,this)),_(i);const a=i.context.bindTexture(this,e.TEXTURE_UNIT_FOR_UPDATES);i.context.setActiveTexture(e.TEXTURE_UNIT_FOR_UPDATES),this._configurePixelStorage(),(0,c.Y2)(n);const o=r??i.target,h=p(o);if(m(t))this._setDataFromTexImageSource(t,o);else{const{width:e,height:r,depth:a}=i;if(null==e||null==r)throw new s.A("Width and height must be specified!");if(h&&null==a)throw new s.A("Depth must be specified!");if(i.internalFormat=E(i),i.isImmutable&&!this._wasImmutablyAllocated&&this._texStorage(o,i.internalFormat,i.hasMipmap,e,r,a),d(t)){if(!(i.internalFormat in l.CQ))throw new s.A("Attempting to use compressed data with an uncompressed format!");this._setDataFromCompressedSource(t,i.internalFormat,o)}else this._texImage(o,0,i.internalFormat,e,r,a,t),(0,c.Y2)(n),i.hasMipmap&&this.generateMipmap()}this._applySamplingMode(),this._applyWrapMode(),this._applyAnisotropicFilteringParameters(),(0,c.Y2)(n),i.context.bindTexture(a,e.TEXTURE_UNIT_FOR_UPDATES)}_setDataCubeMap(e=null){for(let t=l.Ap.TEXTURE_CUBE_MAP_POSITIVE_X;t<=l.Ap.TEXTURE_CUBE_MAP_NEGATIVE_Z;t++)this._setData(e,t)}_configurePixelStorage(){const e=this._descriptor.context.gl,{unpackAlignment:t,flipped:r,preMultiplyAlpha:s}=this._descriptor;e.pixelStorei(e.UNPACK_ALIGNMENT,t),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,r?1:0),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s?1:0)}_setDataFromTexImageSource(e,t){const{gl:r}=this._descriptor.context,s=this._descriptor;s.internalFormat=E(s);const i=p(t),{width:n,height:a,depth:o}=function(e){let t="width"in e?e.width:e.codedWidth,r="height"in e?e.height:e.codedHeight;return e instanceof HTMLVideoElement&&(t=e.videoWidth,r=e.videoHeight),{width:t,height:r,depth:1}}(e);s.width&&s.height,s.width||(s.width=n),s.height||(s.height=a),i&&s.depth,i&&(s.depth=o),s.isImmutable&&!this._wasImmutablyAllocated&&this._texStorage(t,s.internalFormat,s.hasMipmap,n,a,o),this._texImage(t,0,s.internalFormat,n,a,o,e),(0,c.Y2)(r),s.hasMipmap&&(this.generateMipmap(),(0,c.Y2)(r))}_setDataFromCompressedSource(e,t,r){const s=this._descriptor,{width:i,height:n,depth:a}=s,o=e.levels,c=A(r,i,n,a),l=Math.min(c,o.length)-1;this._descriptor.context.gl.texParameteri(s.target,s.context.gl.TEXTURE_MAX_LEVEL,l),this._forEachMipmapLevel(((e,s,i,n)=>{const a=o[Math.min(e,o.length-1)];this._compressedTexImage(r,e,t,s,i,n,a)}),l)}_texStorage(e,t,r,i,n,a){const{gl:o}=this._descriptor.context;if(!(t in l.H0))throw new s.A("Immutable textures must have a sized internal format");if(!this._descriptor.isImmutable)return;const c=r?A(e,i,n,a):1;if(p(e)){if(null==a)throw new s.A("Missing depth dimension for 3D texture upload");o.texStorage3D(e,c,t,i,n,a)}else o.texStorage2D(e,c,t,i,n);this._wasImmutablyAllocated=!0}_texImage(e,t,r,i,n,a,o){const c=this._descriptor.context.gl,l=p(e),{isImmutable:h,pixelFormat:u,dataType:_}=this._descriptor;if(h){if(null!=o){const r=o;if(l){if(null==a)throw new s.A("Missing depth dimension for 3D texture upload");c.texSubImage3D(e,t,0,0,0,i,n,a,u,_,r)}else c.texSubImage2D(e,t,0,0,i,n,u,_,r)}}else{const h=o;if(l){if(null==a)throw new s.A("Missing depth dimension for 3D texture upload");c.texImage3D(e,t,r,i,n,a,0,u,_,h)}else c.texImage2D(e,t,r,i,n,0,u,_,h)}}_compressedTexImage(e,t,r,i,n,a,o){const c=this._descriptor.context.gl,l=p(e);if(this._descriptor.isImmutable){if(null!=o)if(l){if(null==a)throw new s.A("Missing depth dimension for 3D texture upload");c.compressedTexSubImage3D(e,t,0,0,0,i,n,a,r,o)}else c.compressedTexSubImage2D(e,t,0,0,i,n,r,o)}else if(l){if(null==a)throw new s.A("Missing depth dimension for 3D texture upload");c.compressedTexImage3D(e,t,r,i,n,a,0,o)}else c.compressedTexImage2D(e,t,r,i,n,0,o)}async compressOnWorker(e){const t=this._descriptor.context?.gl.getExtension("WEBGL_compressed_texture_etc"),r=this._descriptor.context?.gl.getExtension("WEBGL_compressed_texture_s3tc"),s=null;if(s&&(t||r)){const i=new AbortController;this._compressionAbortController.value=i;const n={data:await createImageBitmap(e),flipped:this.descriptor.flipped,width:e.width,height:e.height,hasMipmap:this._descriptor.hasMipmap,hasETC:!!t,hasS3TC:!!r};s.invoke(n,this._compressionAbortController.value.signal).then((e=>{e&&this.isCompressing&&this.glName&&(this._descriptor.internalFormat=e.internalFormat,this._setData(e.compressedTexture)),i===this._compressionAbortController.value&&(this._compressionAbortController.value=null)})).catch((e=>{(0,a.zf)(e)||i!==this._compressionAbortController.value||(this._compressionAbortController.value=null)}))}}_forEachMipmapLevel(e,t=1/0){let{width:r,height:i,depth:n,hasMipmap:a,target:o}=this._descriptor;const c=o===l.Ap.TEXTURE_3D;if(null==r||null==i||c&&null==n)throw new s.A("Missing texture dimensions for mipmap calculation");for(let s=0;e(s,r,i,n),a&&(1!==r||1!==i||c&&1!==n)&&!(s>=t);++s)r=Math.max(1,r>>1),i=Math.max(1,i>>1),c&&(n=Math.max(1,n>>1))}_applySamplingMode(){const e=this._descriptor,t=e.context?.gl;let r=e.samplingMode,s=e.samplingMode;r===l.Cj.LINEAR_MIPMAP_NEAREST||r===l.Cj.LINEAR_MIPMAP_LINEAR?(r=l.Cj.LINEAR,e.hasMipmap||(s=l.Cj.LINEAR)):r!==l.Cj.NEAREST_MIPMAP_NEAREST&&r!==l.Cj.NEAREST_MIPMAP_LINEAR||(r=l.Cj.NEAREST,e.hasMipmap||(s=l.Cj.NEAREST)),t.texParameteri(e.target,t.TEXTURE_MAG_FILTER,r),t.texParameteri(e.target,t.TEXTURE_MIN_FILTER,s)}_applyWrapMode(){const e=this._descriptor,t=e.context?.gl;"number"==typeof e.wrapMode?(t.texParameteri(e.target,t.TEXTURE_WRAP_S,e.wrapMode),t.texParameteri(e.target,t.TEXTURE_WRAP_T,e.wrapMode)):(t.texParameteri(e.target,t.TEXTURE_WRAP_S,e.wrapMode.s),t.texParameteri(e.target,t.TEXTURE_WRAP_T,e.wrapMode.t))}_applyAnisotropicFilteringParameters(){const e=this._descriptor,t=e.context.capabilities.textureFilterAnisotropic;t&&e.context.gl.texParameterf(e.target,t.TEXTURE_MAX_ANISOTROPY,e.maxAnisotropy??1)}}},67171:(e,t,r)=>{r.d(t,{R:()=>n,e:()=>a});var s=r(63907),i=r(42293);class n{constructor(e=0,t=e){this.width=e,this.height=t,this.target=s.Ap.TEXTURE_2D,this.pixelFormat=s.Ab.RGBA,this.dataType=s.ld.UNSIGNED_BYTE,this.samplingMode=s.Cj.LINEAR,this.wrapMode=s.pF.REPEAT,this.maxAnisotropy=1,this.flipped=!1,this.hasMipmap=!1,this.isOpaque=!1,this.unpackAlignment=4,this.preMultiplyAlpha=!1,this.shouldCompress=!1,this.depth=1,this.isImmutable=!1}}function a(e){return e.width<=0||e.height<=0?0:Math.round(e.width*e.height*e.depth*(e.hasMipmap?4/3:1)*(null==e.internalFormat?4:(0,i.IB)(e.internalFormat))*(e.target===s.Ap.TEXTURE_CUBE_MAP?6:1))}},42293:(e,t,r)=>{r.d(t,{Hi:()=>c,IB:()=>l,yu:()=>o}),r(44208);var s=r(94656),i=r(63907),n=r(62298);function a(e){const t=e.gl;switch(t.getError()){case t.NO_ERROR:return null;case t.INVALID_ENUM:return"An unacceptable value has been specified for an enumerated argument";case t.INVALID_VALUE:return"An unacceptable value has been specified for an argument";case t.INVALID_OPERATION:return"The specified command is not allowed for the current state";case t.INVALID_FRAMEBUFFER_OPERATION:return"The currently bound framebuffer is not framebuffer complete";case t.OUT_OF_MEMORY:return"Not enough memory is left to execute the command";case t.CONTEXT_LOST_WEBGL:return"WebGL context is lost"}return"Unknown error"}function o(e,t,r,i,o=0){const c=e.gl;e.bindBuffer(r);for(const r of i){const i=t.get(r.name);if(null==i){console.warn(`There is no location for vertex attribute '${r.name}' defined.`);continue}const l=o*r.stride;if(r.count<=4)c.vertexAttribPointer(i,r.count,r.type,r.normalized,r.stride,r.offset+l),c.enableVertexAttribArray(i),r.divisor>0&&e.gl.vertexAttribDivisor(i,r.divisor);else if(9===r.count)for(let t=0;t<3;t++)c.vertexAttribPointer(i+t,3,r.type,r.normalized,r.stride,r.offset+12*t+l),c.enableVertexAttribArray(i+t),r.divisor>0&&e.gl.vertexAttribDivisor(i+t,r.divisor);else if(16===r.count)for(let t=0;t<4;t++)c.vertexAttribPointer(i+t,4,r.type,r.normalized,r.stride,r.offset+16*t+l),c.enableVertexAttribArray(i+t),r.divisor>0&&e.gl?.vertexAttribDivisor(i+t,r.divisor);else console.error("Unsupported vertex attribute element count: "+r.count);if((0,s.en)()){const t=a(e),s=(0,n._)(r.type),i=r.offset,o=Math.round(s/i)!==s/i?`. Offset not a multiple of stride. DataType requires ${s} bytes, but descriptor has an offset of ${i}`:"";t&&console.error(`Unable to bind vertex attribute "${r.name}" with baseInstanceOffset ${l}${o}:`,t,r)}}}function c(e,t,r,s){const n=e.gl;e.bindBuffer(r);for(const r of s){const s=t.get(r.name);if(r.count<=4)n.disableVertexAttribArray(s),r.divisor&&r.divisor>0&&e.gl?.vertexAttribDivisor(s,0);else if(9===r.count)for(let t=0;t<3;t++)n.disableVertexAttribArray(s+t),r.divisor&&r.divisor>0&&e.gl?.vertexAttribDivisor(s+t,0);else if(16===r.count)for(let t=0;t<4;t++)n.disableVertexAttribArray(s+t),r.divisor&&r.divisor>0&&e.gl?.vertexAttribDivisor(s+t,0);else console.error("Unsupported vertex attribute element count: "+r.count)}e.unbindBuffer(i.NZ.ARRAY_BUFFER)}function l(e){switch(e){case i.Ab.ALPHA:case i.Ab.LUMINANCE:case i.Ab.RED:case i.Ab.RED_INTEGER:case i.H0.R8:case i.H0.R8I:case i.H0.R8UI:case i.H0.R8_SNORM:case i.yQ.STENCIL_INDEX8:return 1;case i.Ab.LUMINANCE_ALPHA:case i.Ab.RG:case i.Ab.RG_INTEGER:case i.H0.RGBA4:case i.H0.R16F:case i.H0.R16I:case i.H0.R16UI:case i.H0.RG8:case i.H0.RG8I:case i.H0.RG8UI:case i.H0.RG8_SNORM:case i.H0.RGB565:case i.H0.RGB5_A1:case i.yQ.DEPTH_COMPONENT16:return 2;case i.Ab.DEPTH_COMPONENT:case i.Ab.RGB:case i.Ab.RGB_INTEGER:case i.H0.RGB8:case i.H0.RGB8I:case i.H0.RGB8UI:case i.H0.RGB8_SNORM:case i.H0.SRGB8:case i.yQ.DEPTH_COMPONENT24:return 3;case i.Ab.DEPTH_STENCIL:case i.Ab.DEPTH24_STENCIL8:case i.Ab.RGBA:case i.Ab.RGBA_INTEGER:case i.H0.RGBA8:case i.H0.R32F:case i.H0.R11F_G11F_B10F:case i.H0.RG16F:case i.H0.R32I:case i.H0.R32UI:case i.H0.RG16I:case i.H0.RG16UI:case i.H0.RGBA8I:case i.H0.RGBA8UI:case i.H0.RGBA8_SNORM:case i.H0.SRGB8_ALPHA8:case i.H0.RGB9_E5:case i.H0.RGB10_A2UI:case i.H0.RGB10_A2:case i.yQ.DEPTH_STENCIL:case i.yQ.DEPTH_COMPONENT32F:case i.yQ.DEPTH24_STENCIL8:return 4;case i.yQ.DEPTH32F_STENCIL8:return 5;case i.H0.RGB16F:case i.H0.RGB16I:case i.H0.RGB16UI:return 6;case i.H0.RG32F:case i.H0.RG32I:case i.H0.RG32UI:case i.H0.RGBA16F:case i.H0.RGBA16I:case i.H0.RGBA16UI:return 8;case i.H0.RGB32F:case i.H0.RGB32I:case i.H0.RGB32UI:return 12;case i.H0.RGBA32F:case i.H0.RGBA32I:case i.H0.RGBA32UI:return 16;case i.CQ.COMPRESSED_RGB_S3TC_DXT1_EXT:case i.CQ.COMPRESSED_RGBA_S3TC_DXT1_EXT:return.5;case i.CQ.COMPRESSED_RGBA_S3TC_DXT3_EXT:case i.CQ.COMPRESSED_RGBA_S3TC_DXT5_EXT:return 1;case i.CQ.COMPRESSED_R11_EAC:case i.CQ.COMPRESSED_SIGNED_R11_EAC:case i.CQ.COMPRESSED_RGB8_ETC2:case i.CQ.COMPRESSED_SRGB8_ETC2:case i.CQ.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:case i.CQ.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:return.5;case i.CQ.COMPRESSED_RG11_EAC:case i.CQ.COMPRESSED_SIGNED_RG11_EAC:case i.CQ.COMPRESSED_RGBA8_ETC2_EAC:case i.CQ.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:return 1}return 0}},94656:(e,t,r)=>{r.d(t,{Xc:()=>l,Y2:()=>h,en:()=>c});var s=r(49186),i=r(44208),n=r(53966);const a=()=>n.A.getLogger("esri.views.webgl.checkWebGLError"),o=!!(0,i.A)("enable-feature:webgl-debug");function c(){return o}function l(){return o}function h(e){if(c()){const t=e.getError();if(t){const r=function(e,t){switch(t){case e.INVALID_ENUM:return"Invalid Enum. An unacceptable value has been specified for an enumerated argument.";case e.INVALID_VALUE:return"Invalid Value. A numeric argument is out of range.";case e.INVALID_OPERATION:return"Invalid Operation. The specified command is not allowed for the current state.";case e.INVALID_FRAMEBUFFER_OPERATION:return"Invalid Framebuffer operation. The currently bound framebuffer is not framebuffer complete when trying to render to or to read from it.";case e.OUT_OF_MEMORY:return"Out of memory. Not enough memory is left to execute the command.";case e.CONTEXT_LOST_WEBGL:return"WebGL context has been lost";default:return"Unknown error"}}(e,t),i=(new Error).stack;a().error(new s.A("webgl-error","WebGL error occurred",{message:r,stack:i}))}}}},62298:(e,t,r)=>{r.d(t,{_:()=>i});var s=r(63907);function i(e){switch(e){case s.pe.BYTE:case s.pe.UNSIGNED_BYTE:return 1;case s.pe.SHORT:case s.pe.UNSIGNED_SHORT:case s.pe.HALF_FLOAT:return 2;case s.pe.FLOAT:case s.pe.INT:case s.pe.UNSIGNED_INT:return 4}}}}]);