@arcgis/core 5.1.0-next.60 → 5.1.0-next.62

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 (125) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/{ab223c508f3dd562e7d3.js → 32e9e92bbbd000fbbaf7.js} +2 -2
  3. package/assets/esri/core/workers/chunks/{68475eba323b4aa892a3.js → 354351ab3fc79dedf9a8.js} +1 -1
  4. package/assets/esri/core/workers/chunks/45f1e682668cffc00b44.js +1 -0
  5. package/assets/esri/core/workers/chunks/4dbbf59c79d9e72f20ee.js +1 -0
  6. package/assets/esri/core/workers/chunks/{6172715b2b2853819d8a.js → 5eeb6d3a7b815d41621e.js} +1 -1
  7. package/assets/esri/core/workers/chunks/{2f74147597805828cb38.js → 5ff41f43e57be0557541.js} +22 -29
  8. package/assets/esri/core/workers/chunks/{6355de3ee89916b74dae.js → 6b32b3f98872771ff81e.js} +1 -1
  9. package/assets/esri/core/workers/chunks/71326d16b5cc35c3ff7f.js +1 -0
  10. package/assets/esri/core/workers/chunks/{c69fefe9d51ac7c2b0a6.js → 75f7c1f600c4051bc905.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{8083dface1ca2dbd12b2.js → 811b378fa5bf8a4d3d66.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{8432ffc33843e898bab7.js → 8166ad6bbd7d7a8f91cf.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{58614f12796dbba013f4.js → 9d289cee96e7c7fe1029.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{c4da2ca1dee0c44051d0.js → 9d7ffd83f69d6e639f09.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{0622e238693c257abacb.js → 9eef3cd5f519c8ae88c0.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{2541ac6e0ed1184edc9b.js → af3bd661b355eed3da21.js} +1 -1
  17. package/assets/esri/core/workers/chunks/{e4144ccc85ad4c76a9b7.js → af40e2e6eaf3d2226812.js} +1 -1
  18. package/assets/esri/core/workers/chunks/{0fd191f9c10b3b7c83f4.js → c319c3b85cdec73a9f45.js} +1 -1
  19. package/assets/esri/core/workers/chunks/{7e1ef2a55f8d123f31e2.js → cbb50415f7de8746ee1a.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{48d289db3145ce6c02bb.js → d4368e281c12fa7c17c5.js} +1 -1
  21. package/assets/esri/core/workers/chunks/{266933f1139ed0e8919f.js → e645f992ec6f935ee3a5.js} +1 -1
  22. package/assets/esri/core/workers/chunks/{bf4bad2c9a541cd425f5.js → e9dd60d0220036545ebb.js} +1 -1
  23. package/assets/esri/core/workers/chunks/ed60b5eaa5765bfcb99c.js +1 -0
  24. package/assets/esri/core/workers/chunks/{a226ba96d9a3ecc14e3e.js → f550fc8c078ebd47d7a3.js} +1 -1
  25. package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
  26. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable.json +1 -1
  27. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_en.json +1 -1
  28. package/chunks/GlowComposition.glsl.js +4 -5
  29. package/chunks/ShadowHighlight.glsl.js +5 -5
  30. package/config.js +1 -1
  31. package/geometry/libtess.js +1 -1
  32. package/geometry/support/curves/bezierCurveUtils.js +1 -1
  33. package/geometry/support/curves/circularArcUtils.js +1 -1
  34. package/geometry/support/curves/ellipticArc4Utils.js +1 -1
  35. package/geometry/support/curves/ellipticArc7Utils.js +1 -1
  36. package/interfaces.d.ts +14 -0
  37. package/kernel.js +1 -1
  38. package/layers/CSVLayer.d.ts +38 -6
  39. package/layers/CatalogLayer.d.ts +39 -8
  40. package/layers/FeatureLayer.d.ts +25 -23
  41. package/layers/GeoJSONLayer.d.ts +36 -6
  42. package/layers/ParquetLayer.d.ts +58 -0
  43. package/layers/SubtypeGroupLayer.d.ts +27 -25
  44. package/layers/WFSLayer.d.ts +51 -8
  45. package/layers/catalog/CatalogFootprintLayer.d.ts +37 -7
  46. package/layers/graphics/sources/csv/csv.js +1 -1
  47. package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +41 -17
  48. package/layers/mixins/ArcGISImageService.d.ts +58 -0
  49. package/layers/mixins/ArcGISImageService.js +1 -1
  50. package/layers/raster/datasets/BaseRaster.js +1 -1
  51. package/layers/raster/datasets/ImageAuxRaster.js +1 -1
  52. package/layers/raster/datasets/ImageServerRaster.js +1 -1
  53. package/layers/raster/formats/ImageCanvasDecoder.js +1 -1
  54. package/layers/raster/formats/JpgPlus.js +1 -1
  55. package/layers/raster/formats/RasterCodec.js +1 -1
  56. package/layers/support/csvUtils.js +1 -1
  57. package/package.json +3 -3
  58. package/popup/Feature.d.ts +33 -35
  59. package/popup/Feature.js +1 -1
  60. package/popup/Features.d.ts +663 -0
  61. package/popup/Features.js +2 -0
  62. package/popup/support/FeatureAbilities.d.ts +30 -0
  63. package/popup/support/FeatureAbilities.js +2 -0
  64. package/support/revision.js +1 -1
  65. package/views/2d/analysis/analysisViewModuleImportUtils.js +1 -1
  66. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  67. package/views/2d/layerViewModuleImportUtils.js +1 -1
  68. package/views/3d/FocusAreasView.js +1 -1
  69. package/views/3d/analysis/analysisViewModuleImportUtils.js +1 -1
  70. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  71. package/views/3d/layerViewModuleImportUtils.js +1 -1
  72. package/views/3d/layers/I3SMeshView3D.js +1 -1
  73. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  74. package/views/3d/layers/graphics/tessellationUtils.js +1 -1
  75. package/views/3d/support/renderInfoUtils/polygon.js +1 -1
  76. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +6 -11
  77. package/views/3d/webgl-engine/effects/focusArea/FocusAreaOutlineItem.js +1 -1
  78. package/views/3d/webgl-engine/effects/glow/GlowComposition.glsl.js +1 -1
  79. package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.js +1 -1
  80. package/views/3d/webgl-engine/effects/highlight/{ScreenSpaceShadowHighlight.glsl.js → ShadowHighlightBuffer.glsl.js} +1 -1
  81. package/views/3d/webgl-engine/effects/highlight/ShadowHighlightBuffer.js +2 -0
  82. package/views/3d/webgl-engine/effects/highlight/ShadowHighlightBufferTechnique.js +2 -0
  83. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  84. package/views/3d/webgl-engine/lib/MainFramebuffer.js +1 -1
  85. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  86. package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
  87. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  88. package/views/3d/webgl-engine/materials/PolygonOffset.js +1 -1
  89. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  90. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  91. package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.js +1 -1
  92. package/views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js +11 -11
  93. package/views/3d/webgl-engine/shaders/ReceiveShadowsConfiguration.js +1 -1
  94. package/views/3d/webgl-engine/shaders/ditherNoise.glsl.js +2 -0
  95. package/views/3d/webgl.js +1 -1
  96. package/views/SceneView.js +1 -1
  97. package/views/draw/plugins/TangentArcSegmentPlugin.js +1 -1
  98. package/views/support/AnalysisViewManager.js +1 -1
  99. package/widgets/ElevationProfile/support/ElevationProfileView.js +1 -1
  100. package/widgets/ElevationProfile/support/ElevationProfileView3D.js +1 -1
  101. package/widgets/Feature/FeatureViewModel.d.ts +2 -1
  102. package/widgets/Feature/FeatureViewModel.js +1 -1
  103. package/widgets/Feature.js +1 -1
  104. package/widgets/FeatureTable/ColumnVisibilityMenuVisibleElements.d.ts +27 -0
  105. package/widgets/FeatureTable/ColumnVisibilityMenuVisibleElements.js +2 -0
  106. package/widgets/FeatureTable/FeatureTableViewModel.d.ts +10 -1
  107. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  108. package/widgets/FeatureTable/TableMenuVisibleElements.d.ts +0 -1
  109. package/widgets/FeatureTable/TableMenuVisibleElements.js +1 -1
  110. package/widgets/FeatureTable/VisibleElements.d.ts +23 -1
  111. package/widgets/FeatureTable/VisibleElements.js +1 -1
  112. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  113. package/widgets/FeatureTable.d.ts +10 -1
  114. package/widgets/FeatureTable.js +1 -1
  115. package/widgets/Popup/actionUtils.js +1 -1
  116. package/widgets/Widget.js +1 -1
  117. package/assets/esri/core/workers/chunks/16806f5044a9da553b66.js +0 -1
  118. package/assets/esri/core/workers/chunks/5f3f50fec18d1642fdf9.js +0 -1
  119. package/assets/esri/core/workers/chunks/b42487c6a989e11a2559.js +0 -1
  120. package/assets/esri/core/workers/chunks/dba479176db0a23c8034.js +0 -1
  121. package/views/3d/webgl-engine/effects/highlight/ScreenSpaceShadowHighlightRenderNode.js +0 -2
  122. package/views/3d/webgl-engine/effects/highlight/ScreenSpaceShadowHighlightTechnique.js +0 -2
  123. package/views/3d/webgl-engine/shaders/Dithering.glsl.js +0 -4
  124. /package/assets/esri/core/workers/chunks/{ab223c508f3dd562e7d3.js.LICENSE.txt → 32e9e92bbbd000fbbaf7.js.LICENSE.txt} +0 -0
  125. /package/chunks/{ScreenSpaceShadowHighlight.glsl.js → ShadowHighlightBuffer.glsl.js} +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5750],{5482(e,t,n){function r(e,t,n,r){var i,o=arguments.length,s=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,n,s):i(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function i(e,t,n){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var r,i;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(void 0===r){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],n&&(i=r)}if("function"!=typeof r)throw new TypeError("Object not disposable.");i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}n.d(t,{Cg:()=>r,hk:()=>s,mS:()=>i}),Object.create,Object.create;var o="function"==typeof SuppressedError?SuppressedError:function(e,t,n){var r=new Error(n);return r.name="SuppressedError",r.error=e,r.suppressed=t,r};function s(e){function t(t){e.error=e.hasError?new o(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}var n,r=0;return function i(){for(;n=e.stack.pop();)try{if(!n.async&&1===r)return r=0,e.stack.push(n),Promise.resolve().then(i);if(n.dispose){var o=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(o).then(i,function(e){return t(e),i()})}else r|=1}catch(e){t(e)}if(1===r)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}()}},1123(e,t,n){n.r(t),n.d(t,{invokeGeometryOp:()=>a});var r=n(65864);function i(e,t){let n;return{loaded:!1,load:()=>n??=t().then(t=>{s[e]={loaded:!0,execute:t}})}}function o(e){return null==e?null:e.toJSON()}const s={disjoint:i("disjoint",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4579)]).then(n.bind(n,7978)).then(e=>e.execute)),intersects:i("intersects",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6033)]).then(n.bind(n,55284)).then(e=>e.execute)),touches:i("touches",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(368)]).then(n.bind(n,83547)).then(e=>e.execute)),crosses:i("crosses",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4935)]).then(n.bind(n,85672)).then(e=>e.execute)),within:i("within",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4168)]).then(n.bind(n,85445)).then(e=>e.execute)),contains:i("contains",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(2990)]).then(n.bind(n,51508)).then(e=>e.execute)),overlaps:i("overlaps",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(923)]).then(n.bind(n,46178)).then(e=>e.execute)),equals:i("equals",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4795)]).then(n.bind(n,45328));return(t,n)=>e.execute((0,r.rS)(t),(0,r.rS)(n))}),relate:i("relate",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(891)]).then(n.bind(n,43628));return(t,n,i)=>e.execute((0,r.rS)(t),(0,r.rS)(n),i)}),intersection:i("intersection",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(3902)]).then(n.bind(n,49263)).then(e=>e.execute)),union:i("union",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6708)]).then(n.bind(n,56339)).then(e=>e.executeMany)),difference:i("difference",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(7217)]).then(n.bind(n,93054));return(t,n)=>o(e.execute((0,r.rS)(t),(0,r.rS)(n)))}),symmetricDifference:i("symmetricDifference",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1812)]).then(n.bind(n,89041));return(t,n)=>o(e.execute((0,r.rS)(t),(0,r.rS)(n)))}),clip:i("clip",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(7772)]).then(n.bind(n,24815));return(t,n)=>o(e.execute((0,r.rS)(t),(0,r.rS)(n)))}),cut:i("cut",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1512)]).then(n.bind(n,37817));return(t,n)=>e.execute((0,r.rS)(t),(0,r.rS)(n)).map(e=>o(e))}),area:i("area",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(9835)]).then(n.bind(n,95624)),{convertFromSpatialReferenceUnit:t,toAreaUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,o)=>{const s=e.execute((0,r.rS)(n));return t(n.spatialReference,i(o),s)}}),geodeticArea:i("geodeticArea",async()=>{const e=await n.e(9506).then(n.bind(n,89506)),{convert:t,squareMeters:i,toAreaUnit:o}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,s,a)=>{const l=e.execute((0,r.rS)(n),{curveType:a});return t(i,o(s),l)}}),length:i("length",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(8679)]).then(n.bind(n,51190)),{convertFromSpatialReferenceUnit:t,toLengthUnit:r}=await n.e(547).then(n.bind(n,40547));return(n,i)=>{const o=e.execute(n);return t(n.spatialReference,r(i),o)}}),geodeticLength:i("geodeticLength",async()=>{const e=await n.e(427).then(n.bind(n,40427)),{convert:t,meters:i,toLengthUnit:o}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,s,a)=>{const l=e.execute((0,r.rS)(n),{curveType:a});return t(i,o(s),l)}}),distance:i("distance",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1965)]).then(n.bind(n,77038)),{convertFromSpatialReferenceUnit:t,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,o,s)=>{const a=e.execute((0,r.rS)(n),(0,r.rS)(o));return t(n.spatialReference,i(s),a)}}),densify:i("densify",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4642)]).then(n.bind(n,88411)),{convertToSpatialReferenceUnit:t,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,s,a)=>(s=t(i(a),n.spatialReference,s),o(e.execute((0,r.rS)(n),s)))}),geodeticDensify:i("geodeticDensify",async()=>{const e=await n.e(4097).then(n.bind(n,64097)),{convert:t,meters:i,toLengthUnit:s}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,a,l,c)=>(a=t(s(l),i,a),o(e.execute((0,r.rS)(n),a,{curveType:c})))}),generalize:i("generalize",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6276)]).then(n.bind(n,60591)),{convertToSpatialReferenceUnit:t,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,s,a,l)=>(s=t(i(a),n.spatialReference,s),o(e.execute((0,r.rS)(n),s,l)))}),buffer:i("buffer",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1352),n.e(1797)]).then(n.bind(n,46160)),{convertToSpatialReferenceUnit:t,toLengthUnit:r}=await n.e(547).then(n.bind(n,40547));return(n,i,o)=>(i=t(r(o),n.spatialReference,i),e.execute(n,i))}),geodesicBuffer:i("geodesicBuffer",async()=>{const e=await n.e(9159).then(n.bind(n,49159)),{convert:t,meters:r,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,o,s,a)=>(o=t(i(s),r,o),e.execute(n,o,{curveType:a}))}),offset:i("offset",async()=>{const{executeOffsetJson:e}=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(5020)]).then(n.bind(n,85549));return e}),rotate:i("rotate",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(9879)]).then(n.bind(n,50647)),{default:t}=await Promise.all([n.e(3661),n.e(1878),n.e(8812)]).then(n.bind(n,78812));return(n,i,s,a)=>{const l=(new t).rotate(i,s,a);return o(e.execute((0,r.rS)(n),l))}}),centroid:i("centroid",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1054)]).then(n.bind(n,17077));return t=>o(e.execute((0,r.rS)(t)))}),labelPoint:i("labelPoint",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6342),n.e(7809)]).then(n.bind(n,91421));return t=>o(e.execute((0,r.rS)(t)))}),simplify:i("simplify",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(3456)]).then(n.bind(n,3637)).then(e=>e.execute)),isSelfIntersecting:i("isSelfIntersecting",async()=>{const{NonSimpleResult:e}=await n.e(4383).then(n.bind(n,24383)),t=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6861)]).then(n.bind(n,5874)),i=new Set([5,6,7,10,11,12]);return n=>{const o=new e;return!t.isSimple((0,r.rS)(n),o)&&i.has(o.m_reason)}}),isSimple:i("isSimple",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(3456)]).then(n.bind(n,3637)).then(e=>e.isSimple)),convexHull:i("convexHull",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6491)]).then(n.bind(n,55666)).then(e=>e.execute)),getNearestCoordinate:i("getNearestCoordinate",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6342),n.e(3514)]).then(n.bind(n,48032));return(t,n,i)=>{const s=e.getNearestCoordinate((0,r.rS)(t),(0,r.rS)(n),i);return{...s,coordinate:o(s.coordinate)}}}),getNearestVertex:i("getNearestVertex",async()=>{const{executeNearestVertex:e}=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6342),n.e(2266)]).then(n.bind(n,64064));return(t,n)=>{const i=e((0,r.rS)(t),(0,r.rS)(n));return null==i?null:{...i,coordinate:o(i.coordinate)}}})};function a(e,t){const n=s[e];return n.loaded?n.execute.apply(void 0,t):n.load().then(()=>a(e,t))}},34304(e,t,n){n.d(t,{DF:()=>l,FD:()=>i,Ov:()=>o,ct:()=>c});let r=1e-6;function i(){return r}const o=Math.random,s=Math.PI/180,a=180/Math.PI;function l(e){return e*s}function c(e){return e*a}Object.freeze(Object.defineProperty({__proto__:null,RANDOM:o,equals:function(e,t){return Math.abs(e-t)<=r*Math.max(1,Math.abs(e),Math.abs(t))},getEpsilon:i,setEpsilon:function(e){r=e},toDegree:c,toRadian:l},Symbol.toStringTag,{value:"Module"}))},91075(e,t,n){n.d(t,{A:()=>l});var r=n(5482),i=n(25482),o=n(91429),s=n(16930),a=n(36005);let l=class extends i.o{constructor(...e){super(...e),this.type=null,this.hasM=!1,this.hasZ=!1,this.spatialReference=s.A.WGS84}get cache(){return this.commitProperty("spatialReference"),{}}get extent(){return null}readSpatialReference(e,t){if(e instanceof s.A)return e;if(null!=e){const n=new s.A;return n.read(e,t),n}return e}clone(){return console.warn(".clone() is not implemented for "+this.declaredClass),null}clearCache(){this.notifyChange("cache")}getCacheValue(e){return this.cache[e]}setCacheValue(e,t){this.cache[e]=t}};(0,r.Cg)([(0,o.MZ)()],l.prototype,"type",void 0),(0,r.Cg)([(0,o.MZ)({readOnly:!0})],l.prototype,"cache",null),(0,r.Cg)([(0,o.MZ)({readOnly:!0})],l.prototype,"extent",null),(0,r.Cg)([(0,o.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],l.prototype,"hasM",void 0),(0,r.Cg)([(0,o.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],l.prototype,"hasZ",void 0),(0,r.Cg)([(0,o.MZ)({type:s.A,json:{write:!0},value:s.A.WGS84})],l.prototype,"spatialReference",void 0),(0,r.Cg)([(0,a.w)("spatialReference")],l.prototype,"readSpatialReference",null),l=(0,r.Cg)([(0,o.$K)("esri.geometry.Geometry")],l)},86738(e,t,n){n.d(t,{A:()=>w});var r=n(5482),i=n(69622),o=n(53966),s=n(91429),a=n(56507),l=n(91075),c=n(16930),u=n(21325),h=n(28735);function d({x:e,y:t,spatialReference:n},r=[0,0]){if(n){if((0,u.K8)(n))return(0,h.tD)(e,t,r);if((0,u.EA)(n))return r[0]=e,r[1]=t,r}return null}const p=[0,0];var f,y=n(43937),m=n(36005);const g=[0,0];function b(e){return e&&("esri.geometry.SpatialReference"===e.declaredClass||null!=e.wkid)}let w=f=class extends l.A{static copy(e,t){t._set("x",e._get("x")),t._set("y",e._get("y")),t._set("z",e._get("z")),t._set("m",e._get("m"));const n=e._get("spatialReference");t._set("spatialReference",i.A.isFrozen(n)?n:n.clone())}constructor(...e){super(...e),this.x=0,this.y=0,this.z=void 0,this.m=void 0,this.type="point"}normalizeCtorArgs(e,t,n,r,i){let s;if(Array.isArray(e))s=e,i=t,e=s[0],t=s[1],n=s[2],r=s[3];else if(e&&"object"==typeof e){if(s=e,e=null!=s.x?s.x:s.longitude,t=null!=s.y?s.y:s.latitude,n=s.z,r=s.m,(i=s.spatialReference)&&"esri.geometry.SpatialReference"!==i.declaredClass&&(i=new c.A(i)),null!=s.longitude||null!=s.latitude)if(null==s.longitude)o.A.getLogger(this).warn(".longitude=","Latitude was defined without longitude");else if(null==s.latitude)o.A.getLogger(this).warn(".latitude=","Longitude was defined without latitude");else if(!s.declaredClass&&i?.isWebMercator){const n=(0,h.je)(s.longitude,s.latitude,g);e=n[0],t=n[1]}}else b(n)?(i=n,n=null):b(r)&&(i=r,r=null);const a={x:e,y:t};return null==a.x&&null!=a.y?o.A.getLogger(this).warn(".y=","Y coordinate was defined without an X coordinate"):null==a.y&&null!=a.x&&o.A.getLogger(this).warn(".x=","X coordinate was defined without a Y coordinate"),null!=i&&(a.spatialReference=i),null!=n&&(a.z=n),null!=r&&(a.m=r),a}get cache(){return this.commitProperty("x"),this.commitProperty("y"),this.commitProperty("z"),this.commitProperty("m"),this.commitProperty("spatialReference"),{}}get hasM(){return void 0!==this.m}set hasM(e){e!==(void 0!==this._get("m"))&&(this._set("m",e?0:void 0),this._set("hasM",e))}get hasZ(){return void 0!==this.z}set hasZ(e){e!==(void 0!==this._get("z"))&&(this._set("z",e?0:void 0),this._set("hasZ",e))}get latitude(){return d(this,p)?.[1]??null}set latitude(e){const{spatialReference:t,x:n}=this;null!=e&&t&&(t.isWebMercator?this._set("y",(0,h.je)(n,e,g)[1]):t.isGeographic&&this._set("y",e),this._set("latitude",e))}get longitude(){return d(this,p)?.[0]??null}set longitude(e){const{y:t,spatialReference:n}=this;null!=e&&n&&(n.isWebMercator?this._set("x",(0,h.je)(e,t,g)[0]):n.isGeographic&&this._set("x",e),this._set("longitude",e))}writeX(e,t,n){t[n]=isNaN(e)?"NaN":e}readX(e){return"string"==typeof e?NaN:e}clone(){const e=new f;return e.x=this.x,e.y=this.y,e.z=this.z,e.m=this.m,e.spatialReference=this.spatialReference,e}copy(e){return f.copy(e,this),this}equals(e){if(null==e)return!1;const{x:t,y:n,z:r,m:i,spatialReference:o}=this,{z:s,m:a}=e;let{x:l,y:c,spatialReference:u}=e;if(!o.equals(u))if(o.isWebMercator&&u.isWGS84)[l,c]=(0,h.je)(l,c),u=o;else{if(!o.isWGS84||!u.isWebMercator)return!1;[l,c]=(0,h.tD)(l,c),u=o}return t===l&&n===c&&r===s&&i===a&&o.wkid===u.wkid}offset(e,t,n){return this.x+=e,this.y+=t,null!=n&&(this.z=(this.z??0)+n),this}normalize(){if(!this.spatialReference)return this;const e=(0,u.Vp)(this.spatialReference);if(!e)return this;let t=this.x;const[n,r]=e.valid,i=2*r;let o;return t>r?(o=Math.ceil(Math.abs(t-r)/i),t-=o*i):t<n&&(o=Math.ceil(Math.abs(t-n)/i),t+=o*i),this._set("x",t),this}distance(e){return function(e,t){const n=e.x-t.x,r=e.y-t.y,i=null!=e.z&&null!=t.z?e.z-t.z:0;return Math.sqrt(n*n+r*r+i*i)}(this,e)}toArray(){const e=this.hasZ,t=this.hasM;return e&&t?[this.x,this.y,this.z,this.m]:e?[this.x,this.y,this.z]:t?[this.x,this.y,this.m]:[this.x,this.y]}toJSON(e){return this.write({},e)}};(0,r.Cg)([(0,s.MZ)({readOnly:!0})],w.prototype,"cache",null),(0,r.Cg)([(0,s.MZ)({type:Boolean,json:{read:!1,write:{enabled:!1,overridePolicy:null}}})],w.prototype,"hasM",null),(0,r.Cg)([(0,s.MZ)({type:Boolean,json:{read:!1,write:{enabled:!1,overridePolicy:null}}})],w.prototype,"hasZ",null),(0,r.Cg)([(0,s.MZ)({type:Number})],w.prototype,"latitude",null),(0,r.Cg)([(0,s.MZ)({type:Number})],w.prototype,"longitude",null),(0,r.Cg)([(0,s.MZ)({type:Number,json:{type:[Number,String],write:{isRequired:!0,allowNull:!0}}}),(0,s.wg)(e=>isNaN(e)?e:(0,a.GB)(e))],w.prototype,"x",void 0),(0,r.Cg)([(0,y.K)("x")],w.prototype,"writeX",null),(0,r.Cg)([(0,m.w)("x")],w.prototype,"readX",null),(0,r.Cg)([(0,s.MZ)({type:Number,json:{write:!0}})],w.prototype,"y",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,json:{write:{overridePolicy(){return{enabled:this.hasZ}}}}})],w.prototype,"z",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,json:{write:{overridePolicy(){return{enabled:this.hasM}}}}})],w.prototype,"m",void 0),w=f=(0,r.Cg)([(0,s.$K)("esri.geometry.Point")],w),w.prototype.toJSON.isDefaultToJSON=!0},21276(e,t,n){n.d(t,{H:()=>o,f:()=>i});var r=n(49186);function i(e){if(e&&"object"==typeof e&&"type"in e&&"mesh"===e.type)throw new r.A("internal:mesh","Mesh geometries are not supported for this operation")}function o(e){e.forEach(i)}},60408(e,t,n){function r(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function i(e){return void 0!==e.points}function o(e){return void 0!==e.x&&void 0!==e.y}function s(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function c(e){return e?o(e)?"esriGeometryPoint":s(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":r(e)?"esriGeometryEnvelope":i(e)?"esriGeometryMultipoint":null:null}function u(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function h(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}n.d(t,{$B:()=>c,Bi:()=>a,Pv:()=>u,Rg:()=>s,U9:()=>i,W0:()=>h,ZC:()=>r,fT:()=>o,uW:()=>l})},65864(e,t,n){n.d(t,{rS:()=>u,xD:()=>d});var r=n(5443),i=n(91075),o=n(48526),s=n(86738),a=n(39829),l=n(82799),c=n(60408);function u(e){return null==e?null:e instanceof i.A?e:(0,c.fT)(e)?s.A.fromJSON(e):(0,c.Rg)(e)?l.A.fromJSON(e):(0,c.Bi)(e)?a.A.fromJSON(e):(0,c.U9)(e)?o.A.fromJSON(e):(0,c.ZC)(e)?r.A.fromJSON(e):null}const h={esriGeometryPoint:s.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:r.A,esriGeometryMultipoint:o.A,esriGeometryMultiPatch:a.A};function d(e){return e&&h[e]||null}},28735(e,t,n){n.d(t,{Cv:()=>m,Gh:()=>w,ci:()=>x,je:()=>g,jg:()=>h,tD:()=>b,y7:()=>y,yw:()=>u});var r=n(4718),i=n(21276),o=n(16930),s=n(79258),a=n(21325);function l(e){return 57.29577951308232*e}function c(e){return.017453292519943*e}function u(e){return e/s.$O.radius}function h(e){return Math.PI/2-2*Math.atan(Math.exp(-e/s.$O.radius))}function d(e){return null!=e.wkid||null!=e.wkt}const p=[0,0];function f(e,t,n,r,i){const o=e,s=i;if(s.spatialReference=n,"x"in o&&"x"in s)[s.x,s.y]=t(o.x,o.y,p,r);else if("xmin"in o&&"xmin"in s)[s.xmin,s.ymin]=t(o.xmin,o.ymin,p,r),[s.xmax,s.ymax]=t(o.xmax,o.ymax,p,r);else if("paths"in o&&"paths"in s||"rings"in o&&"rings"in s){const e="paths"in o?o.paths:o.rings,n=[];let i;for(let o=0;o<e.length;o++){const s=e[o];i=[],n.push(i);for(let e=0;e<s.length;e++)i.push(t(s[e][0],s[e][1],[0,0],r)),s[e].length>2&&i[e].push(s[e][2]),s[e].length>3&&i[e].push(s[e][3])}"paths"in s?s.paths=n:s.rings=n}else if("points"in o&&"points"in s){const e=o.points,n=[];for(let i=0;i<e.length;i++)n[i]=t(e[i][0],e[i][1],[0,0],r),e[i].length>2&&n[i].push(e[i][2]),e[i].length>3&&n[i].push(e[i][3]);s.points=n}return i}function y(e,t){const n=e&&(d(e)?e:e.spatialReference),r=t&&(d(t)?t:t.spatialReference);return!(e&&"type"in e&&"mesh"===e.type||t&&"type"in t&&"mesh"===t.type||!n||!r)&&(!!(0,a.aI)(r,n)||(0,a.K8)(r)&&(0,a.oT)(n)||(0,a.K8)(n)&&(0,a.oT)(r))}function m(e,t){if(null==e)return null;const n=e.spatialReference,i=t&&(d(t)?t:t.spatialReference);return y(n,i)?(0,a.aI)(n,i)?(0,r.o8)(e):(0,a.K8)(i)?f(e,g,o.A.WebMercator,!1,(0,r.o8)(e)):(0,a.oT)(i)?f(e,b,o.A.WGS84,!1,(0,r.o8)(e)):null:null}function g(e,t,n=[0,0]){t>89.99999?t=89.99999:t<-89.99999&&(t=-89.99999);const r=c(t);return n[0]=c(e)*s.$O.radius,n[1]=s.$O.halfSemiMajorAxis*Math.log((1+Math.sin(r))/(1-Math.sin(r))),n}function b(e,t,n=[0,0],r=!1){if(e===a.Mc[0])n[0]=-180;else if(e===a.Mc[1])n[0]=180;else{const t=l(e/s.$O.radius);n[0]=r?t:t-360*Math.floor((t+180)/360)}return n[1]=l(Math.PI/2-2*Math.atan(Math.exp(-t/s.$O.radius))),n}function w(e,t=!1,n=(0,r.o8)(e)){return(0,i.f)(e),(0,i.f)(n),f(e,g,o.A.WebMercator,t,n)}function x(e,t=!1,n=(0,r.o8)(e)){return(0,i.f)(e),(0,i.f)(n),f(e,b,o.A.WGS84,t,n)}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5750],{5482(e,t,n){function r(e,t,n,r){var i,o=arguments.length,s=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,n,s):i(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function i(e,t,n){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var r,i;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(void 0===r){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],n&&(i=r)}if("function"!=typeof r)throw new TypeError("Object not disposable.");i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}n.d(t,{Cg:()=>r,hk:()=>s,mS:()=>i}),Object.create,Object.create;var o="function"==typeof SuppressedError?SuppressedError:function(e,t,n){var r=new Error(n);return r.name="SuppressedError",r.error=e,r.suppressed=t,r};function s(e){function t(t){e.error=e.hasError?new o(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}var n,r=0;return function i(){for(;n=e.stack.pop();)try{if(!n.async&&1===r)return r=0,e.stack.push(n),Promise.resolve().then(i);if(n.dispose){var o=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(o).then(i,function(e){return t(e),i()})}else r|=1}catch(e){t(e)}if(1===r)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}()}},1123(e,t,n){n.r(t),n.d(t,{invokeGeometryOp:()=>a});var r=n(65864);function i(e,t){let n;return{loaded:!1,load:()=>n??=t().then(t=>{s[e]={loaded:!0,execute:t}})}}function o(e){return null==e?null:e.toJSON()}const s={disjoint:i("disjoint",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4579)]).then(n.bind(n,7978)).then(e=>e.execute)),intersects:i("intersects",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6033)]).then(n.bind(n,55284)).then(e=>e.execute)),touches:i("touches",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(368)]).then(n.bind(n,83547)).then(e=>e.execute)),crosses:i("crosses",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4935)]).then(n.bind(n,85672)).then(e=>e.execute)),within:i("within",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4168)]).then(n.bind(n,85445)).then(e=>e.execute)),contains:i("contains",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(2990)]).then(n.bind(n,51508)).then(e=>e.execute)),overlaps:i("overlaps",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(923)]).then(n.bind(n,46178)).then(e=>e.execute)),equals:i("equals",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4795)]).then(n.bind(n,45328));return(t,n)=>e.execute((0,r.rS)(t),(0,r.rS)(n))}),relate:i("relate",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(891)]).then(n.bind(n,43628));return(t,n,i)=>e.execute((0,r.rS)(t),(0,r.rS)(n),i)}),intersection:i("intersection",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(3902)]).then(n.bind(n,49263)).then(e=>e.execute)),union:i("union",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6708)]).then(n.bind(n,56339)).then(e=>e.executeMany)),difference:i("difference",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(7217)]).then(n.bind(n,93054));return(t,n)=>o(e.execute((0,r.rS)(t),(0,r.rS)(n)))}),symmetricDifference:i("symmetricDifference",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1812)]).then(n.bind(n,89041));return(t,n)=>o(e.execute((0,r.rS)(t),(0,r.rS)(n)))}),clip:i("clip",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(7772)]).then(n.bind(n,24815));return(t,n)=>o(e.execute((0,r.rS)(t),(0,r.rS)(n)))}),cut:i("cut",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1512)]).then(n.bind(n,37817));return(t,n)=>e.execute((0,r.rS)(t),(0,r.rS)(n)).map(e=>o(e))}),area:i("area",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(9835)]).then(n.bind(n,95624)),{convertFromSpatialReferenceUnit:t,toAreaUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,o)=>{const s=e.execute((0,r.rS)(n));return t(n.spatialReference,i(o),s)}}),geodeticArea:i("geodeticArea",async()=>{const e=await n.e(9506).then(n.bind(n,89506)),{convert:t,squareMeters:i,toAreaUnit:o}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,s,a)=>{const l=e.execute((0,r.rS)(n),{curveType:a});return t(i,o(s),l)}}),length:i("length",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(8679)]).then(n.bind(n,51190)),{convertFromSpatialReferenceUnit:t,toLengthUnit:r}=await n.e(547).then(n.bind(n,40547));return(n,i)=>{const o=e.execute(n);return t(n.spatialReference,r(i),o)}}),geodeticLength:i("geodeticLength",async()=>{const e=await n.e(427).then(n.bind(n,40427)),{convert:t,meters:i,toLengthUnit:o}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,s,a)=>{const l=e.execute((0,r.rS)(n),{curveType:a});return t(i,o(s),l)}}),distance:i("distance",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1965)]).then(n.bind(n,77038)),{convertFromSpatialReferenceUnit:t,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,o,s)=>{const a=e.execute((0,r.rS)(n),(0,r.rS)(o));return t(n.spatialReference,i(s),a)}}),densify:i("densify",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(4642)]).then(n.bind(n,88411)),{convertToSpatialReferenceUnit:t,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,s,a)=>(s=t(i(a),n.spatialReference,s),o(e.execute((0,r.rS)(n),s)))}),geodeticDensify:i("geodeticDensify",async()=>{const e=await n.e(4097).then(n.bind(n,64097)),{convert:t,meters:i,toLengthUnit:s}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,a,l,c)=>(a=t(s(l),i,a),o(e.execute((0,r.rS)(n),a,{curveType:c})))}),generalize:i("generalize",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6276)]).then(n.bind(n,60591)),{convertToSpatialReferenceUnit:t,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return(n,s,a,l)=>(s=t(i(a),n.spatialReference,s),o(e.execute((0,r.rS)(n),s,l)))}),buffer:i("buffer",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1352),n.e(1797)]).then(n.bind(n,46160)),{convertToSpatialReferenceUnit:t,toLengthUnit:r}=await n.e(547).then(n.bind(n,40547));return(n,i,o)=>(i=t(r(o),n.spatialReference,i),e.execute(n,i))}),geodesicBuffer:i("geodesicBuffer",async()=>{const e=await n.e(9159).then(n.bind(n,49159)),{convert:t,meters:r,toLengthUnit:i}=await n.e(547).then(n.bind(n,40547));return await e.load(),(n,o,s,a)=>(o=t(i(s),r,o),e.execute(n,o,{curveType:a}))}),offset:i("offset",async()=>{const{executeOffsetJson:e}=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(5020)]).then(n.bind(n,85549));return e}),rotate:i("rotate",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(2260)]).then(n.bind(n,50647)),{default:t}=await Promise.all([n.e(3661),n.e(1878),n.e(8812)]).then(n.bind(n,78812));return(n,i,s,a)=>{const l=(new t).rotate(i,s,a);return o(e.execute((0,r.rS)(n),l))}}),centroid:i("centroid",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1054)]).then(n.bind(n,17077));return t=>o(e.execute((0,r.rS)(t)))}),labelPoint:i("labelPoint",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6342),n.e(7809)]).then(n.bind(n,91421));return t=>o(e.execute((0,r.rS)(t)))}),simplify:i("simplify",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(3456)]).then(n.bind(n,3637)).then(e=>e.execute)),isSelfIntersecting:i("isSelfIntersecting",async()=>{const{NonSimpleResult:e}=await n.e(4383).then(n.bind(n,24383)),t=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6861)]).then(n.bind(n,5874)),i=new Set([5,6,7,10,11,12]);return n=>{const o=new e;return!t.isSimple((0,r.rS)(n),o)&&i.has(o.m_reason)}}),isSimple:i("isSimple",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(3456)]).then(n.bind(n,3637)).then(e=>e.isSimple)),convexHull:i("convexHull",()=>Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6491)]).then(n.bind(n,55666)).then(e=>e.execute)),getNearestCoordinate:i("getNearestCoordinate",async()=>{const e=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6342),n.e(3514)]).then(n.bind(n,48032));return(t,n,i)=>{const s=e.getNearestCoordinate((0,r.rS)(t),(0,r.rS)(n),i);return{...s,coordinate:o(s.coordinate)}}}),getNearestVertex:i("getNearestVertex",async()=>{const{executeNearestVertex:e}=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(6342),n.e(2266)]).then(n.bind(n,64064));return(t,n)=>{const i=e((0,r.rS)(t),(0,r.rS)(n));return null==i?null:{...i,coordinate:o(i.coordinate)}}})};function a(e,t){const n=s[e];return n.loaded?n.execute.apply(void 0,t):n.load().then(()=>a(e,t))}},34304(e,t,n){n.d(t,{DF:()=>l,FD:()=>i,Ov:()=>o,ct:()=>c});let r=1e-6;function i(){return r}const o=Math.random,s=Math.PI/180,a=180/Math.PI;function l(e){return e*s}function c(e){return e*a}Object.freeze(Object.defineProperty({__proto__:null,RANDOM:o,equals:function(e,t){return Math.abs(e-t)<=r*Math.max(1,Math.abs(e),Math.abs(t))},getEpsilon:i,setEpsilon:function(e){r=e},toDegree:c,toRadian:l},Symbol.toStringTag,{value:"Module"}))},91075(e,t,n){n.d(t,{A:()=>l});var r=n(5482),i=n(25482),o=n(91429),s=n(16930),a=n(36005);let l=class extends i.o{constructor(...e){super(...e),this.type=null,this.hasM=!1,this.hasZ=!1,this.spatialReference=s.A.WGS84}get cache(){return this.commitProperty("spatialReference"),{}}get extent(){return null}readSpatialReference(e,t){if(e instanceof s.A)return e;if(null!=e){const n=new s.A;return n.read(e,t),n}return e}clone(){return console.warn(".clone() is not implemented for "+this.declaredClass),null}clearCache(){this.notifyChange("cache")}getCacheValue(e){return this.cache[e]}setCacheValue(e,t){this.cache[e]=t}};(0,r.Cg)([(0,o.MZ)()],l.prototype,"type",void 0),(0,r.Cg)([(0,o.MZ)({readOnly:!0})],l.prototype,"cache",null),(0,r.Cg)([(0,o.MZ)({readOnly:!0})],l.prototype,"extent",null),(0,r.Cg)([(0,o.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],l.prototype,"hasM",void 0),(0,r.Cg)([(0,o.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],l.prototype,"hasZ",void 0),(0,r.Cg)([(0,o.MZ)({type:s.A,json:{write:!0},value:s.A.WGS84})],l.prototype,"spatialReference",void 0),(0,r.Cg)([(0,a.w)("spatialReference")],l.prototype,"readSpatialReference",null),l=(0,r.Cg)([(0,o.$K)("esri.geometry.Geometry")],l)},86738(e,t,n){n.d(t,{A:()=>w});var r=n(5482),i=n(69622),o=n(53966),s=n(91429),a=n(56507),l=n(91075),c=n(16930),u=n(21325),h=n(28735);function d({x:e,y:t,spatialReference:n},r=[0,0]){if(n){if((0,u.K8)(n))return(0,h.tD)(e,t,r);if((0,u.EA)(n))return r[0]=e,r[1]=t,r}return null}const p=[0,0];var f,y=n(43937),m=n(36005);const g=[0,0];function b(e){return e&&("esri.geometry.SpatialReference"===e.declaredClass||null!=e.wkid)}let w=f=class extends l.A{static copy(e,t){t._set("x",e._get("x")),t._set("y",e._get("y")),t._set("z",e._get("z")),t._set("m",e._get("m"));const n=e._get("spatialReference");t._set("spatialReference",i.A.isFrozen(n)?n:n.clone())}constructor(...e){super(...e),this.x=0,this.y=0,this.z=void 0,this.m=void 0,this.type="point"}normalizeCtorArgs(e,t,n,r,i){let s;if(Array.isArray(e))s=e,i=t,e=s[0],t=s[1],n=s[2],r=s[3];else if(e&&"object"==typeof e){if(s=e,e=null!=s.x?s.x:s.longitude,t=null!=s.y?s.y:s.latitude,n=s.z,r=s.m,(i=s.spatialReference)&&"esri.geometry.SpatialReference"!==i.declaredClass&&(i=new c.A(i)),null!=s.longitude||null!=s.latitude)if(null==s.longitude)o.A.getLogger(this).warn(".longitude=","Latitude was defined without longitude");else if(null==s.latitude)o.A.getLogger(this).warn(".latitude=","Longitude was defined without latitude");else if(!s.declaredClass&&i?.isWebMercator){const n=(0,h.je)(s.longitude,s.latitude,g);e=n[0],t=n[1]}}else b(n)?(i=n,n=null):b(r)&&(i=r,r=null);const a={x:e,y:t};return null==a.x&&null!=a.y?o.A.getLogger(this).warn(".y=","Y coordinate was defined without an X coordinate"):null==a.y&&null!=a.x&&o.A.getLogger(this).warn(".x=","X coordinate was defined without a Y coordinate"),null!=i&&(a.spatialReference=i),null!=n&&(a.z=n),null!=r&&(a.m=r),a}get cache(){return this.commitProperty("x"),this.commitProperty("y"),this.commitProperty("z"),this.commitProperty("m"),this.commitProperty("spatialReference"),{}}get hasM(){return void 0!==this.m}set hasM(e){e!==(void 0!==this._get("m"))&&(this._set("m",e?0:void 0),this._set("hasM",e))}get hasZ(){return void 0!==this.z}set hasZ(e){e!==(void 0!==this._get("z"))&&(this._set("z",e?0:void 0),this._set("hasZ",e))}get latitude(){return d(this,p)?.[1]??null}set latitude(e){const{spatialReference:t,x:n}=this;null!=e&&t&&(t.isWebMercator?this._set("y",(0,h.je)(n,e,g)[1]):t.isGeographic&&this._set("y",e),this._set("latitude",e))}get longitude(){return d(this,p)?.[0]??null}set longitude(e){const{y:t,spatialReference:n}=this;null!=e&&n&&(n.isWebMercator?this._set("x",(0,h.je)(e,t,g)[0]):n.isGeographic&&this._set("x",e),this._set("longitude",e))}writeX(e,t,n){t[n]=isNaN(e)?"NaN":e}readX(e){return"string"==typeof e?NaN:e}clone(){const e=new f;return e.x=this.x,e.y=this.y,e.z=this.z,e.m=this.m,e.spatialReference=this.spatialReference,e}copy(e){return f.copy(e,this),this}equals(e){if(null==e)return!1;const{x:t,y:n,z:r,m:i,spatialReference:o}=this,{z:s,m:a}=e;let{x:l,y:c,spatialReference:u}=e;if(!o.equals(u))if(o.isWebMercator&&u.isWGS84)[l,c]=(0,h.je)(l,c),u=o;else{if(!o.isWGS84||!u.isWebMercator)return!1;[l,c]=(0,h.tD)(l,c),u=o}return t===l&&n===c&&r===s&&i===a&&o.wkid===u.wkid}offset(e,t,n){return this.x+=e,this.y+=t,null!=n&&(this.z=(this.z??0)+n),this}normalize(){if(!this.spatialReference)return this;const e=(0,u.Vp)(this.spatialReference);if(!e)return this;let t=this.x;const[n,r]=e.valid,i=2*r;let o;return t>r?(o=Math.ceil(Math.abs(t-r)/i),t-=o*i):t<n&&(o=Math.ceil(Math.abs(t-n)/i),t+=o*i),this._set("x",t),this}distance(e){return function(e,t){const n=e.x-t.x,r=e.y-t.y,i=null!=e.z&&null!=t.z?e.z-t.z:0;return Math.sqrt(n*n+r*r+i*i)}(this,e)}toArray(){const e=this.hasZ,t=this.hasM;return e&&t?[this.x,this.y,this.z,this.m]:e?[this.x,this.y,this.z]:t?[this.x,this.y,this.m]:[this.x,this.y]}toJSON(e){return this.write({},e)}};(0,r.Cg)([(0,s.MZ)({readOnly:!0})],w.prototype,"cache",null),(0,r.Cg)([(0,s.MZ)({type:Boolean,json:{read:!1,write:{enabled:!1,overridePolicy:null}}})],w.prototype,"hasM",null),(0,r.Cg)([(0,s.MZ)({type:Boolean,json:{read:!1,write:{enabled:!1,overridePolicy:null}}})],w.prototype,"hasZ",null),(0,r.Cg)([(0,s.MZ)({type:Number})],w.prototype,"latitude",null),(0,r.Cg)([(0,s.MZ)({type:Number})],w.prototype,"longitude",null),(0,r.Cg)([(0,s.MZ)({type:Number,json:{type:[Number,String],write:{isRequired:!0,allowNull:!0}}}),(0,s.wg)(e=>isNaN(e)?e:(0,a.GB)(e))],w.prototype,"x",void 0),(0,r.Cg)([(0,y.K)("x")],w.prototype,"writeX",null),(0,r.Cg)([(0,m.w)("x")],w.prototype,"readX",null),(0,r.Cg)([(0,s.MZ)({type:Number,json:{write:!0}})],w.prototype,"y",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,json:{write:{overridePolicy(){return{enabled:this.hasZ}}}}})],w.prototype,"z",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,json:{write:{overridePolicy(){return{enabled:this.hasM}}}}})],w.prototype,"m",void 0),w=f=(0,r.Cg)([(0,s.$K)("esri.geometry.Point")],w),w.prototype.toJSON.isDefaultToJSON=!0},21276(e,t,n){n.d(t,{H:()=>o,f:()=>i});var r=n(49186);function i(e){if(e&&"object"==typeof e&&"type"in e&&"mesh"===e.type)throw new r.A("internal:mesh","Mesh geometries are not supported for this operation")}function o(e){e.forEach(i)}},60408(e,t,n){function r(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function i(e){return void 0!==e.points}function o(e){return void 0!==e.x&&void 0!==e.y}function s(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function c(e){return e?o(e)?"esriGeometryPoint":s(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":r(e)?"esriGeometryEnvelope":i(e)?"esriGeometryMultipoint":null:null}function u(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function h(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}n.d(t,{$B:()=>c,Bi:()=>a,Pv:()=>u,Rg:()=>s,U9:()=>i,W0:()=>h,ZC:()=>r,fT:()=>o,uW:()=>l})},65864(e,t,n){n.d(t,{rS:()=>u,xD:()=>d});var r=n(5443),i=n(91075),o=n(48526),s=n(86738),a=n(39829),l=n(82799),c=n(60408);function u(e){return null==e?null:e instanceof i.A?e:(0,c.fT)(e)?s.A.fromJSON(e):(0,c.Rg)(e)?l.A.fromJSON(e):(0,c.Bi)(e)?a.A.fromJSON(e):(0,c.U9)(e)?o.A.fromJSON(e):(0,c.ZC)(e)?r.A.fromJSON(e):null}const h={esriGeometryPoint:s.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:r.A,esriGeometryMultipoint:o.A,esriGeometryMultiPatch:a.A};function d(e){return e&&h[e]||null}},28735(e,t,n){n.d(t,{Cv:()=>m,Gh:()=>w,ci:()=>x,je:()=>g,jg:()=>h,tD:()=>b,y7:()=>y,yw:()=>u});var r=n(4718),i=n(21276),o=n(16930),s=n(79258),a=n(21325);function l(e){return 57.29577951308232*e}function c(e){return.017453292519943*e}function u(e){return e/s.$O.radius}function h(e){return Math.PI/2-2*Math.atan(Math.exp(-e/s.$O.radius))}function d(e){return null!=e.wkid||null!=e.wkt}const p=[0,0];function f(e,t,n,r,i){const o=e,s=i;if(s.spatialReference=n,"x"in o&&"x"in s)[s.x,s.y]=t(o.x,o.y,p,r);else if("xmin"in o&&"xmin"in s)[s.xmin,s.ymin]=t(o.xmin,o.ymin,p,r),[s.xmax,s.ymax]=t(o.xmax,o.ymax,p,r);else if("paths"in o&&"paths"in s||"rings"in o&&"rings"in s){const e="paths"in o?o.paths:o.rings,n=[];let i;for(let o=0;o<e.length;o++){const s=e[o];i=[],n.push(i);for(let e=0;e<s.length;e++)i.push(t(s[e][0],s[e][1],[0,0],r)),s[e].length>2&&i[e].push(s[e][2]),s[e].length>3&&i[e].push(s[e][3])}"paths"in s?s.paths=n:s.rings=n}else if("points"in o&&"points"in s){const e=o.points,n=[];for(let i=0;i<e.length;i++)n[i]=t(e[i][0],e[i][1],[0,0],r),e[i].length>2&&n[i].push(e[i][2]),e[i].length>3&&n[i].push(e[i][3]);s.points=n}return i}function y(e,t){const n=e&&(d(e)?e:e.spatialReference),r=t&&(d(t)?t:t.spatialReference);return!(e&&"type"in e&&"mesh"===e.type||t&&"type"in t&&"mesh"===t.type||!n||!r)&&(!!(0,a.aI)(r,n)||(0,a.K8)(r)&&(0,a.oT)(n)||(0,a.K8)(n)&&(0,a.oT)(r))}function m(e,t){if(null==e)return null;const n=e.spatialReference,i=t&&(d(t)?t:t.spatialReference);return y(n,i)?(0,a.aI)(n,i)?(0,r.o8)(e):(0,a.K8)(i)?f(e,g,o.A.WebMercator,!1,(0,r.o8)(e)):(0,a.oT)(i)?f(e,b,o.A.WGS84,!1,(0,r.o8)(e)):null:null}function g(e,t,n=[0,0]){t>89.99999?t=89.99999:t<-89.99999&&(t=-89.99999);const r=c(t);return n[0]=c(e)*s.$O.radius,n[1]=s.$O.halfSemiMajorAxis*Math.log((1+Math.sin(r))/(1-Math.sin(r))),n}function b(e,t,n=[0,0],r=!1){if(e===a.Mc[0])n[0]=-180;else if(e===a.Mc[1])n[0]=180;else{const t=l(e/s.$O.radius);n[0]=r?t:t-360*Math.floor((t+180)/360)}return n[1]=l(Math.PI/2-2*Math.atan(Math.exp(-t/s.$O.radius))),n}function w(e,t=!1,n=(0,r.o8)(e)){return(0,i.f)(e),(0,i.f)(n),f(e,g,o.A.WebMercator,t,n)}function x(e,t=!1,n=(0,r.o8)(e)){return(0,i.f)(e),(0,i.f)(n),f(e,b,o.A.WGS84,t,n)}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1003],{1003(e,t,s){s.r(t),s.d(t,{default:()=>me});var i=s(49186),n=s(5482),a=s(91429),r=s(49859),o=s(68197),l=s(5443),f=s(16930),c=s(73444),u=s(94778),h=s(14140);function p(e){return["x","e","east","long","longitude"].includes(e.toLowerCase())}function d(e){return["y","n","west","lat","latitude"].includes(e.toLowerCase())}function m(e){const{axes:t}=e.domain,s=Object.keys(t),i=[],n=[];let a=-1,r=-1,o=[];for(let e=0;e<s.length;e++){const l=s[e];p(l)?a=e:d(l)&&(r=e);const f=t[l],c=[];if("values"in f){f.values.forEach(e=>c.push("string"==typeof e?new Date(e).getTime():e));const e=c[1]-c[0];i.push([c[0]-.5*e,c[c.length-1]+.5*e]),n.push(e)}else{const{start:e,stop:t,num:s}=f,a=(t-e)/(s-1);i.push([e-.5*a,t+.5*a]),n.push(a);for(let t=0;t<s;t++)c.push(e+a*t)}o.push({name:l,values:c,extent:[c[0],c[c.length-1]]})}a>-1&&-1===r?r=0===a?1:0:r>-1&&-1===a?a=0===r?1:0:-1===r&&-1===a&&(a=0,r=1),o=o.filter((e,t)=>!(t===a||t===r));const{referencing:c}=e.domain,u=c.find(e=>e.coordinates.includes(s[a])).system.id,h=u?.slice(u.lastIndexOf("/")+1),m=null==h||"CRS84"===h?4326:Number(h),g=new f.A({wkid:m}),[y,x]=i[a],[w,I]=i[r],v=new l.A({xmin:y,xmax:x,ymin:w,ymax:I,spatialReference:g});return{width:Math.round(v.width/n[a]),height:Math.round(v.height/n[r]),extent:v,dimensions:o}}function g(e){const t=(0,c.lR)();return t?e[t]??Object.values(e)[0]:Object.values(e)[0]}function y(){return Math.round(255*Math.random())}function x(e){const t={},{parameters:s}=e;if(!s)return t;for(const[e,i]of Object.entries(s)){const{type:s,description:n,unit:a,categoryEncoding:r,observedProperty:l}=i;if("Parameter"===s&&(t[e]={},n&&(t[e].description=g(n)),a&&(t[e].unit=a.label?g(a.label):null,t[e].symbol=a.symbol?.value),r)){const s=Object.entries(r).map((e,t)=>({OID:t,Value:Number(e[1]),ClassName:e[0].slice(e[0].lastIndexOf("/")+1),Count:1}));let i=!1;l?.categories?.length&&(l.categories.forEach(e=>{if(!e.id)return;const t=e.id.slice(e.id.lastIndexOf("/")+1),n=s.find(e=>e.ClassName===t);if(!n)return;const a=e.label?g(e.label):null;if(n.Label=a,e.preferredColor){const t=o.A.fromHex(e.preferredColor);t&&(i=!0,n.Red=t.r,n.Green=t.g,n.Blue=t.b)}}),i&&s.forEach(e=>{null==e.Red&&(e.Red=y(),e.Green=y(),e.Blue=y())}));const n={objectIdFieldName:"",fields:[{name:"OID",type:"esriFieldTypeOID",alias:"OID",domain:null},{name:"Value",type:"esriFieldTypeInteger",alias:"Value",domain:null},{name:"Count",type:"esriFieldTypeDouble",alias:"Count",domain:null},{name:"ClassName",type:"esriFieldTypeString",alias:"ClassName",domain:null,length:50},{name:"Label",type:"esriFieldTypeString",alias:"Label",domain:null,length:50}],features:s.map(e=>({attributes:e}))};i&&n.fields.push({name:"Red",type:"esriFieldTypeInteger",alias:"Red",domain:null},{name:"Green",type:"esriFieldTypeInteger",alias:"Green",domain:null},{name:"Blue",type:"esriFieldTypeInteger",alias:"Blue",domain:null}),t[e].attributeTable=n}}return t}function w(e){let t=Number.MAX_VALUE,s=-Number.MAX_VALUE;for(let i=0;i<e.length;i++){const n=e[i];null!=n&&(n<t&&(t=n),n>s&&(s=n))}return(0,u.X1)(t,s)}function I(e,t,s){const i=e.map((e,s)=>({name:e,count:t[s]})).sort((e,t)=>e.name>t.name?-1:1),n=(a=1,e=>a*=e.count);var a;const r=[...i.slice(1),{name:"",count:1}].reverse().map(n).reverse();let o=0;for(let n=e.length-1;n>=0;n--)o+=r[i.findIndex(({name:t})=>t===e[n])]*(s%t[n]),s=Math.floor(s/t[n]);return o}var v=s(17676),C=s(4366),b=s(47520),T=s(51927),S=s(45617),A=s(87186);let R=class extends r.A{constructor(){super(...arguments),this.datasetFormat="MEMORY",this.source=null}get url(){return""}fetchRawTile(e,t,s,i={}){if(!this._pixelBlockTiles){const{rasterInfo:n}=this,[a,r]=n.storageInfo.tileInfo.size,{sliceId:o}=i,{pixelBlocks:l}=this.source,f={pixelBlock:null==o?l[0]:l[o],useBilinear:"thematic"!==n.dataType,tileSize:{width:a,height:r},level:e,row:t,col:s},c=this.rasterJobHandler?this.rasterJobHandler.clipTile(f,i):(0,b.J$)(f);return Promise.resolve(c)}const n=this._pixelBlockTiles.get(`${e}/${t}/${s}`);return Promise.resolve(n)}async _open(e){const t=this.source,{pixelBlocks:s,attributeTable:i,statistics:n,histograms:a,name:r,nativeExtent:o,transform:c,colormap:u}=t,h=s[0],{width:p,height:d,pixelType:m}=h,g=t.extent??new l.A({xmin:-.5,ymin:.5,xmax:p-.5,ymax:d-.5,spatialReference:new f.A({wkid:3857})}),y=t.isPseudoSpatialReference??!t.extent,x={x:g.width/p,y:g.height/d},w={...t.keyProperties};t.dataType&&(w.DataType=t.dataType),t.bandInfos&&(w.BandProperties=t.bandInfos.map(e=>e.toJSON())),i&&(w.DataType="Thematic");const I=new A.A({width:p,height:d,pixelType:m,extent:g,nativeExtent:o,attributeTable:i,colormap:u,transform:c,pixelSize:x,spatialReference:g.spatialReference,bandCount:h.pixels.length,keyProperties:w,multidimensionalInfo:t.multidimensionalInfo,statistics:n,isPseudoSpatialReference:y,histograms:a});this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(I),this.createRemoteDatasetStorageInfo(I,512,512),this._set("rasterInfo",I),this.updateTileInfo(),I.multidimensionalInfo?await this._buildMDimStats(t.pixelBlocks,I.multidimensionalInfo):await this._buildInMemoryRaster(h,{width:512,height:512},e),I.multidimensionalInfo||(this.source=null),this.datasetName=r}async _buildInMemoryRaster(e,t,s){const{rasterInfo:n}=this,a=n.storageInfo.maximumPyramidLevel??0,r="thematic"!==n.dataType,o=this.rasterJobHandler?this.rasterJobHandler.split({pixelBlock:e,tileSize:t,maximumPyramidLevel:a,useBilinear:r},s):Promise.resolve((0,b.lD)(e,t,a,r)),l=null!=n.statistics,f=null!=n.histograms,c=this.ioConfig.skipStatistics||l?Promise.resolve({statistics:null,histograms:null}):this.rasterJobHandler?this.rasterJobHandler.estimateStatisticsHistograms({pixelBlock:e},s):Promise.resolve((0,T.f4)(e)),u=await(0,v.Lx)([o,c]);if(!u[0].value&&u[1].value)throw new i.A("inmemory-raster:open","failed to build in memory raster");this._pixelBlockTiles=u[0].value,l||(n.statistics=u[1].value?.statistics),f||(n.histograms=u[1].value?.histograms)}async _buildMDimStats(e,t,s){for(let i=0;i<t.variables.length;i++){const n=t.variables[i];if(n.statistics)continue;const a=n.dimensions.map(e=>new S.A({variableName:n.name,dimensionName:e.name,values:[e.values?.[0]??e.extent?.[0]],isSlice:!0})),r=(0,C.NG)(a,t),o=null==r?null:e[r];if(null==o)continue;const l=this.rasterJobHandler?await this.rasterJobHandler.computeStatisticsHistograms({pixelBlock:o},s):(0,T.eH)(o);n.statistics=l.statistics,n.histograms||(n.histograms=l.histograms)}}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],R.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)()],R.prototype,"source",void 0),(0,n.Cg)([(0,a.MZ)()],R.prototype,"url",null),R=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.InMemoryRaster")],R);const M=R;var O=s(22671);let k=class extends r.A{constructor(){super(...arguments),this.datasetFormat="CovJSON"}fetchRawTile(e,t,s,i={}){return this._inMemoryRaster.fetchRawTile(e,t,s,i)}async _open(e){const{extent:t,pixelBlocks:s,multidimensionalInfo:i,attributeTable:n,bandNames:a}=await this._fetchData(e),{statistics:r,histograms:o}=(0,T.eH)(s[0]),l=a?.map(e=>({BandName:e})),f={DataType:n?"Thematic":i?"Scientific":"Generic",BandProperties:l},c=new M({source:{extent:t,pixelBlocks:s,attributeTable:n?O.A.fromJSON(n):null,multidimensionalInfo:i,statistics:r,histograms:o,keyProperties:f,isPseudoSpatialReference:!1}});await c.open(),this._inMemoryRaster=c;const u=this.source?"":this.url.slice(this.url.lastIndexOf("/")+1);this._set("datasetName",u.slice(0,u.indexOf("."))),this._set("rasterInfo",c.rasterInfo)}async _fetchData(e){const t=this.source??(await this.request(this.url,{signal:e?.signal})).data,s="imagery-tile-layer:open-coverage-json";if("coverage"!==t.type?.toLowerCase()||"grid"!==t.domain?.domainType?.toLowerCase())throw new i.A(s,"Only coverage with Grid domain type is supported");if(!t.ranges)throw new i.A(s,"Missing ranges in the grid coverage data");if(!t.domain.referencing?.length)throw new i.A(s,"Missing domain referencing in the grid coverage data");const n=Object.values(t.ranges);for(let e=0;e<n.length;e++){const{axisNames:t,shape:a,type:r,values:o}=n[e];if(!("ndarray"===r.toLowerCase()&&o?.length&&t?.length&&a?.length))throw new i.A(s,"Only ranges with valid NdArray, axisNames, shape, and inline values are supported");if(!p(t[t.length-1])||!d(t[t.length-2]))throw new i.A(s,"Only row-major ordered pixel values are supported. X axis must be the last axis.")}return function(e){const{width:t,height:s,extent:i,dimensions:n}=m(e),{ranges:a}=e,r=Object.keys(a).sort((e,t)=>e<t?-1:1),o=[];for(let e=0;e<r.length;e++){const t=r[e];n?.length&&o.push({name:t,dimensions:n})}const l=x(e);o.forEach(e=>l[e.name]&&Object.assign(e,l[e.name]));const f=o.length?{variables:o}:void 0,c=[];for(let e=0;e<r.length;e++){const i=r[e],{values:o,dataType:l,axisNames:f,shape:u}=a[i],p=u.length>2?e*u.slice(0,-2).reduce((e,t)=>e*t):0,d=f.slice(0,-2),m=u.slice(0,-2),g="float"===l?"f32":w(o),y=t*s,x=o.length/y;for(let i=0;i<x;i++){const a=h.A.createEmptyBand(g,y),r=new Uint8Array(y).fill(255);let l=!1;const f=i*y;for(let e=0;e<y;e++){const t=o[f+e];null==t?(r[e]=0,l=!0):a[e]=t}if(0===e||n?.length){const e=new h.A({width:t,height:s,mask:l?r:null,pixels:[a],pixelType:g});e.updateStatistics(),n?.length?c[I(d,m,i)+p]=e:c.push(e)}else{const e=c[i];e.pixels.push(a),l?e.mask&&(e.mask=h.A.combineBandMasks([e.mask,r])):e.mask=l?r:null}}}const u=Object.values(l).find(e=>e.attributeTable)?.attributeTable;return{extent:i,pixelBlocks:c,multidimensionalInfo:f,attributeTable:u,bandNames:f?void 0:r}}(t)}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],k.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)({constructOnly:!0})],k.prototype,"source",void 0),k=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.CovJSONRaster")],k);const _=k;var F=s(4576),P=s(21325),B=s(330),N=s(43163);function D(e,t){if(!e||!t)return null;const s=[];for(let i=0;i<e.length;i++)s.push(e[i]),s.push(t[i]);return s}function E(e){if(!e)return null;let t=Number(e);if(!isNaN(t)&&0!==t)return new f.A({wkid:t});if(e=String(e).trim(),(0,P.jp)(e))return new f.A({wkt2:e});const s=e.toUpperCase();if(s.startsWith("COMPD_CS")){if(!s.includes("VERTCS")||!s.includes("GEOGCS")&&!s.startsWith("PROJCS"))return null;const i=s.indexOf("VERTCS"),n=s.indexOf("PROJCS"),a=n>-1?n:s.indexOf("GEOGCS");if(-1===a)return null;const r=e.slice(a,e.lastIndexOf("]",i)+1).trim(),o=e.slice(i,e.lastIndexOf("]")).trim();t=L(r);const l=new f.A(t?{wkid:t}:{wkt:r}),c=L(o);return c&&(l.vcsWkid=c),l}return s.startsWith("GEOGCS")||s.startsWith("PROJCS")?(t=L(e),new f.A(0!==t?{wkid:t}:{wkt:e})):null}function L(e){const t=e.replaceAll("]","[").replaceAll('"',"").split("[").map(e=>e.trim()).filter(e=>""!==e),s=t[t.length-1].split(","),i=s[0]?.toLowerCase();if(("epsg"===i||"esri"===i)&&e.endsWith('"]]')){const e=Number(s[1]);if(!isNaN(e)&&0!==e)return e}return 0}function z(e){if("pamdataset"!==e?.documentElement.tagName?.toLowerCase())return{};const t={spatialReference:null,transform:null,metadata:{},rasterBands:[],statistics:null,histograms:null};e.documentElement.childNodes.forEach(e=>{if(1===e.nodeType)if((0,B.g7)(e,"SRS")){if(!t.spatialReference){const s=(0,B.mX)(e);t.spatialReference=E(s)}}else if((0,B.g7)(e,"Metadata"))if("xml:ESRI"===e.getAttribute("domain")){const{spatialReference:s,transform:i}=function(e){const t=(0,B.V6)(e,"GeodataXform"),s=E((0,B.v7)(t,"SpatialReference/WKID")||(0,B.mX)(t,"SpatialReference/WKT"));if("typens:PolynomialXform"!==t.getAttribute("xsi:type"))return{spatialReference:s,transform:null};const i=(0,B.v7)(t,"PolynomialOrder")??1,n=(0,B.Ui)(t,"CoeffX/Double"),a=(0,B.Ui)(t,"CoeffY/Double"),r=(0,B.Ui)(t,"InverseCoeffX/Double"),o=(0,B.Ui)(t,"InverseCoeffY/Double"),l=D(n,a),f=D(r,o);return{spatialReference:s,transform:l&&f&&l.length&&f.length?new N.A({spatialReference:s,polynomialOrder:i,forwardCoefficients:l,inverseCoefficients:f}):null}}(e);t.transform=i,t.spatialReference||(t.spatialReference=s)}else(0,B.IC)(e,"MDI").forEach(e=>t.metadata[e.getAttribute("key")]=(0,B.mX)(e));else if((0,B.g7)(e,"PAMRasterBand")){const s=function(e){const t=(0,B.v7)(e,"NoDataValue"),s=(0,B.V6)(e,"Histograms/HistItem"),i=(0,B.v7)(s,"HistMin"),n=(0,B.v7)(s,"HistMax"),a=(0,B.v7)(s,"BucketCount"),r=(0,B.mX)(s,"HistCounts")?.split("|").map(e=>Number(e));let o,l,f,c;(0,B.IC)(e,"Metadata/MDI").forEach(e=>{const t=Number(e.textContent??e.nodeValue);switch(e.getAttribute("key").toUpperCase()){case"STATISTICS_MINIMUM":o=t;break;case"STATISTICS_MAXIMUM":l=t;break;case"STATISTICS_MEAN":f=t;break;case"STATISTICS_STDDEV":c=t}});const u=(0,B.v7)(e,"Metadata/SourceBandIndex");return{noDataValue:t,histogram:r?.length&&null!=i&&null!=n?{min:i,max:n,size:a||r.length,counts:r}:null,sourceBandIndex:u,statistics:null!=o&&null!=l?{min:o,max:l,avg:f,stddev:c}:null}}(e);null!=s.sourceBandIndex&&null==t.rasterBands[s.sourceBandIndex]?t.rasterBands[s.sourceBandIndex]=s:t.rasterBands.push(s)}});const s=t.rasterBands;if(s.length){const e=!!s[0].statistics;t.statistics=e?s.map(e=>e.statistics).filter(F.Ru):null;const i=!!s[0].histogram;t.histograms=i?s.map(e=>e.histogram).filter(F.Ru):null}return t}var U=s(20758);let J=class extends r.A{fetchRawTile(e,t,s,i={}){return this._inMemoryRaster.fetchRawTile(e,t,s,i)}async _open(e){const t=await this._fetchData(e);let{spatialReference:s,statistics:i,histograms:n,transform:a}=await this._fetchAuxiliaryData(e);const r=!s;r&&(s=new f.A({wkid:3857})),n?.length&&null==i&&(i=(0,T.Pg)(n));const{width:o,height:c}=t;let u=new l.A({xmin:-.5,ymin:.5-c,xmax:o-.5,ymax:.5,spatialReference:s});const h=a?a.forwardTransform(u):u;let p=!0;if(a){const e=a.forwardCoefficients;p=e&&0===e[1]&&0===e[2],p&&(a=null,u=h)}const d=new M({source:{extent:h,nativeExtent:u,transform:a,pixelBlocks:[t],statistics:i,histograms:n,keyProperties:{DateType:"Processed"},isPseudoSpatialReference:r},ioConfig:{sampling:"closest",skipStatistics:!0}});this.ioConfig.skipMapInfo&&(d.ioConfig.skipMapInfo=!0),await d.open(),d.source=null,this._set("rasterInfo",d.rasterInfo),this._inMemoryRaster=d}async _fetchData(e){const{data:t}=await this.request(this.url,{responseType:"array-buffer",signal:e?.signal}),s=(0,U.g)(t).toUpperCase();if("JPG"!==s&&"PNG"!==s&&"GIF"!==s&&"BMP"!==s)throw new i.A("image-aux-raster:open","the data is not a supported format");this._set("datasetFormat",s);const n=s.toLowerCase(),a=await this.decodePixelBlock(t,{format:n});if(null==a)throw new i.A("image-aux-raster:open","the data cannot be decoded");return a}async _fetchAuxiliaryData(e){const t=e?.signal,{skipExtensions:s=[],skipMapInfo:i}=this.ioConfig,n=i||s.includes("aux.xml")?null:this.request(this.url+".aux.xml",{responseType:"xml",signal:t}),a=this.datasetFormat,r="JPG"===a?"jgw":"PNG"===a?"pgw":"BMP"===a?"bpw":null,o=r&&s.includes(r)?null:this.request(this.url.slice(0,this.url.lastIndexOf("."))+"."+r,{responseType:"text",signal:t}),l=await(0,v.Lx)([n,o]);if(t?.aborted)throw(0,v.NK)();const f=z(l[0].value?.data);if(!f.transform){const e=l[1].value?l[1].value.data.split("\n").slice(0,6).map(e=>Number(e)):null;f.transform=6===e?.length?new N.A({forwardCoefficients:[e[4],e[5],e[0],-e[1],e[2],-e[3]]}):null}return f}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],J.prototype,"datasetFormat",void 0),J=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.ImageAuxRaster")],J);const H=J;var G=s(97768),j=s(84952),q=s(86738),V=s(75414),W=s(20223),X=s(87045),Z=s(25943),$=s(82371);let Y=class extends r.A{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,s,i={}){const{storageInfo:n,extent:a}=this.rasterInfo,{transposeInfo:r}=n,o=null!=r&&!!i.transposedVariableName;if(this._slices&&!o&&null==i.sliceId)return null;const l=o?0:n.maximumPyramidLevel-e+this._levelOffset,f=`${this.url}/tile/${l}/${t}/${s}`,c={...this._slices?o?{variable:i.transposedVariableName}:{sliceId:i.sliceId||0}:null,...i.refreshParameters};let u,h;if(n.isBsqTile){const e=(i.bandIds?.length?i.bandIds:[0,1,2]).map(e=>this.request(f,{query:{...c,bandId:e},responseType:"array-buffer",signal:i.signal})),t=await Promise.all(e),s=t.map(e=>e.data.byteLength).reduce((e,t)=>e+t),n=new Uint8Array(s);h=[];let a=0;for(const{data:e}of t)h.push(a),n.set(new Uint8Array(e),a),a+=e.byteLength;u=n.buffer}else u=(await this.request(f,{query:c,responseType:"array-buffer",signal:i.signal})).data;if(!u)return null;const{tileInfo:p}=n,d=o?r.tileSize:p.size,m=/^(mixed|jp)/i.test(p.format),g=await this.decodePixelBlock(u,{width:d[0],height:d[1],planes:h?.length,offsets:h,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:o,noDataValue:this.rasterInfo.noDataValue,applyJpegMask:m});if(null==g)return null;const y=n.blockBoundary[e];if("jpg"!==n.compression||s>y.minCol&&s<y.maxCol&&t>y.minRow&&t<y.maxRow)return g;const{origin:x,blockWidth:w,blockHeight:I}=n,{x:v,y:C}=this.getPyramidPixelSize(e),T=Math.round((a.xmin-x.x)/v)%w,S=Math.round((a.xmax-x.x)/v)%w||w,A=Math.round((x.y-a.ymax)/C)%I,R=Math.round((x.y-a.ymin)/C)%I||I,M=s===y.minCol?T:0,O=t===y.minRow?A:0,k=s===y.maxCol?S:w,_=t===y.maxRow?R:I;return(0,b.z$)(g,{x:M,y:O},{width:k-M,height:_-O}),g}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;const t=e;for(let e=0;e<this._slices.length;e++){const s=this._slices[e].multidimensionalDefinition;if(s.length===t.length&&!s.some(e=>{const s=t.find(t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName);return!s||(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(s.values[0])?`${s.values[0][0]}-${s.values[0][1]}`:s.values[0])}))return e}return null}async fetchVariableStatisticsHistograms(e,t){const s=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.statistics),i=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.histograms),n=await Promise.all([s,i]);return n[0]&&n[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),n[1]?.[0]?.counts?.length||(n[1]=null),{statistics:n[0]||null,histograms:n[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let s=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===s)return null;let i=0;const{maximumPyramidLevel:n}=this.rasterInfo.storageInfo;let a=n-i+this._levelOffset;const r=s.srcLocation;for(;a>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(a,s.row,s.col,t))break}catch{}if(a--,i++,s=this.identifyPixelLocation(r,i,t.datumTransformation),null===s)return null}return-1===a||null==s?null:i}async _open(e){const t=e?.signal,s=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:t});s.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));const n=s.data;if(this.sourceJSON=n,!n)throw new i.A("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!n.tileInfo)throw new i.A("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo(),this.tileType=n.cacheType,null==this.tileType&&(["jpg","jpeg","png","png8","png24","png32","mixed"].includes(n.tileInfo.format.toLowerCase())?this.tileType="Map":"lerc"===n.tileInfo.format.toLowerCase()?this.tileType="Elevation":this.tileType="Raster"),this.datasetName=n.name?.slice(n.name.indexOf("/")+1)??"";const a=await this._fetchRasterInfo({signal:t});if(null==a)throw new i.A("image-server-raster:open","cannot initialize image service");(0,$.E9)(a,n);const r="Map"===this.tileType?function(e,t){if(!e)return null;const{minScale:s,maxScale:i,minLOD:n,maxLOD:a}=t;if(null!=n&&null!=a)return X.A.fromJSON({...e,lods:e.lods.filter(({level:e})=>null!=e&&e>=n&&e<=a)});if(0!==s&&0!==i){const t=e=>Math.round(1e4*e)/1e4,n=s?t(s):1/0,a=i?t(i):-1/0;return X.A.fromJSON({...e,lods:e.lods.filter(e=>{const s=t(e.scale);return s<=n&&s>=a})})}return X.A.fromJSON(e)}(n.tileInfo,n):X.A.fromJSON(n.tileInfo);(0,G.Lw)(r);const[o,l]=this._computeMinMaxLOD(a,r),{extent:f,pixelSize:c}=a,u=.001*Math.min(c.x,c.y);(c.x!==c.y||Math.abs(o.resolution-c.x)>u)&&(c.x=c.y=o.resolution,a.width=Math.ceil((f.xmax-f.xmin)/c.x-.1),a.height=Math.ceil((f.ymax-f.ymin)/c.y-.1));const h=o.level-l.level,[p,d]=r.size,m=[],g=[],{lods:y}=r;y.forEach((e,t)=>{e.level>=l.level&&e.level<=o.level&&m.push({x:e.resolution,y:e.resolution}),t<y.length-1&&g.push(Math.round(10*e.resolution/y[t+1].resolution)/10)}),m.sort((e,t)=>e.x-t.x);const x=this.computeBlockBoundary(f,p,d,r.origin,m,h),w=m.length>1?m.slice(1):null;let I;n.transposeInfo&&(I={tileSize:[n.transposeInfo.rows,n.transposeInfo.cols],packetSize:a.keyProperties?._yxs.PacketSize??0});const v=g.length<=1||g.length>=3&&g.slice(0,-1).every(e=>e===g[0])?g[0]??2:Math.round(10/(l.resolution/o.resolution)**(-1/h))/10,C=!!n.bsq&&"Raster"===this.tileType;if(a.storageInfo=new W.A({blockWidth:r.size[0],blockHeight:r.size[1],pyramidBlockWidth:r.size[0],pyramidBlockHeight:r.size[1],pyramidResolutions:w,pyramidScalingFactor:v,compression:r.format,origin:r.origin,firstPyramidLevel:1,maximumPyramidLevel:h,tileInfo:r,isBsqTile:C,transposeInfo:I,blockBoundary:x}),function(e){const{extent:t,spatialReference:s}=e;t.xmin>-1&&t.xmax>181&&s?.wkid&&s.isGeographic&&(e.nativeExtent=e.extent,e.transform=new V.A,e.extent=e.transform.forwardTransform(t))}(a),this._set("rasterInfo",a),n.capabilities.toLowerCase().includes("tilemap")){const e={tileInfo:a.storageInfo.tileInfo,parsedUrl:(0,j.An)(this.url),url:this.url,tileServers:[]};this._tilemapCache=new Z.d({layer:e})}}async _fetchRasterInfo(e){const t=this.sourceJSON;if("Map"===this.tileType){const e=t.fullExtent||t.extent,s=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),i=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),n=f.A.fromJSON(t.spatialReference||e.spatialReference),a=new q.A({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:n});return new A.A({width:s,height:i,bandCount:3,extent:l.A.fromJSON(e),spatialReference:n,pixelSize:a,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}const s={...e,query:{...this.ioConfig.customFetchParameters,f:"json"}},i=(0,$.Tw)(this.url,this.sourceJSON,s),n=t.hasMultidimensions?this.request(`${this.url}/slices`,s).then(e=>e.data?.slices).catch(()=>null):null,a=await Promise.all([i,n]);return this._slices=a[1],a[0]}_fixScaleInServiceInfo(){const{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){const{pixelSize:s}=e,i=.5/e.width*s.x,{lods:n}=t,a=t.lodAt(Math.max.apply(null,n.map(e=>e.level))),r=t.lodAt(Math.min.apply(null,n.map(e=>e.level))),{tileType:o}=this;if("Map"===o)return this._levelOffset=n[0].level,[a,r];if("Raster"===o)return[n.find(e=>e.resolution===s.x)??a,r];const{minScale:l,maxScale:f}=this.sourceJSON;let c=a;f>0&&(c=n.find(e=>Math.abs(e.scale-f)<i),c||(c=n.filter(e=>e.scale>f).sort((e,t)=>e.scale>t.scale?1:-1)[0]??a));let u=r;return l>0&&(u=n.find(e=>Math.abs(e.scale-l)<i)??r,this._levelOffset=u.level-r.level),[c,u]}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],Y.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)()],Y.prototype,"tileType",void 0),Y=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.ImageServerRaster")],Y);const K=Y;var Q=s(10713);const ee=new Map;ee.set("Byte","u8"),ee.set("Int8","s8"),ee.set("UInt8","u8"),ee.set("Int16","s16"),ee.set("UInt16","u16"),ee.set("Int32","s32"),ee.set("UInt32","u32"),ee.set("Float32","f32"),ee.set("Float64","f32"),ee.set("Double64","f32");const te=new Map;te.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),te.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),te.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),te.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"}),te.set("qb3",{blobExtension:".pq3",isOneSegment:!0,decoderFormat:"qb3"});let se=class extends r.A{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this.datasetFormat="MRF"}async fetchRawTile(e,t,s,i={}){const{blockWidth:n,blockHeight:a,blockBoundary:r}=this.rasterInfo.storageInfo,o=r[e];if(!o||o.maxRow<t||o.maxCol<s||o.minRow>t||o.minCol>s)return null;const{bandCount:l,pixelType:f}=this.rasterInfo,{ranges:c,actualTileWidth:u,actualTileHeight:p}=this._getTileLocation(e,t,s);if(!c||0===c.length)return null;if(c.some(e=>e.from>e.to)){const e=new Uint8Array(n*a);return new h.A({width:n,height:a,pixels:void 0,mask:e,validPixelCount:0})}const{bandIds:d}=this.ioConfig,m=this._getBandSegmentCount(),g=[];let y=0;for(y=0;y<m;y++)d&&!d.includes(y)||g.push(this.request(this._files.data,{range:{from:c[y].from,to:c[y].to},responseType:"array-buffer",signal:i.signal}));const x=await Promise.all(g),w=x.map(e=>e.data.byteLength).reduce((e,t)=>e+t),I=new Uint8Array(w),v=[];let C=0;for(y=0;y<m;y++)v.push(C),I.set(new Uint8Array(x[y].data),C),C+=x[y].data.byteLength;const b=te.get(this.rasterInfo.storageInfo.compression).decoderFormat,T=await this.decodePixelBlock(I.buffer,{width:n,height:a,format:b,planes:d?.length||l,offsets:v,pixelType:f}).catch(()=>null);if(null==T)return null;let{noDataValue:S}=this.rasterInfo;if(null!=S&&"lerc"!==b&&!T.mask&&(S=S[0],null!=S)){const e=T.width*T.height,t=new Uint8Array(e);if(Math.abs(S)>1e24)for(y=0;y<e;y++)Math.abs((T.pixels[0][y]-S)/S)>1e-6&&(t[y]=1);else for(y=0;y<e;y++)T.pixels[0][y]!==S&&(t[y]=1);T.mask=t}let A=0,R=0;if(u!==n||p!==a){let e=T.mask;if(e)for(y=0;y<a;y++)if(R=y*n,y<p)for(A=u;A<n;A++)e[R+A]=0;else for(A=0;A<n;A++)e[R+A]=0;else for(e=new Uint8Array(n*a),T.mask=e,y=0;y<p;y++)for(R=y*n,A=0;A<u;A++)e[R+A]=1}return T}async _open(e){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);const t=e?e.signal:null,s=await this.request(this.url,{responseType:"xml",signal:t}),{rasterInfo:i,files:n}=this._parseHeader(s.data),{skipMapInfo:a,skipExtensions:r=[]}=this.ioConfig;if(!r.includes("aux.xml")&&!a){const t=await this._fetchAuxiliaryData(e);null!=t&&(i.statistics=t.statistics??i.statistics,i.histograms=t.histograms,t.histograms&&null==i.statistics&&(i.statistics=(0,T.Pg)(t.histograms)))}a&&this.updateImageSpaceRasterInfo(i),this._set("rasterInfo",i),this._files=n;const o=await this.request(n.index,{responseType:"array-buffer",signal:t});this._storageIndex=function(e){if(e.byteLength%16>0)throw new Error("invalid array buffer must be multiples of 16");let t,s,i,n,a,r;if(Q.Z){for(s=new Uint8Array(e),n=new ArrayBuffer(e.byteLength),i=new Uint8Array(n),a=0;a<e.byteLength/4;a++)for(r=0;r<4;r++)i[4*a+r]=s[4*a+3-r];t=new Uint32Array(n)}else t=new Uint32Array(e);return t}(o.data);const{blockWidth:l,blockHeight:f}=this.rasterInfo.storageInfo,c=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:u,height:h}=this.rasterInfo,p=[],d=this._getBandSegmentCount();let m=0,g=-1;for(;m<this._storageIndex.length;){g++;const e=Math.ceil(u/l/c**g)-1,t=Math.ceil(h/f/c**g)-1;m+=(e+1)*(t+1)*d*4,p.push({maxRow:t,maxCol:e,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=p,g>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=g),this.updateTileInfo()}_getBandSegmentCount(){return te.get(this.rasterInfo.storageInfo.compression).isOneSegment?1:this.rasterInfo.bandCount}_getTileLocation(e,t,s){const{blockWidth:i,blockHeight:n,pyramidScalingFactor:a}=this.rasterInfo.storageInfo,{width:r,height:o}=this.rasterInfo,l=this._getBandSegmentCount();let f,c,u,h=0,p=0;for(u=0;u<e;u++)p=a**u,f=Math.ceil(r/i/p),c=Math.ceil(o/n/p),h+=f*c;p=a**e,f=Math.ceil(r/i/p),c=Math.ceil(o/n/p),h+=t*f+s,h*=4*l;const d=this._storageIndex.subarray(h,h+4*l);let m=0,g=0;const y=[];for(let e=0;e<l;e++)m=d[4*e]*2**32+d[4*e+1],g=m+d[4*e+2]*2**32+d[4*e+3]-1,y.push({from:m,to:g});return{ranges:y,actualTileWidth:s<f-1?i:Math.ceil(r/p)-i*(f-1),actualTileHeight:t<c-1?n:Math.ceil(o/p)-n*(c-1)}}_parseHeader(e){const t=(0,B.V6)(e,"MRF_META/Raster");if(!t)throw new i.A("mrf:open","not a valid MRF format");const s=(0,B.V6)(t,"Size"),n=parseInt(s.getAttribute("x"),10),a=parseInt(s.getAttribute("y"),10),r=parseInt(s.getAttribute("c"),10),o=((0,B.mX)(t,"Compression")||"none").toLowerCase();if(!te.has(o))throw new i.A("mrf:open","currently does not support compression "+o);const c=(0,B.mX)(t,"DataType")||"UInt8",u=ee.get(c);if(null==u)throw new i.A("mrf:open","currently does not support pixel type "+c);const h=(0,B.V6)(t,"PageSize"),p=parseInt(h.getAttribute("x"),10),d=parseInt(h.getAttribute("y"),10),m=(0,B.V6)(t,"DataValues");let g,y;if(m&&(y=m.getAttribute("NoData"),null!=y&&(g=y.trim().split(" ").map(e=>parseFloat(e)))),(0,B.V6)(e,"MRF_META/CachedSource"))throw new i.A("mrf:open","currently does not support MRF referencing other data files");const x=(0,B.V6)(e,"MRF_META/GeoTags"),w=(0,B.V6)(x,"BoundingBox");let I,v=!1;if(null!=w){const e=parseFloat(w.getAttribute("minx")),t=parseFloat(w.getAttribute("miny")),s=parseFloat(w.getAttribute("maxx")),i=parseFloat(w.getAttribute("maxy")),n=(0,B.mX)(x,"Projection")||"";let a=f.A.WGS84;if("LOCAL_CS[]"!==n)if(n.toLowerCase().startsWith("epsg:")){const e=Number(n.slice(5));isNaN(e)||0===e||(a=new f.A({wkid:e}))}else a=E(n)??f.A.WGS84;else v=!0,a=new f.A({wkid:3857});I=new l.A(e,t,s,i),I.spatialReference=a}else v=!0,I=new l.A({xmin:-.5,ymin:.5-a,xmax:n-.5,ymax:.5,spatialReference:new f.A({wkid:3857})});const C=(0,B.V6)(e,"MRF_META/Rsets"),b=parseInt(C?.getAttribute("scale")||"2",10),T=I.spatialReference,S=new W.A({origin:new q.A({x:I.xmin,y:I.ymax,spatialReference:T}),blockWidth:p,blockHeight:d,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:o,pyramidScalingFactor:b}),R=new q.A({x:I.width/n,y:I.height/a,spatialReference:T}),M=new A.A({width:n,height:a,extent:I,isPseudoSpatialReference:v,spatialReference:T,bandCount:r,pixelType:u,pixelSize:R,noDataValue:g,storageInfo:S}),O=(0,B.mX)(e,"datafile"),k=(0,B.mX)(e,"IndexFile");return{rasterInfo:M,files:{mrf:this.url,index:k||this.url.replace(".mrf",".idx"),data:O||this.url.replace(".mrf",te.get(o).blobExtension)}}}async _fetchAuxiliaryData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return z(t)}catch{return null}}};(0,n.Cg)([(0,a.MZ)()],se.prototype,"_files",void 0),(0,n.Cg)([(0,a.MZ)()],se.prototype,"_storageIndex",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],se.prototype,"datasetFormat",void 0),se=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.MRFRaster")],se);const ie=se;s(44208);var ne=s(53966),ae=s(9334);function re(e){const t=e.fields,s=e.records,i=t.some(e=>"oid"===e.name.toLowerCase())?"OBJECTID":"OID",n=[{name:i,type:"esriFieldTypeOID",alias:"OID"}].concat(t.map(e=>({name:e.name,type:"esriFieldType"+e.typeName,alias:e.name}))),a=n.map(e=>e.name),r=[];let o=0,l=0;return s.forEach(e=>{const t={};for(t[i]=o++,l=1;l<a.length;l++)t[a[l]]=e[l-1];r.push({attributes:t})}),{displayFieldName:"",fields:n,features:r}}class oe{static get supportedVersions(){return[5]}static parse(e){const t=new DataView(e),s=3&t.getUint8(0);if(3!==s)return{header:{version:s},recordSet:null};const i=t.getUint32(4,!0),n=t.getUint16(8,!0),a=t.getUint16(10,!0),r={version:s,recordCount:i,headerByteCount:n,recordByteCount:a};let o=32;const l=[],f=[];let c;if(3===s){for(;13!==t.getUint8(o);)c=String.fromCharCode(t.getUint8(o+11)).trim(),l.push({name:(0,ae.w)(new Uint8Array(e,o,11)),type:c,typeName:["String","Date","Double","Boolean","String","Integer"][["C","D","F","L","M","N"].indexOf(c)],length:t.getUint8(o+16)}),o+=32;if(o+=1,l.length>0)for(;f.length<i&&e.byteLength-o>a;){const s=[];32===t.getUint8(o)?(o+=1,l.forEach(t=>{if("C"===t.type)s.push((0,ae.w)(new Uint8Array(e,o,t.length)).trim());else if("N"===t.type)s.push(parseInt(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim(),10));else if("F"===t.type)s.push(parseFloat(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim()));else if("D"===t.type){const i=String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim();s.push(new Date(parseInt(i.slice(0,4),10),parseInt(i.slice(4,6),10)-1,parseInt(i.slice(6,8),10)))}o+=t.length}),f.push(s)):o+=a}}return{header:r,fields:l,records:f,recordSet:re({fields:l,records:f})}}}var le=s(87877),fe=s(94213);const ce=(e,t)=>e.get(t)?.values,ue=(e,t)=>e.get(t)?.values?.[0];let he=class extends r.A{constructor(){super(...arguments),this._files=null,this._headerInfo=null,this._bufferSize=1048576,this._chunkSize=10485760,this.datasetFormat="TIFF"}async fetchRawTile(e,t,s,i={}){if(!this._headerInfo?.isSupported||this.isBlockOutside(e,t,s))return null;const n=await this._fetchRawTiffTile(e,t,s,!1,i);if(null!=n&&this._headerInfo.hasMaskBand){const a=await this._fetchRawTiffTile(e,t,s,!0,i);null!=a&&a.pixels[0]instanceof Uint8Array&&(n.mask=a.pixels[0])}return n}async _open(e){const t=e?e.signal:null,{data:s}=await this.request(this.url,{range:{from:0,to:this._bufferSize},responseType:"array-buffer",signal:t});if(!s)throw new i.A("tiffraster:open","failed to open url "+this.url);this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1,this.url.lastIndexOf("."));const{littleEndian:n,firstIFDPos:a,isBigTiff:r}=(0,le.uT)(s),o=[],c={fileChunk:s,posIFD:a,fileOffset:0};await this._readIFDs(o,c,n,r?8:4,t);const{imageInfo:u,rasterInfo:h}=function(e){const t=(0,le.uc)(e),{width:s,height:i,tileWidth:n,tileHeight:a,planes:r,pixelType:o,compression:c,firstPyramidLevel:u,maximumPyramidLevel:h,pyramidBlockWidth:p,pyramidBlockHeight:d,pyramidResolutions:m,tileBoundary:g,affine:y,metadata:x}=t;let w=E(t.extent.spatialReference?.wkt||t.extent.spatialReference?.wkid),I=!!t.isPseudoGeographic;null==w&&(I=!0,w=new f.A({wkid:3857}));const v=new l.A({...t.extent,spatialReference:w}),C=new q.A(v?{x:v.xmin,y:v.ymax,spatialReference:w}:{x:0,y:0}),b=new W.A({blockWidth:n,blockHeight:a,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:c,origin:C,firstPyramidLevel:u,maximumPyramidLevel:h,pyramidResolutions:m,blockBoundary:g}),T=new q.A({x:(v.xmax-v.xmin)/s,y:(v.ymax-v.ymin)/i,spatialReference:w}),S=x?{BandProperties:x.bandProperties,DataType:x.dataType}:{};let R=null;const M=ue(e[0],"PHOTOMETRICINTERPRETATION"),O=ce(e[0],"COLORMAP");if(M<=3&&O?.length>3&&O.length%3==0){R=[];const e=O.length/3;for(let t=0;t<e;t++)R.push([t,O[t]>>>8,O[t+e]>>>8,O[t+2*e]>>>8])}const k=new A.A({width:s,height:i,bandCount:r,pixelType:o,pixelSize:T,storageInfo:b,spatialReference:w,isPseudoSpatialReference:I,keyProperties:S,extent:v,colormap:R,statistics:x?x.statistics:null});if(y?.length&&(k.nativeExtent=new l.A({xmin:-.5,ymin:.5-i,xmax:s-.5,ymax:.5,spatialReference:w}),k.transform=new N.A({polynomialOrder:1,forwardCoefficients:[y[2]+y[0]/2,y[5]-y[3]/2,y[0],y[3],-y[1],-y[4]]}),k.extent=k.transform.forwardTransform(k.nativeExtent),k.pixelSize=new q.A({x:(v.xmax-v.xmin)/s,y:(v.ymax-v.ymin)/i,spatialReference:w}),b.origin.x=-.5,b.origin.y=.5),m){const{x:e,y:t}=k.pixelSize;m.forEach(s=>{s.x*=e,s.y*=t})}return{imageInfo:t,rasterInfo:k}}(o),p=(0,le.zS)(o),d=(0,le.r9)(o);if(this._headerInfo={littleEndian:n,isBigTiff:r,ifds:o,pyramidIFDs:p,maskIFDs:d,...u},this._set("rasterInfo",h),!u.isSupported)throw new i.A("tiffraster:open","this tiff is not supported: "+u.message);if(!u.tileWidth)throw new i.A("tiffraster:open","none-tiled tiff is not optimized for access, convert to COG and retry.");h.isPseudoSpatialReference&&ne.A.getLogger(this).warn("The spatial reference for this tiff is unsupported. Only EPSG spatial reference codes and Esri WKTs are supported.");const m=o[0].get("PREDICTOR")?.values?.[0],g=o[0].get("SAMPLEFORMAT")?.values?.[0];if(3===g&&2===m)throw new i.A("tiffraster:open","unsupported horizontal difference encoding. Predictor=3 is supported for floating point data");const{skipMapInfo:y,skipExtensions:x=[]}=this.ioConfig;if(!x.includes("aux.xml")&&!y){const t=await this._fetchAuxiliaryMetaData(e);null!=t&&function(e,t){if(t.statistics=e.statistics??t.statistics,t.histograms=e.histograms,e.histograms&&null==t.statistics&&(t.statistics=(0,T.Pg)(e.histograms)),e.transform&&null==t.transform){t.transform=e.transform,t.nativeExtent=t.extent;const s=t.transform.forwardTransform(t.nativeExtent);t.pixelSize=new q.A({x:(s.xmax-s.xmin)/t.width,y:(s.ymax-s.ymin)/t.height,spatialReference:t.spatialReference}),t.extent=s}t.isPseudoSpatialReference&&e.spatialReference&&(t.spatialReference=e.spatialReference,t.extent.spatialReference=t.nativeExtent.spatialReference=t.storageInfo.origin.spatialReference=t.spatialReference)}(t,h)}x.includes("vat.dbf")||1!==h.bandCount||"u8"!==h.pixelType||y||(h.attributeTable=await this._fetchAuxiliaryTable(e),null!=h.attributeTable&&(h.keyProperties.DataType="thematic")),y&&this.updateImageSpaceRasterInfo(h),this.updateTileInfo()}async _validateOrFetchHeaderBuffer(e,t){let{fileChunk:s,fileOffset:i,posIFD:n}=e;return(n+8>=s.byteLength||n<0)&&(i=n+i,s=(await this.request(this.url,{range:{from:i,to:i+this._bufferSize},responseType:"array-buffer",signal:t})).data,n=0),{fileChunk:s,fileOffset:i,posIFD:n}}async _readIFDs(e,t,s,n=4,a){if(!t.posIFD)return null;t=await this._validateOrFetchHeaderBuffer(t,a);const r=await this._readIFD(t,s,fe.NB,n,a);if(!r?.ifd)throw new i.A("tiffraster:open","cannot parse tiff header. failed to open url "+this.url);if(e.push(r.ifd),!r.nextIFD)return null;t.posIFD=r.nextIFD-t.fileOffset,await this._readIFDs(e,t,s,n,a)}async _readIFD(e,t,s=fe.NB,i=4,n){let{fileChunk:a,posIFD:r,fileOffset:o}=e;if(!e.fileChunk)return null;const l=(0,le.JM)(a,t,r,o,s,i);if(l.success){const e=[];if(l.ifd?.forEach(t=>{t.values||e.push(t)}),e.length>0&&await this._fillOffsets(e,t,l.nextIFD,n),l.ifd?.has("GEOKEYDIRECTORY")){const e=l.ifd.get("GEOKEYDIRECTORY"),s=e?.values;if(s&&s.length>4){const i=s[0]+"."+s[1]+"."+s[2];r=e.valueOffset+6-o;const l=await this._validateOrFetchHeaderBuffer({fileChunk:a,posIFD:r,fileOffset:o},n),f=await this._readIFD(l,t,fe.YC,2,n);e.data=f?.ifd,e.data&&e.data.set("GEOTIFFVersion",{id:0,type:2,valueCount:1,valueOffset:null,values:[i]})}}return l}return l.requiredBufferSize?(a=(await this.request(this.url,{range:{from:o,to:o+r+l.requiredBufferSize+8},responseType:"array-buffer",signal:n})).data,a.byteLength<r+l.requiredBufferSize?null:(e.fileChunk=a,e.fileOffset=o,this._readIFD(e,t,s,i,n))):null}async _fillOffsets(e,t,s,i){const n=e.filter(e=>null!=e.offlineOffsetSize);if(0===n.length)return;const a=n.map(e=>e.offlineOffsetSize),r=Math.min.apply(null,a.map(e=>e[0])),o=Math.max.apply(null,a.map(e=>e[0]+e[1]));let l=1===a.length||o-r<=this._bufferSize;if(!l&&a.length>1&&(a.sort((e,t)=>e[0]-t[0]),l=a.reduce((e,t)=>e===t[0]?t[0]+t[1]:0,a[0][0])===o),l){const e=await this._fetchOffsets(r,Math.max(o,r+this._bufferSize),i);return void n.forEach(s=>(0,le.Cr)(e,t,s,r))}const f=n.map(async e=>{const s=e.offlineOffsetSize,n=await this._fetchOffsets(s[0],s[1]+s[0],i);(0,le.Cr)(n,t,e,s[0])});await Promise.all(f)}async _fetchOffsets(e,t,s){const i=[],n=this._chunkSize,a=Math.ceil((t-e)/n);let r=e;for(let e=0;e<a;e++)i.push(this.request(this.url,{range:{from:r,to:e===a-1?t:r+n-1},responseType:"array-buffer",signal:s})),r+=n;const o=await Promise.all(i);if(1===a)return o[0].data;const l=new Uint8Array(t-e+1);for(let e=0;e<a;e++)l.set(new Uint8Array(o[e].data),e*n);return l.buffer}async _fetchRawTiffTile(e,t,s,i,n={}){const a=this._getTileLocation(e,t,s,i);if(!a)return null;const{ranges:r,actualTileWidth:o,actualTileHeight:l,ifd:f}=a,c=r.map(e=>this.request(this.url,{range:e,responseType:"array-buffer",signal:n.signal})),u=await Promise.all(c),h=u.map(e=>e.data.byteLength).reduce((e,t)=>e+t),p=1===u.length?u[0].data:new ArrayBuffer(h),d=[0],m=[0];if(u.length>1){const e=new Uint8Array(p);for(let t=0,s=0;t<u.length;t++){const i=u[t].data;e.set(new Uint8Array(i),s),d[t]=s,s+=i.byteLength,m[t]=i.byteLength}}const{blockWidth:g,blockHeight:y}=this.getBlockWidthHeight(e),x=await this.decodePixelBlock(p,{format:"tiff",customOptions:{headerInfo:this._headerInfo,ifd:f,offsets:d,sizes:m},width:g,height:y,planes:null,pixelType:null});if(null==x)return null;if(o!==g||l!==y){let e=x.mask;if(e)for(let t=0;t<y;t++){const s=t*g;if(t<l)for(let t=o;t<g;t++)e[s+t]=0;else for(let t=0;t<g;t++)e[s+t]=0}else{e=new Uint8Array(g*y),x.mask=e;for(let t=0;t<l;t++){const s=t*g;for(let t=0;t<o;t++)e[s+t]=1}}}return x}_getTileLocation(e,t,s,i=!1){const{firstPyramidLevel:n,blockBoundary:a}=this.rasterInfo.storageInfo,r=0===e?0:e-(n-1),{_headerInfo:o}=this;if(!o)return null;const l=i?o.maskIFDs[r]:0===r?o?.ifds[0]:o?.pyramidIFDs[r-1];if(!l)return null;const f=(0,le.XO)(l,o),c=ce(l,"TILEOFFSETS");if(void 0===c)return null;const u=ce(l,"TILEBYTECOUNTS"),{minRow:h,minCol:p,maxRow:d,maxCol:m}=a[r];if(t>d||s>m||t<h||s<p)return null;const g=ue(l,"IMAGEWIDTH"),y=ue(l,"IMAGELENGTH"),x=ue(l,"TILEWIDTH"),w=ue(l,"TILELENGTH"),I=[];if(f){const{bandCount:e}=this.rasterInfo;for(let i=0;i<e;i++){const e=i*(d+1)*(m+1)+t*(m+1)+s;I[i]={from:c[e],to:c[e]+u[e]-1}}}else{const e=t*(m+1)+s;I.push({from:c[e],to:c[e]+u[e]-1})}for(let e=0;e<I.length;e++)if(null==I[e].from||!I[e].to||I[e].to<0)return null;return{ranges:I,ifd:l,actualTileWidth:s===m&&g%x||x,actualTileHeight:t===d&&y%w||w}}async _fetchAuxiliaryMetaData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return z(t)}catch{return null}}async _fetchAuxiliaryTable(e){try{const{data:t}=await this.request(this.url+".vat.dbf",{responseType:"array-buffer",signal:e?.signal}),s=oe.parse(t);return s?.recordSet?O.A.fromJSON(s.recordSet):null}catch{return null}}};(0,n.Cg)([(0,a.MZ)()],he.prototype,"_files",void 0),(0,n.Cg)([(0,a.MZ)()],he.prototype,"_headerInfo",void 0),(0,n.Cg)([(0,a.MZ)()],he.prototype,"_bufferSize",void 0),(0,n.Cg)([(0,a.MZ)()],he.prototype,"_chunkSize",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],he.prototype,"datasetFormat",void 0),he=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.TIFFRaster")],he);const pe=he,de=new Map;de.set("MRF",{desc:"Meta Raster Format",constructor:ie}),de.set("TIFF",{desc:"GeoTIFF",constructor:pe}),de.set("RasterTileServer",{desc:"Raster Tile Server",constructor:K}),de.set("JPG",{desc:"JPG Raster Format",constructor:H}),de.set("PNG",{desc:"PNG Raster Format",constructor:H}),de.set("GIF",{desc:"GIF Raster Format",constructor:H}),de.set("BMP",{desc:"BMP Raster Format",constructor:H}),de.set("CovJSON",{desc:"COVJSON Raster Format",constructor:_}),de.set("MEMORY",{desc:"In Memory Raster Format",constructor:M});class me{static get supportedFormats(){const e=new Set;return de.forEach((t,s)=>e.add(s)),e}static async open(e){const{url:t,ioConfig:s,source:n,sourceJSON:a}=e;let r=e.datasetFormat??s?.datasetFormat;null==r&&(t.includes(".")?r=t.slice(t.lastIndexOf(".")+1).toUpperCase():"coverage"===n?.type?.toLowerCase()?r="CovJSON":n?.extent&&n.pixelblocks&&(r="MEMORY")),"OVR"===r||"TIF"===r?r="TIFF":"JPG"===r||"JPEG"===r||"JFIF"===r?r="JPG":"COVJSON"===r&&(r="CovJSON"),t.toLowerCase().includes("/imageserver")&&!t.toLowerCase().includes("/wcsserver")&&(r="RasterTileServer");const o={url:t,source:n,sourceJSON:a,datasetFormat:r,ioConfig:s??{bandIds:null,sampling:null}};if(Object.keys(o).forEach(e=>{null==o[e]&&delete o[e]}),r){if(!this.supportedFormats.has(r))throw new i.A("rasterfactory:open","not a supported format "+r);if("CRF"===r)throw new i.A("rasterfactory:open",`cannot open raster: ${t}`);const s=new(0,de.get(r).constructor)(o);return await s.open({signal:e.signal}),s}const l=Array.from(de.keys()).filter(e=>"CovJSON"!==e&&"Memory"!==e);let f=0;const c=()=>{if(r=l[f++],!r)return null;if("CRF"===r)return null;const t=new(0,de.get(r).constructor)(o);return t.open({signal:e.signal}).then(()=>t).catch(()=>c())};return c()}static register(e,t,s){de.has(e.toUpperCase())||de.set(e.toUpperCase(),{desc:t,constructor:s})}}},10333(e,t,s){s.d(t,{A:()=>r});var i=s(5482),n=s(25482),a=s(91429);let r=class extends n.o{get affectsPixelSize(){return!1}forwardTransform(e){return e}inverseTransform(e){return e}};(0,i.Cg)([(0,a.MZ)()],r.prototype,"affectsPixelSize",null),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],r.prototype,"spatialReference",void 0),r=(0,i.Cg)([(0,a.$K)("esri.layers.raster.transforms.BaseRasterTransform")],r)},75414(e,t,s){s.d(t,{A:()=>l});var i,n=s(5482),a=s(91429),r=s(10333),o=s(93223);let l=i=class extends r.A{constructor(){super(...arguments),this.type="gcs-shift",this.tolerance=1e-8}forwardTransform(e){return"point"===(e=e.clone()).type?(e.x>180+this.tolerance&&(e.x-=360),e):(e.xmin>=180-this.tolerance?(e.xmax-=360,e.xmin-=360):e.xmax>180+this.tolerance&&(e.xmin=-180,e.xmax=180),e)}inverseTransform(e){return"point"===(e=e.clone()).type?(e.x<-this.tolerance&&(e.x+=360),e):(e.xmin<-this.tolerance&&(e.xmin+=360,e.xmax+=360),e)}clone(){return new i({tolerance:this.tolerance})}};(0,n.Cg)([(0,o.e)({GCSShiftXform:"gcs-shift"})],l.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)()],l.prototype,"tolerance",void 0),l=i=(0,n.Cg)([(0,a.$K)("esri.layers.raster.transforms.GCSShiftTransform")],l)},43163(e,t,s){s.d(t,{A:()=>d});var i,n=s(5482),a=s(91429),r=s(5443),o=s(86738),l=s(10333),f=s(36005),c=s(43937),u=s(93223);function h(e,t,s){const{x:i,y:n}=t;if(s<2)return{x:e[0]+i*e[2]+n*e[4],y:e[1]+i*e[3]+n*e[5]};if(2===s){const t=i*i,s=n*n,a=i*n;return{x:e[0]+i*e[2]+n*e[4]+t*e[6]+a*e[8]+s*e[10],y:e[1]+i*e[3]+n*e[5]+t*e[7]+a*e[9]+s*e[11]}}const a=i*i,r=n*n,o=i*n,l=a*i,f=a*n,c=i*r,u=n*r;return{x:e[0]+i*e[2]+n*e[4]+a*e[6]+o*e[8]+r*e[10]+l*e[12]+f*e[14]+c*e[16]+u*e[18],y:e[1]+i*e[3]+n*e[5]+a*e[7]+o*e[9]+r*e[11]+l*e[13]+f*e[15]+c*e[17]+u*e[19]}}function p(e,t,s){const{xmin:i,ymin:n,xmax:a,ymax:o,spatialReference:l}=t;let f=[];if(s<2)f.push({x:i,y:o}),f.push({x:a,y:o}),f.push({x:i,y:n}),f.push({x:a,y:n});else{let e=10;for(let t=0;t<e;t++)f.push({x:i,y:n+(o-n)*t/(e-1)}),f.push({x:a,y:n+(o-n)*t/(e-1)});e=8;for(let t=1;t<=e;t++)f.push({x:i+(a-i)*t/e,y:n}),f.push({x:i+(a-i)*t/e,y:o})}f=f.map(t=>h(e,t,s));const c=f.map(e=>e.x),u=f.map(e=>e.y);return new r.A({xmin:Math.min.apply(null,c),xmax:Math.max.apply(null,c),ymin:Math.min.apply(null,u),ymax:Math.max.apply(null,u),spatialReference:l})}let d=i=class extends l.A{constructor(){super(...arguments),this.polynomialOrder=1,this.type="polynomial"}readForwardCoefficients(e,t){const{coeffX:s,coeffY:i}=t;if(!s?.length||!i?.length||s.length!==i.length)return null;const n=[];for(let e=0;e<s.length;e++)n.push(s[e]),n.push(i[e]);return n}writeForwardCoefficients(e,t,s){const i=[],n=[];for(let t=0;t<e?.length;t++)t%2==0?i.push(e[t]):n.push(e[t]);t.coeffX=i,t.coeffY=n}get inverseCoefficients(){let e=this._get("inverseCoefficients");const t=this._get("forwardCoefficients");return!e&&t&&this.polynomialOrder<2&&(e=function(e){const[t,s,i,n,a,r]=e,o=i*r-a*n,l=a*n-i*r;return[(a*s-t*r)/o,(i*s-t*n)/l,r/o,n/l,-a/o,-i/l]}(t)),e}set inverseCoefficients(e){this._set("inverseCoefficients",e)}readInverseCoefficients(e,t){const{inverseCoeffX:s,inverseCoeffY:i}=t;if(!s?.length||!i?.length||s.length!==i.length)return null;const n=[];for(let e=0;e<s.length;e++)n.push(s[e]),n.push(i[e]);return n}writeInverseCoefficients(e,t,s){const i=[],n=[];for(let t=0;t<e?.length;t++)t%2==0?i.push(e[t]):n.push(e[t]);t.inverseCoeffX=i,t.inverseCoeffY=n}get affectsPixelSize(){return this.polynomialOrder>0}forwardTransform(e){if("point"===e.type){const t=h(this.forwardCoefficients,e,this.polynomialOrder);return new o.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.forwardCoefficients,e,this.polynomialOrder)}inverseTransform(e){if("point"===e.type){const t=h(this.inverseCoefficients,e,this.polynomialOrder);return new o.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.inverseCoefficients,e,this.polynomialOrder)}clone(){return new i({polynomialOrder:this.polynomialOrder,forwardCoefficients:this.forwardCoefficients?[...this.forwardCoefficients]:null,inverseCoefficients:this.inverseCoefficients?[...this.inverseCoefficients]:null})}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"polynomialOrder",void 0),(0,n.Cg)([(0,a.MZ)()],d.prototype,"forwardCoefficients",void 0),(0,n.Cg)([(0,f.w)("forwardCoefficients",["coeffX","coeffY"])],d.prototype,"readForwardCoefficients",null),(0,n.Cg)([(0,c.K)("forwardCoefficients")],d.prototype,"writeForwardCoefficients",null),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"inverseCoefficients",null),(0,n.Cg)([(0,f.w)("inverseCoefficients",["inverseCoeffX","inverseCoeffY"])],d.prototype,"readInverseCoefficients",null),(0,n.Cg)([(0,c.K)("inverseCoefficients")],d.prototype,"writeInverseCoefficients",null),(0,n.Cg)([(0,a.MZ)()],d.prototype,"affectsPixelSize",null),(0,n.Cg)([(0,u.e)({PolynomialXform:"polynomial"})],d.prototype,"type",void 0),d=i=(0,n.Cg)([(0,a.$K)("esri.layers.raster.transforms.PolynomialTransform")],d)}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[926,4794],{69540(e,t,n){n.d(t,{OU:()=>c,Pw:()=>h});var i=n(5482),r=n(69622),s=(n(44208),n(4718)),o=(n(53966),n(97768)),a=n(88620),l=n(64108);const u=Symbol("ClonableMixin"),c=e=>{var t;const n=e;let r=class extends n{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const n=t.metadata,i=t.store,r={},l=new Map;for(const t in n){const o=n[t],a=i?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==a&&0!==a&&5!==a&&4!==a)continue;const c=this[t];let h=null;if("function"==typeof u)h=u(c,e);else if("reference"===u)h=c;else if(h=(0,s.TU)(c,e),null!=c&&null==h)continue;0===a?l.set(t,h):r[t]=h}const u=new(0,Object.getPrototypeOf(this).constructor)(r);if(l.size){const e=(0,a.oY)(u)?.store;if(e)for(const[t,n]of l)e.set(t,n,0)}return u}};return r=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],r),r},h=c(r.A)},66344(e,t,n){n.d(t,{q:()=>a});const i=!!(0,n(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class r{get size(){return this._size}constructor(e=10485760,t=.3){this._maxSize=e,this._maxClientSizeRatio=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(e){this._clients.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._clients.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(e,t){const n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,r,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==n&&this._notifyRemove(t,a.entry,a.size,0)),r>this._maxSize)return void this._notifyRemove(t,n,r,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!r||r<0)return i||console.warn(`Refusing to cache entry with size ${r} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new s(n,r,l)),this._size+=r,e.size+=r,this._checkSize()}updateSize(e,t){t=e.id+t;const n=this._db.get(t);if(!n)return;this._size-=n.size,e.size-=n.size;let i=n.entry.usedMemory;for(;i>this._maxSize;){const e=this._notifyRemove(t,n.entry,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}n.size=i,this._size+=i,e.size+=i,this._checkSize()}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},n=new Array;this._db.forEach((e,i)=>{const r=e.lifetime;n[r]=(n[r]||0)+e.size,this._clients.forEach(n=>{const{id:r,name:s}=n;if(i.startsWith(r)){const n=t[s]||0;t[s]=n+e.size}})});const i={};this._clients.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const r=t[n]||0;t[n]=r,i[n]=Math.round(100*e.hitRate)+"%"}else i[n]="0%"});const r=Object.keys(t);r.sort((e,n)=>t[n]-t[e]),r.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+i[n]);for(let t=n.length-1;t>=0;--t){const i=n[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._clients.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._clients.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,i){const r=this._clients.get(e.split(o)[0])?.removeFunc,s=r?.(t,i,n);return"number"==typeof s?s:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._clients.forEach(e=>this._checkSizeLimits(this._maxClientSize,e)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const n=t??this;if(n.size<=e)return;const i=t?.id;let r=!0;for(;r;){r=!1;for(const[s,a]of this._db)if(0===a.lifetime&&(!i||s.startsWith(i))){const i=t??this._clients.get(s.split(o)[0]);if(this._purgeItem(s,a,i),n.size<=.9*e)return;r||=this._db.has(s)}}for(const[r,s]of this._db)if(!i||r.startsWith(i)){const i=t??this._clients.get(r.split(o)[0]);if(this._purgeItem(r,s,i),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new r(0);class s{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{constructor(e,t){this.removeFunc=t,this.id="",this.name="",this.size=0,this._storage=new r(e,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(e,t,n=1){this._storage.put(this,e,t,n,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},60999(e,t,n){n.d(t,{DZ:()=>m,Ke:()=>p,Tj:()=>c,UT:()=>f,aD:()=>g,jJ:()=>u});var i=n(5482),r=n(69622),s=n(97768),o=n(17676),a=n(10107),l=n(64108);function u(e,t,n){return(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))}async function c(e,t,n){return(await(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))).map(e=>e.value)}function h(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function p(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return h(await e)}catch(e){return d(e)}}async function m(e){try{return h(await e)}catch(e){return(0,o.QP)(e),d(e)}}function f(e,t){return new y(e,t)}let y=class extends r.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,s.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:n}=this._abortController;this.promise=e(n),this.promise.then(e=>{this._result=h(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,o.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,s.xt)(this._abortHandle),this._abortController=null}};(0,i.Cg)([(0,a.MZ)()],y.prototype,"value",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"error",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"finished",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"promise",void 0),(0,i.Cg)([(0,a.MZ)()],y.prototype,"_result",void 0),y=(0,i.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],y);class g{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});const t=await e;return{[Symbol.dispose]:t}}async run(e){const t={stack:[],error:void 0,hasError:!1};try{return(0,i.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,i.hk)(t)}}}},67482(e,t,n){function i(e){return null!=a(e)||null!=o(e)}function r(e){return l.test(e)}function s(e){return a(e)??o(e)}function o(e){const t=new Date(e);return function(e,t){if(Number.isNaN(e.getTime()))return!1;let n=!0;if(c&&/\d+\W*$/.test(t)){const e=t.match(/[a-zA-Z]{2,}/);if(e){let t=!1,i=0;for(;!t&&i<=e.length;)t=!u.test(e[i]),i++;n=!t}}return n}(t,e)?Number.isNaN(t.getTime())?null:t.getTime()-6e4*t.getTimezoneOffset():null}function a(e){const t=l.exec(e);if(!t?.groups)return null;const n=t.groups,i=+n.year,r=+n.month-1,s=+n.day,o=+(n.hours??"0"),a=+(n.minutes??"0"),u=+(n.seconds??"0");if(o>23)return null;if(a>59)return null;if(u>59)return null;const c=n.ms??"0",h=c?+c.padEnd(3,"0").slice(0,3):0;let d;if(n.isUTC||!n.offsetSign)d=Date.UTC(i,r,s,o,a,u,h);else{const e=+n.offsetHours,t=+n.offsetMinutes;d=6e4*("+"===n.offsetSign?-1:1)*(60*e+t)+Date.UTC(i,r,s,o,a,u,h)}return Number.isNaN(d)?null:d}n.d(t,{Br:()=>r,Cq:()=>i,_U:()=>s});const l=/^(?:(?<year>-?\d{4,})-(?<month>\d{2})-(?<day>\d{2}))(?:T(?<hours>\d{2}):(?<minutes>\d{2}):(?<seconds>\d{2})(?:\.(?<ms>\d+))?)?(?:(?<isUTC>Z)|(?:(?<offsetSign>\+|-)(?<offsetHours>\d{2}):(?<offsetMinutes>\d{2})))?$/,u=/^((jan(uary)?)|(feb(ruary)?)|(mar(ch)?)|(apr(il)?)|(may)|(jun(e)?)|(jul(y)?)|(aug(ust)?)|(sep(tember)?)|(oct(ober)?)|(nov(ember)?)|(dec(ember)?)|(am)|(pm)|(gmt)|(utc))$/i,c=!Number.isNaN(new Date("technology 10").getTime())},75503(e,t,n){n.d(t,{wq:()=>a});var i=n(4576),r=n(21818),s=(n(44208),n(15142)),o=n(11006);class a{constructor(e=9,t){this._compareMinX=d,this._compareMinY=p,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),w.prune(),S.prune(),v.prune(),C.prune()}all(e){l(this._data,e)}search(e,t){let n=this._data;const i=this._toBBox;if(b(e,n))for(w.clear();n;){for(let r=0,s=n.children.length;r<s;r++){const s=n.children[r],o=n.leaf?i(s):s;b(e,o)&&(n.leaf?t(s):_(e,o)?l(s,t):w.push(s))}n=w.pop()}}collides(e){let t=this._data;const n=this._toBBox;if(!b(e,t))return!1;for(w.clear();t;){for(let i=0,r=t.children.length;i<r;i++){const r=t.children[i],s=t.leaf?n(r):r;if(b(e,s)){if(t.leaf||_(e,s))return!0;w.push(r)}}t=w.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,n=e.length;t<n;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new F([]),this}remove(e){if(!e)return this;let t,n=this._data,s=null,o=0,a=!1;const l=this._toBBox(e);for(v.clear(),C.clear();n||v.length>0;){if(n||(n=v.pop(),s=v.data[v.length-1],o=C.pop()??0,a=!0),n.leaf&&(t=(0,i.qh)(n.children,(0,r.z)(e),n.children.length,n.indexHint),-1!==t))return n.children.splice(t,1),v.push(n),this._condense(v),this;a||n.leaf||!_(n,l)?s?(o++,n=s.children[o],a=!1):n=null:(v.push(n),C.push(o),o=0,s=n,n=n.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,n,i){const r=n-t+1;let s=this._maxEntries;if(r<=s){const i=new F(e.slice(t,n+1));return u(i,this._toBBox),i}i||(i=Math.ceil(Math.log(r)/Math.log(s)),s=Math.ceil(r/s**(i-1)));const o=new M([]);o.height=i;const a=Math.ceil(r/s),l=a*Math.ceil(Math.sqrt(s));x(e,t,n,l,this._compareMinX);for(let r=t;r<=n;r+=l){const t=Math.min(r+l-1,n);x(e,r,t,a,this._compareMinY);for(let n=r;n<=t;n+=a){const r=Math.min(n+a-1,t);o.children.push(this._build(e,n,r,i-1))}}return u(o,this._toBBox),o}_insert(e,t,n){const i=this._toBBox,r=n?e:i(e);v.clear();const s=function(e,t,n,i){for(;i.push(t),!0!==t.leaf&&i.length-1!==n;){let n,i=1/0,r=1/0;for(let s=0,o=t.children.length;s<o;s++){const o=t.children[s],a=m(o),l=y(e,o)-a;l<r?(r=l,i=a<i?a:i,n=o):l===r&&a<i&&(i=a,n=o)}t=n||t.children[0]}return t}(r,this._data,t,v);for(s.children.push(e),h(s,r);t>=0&&v.data[t].children.length>this._maxEntries;)this._split(v,t),t--;!function(e,t,n){for(let i=n;i>=0;i--)h(t.data[i],e)}(r,v,t)}_split(e,t){const n=e.data[t],i=n.children.length,r=this._minEntries;this._chooseSplitAxis(n,r,i);const s=this._chooseSplitIndex(n,r,i);if(!s)return;const o=n.children.splice(s,n.children.length-s),a=n.leaf?new F(o):new M(o);a.height=n.height,u(n,this._toBBox),u(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(n,a)}_splitRoot(e,t){this._data=new M([e,t]),this._data.height=e.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(e,t,n){let i,r,s;i=r=1/0;for(let o=t;o<=n-t;o++){const t=c(e,0,o,this._toBBox),a=c(e,o,n,this._toBBox),l=g(t,a),u=m(t)+m(a);l<i?(i=l,s=o,r=u<r?u:r):l===i&&u<r&&(r=u,s=o)}return s}_chooseSplitAxis(e,t,n){const i=e.leaf?this._compareMinX:d,r=e.leaf?this._compareMinY:p;this._allDistMargin(e,t,n,i)<this._allDistMargin(e,t,n,r)&&e.children.sort(i)}_allDistMargin(e,t,n,i){e.children.sort(i);const r=this._toBBox,s=c(e,0,t,r),o=c(e,n-t,n,r);let a=f(s)+f(o);for(let i=t;i<n-t;i++){const t=e.children[i];h(s,e.leaf?r(t):t),a+=f(s)}for(let i=n-t-1;i>=t;i--){const t=e.children[i];h(o,e.leaf?r(t):t),a+=f(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const n=e.data[t];if(0===n.children.length)if(t>0){const r=e.data[t-1],s=r.children;s.splice((0,i.qh)(s,n,s.length,r.indexHint),1)}else this.clear();else u(n,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let n=e;for(S.clear();n;){if(!0===n.leaf)for(const e of n.children)t((0,r.z)(e));else S.pushArray(n.children);n=S.pop()??null}}function u(e,t){c(e,0,e.children.length,t,e)}function c(e,t,n,i,r){r||(r=new F([])),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(let s,o=t;o<n;o++)s=e.children[o],h(r,e.leaf?i(s):s);return r}function h(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function d(e,t){return e.minX-t.minX}function p(e,t){return e.minY-t.minY}function m(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function f(e){return e.maxX-e.minX+(e.maxY-e.minY)}function y(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function g(e,t){const n=Math.max(e.minX,t.minX),i=Math.max(e.minY,t.minY),r=Math.min(e.maxX,t.maxX),s=Math.min(e.maxY,t.maxY);return Math.max(0,r-n)*Math.max(0,s-i)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function b(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,n,i,r){const s=[t,n];for(;s.length;){const t=s.pop(),n=s.pop();if(t-n<=i)continue;const a=n+Math.ceil((t-n)/i/2)*i;(0,o.q)(e,a,n,t,r),s.push(n,a,a,t)}}const w=new s.A,S=new s.A,v=new s.A,C=new s.A({deallocator:void 0});class T{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class A extends T{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class F extends A{constructor(e){super(),this.children=e,this.leaf=!0}}class M extends A{constructor(e){super(),this.children=e,this.leaf=!1}}},36708(e,t,n){n.d(t,{C_:()=>d,OH:()=>f,Vh:()=>y,on:()=>h,pc:()=>g,wB:()=>l,z7:()=>u});var i=n(37955),r=n(36563),s=n(97768),o=n(17676),a=n(14012);function l(e,t,n={}){return c(e,t,n,p)}function u(e,t,n={}){return c(e,t,n,m)}function c(e,t,n={},i){let r=null;const o=n.once?(e,n)=>{i(e)&&((0,s.xt)(r),t(e,n))}:(e,n)=>{i(e)&&t(e,n)};if(r=(0,a.Cn)(e,o,n.sync,n.equals),n.initial){const t=e();o(t,t)}return r}function h(e,t,n,o={}){let a=null,u=null,c=null;function h(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function d(e){o.once&&o.once&&(0,s.xt)(c),n(e)}const p=l(e,(e,n)=>{h(),(0,i.wb)(e)&&(a=e,u=(0,i.on)(e,t,d),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return c=(0,r.hA)(()=>{p.remove(),h()}),c}function d(e,t){return function(e,t,n){if((0,o.G4)(n))return Promise.reject((0,o.NK)());const i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,s.xt)(a)}return new Promise((i,s)=>{a=(0,r.vE)([(0,o.u7)(n,()=>{l(),s((0,o.NK)())}),c(e,e=>{l(),i(e)},{sync:!1,once:!0},t??p)])})}(e,m,t)}function p(e){return!0}function m(e){return!!e}n(80559);const f={sync:!0},y={initial:!0},g={sync:!0,initial:!0}},60408(e,t,n){function i(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function r(e){return void 0!==e.points}function s(e){return void 0!==e.x&&void 0!==e.y}function o(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function u(e){return e?s(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":i(e)?"esriGeometryEnvelope":r(e)?"esriGeometryMultipoint":null:null}function c(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function h(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}n.d(t,{$B:()=>u,Bi:()=>a,Pv:()=>c,Rg:()=>o,U9:()=>r,W0:()=>h,ZC:()=>i,fT:()=>s,uW:()=>l})},65864(e,t,n){n.d(t,{rS:()=>c,xD:()=>d});var i=n(5443),r=n(91075),s=n(48526),o=n(86738),a=n(39829),l=n(82799),u=n(60408);function c(e){return null==e?null:e instanceof r.A?e:(0,u.fT)(e)?o.A.fromJSON(e):(0,u.Rg)(e)?l.A.fromJSON(e):(0,u.Bi)(e)?a.A.fromJSON(e):(0,u.U9)(e)?s.A.fromJSON(e):(0,u.ZC)(e)?i.A.fromJSON(e):null}const h={esriGeometryPoint:o.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:i.A,esriGeometryMultipoint:s.A,esriGeometryMultiPatch:a.A};function d(e){return e&&h[e]||null}},50498(e,t,n){n.d(t,{Ye:()=>h,gy:()=>c,iI:()=>p,yR:()=>d});var i=n(66552),r=n(5443),s=n(91075),o=n(48526),a=n(86738),l=n(39829),u=n(82799);const c=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),h=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),d={base:s.A,key:"type",typeMap:{extent:r.A,multipoint:o.A,point:a.A,polyline:u.A,polygon:l.A}},p=new i.J({esriGeometryBezier3Curve:"cubic-bezier",esriGeometryCircularArc:"circular-arc",esriGeometryEllipticArc:"elliptic-arc"},{ignoreUnknown:!0})},6518(e,t,n){n.d(t,{F:()=>a});var i=n(44208),r=n(75503),s=n(19419);const o={minX:0,minY:0,maxX:0,maxY:0};class a{constructor(){this._indexInvalid=!1,this._boundsToLoad=[],this._boundsById=new Map,this._idByBounds=new Map,this._index=new r.wq(9,(0,i.A)("esri-csp-restrictions")?e=>({minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]}):["[0]","[1]","[2]","[3]"]),this._loadIndex=()=>{if(this._indexInvalid){const e=new Array(this._idByBounds.size);let t=0;this._idByBounds.forEach((n,i)=>{e[t++]=i}),this._indexInvalid=!1,this._index.clear(),this._index.load(e)}else this._boundsToLoad.length&&(this._index.load(Array.from(new Set(this._boundsToLoad.filter(e=>this._idByBounds.has(e))))),this._boundsToLoad.length=0)}}get fullBounds(){if(!this._boundsById.size)return null;const e=(0,s.Ie)();for(const t of this._boundsById.values())t&&(e[0]=Math.min(t[0],e[0]),e[1]=Math.min(t[1],e[1]),e[2]=Math.max(t[2],e[2]),e[3]=Math.max(t[3],e[3]));return e}get valid(){return!this._indexInvalid}clear(){this._indexInvalid=!1,this._boundsToLoad.length=0,this._boundsById.clear(),this._idByBounds.clear(),this._index.clear()}delete(e){const t=this._boundsById.get(e);this._boundsById.delete(e),t&&(this._idByBounds.delete(t),this._indexInvalid||this._index.remove(t))}forEachInBounds(e,t){this._loadIndex(),function(e,t,n){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,n)}(this._index,e,e=>t(this._idByBounds.get(e)))}get(e){return this._boundsById.get(e)}has(e){return this._boundsById.has(e)}invalidateIndex(){this._indexInvalid||(this._indexInvalid=!0,this._boundsToLoad.length=0)}set(e,t){if(!this._indexInvalid){const t=this._boundsById.get(e);t&&(this._index.remove(t),this._idByBounds.delete(t))}this._boundsById.set(e,t),t&&(this._idByBounds.set(t,e),this._indexInvalid||(this._boundsToLoad.push(t),this._boundsToLoad.length>5e4&&this._loadIndex()))}}},83221(e,t,n){n.d(t,{A:()=>m});var i=n(4576),r=n(49186),s=n(65529),o=n(53966),a=n(70328),l=n(19419),u=n(90708),c=n(6518),h=n(51441),d=n(37730);const p=(0,a.vt)();class m{constructor(e){this.geometryInfo=e,this._boundsStore=new c.F,this._featuresById=new Map,this._usedMemory=0,this.events=new s.bk,this.featureAdapter=d.T}get usedMemory(){return this._usedMemory}get geometryType(){return this.geometryInfo.geometryType}get hasM(){return this.geometryInfo.hasM}get hasZ(){return this.geometryInfo.hasZ}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){let e=0;return this._featuresById.forEach(t=>{null!=t.geometry&&t.geometry.coords&&(e+=t.geometry.coords.length)}),{featureCount:this._featuresById.size,vertexCount:e/(this.hasZ?this.hasM?4:3:this.hasM?3:2)}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,n,i,r]=this.fullBounds;return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:(0,h.ag)(e)}}add(e){this._add(e),this._emitChanged()}addMany(e){for(const t of e)this._add(t);this._emitChanged()}upsertMany(e){const t=e.map(e=>this._upsert(e));return this._emitChanged(),t.filter(i.Ru)}clear(){this._featuresById.clear(),this._boundsStore.clear(),this._emitChanged(),this._usedMemory=0}removeById(e){const t=this._featuresById.get(e);return t?(this._remove(t),this._emitChanged(),t):null}removeManyById(e){this._boundsStore.invalidateIndex();for(const t of e){const e=this._featuresById.get(t);e&&this._remove(e)}this._emitChanged()}forEachBounds(e,t){for(const n of e){const e=this._boundsStore.get(n.objectId);e&&t((0,a.Jt)(p,e))}}getFeature(e){return this._featuresById.get(e)}has(e){return this._featuresById.has(e)}forEach(e){this._featuresById.forEach(t=>e(t))}forEachInBounds(e,t){this._boundsStore.forEachInBounds(e,e=>{t(this._featuresById.get(e))})}_emitChanged(){this.events.emit("changed",void 0)}_add(e){if(!e)return;const t=e.objectId;if(null==t)return void o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const n=this._featuresById.get(t);let i;if(n?(e.displayId=n.displayId,i=this._boundsStore.get(t),this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0):null!=this.onFeatureAdd&&this.onFeatureAdd(e),!e.geometry?.coords?.length)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);i=(0,u.jQ)(null!=i?i:(0,l.vt)(),e.geometry),null!=i&&this._boundsStore.set(t,i),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const n=this._featuresById.get(t);if(!n)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0;const{geometry:i,attributes:s}=e;for(const e in s)n.attributes[e]=s[e];return i&&(n.geometry=i,this._boundsStore.set(t,(0,u.jQ)((0,l.vt)(),i)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(n)??0,n}_remove(e){null!=this.onFeatureRemove&&this.onFeatureRemove(e);const t=e.objectId;return this._boundsStore.delete(t),this._featuresById.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(e)??0,e}}},37730(e,t,n){n.d(t,{T:()=>r});var i=n(43334);const r={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t,n)=>new i.Om(t,e.attributes,null,e.objectId),getGeometry:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)}},33771(e,t,n){n.r(t),n.d(t,{default:()=>w});var i=n(60999),r=n(49186),s=n(53966),o=n(34727),a=n(17676),l=n(67076),u=n(21325),c=n(90708),h=n(83221),d=n(31464),p=n(56390),m=n(85113),f=n(82832),y=n(34322),g=n(95466),_=n(54218),b=n(98623);const x="esri.layers.WFSLayer";class w{constructor(){this._customParameters=null,this._queryEngine=null,this._supportsPagination=!0}destroy(){this._queryEngine?.destroy(),this._queryEngine=null}async load(e,t={}){const{getFeatureUrl:n,getFeatureOutputFormat:i,fields:s,geometryType:o,featureType:l,maxRecordCount:u,maxTotalRecordCount:c,maxPageCount:m,objectIdField:f,customParameters:_}=e,{spatialReference:x,getFeatureSpatialReference:w}=(0,y.UH)(n,l,e.spatialReference);try{await(0,d.Nk)(w,x)}catch{throw new r.A("unsupported-projection","Projection not supported",{inSpatialReference:w,outSpatialReference:x})}(0,a.Te)(t),this._customParameters=_,this._featureType=l,this._fieldsIndex=g.A.fromLayerJSON({fields:s,dateFieldsTimeReference:s.some(e=>"esriFieldTypeDate"===e.type)?{timeZoneIANA:b.n$}:null}),this._geometryType=o,this._getFeatureUrl=n,this._getFeatureOutputFormat=i,this._getFeatureSpatialReference=w,this._maxRecordCount=u,this._maxTotalRecordCount=c,this._maxPageCount=m,this._objectIdField=f,this._spatialReference=x;let v=await this._snapshotFeatures(t);if(v.errors.length>0&&(this._supportsPagination=!1,v=await this._snapshotFeatures(t),v.errors.length>0))throw v.errors[0];const C={type:"object-id",fieldName:f};return this._queryEngine=new p.do({fieldsIndex:this._fieldsIndex,geometryType:o,hasM:!1,hasZ:!1,featureIdInfo:C,spatialReference:x,timeInfo:null,featureStore:new h.A({geometryType:o,hasM:!1,hasZ:!1})}),this._queryEngine.featureStore.addMany(v.features),{warnings:S(v),extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async applyEdits(){throw new r.A("wfs-source:editing-not-supported","applyEdits() is not supported on WFSLayer")}async queryFeatures(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQuery(e,t.signal)}async queryFeatureCount(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForCount(e,t.signal)}async queryObjectIds(e={},t={}){return await this._waitSnapshotComplete(),(await this._queryEngine.executeQueryForIds(e,t.signal)).filter(_.Et)}async queryExtent(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForExtent(e,t.signal)}async querySnapping(e,t={}){return await this._waitSnapshotComplete(),await this._queryEngine.executeQueryForSnapping(e,t.signal)}async queryAttributeBins(e,t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeAttributeBinsQuery(e,t.signal)}async refresh(e){return this._customParameters=e.customParameters,this._maxRecordCount=e.maxRecordCount,this._maxTotalRecordCount=e.maxTotalRecordCount,this._maxPageCount=e.maxPageCount,this._snapshotTask?.abort(),this._snapshotTask=(0,i.UT)(e=>this._snapshotFeatures({signal:e})),this._snapshotTask.promise.then(e=>{this._queryEngine.featureStore.clear(),this._queryEngine.featureStore.addMany(e.features);for(const t of S(e))s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-warning",t.message,t.details));e.errors?.length&&s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-error","Refresh completed with errors",{errors:e.errors}))},()=>{this._queryEngine.featureStore.clear()}),await this._waitSnapshotComplete(),{extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async _waitSnapshotComplete(){if(this._snapshotTask&&!this._snapshotTask.finished){try{await this._snapshotTask.promise}catch{}return this._waitSnapshotComplete()}}async _snapshotFeatures(e){const t=e?.signal,n=this._maxTotalRecordCount,i=this._maxPageCount,r=this._supportsPagination&&i>1?await(0,y.E)(this._getFeatureUrl,this._featureType.typeName,{customParameters:this._customParameters,signal:t}):void 0;let s=[];const l=[];if(null==r)try{s=await this._singleQuery(t)}catch(e){(0,a.zf)(e)||l.push(e)}else{const e=Math.min(r,n),u=function*(e,t,n){for(let i=0;i<t;i++)yield e._pageQuery(i,n)}(this,(0,o.qE)(Math.ceil(e/this._maxRecordCount),1,i),t);await Promise.allSettled(Array.from({length:10}).map(()=>async function(e,t,n){let i=e.next();for(;!i.done;){try{const e=await i.value;t.push(...e)}catch(e){(0,a.zf)(e)||n.push(e)}i=e.next()}}(u,s,l)))}return(0,a.Te)(t),{features:s,totalRecordCount:r,maxTotalRecordCount:n,maxPageCount:i,errors:l}}async _singleQuery(e){const t=Number.isFinite(this._maxRecordCount)&&this._maxRecordCount>0?this._maxRecordCount:void 0,n=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,count:t,signal:e});return this._processGeoJSON(n,{signal:e})}async _pageQuery(e,t){const n=e*this._maxRecordCount,i=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,startIndex:n,count:this._maxRecordCount,signal:t});return this._processGeoJSON(i,{startIndex:n,signal:t})}_processGeoJSON(e,t){(0,m.sO)(e,this._getFeatureSpatialReference.wkid);const{startIndex:n,signal:i}=t;(0,a.Te)(i);const r=(0,m.bd)(e,{geometryType:this._geometryType,hasZ:!1,objectIdField:this._objectIdField});if(!(0,u.aI)(this._spatialReference,this._getFeatureSpatialReference))for(const e of r)null!=e.geometry&&(e.geometry=(0,c.Ux)((0,d.Cv)((0,c.zv)(e.geometry,this._geometryType,!1,!1),this._getFeatureSpatialReference,this._spatialReference)));let s=n??1;for(const e of r){const t={};(0,f.MB)(this._fieldsIndex,t,e.attributes,!0),e.attributes=t,null==t[this._objectIdField]&&(e.objectId=t[this._objectIdField]=s++)}return r}}function S(e){const t=[];return null!=e.totalRecordCount&&(e.features.length<e.totalRecordCount&&t.push({name:"wfs-layer:maxRecordCount-too-low",message:`Could only fetch ${e.features.length} of ${e.totalRecordCount} in ${e.maxPageCount} queries. Try increasing the value of WFSLayer.maxRecordCount.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount}}),e.totalRecordCount>e.maxTotalRecordCount&&t.push({name:"wfs-layer:large-dataset",message:`The number of ${e.totalRecordCount} features exceeds the maximum allowed of ${e.maxTotalRecordCount}.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount,maxTotalRecordCount:e.maxTotalRecordCount}})),t}},85113(e,t,n){n.d(t,{BM:()=>T,bd:()=>A,sO:()=>C,xD:()=>h});var i=n(67482),r=n(49186),s=n(21325),o=n(90708),a=n(43334),l=n(92722),u=n(30524);const c={LineString:"esriGeometryPolyline",MultiLineString:"esriGeometryPolyline",MultiPoint:"esriGeometryMultipoint",Point:"esriGeometryPoint",Polygon:"esriGeometryPolygon",MultiPolygon:"esriGeometryPolygon"};function h(e){return c[e]}function*d(e){switch(e.type){case"Feature":yield e;break;case"FeatureCollection":for(const t of e.features)t&&(yield t)}}function*p(e){if(e)switch(e.type){case"Point":yield e.coordinates;break;case"LineString":case"MultiPoint":yield*e.coordinates;break;case"MultiLineString":case"Polygon":for(const t of e.coordinates)yield*t;break;case"MultiPolygon":for(const t of e.coordinates)for(const e of t)yield*e}}function m(e){for(const t of e)if(t.length>2)return!0;return!1}function f(e){let t=0;for(let n=0;n<e.length;n++){const i=e[n],r=e[(n+1)%e.length];t+=i[0]*r[1]-r[0]*i[1]}return t<=0}function y(e){const t=e[0],n=e[e.length-1];t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]||e.push(t)}function g(e,t){const{coordinates:n,type:i}=e,r=t.hasZ??!1,s=!0;switch(i){case"Point":return new l.A([],[...n],r,!1);case"LineString":return(0,o.Ap)({paths:[n],hasZ:s},r,!1);case"MultiLineString":return(0,o.Ap)({paths:n,hasZ:s},r,!1);case"MultiPoint":return(0,o.PR)({points:n,hasZ:s},r,!1);case"Polygon":case"MultiPolygon":{const e=new l.A([],[],r,!1);for(const t of"Polygon"===i?[n]:n){_(e,t[0],r);for(let n=1;n<t.length;n++)b(e,t[n],r)}return e}}}function _(e,t,n){y(t),function(e){return!f(e)}(t)?w(e,t,n):x(e,t,n)}function b(e,t,n){y(t),function(e){return f(e)}(t)?w(e,t,n):x(e,t,n)}function x(e,t,n){for(const i of t)S(e,i,n);e.lengths.push(t.length)}function w(e,t,n){for(let i=t.length-1;i>=0;i--)S(e,t[i],n);e.lengths.push(t.length)}function S(e,[t,n,i],r){e.coords.push(t,n),r&&e.coords.push(i||0)}function v(e){switch(typeof e){case"string":return(0,i.Br)(e)?"esriFieldTypeDate":"esriFieldTypeString";case"number":return"esriFieldTypeDouble";default:return"unknown"}}function C(e,t=4326){if(!e)throw new r.A("geojson-layer:empty","GeoJSON data is empty");if("Feature"!==e.type&&"FeatureCollection"!==e.type)throw new r.A("geojson-layer:unsupported-geojson-object","missing or not supported GeoJSON object type",{data:e});const{crs:n}=e;if(!n)return;const i="string"==typeof n?n:"name"===n.type?n.properties.name:"EPSG"===n.type?n.properties.code:null,o=(0,s.oT)({wkid:t})?new RegExp(".*(CRS84H?|4326)$","i"):new RegExp(`.*(${t})$`,"i");if(!i||!o.test(i))throw new r.A("geojson:unsupported-crs","unsupported GeoJSON 'crs' member",{crs:n})}function T(e,t={}){const n=[],i=new Set,r=new Set;let s,o=!1,a=null,l=!1,{geometryType:c=null}=t;for(const t of d(e)){const{geometry:e,properties:d,id:f}=t;if((!e||(c||(c=h(e.type)),h(e.type)===c))&&(o||(o=m(p(e))),l||(l=null!=f,l&&(s=typeof f,d&&(a=Object.keys(d).filter(e=>d[e]===f)))),d&&a&&l&&null!=f&&(a.length>1?a=a.filter(e=>d[e]===f):1===a.length&&(a=d[a[0]]===f?a:[])),d))for(const e in d){if(i.has(e))continue;const t=v(d[e]);if("unknown"===t){r.add(e);continue}r.delete(e),i.add(e);const s=(0,u.rS)(e);s&&n.push({name:s,alias:e,type:t})}}const f=(0,u.rS)(1===a?.length&&a[0]||null)??void 0;if(f)for(const e of n)if(e.name===f&&(0,u.WA)(e)){e.type="esriFieldTypeOID";break}return{fields:n,geometryType:c,hasZ:o,objectIdFieldName:f,objectIdFieldType:s,unknownFields:Array.from(r)}}function A(e,t){return Array.from(function*(e,t={}){const{geometryType:n,objectIdField:i}=t;for(const r of e){const{geometry:e,properties:s,id:o}=r;if(e&&h(e.type)!==n)continue;const l=s||{};let u;i&&(u=l[i],null==o||u||(l[i]=u=o)),yield new a.Om(e&&g(e,t),l,null,u)}}(d(e),t))}},82832(e,t,n){n.d(t,{$1:()=>y,CR:()=>f,MB:()=>d,PC:()=>g,Yx:()=>l,bP:()=>c});var i=n(67482),r=n(21325),s=n(30524);class o{constructor(e){this.description=e,this.code=null}}class a{constructor(e){this.globalId=null,this.objectId=null,this.success=!1,this.uniqueId=null,this.error=new o(e)}}function l(e){return new a(e)}class u{constructor(e){this.globalId=null,this.success=!0,this.objectId=this.uniqueId=e}}function c(e){return new u(e)}const h=new Set;function d(e,t,n,i=!1){h.clear();for(const r in n){const o=e.get(r);if(!o)continue;const a=p(o,n[r]);if(h.add(o.name),o&&(i||o.editable)){const e=(0,s.CJ)(o,a);if(e)return l((0,s.uo)(e,o,a));t[o.name]=a}}for(const t of e.requiredFields??[])if(!h.has(t.name))return l(`missing required field "${t.name}"`);return null}function p(e,t){let n=t;return(0,s.WA)(e)&&"string"==typeof t?n=parseFloat(t):(0,s.yM)(e)&&null!=t&&"string"!=typeof t?n=String(t):(0,s.vE)(e)&&"string"==typeof t&&(n=(0,i._U)(t)),(0,s.WX)(n)}let m;function f(e,t){if(!e||!(0,r.fn)(t))return e;if("rings"in e||"paths"in e){if(null==m)throw new TypeError("geometry engine not loaded");return m.simplify(t,e)}return e}async function y(e,t){!(0,r.fn)(e)||"esriGeometryPolygon"!==t&&"esriGeometryPolyline"!==t||await async function(){return null==m&&(m=await n.e(1023).then(n.bind(n,81023))),m}()}const g={supportsAutoIntervalBin:!0,supportsFixedIntervalBin:!0,supportsFixedBoundariesBin:!0,supportsDateBin:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsNormalization:!0,supportedStatisticTypes:["COUNT","SUM","AVG","VAR","STDDEV","MIN","MAX","PERCENTILE_CONT","PERCENTILE_DISC","CentroidAggregate","EnvelopeAggregate","ConvexHullAggregate"],supportedNormalizationTypes:["field","log","naturalLog","percentOfTotal","squareRoot"]}},34322(e,t,n){n.d(t,{E:()=>N,Fu:()=>S,O8:()=>M,UH:()=>G,YW:()=>R,i5:()=>b,mG:()=>F,x$:()=>P});var i=n(11254),r=n(49186),s=n(5479),o=n(84952),a=n(5443),l=n(91218),u=n(16930),c=n(21325),h=n(50498),d=n(85113),p=n(13043),m=n(60694),f=n(20437),y=n(30524);const g="xlink:href",_="2.0.0",b="__esri_wfs_id__",x="wfs-layer:feature-type-not-found",w="wfs-layer:unknown-geometry-type";async function S(e,t){const n=function(e){const t=k(e);(function(e){const t=e.firstElementChild?.getAttribute("version");if(t&&t!==_)throw new r.A("wfs-layer:unsupported-wfs-version",`Unsupported WFS version ${t}. Supported version: ${_}`)})(t),O(t);const n=t.firstElementChild,i=(0,s.PP)(function(e){return(0,p.i)(e,{FeatureTypeList:{FeatureType:e=>{const t={typeName:"undefined:undefined",name:"",title:"",description:"",extent:null,namespacePrefix:"",namespaceUri:"",defaultSpatialReference:4326,supportedSpatialReferences:[]},n=new Set;return(0,p.p)(e,{Name:e=>{const{name:n,prefix:i}=j(e.textContent);t.typeName=`${i}:${n}`,t.name=n,t.namespacePrefix=i,t.namespaceUri=e.lookupNamespaceURI(i)},Abstract:e=>{t.description=e.textContent},Title:e=>{t.title=e.textContent},WGS84BoundingBox:e=>{t.extent=a.A.fromJSON(function(e){let t,n,i,r;for(const s of e.children)switch(s.localName){case"LowerCorner":[t,n]=s.textContent.split(" ").map(e=>Number.parseFloat(e));break;case"UpperCorner":[i,r]=s.textContent.split(" ").map(e=>Number.parseFloat(e))}return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:c.KK}}(e))},DefaultCRS:e=>{const i=A(e);i&&(t.defaultSpatialReference=i,n.add(i))},OtherCRS:e=>{const t=A(e);t&&n.add(t)}}),t.title||(t.title=t.name),n.add(4326),t.supportedSpatialReferences.push(...n),t}}})}(n));return{operations:T(n),get featureTypes(){return Array.from(i())},readFeatureTypes:i}}((await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetCapabilities",VERSION:_,...t?.customParameters},signal:t?.signal})).data);return function(e,t){(0,o.m3)(e)&&((0,o.FX)(e,t.operations.DescribeFeatureType.url,!0)&&(t.operations.DescribeFeatureType.url=(0,o.lM)(t.operations.DescribeFeatureType.url)),(0,o.FX)(e,t.operations.GetFeature.url,!0)&&(t.operations.GetFeature.url=(0,o.lM)(t.operations.GetFeature.url)))}(e,n),n}const v=["json","application/json; subtype=geojson; charset=utf-8","application/json; subtype=geojson","application/json","geojson","application/geo+json"];function C(e){for(const t of v){const n=e.findIndex(e=>e.toLowerCase()===t);if(n>=0)return e[n]}return null}function T(e){let t=!0;const n={GetCapabilities:{url:""},DescribeFeatureType:{url:""},GetFeature:{url:"",outputFormat:null,supportsPagination:!1}},i=[],s=[];if((0,p.p)(e,{OperationsMetadata:{Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&i.push(e)}}}},Operation:e=>{switch(e.getAttribute("name")){case"GetCapabilities":return{DCP:{HTTP:{Get:e=>{n.GetCapabilities.url=e.getAttribute(g)}}}};case"DescribeFeatureType":return{DCP:{HTTP:{Get:e=>{n.DescribeFeatureType.url=e.getAttribute(g)}}}};case"GetFeature":return{DCP:{HTTP:{Get:e=>{n.GetFeature.url=e.getAttribute(g)}}},Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&s.push(e)}}}}}}},Constraint:e=>{switch(e.getAttribute("name")){case"KVPEncoding":return{DefaultValue:e=>{t="true"===e.textContent.toLowerCase()}};case"ImplementsResultPaging":return{DefaultValue:e=>{n.GetFeature.supportsPagination="true"===e.textContent.toLowerCase()}}}}}}),n.GetFeature.outputFormat=C(s)??C(i),!t)throw new r.A("wfs-layer:kvp-encoding-not-supported","WFS service doesn't support key/value pair (KVP) encoding");if(null==n.GetFeature.outputFormat)throw new r.A("wfs-layer:geojson-not-supported","WFS service doesn't support GeoJSON output format");return n}function A(e){const t=parseInt(e.textContent?.match(/(?<wkid>\d+$)/i)?.groups?.wkid??"",10);if(!Number.isNaN(t))return t}function F(e,t,n){return(0,s.I6)(e,e=>n?e.name===t&&e.namespaceUri===n:e.typeName===t||e.name===t)}async function M(e,t,n,i={}){const{featureType:s,extent:o}=await async function(e,t,n,i={}){const s=e.readFeatureTypes(),o=t?F(s,t,n):s.next().value,{spatialReference:a=new u.A({wkid:o?.defaultSpatialReference})}=i;if(null==o)throw t?new r.A(x,`The type '${t}' could not be found in the service`):new r.A("wfs-layer:empty-service","The service is empty");let h=o.extent;if(h&&!(0,c.aI)(h.spatialReference,a))try{await(0,l.initializeProjection)(h.spatialReference,a,void 0,i),h=(0,l.project)(h,a)}catch{throw new r.A("wfs-layer:unsupported-spatial-reference","Projection not supported")}return{extent:h,spatialReference:a,featureType:o}}(e,t,n,i),{spatialReference:a}=G(e.operations.GetFeature.url,s,i.spatialReference),{fields:h,geometryType:d,swapXY:p,objectIdField:m,geometryField:f}=await async function(e,t,n,i={}){const{typeName:s}=t,[o,a]=await Promise.allSettled([E(e.operations.DescribeFeatureType.url,s,i),I(e,s,n,i)]),l=e=>new r.A("wfs-layer:getWFSLayerTypeInfo-error",`An error occurred while getting info about the feature type '${s}'`,{error:e});if("rejected"===o.status)throw l(o.reason);if("rejected"===a.status)throw l(a.reason);const{fields:u,errors:c}=o.value??{},h=o.value?.geometryType||a.value?.geometryType,d=a.value?.swapXY??!1;if(null==h)throw new r.A(w,`The geometry type could not be determined for type '${s}`,{typeName:s,geometryType:h,fields:u,errors:c});return{...R(u??[]),geometryType:h,swapXY:d}}(e,s,a,i);return{url:e.operations.GetCapabilities.url,name:s.name,namespaceUri:s.namespaceUri,fields:h,geometryField:f,geometryType:d,objectIdField:m,spatialReference:i.spatialReference??new u.A({wkid:s.defaultSpatialReference}),extent:o,swapXY:p,wfsCapabilities:e,customParameters:i.customParameters}}function R(e){const t=e.find(e=>"geometry"===e.type);let n=e.find(e=>"oid"===e.type);return e=e.filter(e=>"geometry"!==e.type),n||(n=new f.A({name:b,type:"oid",alias:b}),e.unshift(n)),{geometryField:t?.name??null,objectIdField:n.name,fields:e}}async function I(e,t,n,r={}){let s,o=!1;const[a,l]=await Promise.all([P(e.operations.GetFeature.url,t,n,e.operations.GetFeature.outputFormat,{...r,count:1}),(0,i.A)(e.operations.GetFeature.url,{responseType:"text",query:z(t,n,void 0,{...r,count:1}),signal:r?.signal})]),u="FeatureCollection"===a.type&&a.features[0]?.geometry;if(u){let e;switch(s=h.gy.fromJSON((0,d.xD)(u.type)),u.type){case"Point":e=u.coordinates;break;case"LineString":case"MultiPoint":e=u.coordinates[0];break;case"MultiLineString":case"Polygon":e=u.coordinates[0][0];break;case"MultiPolygon":e=u.coordinates[0][0][0]}const t=/<[^>]*pos[^>]*> *(-?\d+(?:\.\d+)?) (-?\d+(?:\.\d+)?)/.exec(l.data);if(t){const n=e[0].toFixed(3),i=e[1].toFixed(3),r=parseFloat(t[1]).toFixed(3);n===parseFloat(t[2]).toFixed(3)&&i===r&&(o=!0)}}return{geometryType:s,swapXY:o}}async function E(e,t,n){return function(e,t){const{name:n}=j(e),i=k(t);O(i);const o=(0,s.I6)((0,p.i)(i.firstElementChild,{element:e=>e}),e=>e.getAttribute("name")===n);if(null!=o){const e=o.getAttribute("type"),t=e?(0,s.I6)((0,p.i)(i.firstElementChild,{complexType:e=>e}),t=>t.getAttribute("name")===j(e).name):(0,s.I6)((0,p.i)(o,{complexType:e=>e}),()=>!0);if(t)return function(e){const t=[],n=[];let i;const s=(0,p.i)(e,{complexContent:{extension:{sequence:{element:e=>e}}}});for(const o of s){const s=o.getAttribute("name");if(!s)continue;let a,l;if(o.hasAttribute("type")?a=j(o.getAttribute("type")).name:(0,p.p)(o,{simpleType:{restriction:e=>(a=j(e.getAttribute("base")).name,{maxLength:e=>{l=+e.getAttribute("value")}})}}),!a)continue;const u="true"===o.getAttribute("nillable");let c=!1;switch(a.toLowerCase()){case"integer":case"nonpositiveinteger":case"negativeinteger":case"long":case"int":case"short":case"byte":case"nonnegativeinteger":case"unsignedlong":case"unsignedint":case"unsignedshort":case"unsignedbyte":case"positiveinteger":n.push(new f.A({name:s,alias:s,type:"integer",nullable:u,length:(0,y._b)("integer")}));break;case"float":case"double":case"decimal":n.push(new f.A({name:s,alias:s,type:"double",nullable:u,length:(0,y._b)("double")}));break;case"boolean":case"string":case"gyearmonth":case"gyear":case"gmonthday":case"gday":case"gmonth":case"anyuri":case"qname":case"notation":case"normalizedstring":case"token":case"language":case"idrefs":case"entities":case"nmtoken":case"nmtokens":case"name":case"ncname":case"id":case"idref":case"entity":case"duration":case"time":n.push(new f.A({name:s,alias:s,type:"string",nullable:u,length:l??(0,y._b)("string")}));break;case"datetime":case"date":n.push(new f.A({name:s,alias:s,type:"date",nullable:u,length:l??(0,y._b)("date")}));break;case"pointpropertytype":i="point",c=!0;break;case"multipointpropertytype":i="multipoint",c=!0;break;case"curvepropertytype":case"multicurvepropertytype":case"multilinestringpropertytype":i="polyline",c=!0;break;case"surfacepropertytype":case"multisurfacepropertytype":case"multipolygonpropertytype":i="polygon",c=!0;break;case"geometrypropertytype":case"multigeometrypropertytype":c=!0,t.push(new r.A(w,`geometry type '${a}' is not supported`,{type:(new XMLSerializer).serializeToString(e)}));break;default:t.push(new r.A("wfs-layer:unknown-field-type",`Unknown field type '${a}'`,{type:(new XMLSerializer).serializeToString(e)}))}c&&n.push(new f.A({name:s,alias:s,type:"geometry",nullable:u}))}for(const e of n)if("integer"===e.type&&!e.nullable&&B.has(e.name.toLowerCase())){e.type="oid";break}return{geometryType:i,fields:n,errors:t}}(t)}throw new r.A(x,`Type '${e}' not found in document`,{document:(new XMLSerializer).serializeToString(i)})}(t,(await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"DescribeFeatureType",VERSION:_,TYPENAME:t,TYPENAMES:t,...n?.customParameters},signal:n?.signal})).data)}const B=new Set(["objectid","fid"]);async function P(e,t,n,s,o){let{data:a}=await(0,i.A)(e,{responseType:"text",query:z(t,n,s,o),signal:o?.signal});a=a.replaceAll(/": +(-?\d+),(\d+)(,)?/g,'": $1.$2$3');try{return JSON.parse(a)}catch(e){throw new r.A("wfs-layer:malformed-json","Error while parsing the response",{response:a,error:e})}}function z(e,t,n,i){const r="number"==typeof t?t:t.wkid;return{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:e,OUTPUTFORMAT:n,SRSNAME:"EPSG:"+r,STARTINDEX:i?.startIndex,COUNT:i?.count,...i?.customParameters}}async function N(e,t,n){const r=await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:t,RESULTTYPE:"hits",...n?.customParameters},signal:n?.signal}),s=/numberMatched=["'](?<numberMatched>\d+)["']/gi.exec(r.data);if(s?.groups)return+s.groups.numberMatched}function k(e){return(new DOMParser).parseFromString(e.trim(),"text/xml")}function j(e){const[t,n]=e.split(":");return{prefix:n?t:"",name:n??t}}function O(e){let t="",n="";if((0,p.p)(e.firstElementChild,{Exception:e=>(t=e.getAttribute("exceptionCode"),{ExceptionText:e=>{n=e.textContent}})}),t)throw new r.A(`wfs-layer:${t}`,n)}function G(e,t,n){const i={wkid:t.defaultSpatialReference},r=null!=n?.wkid?{wkid:n.wkid}:i;return{spatialReference:r,getFeatureSpatialReference:(0,m.Fi)(e)||r.wkid&&t.supportedSpatialReferences.includes(r.wkid)?{wkid:r.wkid}:{wkid:t.defaultSpatialReference}}}},13043(e,t,n){function i(e,t){if(e&&t)for(const n of e.children)if(n.localName in t){const e=t[n.localName];if("function"==typeof e){const t=e(n);t&&i(n,t)}else i(n,e)}}function*r(e,t){for(const n of e.children)if(n.localName in t){const e=t[n.localName];"function"==typeof e?yield e(n):yield*r(n,e)}}n.d(t,{i:()=>r,p:()=>i})},39357(e,t,n){n.d(t,{A:()=>a});var i,r=n(5482),s=n(25482),o=n(91429);let a=i=class extends s.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new i({name:this.name,code:this.code})}};(0,r.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,r.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=i=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},53177(e,t,n){n.d(t,{A:()=>c});var i,r=n(5482),s=n(4718),o=n(91429),a=n(39357),l=n(76357),u=n(93223);let c=class extends l.A{static{i=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const n=String(e);this.codedValues.some(e=>(String(e.code)===n&&(t=e.name),!!t))}return t}clone(){return new i({codedValues:(0,s.o8)(this.codedValues),name:this.name})}};(0,r.Cg)([(0,o.MZ)({type:[a.A],json:{write:{isRequired:!0}}})],c.prototype,"codedValues",void 0),(0,r.Cg)([(0,u.e)({codedValue:"coded-value"})],c.prototype,"type",void 0),c=i=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],c)},76357(e,t,n){n.d(t,{A:()=>u});var i=n(5482),r=n(66552),s=n(25482),o=n(91429),a=n(93223);const l=new r.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let u=class extends s.o{constructor(e){super(e),this.name=null,this.type=null}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"name",void 0),(0,i.Cg)([(0,a.e)(l),(0,o.MZ)({json:{write:{isRequired:!0}}})],u.prototype,"type",void 0),u=(0,i.Cg)([(0,o.$K)("esri.layers.support.Domain")],u)},20437(e,t,n){n.d(t,{A:()=>m});var i,r=n(5482),s=n(66552),o=n(25482),a=n(91429),l=n(56507),u=n(8631),c=n(98453),h=n(36005),d=n(93223);const p=new s.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let m=class extends o.o{static{i=this}constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?.value??null}readValueType(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?p.fromJSON(n.fieldValueType):null}clone(){return new i({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"alias",void 0),(0,r.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],m.prototype,"defaultValue",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"description",void 0),(0,r.Cg)([(0,h.w)("description")],m.prototype,"readDescription",null),(0,r.Cg)([(0,a.MZ)({types:u.g,json:{read:{reader:u.r},write:!0}})],m.prototype,"domain",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"editable",void 0),(0,r.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],m.prototype,"length",void 0),(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"nullable",void 0),(0,r.Cg)([(0,d.e)(c.m)],m.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"valueType",void 0),(0,r.Cg)([(0,h.w)("valueType",["description"])],m.prototype,"readValueType",null),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],m.prototype,"visible",void 0),m=i=(0,r.Cg)([(0,a.$K)("esri.layers.support.Field")],m)},41628(e,t,n){n.d(t,{A:()=>l});var i,r=n(5482),s=n(91429),o=n(76357),a=n(93223);let l=class extends o.A{static{i=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new i({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,r.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,n){t[n]=[this.minValue||0,e]},isRequired:!0}}})],l.prototype,"maxValue",void 0),(0,r.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,n){t[n]=[e,this.maxValue||0]},isRequired:!0}}})],l.prototype,"minValue",void 0),(0,r.Cg)([(0,a.e)({range:"range"})],l.prototype,"type",void 0),l=i=(0,r.Cg)([(0,s.$K)("esri.layers.support.RangeDomain")],l)},8631(e,t,n){n.d(t,{r:()=>d,g:()=>h});var i,r=n(53177),s=n(76357),o=n(5482),a=n(91429),l=n(93223);let u=class extends s.A{static{i=this}constructor(e){super(e),this.type="inherited"}clone(){return new i}};(0,o.Cg)([(0,l.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=i=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],u);var c=n(41628);const h={key:"type",base:s.A,typeMap:{range:c.A,"coded-value":r.A,inherited:u}};function d(e){if(!e?.type)return null;switch(e.type){case"range":return c.A.fromJSON(e);case"codedValue":return r.A.fromJSON(e);case"inherited":return u.fromJSON(e)}return null}},98453(e,t,n){n.d(t,{m:()=>i});const i=new(n(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})},2272(e,t,n){n.d(t,{Dl:()=>u,gf:()=>h,jV:()=>l,lF:()=>c});var i=n(92602),r=n(70333),s=n(4718),o=n(84952),a=n(926);function l(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function u(e){return"string"==typeof e?(0,o.An)(e):(0,s.o8)(e)}function c(e,t,n){const i={};for(const r in e){if("declaredClass"===r)continue;const s=e[r];if(null!=s&&"function"!=typeof s)if(Array.isArray(s))i[r]=s.map(e=>c(e));else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(n?.[r]);i[r]=t?e:JSON.stringify(e)}else i[r]=t?s:JSON.stringify(s);else i[r]=s}return i}async function h(e,t,s){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.getApiKey)(e)??r.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!r.id&&i.A.request.useIdentity&&await Promise.all([n.e(7632),n.e(2260),n.e(148)]).then(n.bind(n,50148));const l=await r.id.getCredential(e,s);return l?.token}},926(e,t,n){n.d(t,{Dd:()=>d,Jn:()=>p,Qc:()=>m,getApiKey:()=>c,getSessionToken:()=>h});var i=n(92602),r=n(11254),s=n(84952);const o=/^https?:\/\/(i?basemaps|basemapstyles)-api\.arcgis\.com\//i,a=new Set(["elevation3d.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","static.arcgis.com"]),l=new Map;let u=null;function c(e){if(!m(e))return null;const t=t=>t instanceof RegExp?t.test(e):"string"==typeof t&&e.startsWith(t),n=i.A.apiKeys;if(Array.isArray(n.scopes))for(const e of n.scopes)if(Array.isArray(e.urls)){if(e.urls.some(t))return e.token}else if(t(e.urls))return e.token;return n.basemapStyles&&o.test(e)?n.basemapStyles:i.A.apiKey&&/^https?:\/\/.+\.arcgis\.com(\/|$)/i.test(e)?i.A.apiKey:null}async function h(e){if(!i.A.sessions?.basemap?.enabled||!o.test(e))return null;const t=c(e);if(!t)return null;u&&await u;const{styleFamily:n="arcgis",autoRefresh:s,duration:a=43200}=i.A.sessions.basemap,h=`${t}:${n}`,d=l.get(h);if(d&&(!s||d.endTime>Date.now()))return d.sessionToken;let p;u=(0,r.A)("https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2/sessions/start",{cacheBust:!0,query:{durationSeconds:a,styleFamily:n,token:t}});try{p=(await u).data,p.endTime-=5e3,l.set(h,p)}finally{u=null}return p.sessionToken}function d(){return null!=i.A.apiKey||null!=i.A.apiKeys.basemapStyles}function p(e,t){return t?m(e):null!=c(e)}function m(e){const t=(0,s.$z)(e,!0);return!!t&&!a.has(t)&&!e.endsWith("/sharing/rest/generateToken")}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[926,4794],{69540(e,t,n){n.d(t,{OU:()=>c,Pw:()=>h});var i=n(5482),r=n(69622),s=(n(44208),n(4718)),o=(n(53966),n(97768)),a=n(88620),l=n(64108);const u=Symbol("ClonableMixin"),c=e=>{var t;const n=e;let r=class extends n{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const n=t.metadata,i=t.store,r={},l=new Map;for(const t in n){const o=n[t],a=i?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==a&&0!==a&&5!==a&&4!==a)continue;const c=this[t];let h=null;if("function"==typeof u)h=u(c,e);else if("reference"===u)h=c;else if(h=(0,s.TU)(c,e),null!=c&&null==h)continue;0===a?l.set(t,h):r[t]=h}const u=new(0,Object.getPrototypeOf(this).constructor)(r);if(l.size){const e=(0,a.oY)(u)?.store;if(e)for(const[t,n]of l)e.set(t,n,0)}return u}};return r=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],r),r},h=c(r.A)},66344(e,t,n){n.d(t,{q:()=>a});const i=!!(0,n(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class r{get size(){return this._size}constructor(e=10485760,t=.3){this._maxSize=e,this._maxClientSizeRatio=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(e){this._clients.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._clients.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(e,t){const n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,r,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==n&&this._notifyRemove(t,a.entry,a.size,0)),r>this._maxSize)return void this._notifyRemove(t,n,r,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!r||r<0)return i||console.warn(`Refusing to cache entry with size ${r} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new s(n,r,l)),this._size+=r,e.size+=r,this._checkSize()}updateSize(e,t){t=e.id+t;const n=this._db.get(t);if(!n)return;this._size-=n.size,e.size-=n.size;let i=n.entry.usedMemory;for(;i>this._maxSize;){const e=this._notifyRemove(t,n.entry,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}n.size=i,this._size+=i,e.size+=i,this._checkSize()}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},n=new Array;this._db.forEach((e,i)=>{const r=e.lifetime;n[r]=(n[r]||0)+e.size,this._clients.forEach(n=>{const{id:r,name:s}=n;if(i.startsWith(r)){const n=t[s]||0;t[s]=n+e.size}})});const i={};this._clients.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const r=t[n]||0;t[n]=r,i[n]=Math.round(100*e.hitRate)+"%"}else i[n]="0%"});const r=Object.keys(t);r.sort((e,n)=>t[n]-t[e]),r.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+i[n]);for(let t=n.length-1;t>=0;--t){const i=n[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._clients.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._clients.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,i){const r=this._clients.get(e.split(o)[0])?.removeFunc,s=r?.(t,i,n);return"number"==typeof s?s:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._clients.forEach(e=>this._checkSizeLimits(this._maxClientSize,e)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const n=t??this;if(n.size<=e)return;const i=t?.id;let r=!0;for(;r;){r=!1;for(const[s,a]of this._db)if(0===a.lifetime&&(!i||s.startsWith(i))){const i=t??this._clients.get(s.split(o)[0]);if(this._purgeItem(s,a,i),n.size<=.9*e)return;r||=this._db.has(s)}}for(const[r,s]of this._db)if(!i||r.startsWith(i)){const i=t??this._clients.get(r.split(o)[0]);if(this._purgeItem(r,s,i),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new r(0);class s{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{constructor(e,t){this.removeFunc=t,this.id="",this.name="",this.size=0,this._storage=new r(e,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(e,t,n=1){this._storage.put(this,e,t,n,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},60999(e,t,n){n.d(t,{DZ:()=>m,Ke:()=>p,Tj:()=>c,UT:()=>f,aD:()=>g,jJ:()=>u});var i=n(5482),r=n(69622),s=n(97768),o=n(17676),a=n(10107),l=n(64108);function u(e,t,n){return(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))}async function c(e,t,n){return(await(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))).map(e=>e.value)}function h(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function p(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return h(await e)}catch(e){return d(e)}}async function m(e){try{return h(await e)}catch(e){return(0,o.QP)(e),d(e)}}function f(e,t){return new y(e,t)}let y=class extends r.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,s.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:n}=this._abortController;this.promise=e(n),this.promise.then(e=>{this._result=h(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,o.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,s.xt)(this._abortHandle),this._abortController=null}};(0,i.Cg)([(0,a.MZ)()],y.prototype,"value",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"error",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"finished",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"promise",void 0),(0,i.Cg)([(0,a.MZ)()],y.prototype,"_result",void 0),y=(0,i.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],y);class g{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});const t=await e;return{[Symbol.dispose]:t}}async run(e){const t={stack:[],error:void 0,hasError:!1};try{return(0,i.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,i.hk)(t)}}}},67482(e,t,n){function i(e){return null!=a(e)||null!=o(e)}function r(e){return l.test(e)}function s(e){return a(e)??o(e)}function o(e){const t=new Date(e);return function(e,t){if(Number.isNaN(e.getTime()))return!1;let n=!0;if(c&&/\d+\W*$/.test(t)){const e=t.match(/[a-zA-Z]{2,}/);if(e){let t=!1,i=0;for(;!t&&i<=e.length;)t=!u.test(e[i]),i++;n=!t}}return n}(t,e)?Number.isNaN(t.getTime())?null:t.getTime()-6e4*t.getTimezoneOffset():null}function a(e){const t=l.exec(e);if(!t?.groups)return null;const n=t.groups,i=+n.year,r=+n.month-1,s=+n.day,o=+(n.hours??"0"),a=+(n.minutes??"0"),u=+(n.seconds??"0");if(o>23)return null;if(a>59)return null;if(u>59)return null;const c=n.ms??"0",h=c?+c.padEnd(3,"0").slice(0,3):0;let d;if(n.isUTC||!n.offsetSign)d=Date.UTC(i,r,s,o,a,u,h);else{const e=+n.offsetHours,t=+n.offsetMinutes;d=6e4*("+"===n.offsetSign?-1:1)*(60*e+t)+Date.UTC(i,r,s,o,a,u,h)}return Number.isNaN(d)?null:d}n.d(t,{Br:()=>r,Cq:()=>i,_U:()=>s});const l=/^(?:(?<year>-?\d{4,})-(?<month>\d{2})-(?<day>\d{2}))(?:T(?<hours>\d{2}):(?<minutes>\d{2}):(?<seconds>\d{2})(?:\.(?<ms>\d+))?)?(?:(?<isUTC>Z)|(?:(?<offsetSign>\+|-)(?<offsetHours>\d{2}):(?<offsetMinutes>\d{2})))?$/,u=/^((jan(uary)?)|(feb(ruary)?)|(mar(ch)?)|(apr(il)?)|(may)|(jun(e)?)|(jul(y)?)|(aug(ust)?)|(sep(tember)?)|(oct(ober)?)|(nov(ember)?)|(dec(ember)?)|(am)|(pm)|(gmt)|(utc))$/i,c=!Number.isNaN(new Date("technology 10").getTime())},75503(e,t,n){n.d(t,{wq:()=>a});var i=n(4576),r=n(21818),s=(n(44208),n(15142)),o=n(11006);class a{constructor(e=9,t){this._compareMinX=d,this._compareMinY=p,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),w.prune(),S.prune(),v.prune(),C.prune()}all(e){l(this._data,e)}search(e,t){let n=this._data;const i=this._toBBox;if(b(e,n))for(w.clear();n;){for(let r=0,s=n.children.length;r<s;r++){const s=n.children[r],o=n.leaf?i(s):s;b(e,o)&&(n.leaf?t(s):_(e,o)?l(s,t):w.push(s))}n=w.pop()}}collides(e){let t=this._data;const n=this._toBBox;if(!b(e,t))return!1;for(w.clear();t;){for(let i=0,r=t.children.length;i<r;i++){const r=t.children[i],s=t.leaf?n(r):r;if(b(e,s)){if(t.leaf||_(e,s))return!0;w.push(r)}}t=w.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,n=e.length;t<n;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new F([]),this}remove(e){if(!e)return this;let t,n=this._data,s=null,o=0,a=!1;const l=this._toBBox(e);for(v.clear(),C.clear();n||v.length>0;){if(n||(n=v.pop(),s=v.data[v.length-1],o=C.pop()??0,a=!0),n.leaf&&(t=(0,i.qh)(n.children,(0,r.z)(e),n.children.length,n.indexHint),-1!==t))return n.children.splice(t,1),v.push(n),this._condense(v),this;a||n.leaf||!_(n,l)?s?(o++,n=s.children[o],a=!1):n=null:(v.push(n),C.push(o),o=0,s=n,n=n.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,n,i){const r=n-t+1;let s=this._maxEntries;if(r<=s){const i=new F(e.slice(t,n+1));return u(i,this._toBBox),i}i||(i=Math.ceil(Math.log(r)/Math.log(s)),s=Math.ceil(r/s**(i-1)));const o=new M([]);o.height=i;const a=Math.ceil(r/s),l=a*Math.ceil(Math.sqrt(s));x(e,t,n,l,this._compareMinX);for(let r=t;r<=n;r+=l){const t=Math.min(r+l-1,n);x(e,r,t,a,this._compareMinY);for(let n=r;n<=t;n+=a){const r=Math.min(n+a-1,t);o.children.push(this._build(e,n,r,i-1))}}return u(o,this._toBBox),o}_insert(e,t,n){const i=this._toBBox,r=n?e:i(e);v.clear();const s=function(e,t,n,i){for(;i.push(t),!0!==t.leaf&&i.length-1!==n;){let n,i=1/0,r=1/0;for(let s=0,o=t.children.length;s<o;s++){const o=t.children[s],a=m(o),l=y(e,o)-a;l<r?(r=l,i=a<i?a:i,n=o):l===r&&a<i&&(i=a,n=o)}t=n||t.children[0]}return t}(r,this._data,t,v);for(s.children.push(e),h(s,r);t>=0&&v.data[t].children.length>this._maxEntries;)this._split(v,t),t--;!function(e,t,n){for(let i=n;i>=0;i--)h(t.data[i],e)}(r,v,t)}_split(e,t){const n=e.data[t],i=n.children.length,r=this._minEntries;this._chooseSplitAxis(n,r,i);const s=this._chooseSplitIndex(n,r,i);if(!s)return;const o=n.children.splice(s,n.children.length-s),a=n.leaf?new F(o):new M(o);a.height=n.height,u(n,this._toBBox),u(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(n,a)}_splitRoot(e,t){this._data=new M([e,t]),this._data.height=e.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(e,t,n){let i,r,s;i=r=1/0;for(let o=t;o<=n-t;o++){const t=c(e,0,o,this._toBBox),a=c(e,o,n,this._toBBox),l=g(t,a),u=m(t)+m(a);l<i?(i=l,s=o,r=u<r?u:r):l===i&&u<r&&(r=u,s=o)}return s}_chooseSplitAxis(e,t,n){const i=e.leaf?this._compareMinX:d,r=e.leaf?this._compareMinY:p;this._allDistMargin(e,t,n,i)<this._allDistMargin(e,t,n,r)&&e.children.sort(i)}_allDistMargin(e,t,n,i){e.children.sort(i);const r=this._toBBox,s=c(e,0,t,r),o=c(e,n-t,n,r);let a=f(s)+f(o);for(let i=t;i<n-t;i++){const t=e.children[i];h(s,e.leaf?r(t):t),a+=f(s)}for(let i=n-t-1;i>=t;i--){const t=e.children[i];h(o,e.leaf?r(t):t),a+=f(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const n=e.data[t];if(0===n.children.length)if(t>0){const r=e.data[t-1],s=r.children;s.splice((0,i.qh)(s,n,s.length,r.indexHint),1)}else this.clear();else u(n,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let n=e;for(S.clear();n;){if(!0===n.leaf)for(const e of n.children)t((0,r.z)(e));else S.pushArray(n.children);n=S.pop()??null}}function u(e,t){c(e,0,e.children.length,t,e)}function c(e,t,n,i,r){r||(r=new F([])),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(let s,o=t;o<n;o++)s=e.children[o],h(r,e.leaf?i(s):s);return r}function h(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function d(e,t){return e.minX-t.minX}function p(e,t){return e.minY-t.minY}function m(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function f(e){return e.maxX-e.minX+(e.maxY-e.minY)}function y(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function g(e,t){const n=Math.max(e.minX,t.minX),i=Math.max(e.minY,t.minY),r=Math.min(e.maxX,t.maxX),s=Math.min(e.maxY,t.maxY);return Math.max(0,r-n)*Math.max(0,s-i)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function b(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,n,i,r){const s=[t,n];for(;s.length;){const t=s.pop(),n=s.pop();if(t-n<=i)continue;const a=n+Math.ceil((t-n)/i/2)*i;(0,o.q)(e,a,n,t,r),s.push(n,a,a,t)}}const w=new s.A,S=new s.A,v=new s.A,C=new s.A({deallocator:void 0});class T{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class A extends T{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class F extends A{constructor(e){super(),this.children=e,this.leaf=!0}}class M extends A{constructor(e){super(),this.children=e,this.leaf=!1}}},36708(e,t,n){n.d(t,{C_:()=>d,OH:()=>f,Vh:()=>y,on:()=>h,pc:()=>g,wB:()=>l,z7:()=>u});var i=n(37955),r=n(36563),s=n(97768),o=n(17676),a=n(14012);function l(e,t,n={}){return c(e,t,n,p)}function u(e,t,n={}){return c(e,t,n,m)}function c(e,t,n={},i){let r=null;const o=n.once?(e,n)=>{i(e)&&((0,s.xt)(r),t(e,n))}:(e,n)=>{i(e)&&t(e,n)};if(r=(0,a.Cn)(e,o,n.sync,n.equals),n.initial){const t=e();o(t,t)}return r}function h(e,t,n,o={}){let a=null,u=null,c=null;function h(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function d(e){o.once&&o.once&&(0,s.xt)(c),n(e)}const p=l(e,(e,n)=>{h(),(0,i.wb)(e)&&(a=e,u=(0,i.on)(e,t,d),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return c=(0,r.hA)(()=>{p.remove(),h()}),c}function d(e,t){return function(e,t,n){if((0,o.G4)(n))return Promise.reject((0,o.NK)());const i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,s.xt)(a)}return new Promise((i,s)=>{a=(0,r.vE)([(0,o.u7)(n,()=>{l(),s((0,o.NK)())}),c(e,e=>{l(),i(e)},{sync:!1,once:!0},t??p)])})}(e,m,t)}function p(e){return!0}function m(e){return!!e}n(80559);const f={sync:!0},y={initial:!0},g={sync:!0,initial:!0}},60408(e,t,n){function i(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function r(e){return void 0!==e.points}function s(e){return void 0!==e.x&&void 0!==e.y}function o(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function u(e){return e?s(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":i(e)?"esriGeometryEnvelope":r(e)?"esriGeometryMultipoint":null:null}function c(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function h(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}n.d(t,{$B:()=>u,Bi:()=>a,Pv:()=>c,Rg:()=>o,U9:()=>r,W0:()=>h,ZC:()=>i,fT:()=>s,uW:()=>l})},65864(e,t,n){n.d(t,{rS:()=>c,xD:()=>d});var i=n(5443),r=n(91075),s=n(48526),o=n(86738),a=n(39829),l=n(82799),u=n(60408);function c(e){return null==e?null:e instanceof r.A?e:(0,u.fT)(e)?o.A.fromJSON(e):(0,u.Rg)(e)?l.A.fromJSON(e):(0,u.Bi)(e)?a.A.fromJSON(e):(0,u.U9)(e)?s.A.fromJSON(e):(0,u.ZC)(e)?i.A.fromJSON(e):null}const h={esriGeometryPoint:o.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:i.A,esriGeometryMultipoint:s.A,esriGeometryMultiPatch:a.A};function d(e){return e&&h[e]||null}},50498(e,t,n){n.d(t,{Ye:()=>h,gy:()=>c,iI:()=>p,yR:()=>d});var i=n(66552),r=n(5443),s=n(91075),o=n(48526),a=n(86738),l=n(39829),u=n(82799);const c=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),h=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),d={base:s.A,key:"type",typeMap:{extent:r.A,multipoint:o.A,point:a.A,polyline:u.A,polygon:l.A}},p=new i.J({esriGeometryBezier3Curve:"cubic-bezier",esriGeometryCircularArc:"circular-arc",esriGeometryEllipticArc:"elliptic-arc"},{ignoreUnknown:!0})},6518(e,t,n){n.d(t,{F:()=>a});var i=n(44208),r=n(75503),s=n(19419);const o={minX:0,minY:0,maxX:0,maxY:0};class a{constructor(){this._indexInvalid=!1,this._boundsToLoad=[],this._boundsById=new Map,this._idByBounds=new Map,this._index=new r.wq(9,(0,i.A)("esri-csp-restrictions")?e=>({minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]}):["[0]","[1]","[2]","[3]"]),this._loadIndex=()=>{if(this._indexInvalid){const e=new Array(this._idByBounds.size);let t=0;this._idByBounds.forEach((n,i)=>{e[t++]=i}),this._indexInvalid=!1,this._index.clear(),this._index.load(e)}else this._boundsToLoad.length&&(this._index.load(Array.from(new Set(this._boundsToLoad.filter(e=>this._idByBounds.has(e))))),this._boundsToLoad.length=0)}}get fullBounds(){if(!this._boundsById.size)return null;const e=(0,s.Ie)();for(const t of this._boundsById.values())t&&(e[0]=Math.min(t[0],e[0]),e[1]=Math.min(t[1],e[1]),e[2]=Math.max(t[2],e[2]),e[3]=Math.max(t[3],e[3]));return e}get valid(){return!this._indexInvalid}clear(){this._indexInvalid=!1,this._boundsToLoad.length=0,this._boundsById.clear(),this._idByBounds.clear(),this._index.clear()}delete(e){const t=this._boundsById.get(e);this._boundsById.delete(e),t&&(this._idByBounds.delete(t),this._indexInvalid||this._index.remove(t))}forEachInBounds(e,t){this._loadIndex(),function(e,t,n){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,n)}(this._index,e,e=>t(this._idByBounds.get(e)))}get(e){return this._boundsById.get(e)}has(e){return this._boundsById.has(e)}invalidateIndex(){this._indexInvalid||(this._indexInvalid=!0,this._boundsToLoad.length=0)}set(e,t){if(!this._indexInvalid){const t=this._boundsById.get(e);t&&(this._index.remove(t),this._idByBounds.delete(t))}this._boundsById.set(e,t),t&&(this._idByBounds.set(t,e),this._indexInvalid||(this._boundsToLoad.push(t),this._boundsToLoad.length>5e4&&this._loadIndex()))}}},83221(e,t,n){n.d(t,{A:()=>m});var i=n(4576),r=n(49186),s=n(65529),o=n(53966),a=n(70328),l=n(19419),u=n(90708),c=n(6518),h=n(51441),d=n(37730);const p=(0,a.vt)();class m{constructor(e){this.geometryInfo=e,this._boundsStore=new c.F,this._featuresById=new Map,this._usedMemory=0,this.events=new s.bk,this.featureAdapter=d.T}get usedMemory(){return this._usedMemory}get geometryType(){return this.geometryInfo.geometryType}get hasM(){return this.geometryInfo.hasM}get hasZ(){return this.geometryInfo.hasZ}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){let e=0;return this._featuresById.forEach(t=>{null!=t.geometry&&t.geometry.coords&&(e+=t.geometry.coords.length)}),{featureCount:this._featuresById.size,vertexCount:e/(this.hasZ?this.hasM?4:3:this.hasM?3:2)}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,n,i,r]=this.fullBounds;return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:(0,h.ag)(e)}}add(e){this._add(e),this._emitChanged()}addMany(e){for(const t of e)this._add(t);this._emitChanged()}upsertMany(e){const t=e.map(e=>this._upsert(e));return this._emitChanged(),t.filter(i.Ru)}clear(){this._featuresById.clear(),this._boundsStore.clear(),this._emitChanged(),this._usedMemory=0}removeById(e){const t=this._featuresById.get(e);return t?(this._remove(t),this._emitChanged(),t):null}removeManyById(e){this._boundsStore.invalidateIndex();for(const t of e){const e=this._featuresById.get(t);e&&this._remove(e)}this._emitChanged()}forEachBounds(e,t){for(const n of e){const e=this._boundsStore.get(n.objectId);e&&t((0,a.Jt)(p,e))}}getFeature(e){return this._featuresById.get(e)}has(e){return this._featuresById.has(e)}forEach(e){this._featuresById.forEach(t=>e(t))}forEachInBounds(e,t){this._boundsStore.forEachInBounds(e,e=>{t(this._featuresById.get(e))})}_emitChanged(){this.events.emit("changed",void 0)}_add(e){if(!e)return;const t=e.objectId;if(null==t)return void o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const n=this._featuresById.get(t);let i;if(n?(e.displayId=n.displayId,i=this._boundsStore.get(t),this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0):null!=this.onFeatureAdd&&this.onFeatureAdd(e),!e.geometry?.coords?.length)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);i=(0,u.jQ)(null!=i?i:(0,l.vt)(),e.geometry),null!=i&&this._boundsStore.set(t,i),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const n=this._featuresById.get(t);if(!n)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0;const{geometry:i,attributes:s}=e;for(const e in s)n.attributes[e]=s[e];return i&&(n.geometry=i,this._boundsStore.set(t,(0,u.jQ)((0,l.vt)(),i)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(n)??0,n}_remove(e){null!=this.onFeatureRemove&&this.onFeatureRemove(e);const t=e.objectId;return this._boundsStore.delete(t),this._featuresById.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(e)??0,e}}},37730(e,t,n){n.d(t,{T:()=>r});var i=n(43334);const r={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t,n)=>new i.Om(t,e.attributes,null,e.objectId),getGeometry:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)}},33771(e,t,n){n.r(t),n.d(t,{default:()=>w});var i=n(60999),r=n(49186),s=n(53966),o=n(34727),a=n(17676),l=n(67076),u=n(21325),c=n(90708),h=n(83221),d=n(31464),p=n(56390),m=n(85113),f=n(82832),y=n(34322),g=n(95466),_=n(54218),b=n(98623);const x="esri.layers.WFSLayer";class w{constructor(){this._customParameters=null,this._queryEngine=null,this._supportsPagination=!0}destroy(){this._queryEngine?.destroy(),this._queryEngine=null}async load(e,t={}){const{getFeatureUrl:n,getFeatureOutputFormat:i,fields:s,geometryType:o,featureType:l,maxRecordCount:u,maxTotalRecordCount:c,maxPageCount:m,objectIdField:f,customParameters:_}=e,{spatialReference:x,getFeatureSpatialReference:w}=(0,y.UH)(n,l,e.spatialReference);try{await(0,d.Nk)(w,x)}catch{throw new r.A("unsupported-projection","Projection not supported",{inSpatialReference:w,outSpatialReference:x})}(0,a.Te)(t),this._customParameters=_,this._featureType=l,this._fieldsIndex=g.A.fromLayerJSON({fields:s,dateFieldsTimeReference:s.some(e=>"esriFieldTypeDate"===e.type)?{timeZoneIANA:b.n$}:null}),this._geometryType=o,this._getFeatureUrl=n,this._getFeatureOutputFormat=i,this._getFeatureSpatialReference=w,this._maxRecordCount=u,this._maxTotalRecordCount=c,this._maxPageCount=m,this._objectIdField=f,this._spatialReference=x;let v=await this._snapshotFeatures(t);if(v.errors.length>0&&(this._supportsPagination=!1,v=await this._snapshotFeatures(t),v.errors.length>0))throw v.errors[0];const C={type:"object-id",fieldName:f};return this._queryEngine=new p.do({fieldsIndex:this._fieldsIndex,geometryType:o,hasM:!1,hasZ:!1,featureIdInfo:C,spatialReference:x,timeInfo:null,featureStore:new h.A({geometryType:o,hasM:!1,hasZ:!1})}),this._queryEngine.featureStore.addMany(v.features),{warnings:S(v),extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async applyEdits(){throw new r.A("wfs-source:editing-not-supported","applyEdits() is not supported on WFSLayer")}async queryFeatures(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQuery(e,t.signal)}async queryFeatureCount(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForCount(e,t.signal)}async queryObjectIds(e={},t={}){return await this._waitSnapshotComplete(),(await this._queryEngine.executeQueryForIds(e,t.signal)).filter(_.Et)}async queryExtent(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForExtent(e,t.signal)}async querySnapping(e,t={}){return await this._waitSnapshotComplete(),await this._queryEngine.executeQueryForSnapping(e,t.signal)}async queryAttributeBins(e,t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeAttributeBinsQuery(e,t.signal)}async refresh(e){return this._customParameters=e.customParameters,this._maxRecordCount=e.maxRecordCount,this._maxTotalRecordCount=e.maxTotalRecordCount,this._maxPageCount=e.maxPageCount,this._snapshotTask?.abort(),this._snapshotTask=(0,i.UT)(e=>this._snapshotFeatures({signal:e})),this._snapshotTask.promise.then(e=>{this._queryEngine.featureStore.clear(),this._queryEngine.featureStore.addMany(e.features);for(const t of S(e))s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-warning",t.message,t.details));e.errors?.length&&s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-error","Refresh completed with errors",{errors:e.errors}))},()=>{this._queryEngine.featureStore.clear()}),await this._waitSnapshotComplete(),{extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async _waitSnapshotComplete(){if(this._snapshotTask&&!this._snapshotTask.finished){try{await this._snapshotTask.promise}catch{}return this._waitSnapshotComplete()}}async _snapshotFeatures(e){const t=e?.signal,n=this._maxTotalRecordCount,i=this._maxPageCount,r=this._supportsPagination&&i>1?await(0,y.E)(this._getFeatureUrl,this._featureType.typeName,{customParameters:this._customParameters,signal:t}):void 0;let s=[];const l=[];if(null==r)try{s=await this._singleQuery(t)}catch(e){(0,a.zf)(e)||l.push(e)}else{const e=Math.min(r,n),u=function*(e,t,n){for(let i=0;i<t;i++)yield e._pageQuery(i,n)}(this,(0,o.qE)(Math.ceil(e/this._maxRecordCount),1,i),t);await Promise.allSettled(Array.from({length:10}).map(()=>async function(e,t,n){let i=e.next();for(;!i.done;){try{const e=await i.value;t.push(...e)}catch(e){(0,a.zf)(e)||n.push(e)}i=e.next()}}(u,s,l)))}return(0,a.Te)(t),{features:s,totalRecordCount:r,maxTotalRecordCount:n,maxPageCount:i,errors:l}}async _singleQuery(e){const t=Number.isFinite(this._maxRecordCount)&&this._maxRecordCount>0?this._maxRecordCount:void 0,n=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,count:t,signal:e});return this._processGeoJSON(n,{signal:e})}async _pageQuery(e,t){const n=e*this._maxRecordCount,i=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,startIndex:n,count:this._maxRecordCount,signal:t});return this._processGeoJSON(i,{startIndex:n,signal:t})}_processGeoJSON(e,t){(0,m.sO)(e,this._getFeatureSpatialReference.wkid);const{startIndex:n,signal:i}=t;(0,a.Te)(i);const r=(0,m.bd)(e,{geometryType:this._geometryType,hasZ:!1,objectIdField:this._objectIdField});if(!(0,u.aI)(this._spatialReference,this._getFeatureSpatialReference))for(const e of r)null!=e.geometry&&(e.geometry=(0,c.Ux)((0,d.Cv)((0,c.zv)(e.geometry,this._geometryType,!1,!1),this._getFeatureSpatialReference,this._spatialReference)));let s=n??1;for(const e of r){const t={};(0,f.MB)(this._fieldsIndex,t,e.attributes,!0),e.attributes=t,null==t[this._objectIdField]&&(e.objectId=t[this._objectIdField]=s++)}return r}}function S(e){const t=[];return null!=e.totalRecordCount&&(e.features.length<e.totalRecordCount&&t.push({name:"wfs-layer:maxRecordCount-too-low",message:`Could only fetch ${e.features.length} of ${e.totalRecordCount} in ${e.maxPageCount} queries. Try increasing the value of WFSLayer.maxRecordCount.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount}}),e.totalRecordCount>e.maxTotalRecordCount&&t.push({name:"wfs-layer:large-dataset",message:`The number of ${e.totalRecordCount} features exceeds the maximum allowed of ${e.maxTotalRecordCount}.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount,maxTotalRecordCount:e.maxTotalRecordCount}})),t}},85113(e,t,n){n.d(t,{BM:()=>T,bd:()=>A,sO:()=>C,xD:()=>h});var i=n(67482),r=n(49186),s=n(21325),o=n(90708),a=n(43334),l=n(92722),u=n(30524);const c={LineString:"esriGeometryPolyline",MultiLineString:"esriGeometryPolyline",MultiPoint:"esriGeometryMultipoint",Point:"esriGeometryPoint",Polygon:"esriGeometryPolygon",MultiPolygon:"esriGeometryPolygon"};function h(e){return c[e]}function*d(e){switch(e.type){case"Feature":yield e;break;case"FeatureCollection":for(const t of e.features)t&&(yield t)}}function*p(e){if(e)switch(e.type){case"Point":yield e.coordinates;break;case"LineString":case"MultiPoint":yield*e.coordinates;break;case"MultiLineString":case"Polygon":for(const t of e.coordinates)yield*t;break;case"MultiPolygon":for(const t of e.coordinates)for(const e of t)yield*e}}function m(e){for(const t of e)if(t.length>2)return!0;return!1}function f(e){let t=0;for(let n=0;n<e.length;n++){const i=e[n],r=e[(n+1)%e.length];t+=i[0]*r[1]-r[0]*i[1]}return t<=0}function y(e){const t=e[0],n=e[e.length-1];t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]||e.push(t)}function g(e,t){const{coordinates:n,type:i}=e,r=t.hasZ??!1,s=!0;switch(i){case"Point":return new l.A([],[...n],r,!1);case"LineString":return(0,o.Ap)({paths:[n],hasZ:s},r,!1);case"MultiLineString":return(0,o.Ap)({paths:n,hasZ:s},r,!1);case"MultiPoint":return(0,o.PR)({points:n,hasZ:s},r,!1);case"Polygon":case"MultiPolygon":{const e=new l.A([],[],r,!1);for(const t of"Polygon"===i?[n]:n){_(e,t[0],r);for(let n=1;n<t.length;n++)b(e,t[n],r)}return e}}}function _(e,t,n){y(t),function(e){return!f(e)}(t)?w(e,t,n):x(e,t,n)}function b(e,t,n){y(t),function(e){return f(e)}(t)?w(e,t,n):x(e,t,n)}function x(e,t,n){for(const i of t)S(e,i,n);e.lengths.push(t.length)}function w(e,t,n){for(let i=t.length-1;i>=0;i--)S(e,t[i],n);e.lengths.push(t.length)}function S(e,[t,n,i],r){e.coords.push(t,n),r&&e.coords.push(i||0)}function v(e){switch(typeof e){case"string":return(0,i.Br)(e)?"esriFieldTypeDate":"esriFieldTypeString";case"number":return"esriFieldTypeDouble";default:return"unknown"}}function C(e,t=4326){if(!e)throw new r.A("geojson-layer:empty","GeoJSON data is empty");if("Feature"!==e.type&&"FeatureCollection"!==e.type)throw new r.A("geojson-layer:unsupported-geojson-object","missing or not supported GeoJSON object type",{data:e});const{crs:n}=e;if(!n)return;const i="string"==typeof n?n:"name"===n.type?n.properties.name:"EPSG"===n.type?n.properties.code:null,o=(0,s.oT)({wkid:t})?new RegExp(".*(CRS84H?|4326)$","i"):new RegExp(`.*(${t})$`,"i");if(!i||!o.test(i))throw new r.A("geojson:unsupported-crs","unsupported GeoJSON 'crs' member",{crs:n})}function T(e,t={}){const n=[],i=new Set,r=new Set;let s,o=!1,a=null,l=!1,{geometryType:c=null}=t;for(const t of d(e)){const{geometry:e,properties:d,id:f}=t;if((!e||(c||(c=h(e.type)),h(e.type)===c))&&(o||(o=m(p(e))),l||(l=null!=f,l&&(s=typeof f,d&&(a=Object.keys(d).filter(e=>d[e]===f)))),d&&a&&l&&null!=f&&(a.length>1?a=a.filter(e=>d[e]===f):1===a.length&&(a=d[a[0]]===f?a:[])),d))for(const e in d){if(i.has(e))continue;const t=v(d[e]);if("unknown"===t){r.add(e);continue}r.delete(e),i.add(e);const s=(0,u.rS)(e);s&&n.push({name:s,alias:e,type:t})}}const f=(0,u.rS)(1===a?.length&&a[0]||null)??void 0;if(f)for(const e of n)if(e.name===f&&(0,u.WA)(e)){e.type="esriFieldTypeOID";break}return{fields:n,geometryType:c,hasZ:o,objectIdFieldName:f,objectIdFieldType:s,unknownFields:Array.from(r)}}function A(e,t){return Array.from(function*(e,t={}){const{geometryType:n,objectIdField:i}=t;for(const r of e){const{geometry:e,properties:s,id:o}=r;if(e&&h(e.type)!==n)continue;const l=s||{};let u;i&&(u=l[i],null==o||u||(l[i]=u=o)),yield new a.Om(e&&g(e,t),l,null,u)}}(d(e),t))}},82832(e,t,n){n.d(t,{$1:()=>y,CR:()=>f,MB:()=>d,PC:()=>g,Yx:()=>l,bP:()=>c});var i=n(67482),r=n(21325),s=n(30524);class o{constructor(e){this.description=e,this.code=null}}class a{constructor(e){this.globalId=null,this.objectId=null,this.success=!1,this.uniqueId=null,this.error=new o(e)}}function l(e){return new a(e)}class u{constructor(e){this.globalId=null,this.success=!0,this.objectId=this.uniqueId=e}}function c(e){return new u(e)}const h=new Set;function d(e,t,n,i=!1){h.clear();for(const r in n){const o=e.get(r);if(!o)continue;const a=p(o,n[r]);if(h.add(o.name),o&&(i||o.editable)){const e=(0,s.CJ)(o,a);if(e)return l((0,s.uo)(e,o,a));t[o.name]=a}}for(const t of e.requiredFields??[])if(!h.has(t.name))return l(`missing required field "${t.name}"`);return null}function p(e,t){let n=t;return(0,s.WA)(e)&&"string"==typeof t?n=parseFloat(t):(0,s.yM)(e)&&null!=t&&"string"!=typeof t?n=String(t):(0,s.vE)(e)&&"string"==typeof t&&(n=(0,i._U)(t)),(0,s.WX)(n)}let m;function f(e,t){if(!e||!(0,r.fn)(t))return e;if("rings"in e||"paths"in e){if(null==m)throw new TypeError("geometry engine not loaded");return m.simplify(t,e)}return e}async function y(e,t){!(0,r.fn)(e)||"esriGeometryPolygon"!==t&&"esriGeometryPolyline"!==t||await async function(){return null==m&&(m=await n.e(1023).then(n.bind(n,81023))),m}()}const g={supportsAutoIntervalBin:!0,supportsFixedIntervalBin:!0,supportsFixedBoundariesBin:!0,supportsDateBin:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsNormalization:!0,supportedStatisticTypes:["COUNT","SUM","AVG","VAR","STDDEV","MIN","MAX","PERCENTILE_CONT","PERCENTILE_DISC","CentroidAggregate","EnvelopeAggregate","ConvexHullAggregate"],supportedNormalizationTypes:["field","log","naturalLog","percentOfTotal","squareRoot"]}},34322(e,t,n){n.d(t,{E:()=>N,Fu:()=>S,O8:()=>M,UH:()=>G,YW:()=>R,i5:()=>b,mG:()=>F,x$:()=>P});var i=n(11254),r=n(49186),s=n(5479),o=n(84952),a=n(5443),l=n(91218),u=n(16930),c=n(21325),h=n(50498),d=n(85113),p=n(13043),m=n(60694),f=n(20437),y=n(30524);const g="xlink:href",_="2.0.0",b="__esri_wfs_id__",x="wfs-layer:feature-type-not-found",w="wfs-layer:unknown-geometry-type";async function S(e,t){const n=function(e){const t=k(e);(function(e){const t=e.firstElementChild?.getAttribute("version");if(t&&t!==_)throw new r.A("wfs-layer:unsupported-wfs-version",`Unsupported WFS version ${t}. Supported version: ${_}`)})(t),O(t);const n=t.firstElementChild,i=(0,s.PP)(function(e){return(0,p.i)(e,{FeatureTypeList:{FeatureType:e=>{const t={typeName:"undefined:undefined",name:"",title:"",description:"",extent:null,namespacePrefix:"",namespaceUri:"",defaultSpatialReference:4326,supportedSpatialReferences:[]},n=new Set;return(0,p.p)(e,{Name:e=>{const{name:n,prefix:i}=j(e.textContent);t.typeName=`${i}:${n}`,t.name=n,t.namespacePrefix=i,t.namespaceUri=e.lookupNamespaceURI(i)},Abstract:e=>{t.description=e.textContent},Title:e=>{t.title=e.textContent},WGS84BoundingBox:e=>{t.extent=a.A.fromJSON(function(e){let t,n,i,r;for(const s of e.children)switch(s.localName){case"LowerCorner":[t,n]=s.textContent.split(" ").map(e=>Number.parseFloat(e));break;case"UpperCorner":[i,r]=s.textContent.split(" ").map(e=>Number.parseFloat(e))}return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:c.KK}}(e))},DefaultCRS:e=>{const i=A(e);i&&(t.defaultSpatialReference=i,n.add(i))},OtherCRS:e=>{const t=A(e);t&&n.add(t)}}),t.title||(t.title=t.name),n.add(4326),t.supportedSpatialReferences.push(...n),t}}})}(n));return{operations:T(n),get featureTypes(){return Array.from(i())},readFeatureTypes:i}}((await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetCapabilities",VERSION:_,...t?.customParameters},signal:t?.signal})).data);return function(e,t){(0,o.m3)(e)&&((0,o.FX)(e,t.operations.DescribeFeatureType.url,!0)&&(t.operations.DescribeFeatureType.url=(0,o.lM)(t.operations.DescribeFeatureType.url)),(0,o.FX)(e,t.operations.GetFeature.url,!0)&&(t.operations.GetFeature.url=(0,o.lM)(t.operations.GetFeature.url)))}(e,n),n}const v=["json","application/json; subtype=geojson; charset=utf-8","application/json; subtype=geojson","application/json","geojson","application/geo+json"];function C(e){for(const t of v){const n=e.findIndex(e=>e.toLowerCase()===t);if(n>=0)return e[n]}return null}function T(e){let t=!0;const n={GetCapabilities:{url:""},DescribeFeatureType:{url:""},GetFeature:{url:"",outputFormat:null,supportsPagination:!1}},i=[],s=[];if((0,p.p)(e,{OperationsMetadata:{Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&i.push(e)}}}},Operation:e=>{switch(e.getAttribute("name")){case"GetCapabilities":return{DCP:{HTTP:{Get:e=>{n.GetCapabilities.url=e.getAttribute(g)}}}};case"DescribeFeatureType":return{DCP:{HTTP:{Get:e=>{n.DescribeFeatureType.url=e.getAttribute(g)}}}};case"GetFeature":return{DCP:{HTTP:{Get:e=>{n.GetFeature.url=e.getAttribute(g)}}},Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&s.push(e)}}}}}}},Constraint:e=>{switch(e.getAttribute("name")){case"KVPEncoding":return{DefaultValue:e=>{t="true"===e.textContent.toLowerCase()}};case"ImplementsResultPaging":return{DefaultValue:e=>{n.GetFeature.supportsPagination="true"===e.textContent.toLowerCase()}}}}}}),n.GetFeature.outputFormat=C(s)??C(i),!t)throw new r.A("wfs-layer:kvp-encoding-not-supported","WFS service doesn't support key/value pair (KVP) encoding");if(null==n.GetFeature.outputFormat)throw new r.A("wfs-layer:geojson-not-supported","WFS service doesn't support GeoJSON output format");return n}function A(e){const t=parseInt(e.textContent?.match(/(?<wkid>\d+$)/i)?.groups?.wkid??"",10);if(!Number.isNaN(t))return t}function F(e,t,n){return(0,s.I6)(e,e=>n?e.name===t&&e.namespaceUri===n:e.typeName===t||e.name===t)}async function M(e,t,n,i={}){const{featureType:s,extent:o}=await async function(e,t,n,i={}){const s=e.readFeatureTypes(),o=t?F(s,t,n):s.next().value,{spatialReference:a=new u.A({wkid:o?.defaultSpatialReference})}=i;if(null==o)throw t?new r.A(x,`The type '${t}' could not be found in the service`):new r.A("wfs-layer:empty-service","The service is empty");let h=o.extent;if(h&&!(0,c.aI)(h.spatialReference,a))try{await(0,l.initializeProjection)(h.spatialReference,a,void 0,i),h=(0,l.project)(h,a)}catch{throw new r.A("wfs-layer:unsupported-spatial-reference","Projection not supported")}return{extent:h,spatialReference:a,featureType:o}}(e,t,n,i),{spatialReference:a}=G(e.operations.GetFeature.url,s,i.spatialReference),{fields:h,geometryType:d,swapXY:p,objectIdField:m,geometryField:f}=await async function(e,t,n,i={}){const{typeName:s}=t,[o,a]=await Promise.allSettled([E(e.operations.DescribeFeatureType.url,s,i),I(e,s,n,i)]),l=e=>new r.A("wfs-layer:getWFSLayerTypeInfo-error",`An error occurred while getting info about the feature type '${s}'`,{error:e});if("rejected"===o.status)throw l(o.reason);if("rejected"===a.status)throw l(a.reason);const{fields:u,errors:c}=o.value??{},h=o.value?.geometryType||a.value?.geometryType,d=a.value?.swapXY??!1;if(null==h)throw new r.A(w,`The geometry type could not be determined for type '${s}`,{typeName:s,geometryType:h,fields:u,errors:c});return{...R(u??[]),geometryType:h,swapXY:d}}(e,s,a,i);return{url:e.operations.GetCapabilities.url,name:s.name,namespaceUri:s.namespaceUri,fields:h,geometryField:f,geometryType:d,objectIdField:m,spatialReference:i.spatialReference??new u.A({wkid:s.defaultSpatialReference}),extent:o,swapXY:p,wfsCapabilities:e,customParameters:i.customParameters}}function R(e){const t=e.find(e=>"geometry"===e.type);let n=e.find(e=>"oid"===e.type);return e=e.filter(e=>"geometry"!==e.type),n||(n=new f.A({name:b,type:"oid",alias:b}),e.unshift(n)),{geometryField:t?.name??null,objectIdField:n.name,fields:e}}async function I(e,t,n,r={}){let s,o=!1;const[a,l]=await Promise.all([P(e.operations.GetFeature.url,t,n,e.operations.GetFeature.outputFormat,{...r,count:1}),(0,i.A)(e.operations.GetFeature.url,{responseType:"text",query:z(t,n,void 0,{...r,count:1}),signal:r?.signal})]),u="FeatureCollection"===a.type&&a.features[0]?.geometry;if(u){let e;switch(s=h.gy.fromJSON((0,d.xD)(u.type)),u.type){case"Point":e=u.coordinates;break;case"LineString":case"MultiPoint":e=u.coordinates[0];break;case"MultiLineString":case"Polygon":e=u.coordinates[0][0];break;case"MultiPolygon":e=u.coordinates[0][0][0]}const t=/<[^>]*pos[^>]*> *(-?\d+(?:\.\d+)?) (-?\d+(?:\.\d+)?)/.exec(l.data);if(t){const n=e[0].toFixed(3),i=e[1].toFixed(3),r=parseFloat(t[1]).toFixed(3);n===parseFloat(t[2]).toFixed(3)&&i===r&&(o=!0)}}return{geometryType:s,swapXY:o}}async function E(e,t,n){return function(e,t){const{name:n}=j(e),i=k(t);O(i);const o=(0,s.I6)((0,p.i)(i.firstElementChild,{element:e=>e}),e=>e.getAttribute("name")===n);if(null!=o){const e=o.getAttribute("type"),t=e?(0,s.I6)((0,p.i)(i.firstElementChild,{complexType:e=>e}),t=>t.getAttribute("name")===j(e).name):(0,s.I6)((0,p.i)(o,{complexType:e=>e}),()=>!0);if(t)return function(e){const t=[],n=[];let i;const s=(0,p.i)(e,{complexContent:{extension:{sequence:{element:e=>e}}}});for(const o of s){const s=o.getAttribute("name");if(!s)continue;let a,l;if(o.hasAttribute("type")?a=j(o.getAttribute("type")).name:(0,p.p)(o,{simpleType:{restriction:e=>(a=j(e.getAttribute("base")).name,{maxLength:e=>{l=+e.getAttribute("value")}})}}),!a)continue;const u="true"===o.getAttribute("nillable");let c=!1;switch(a.toLowerCase()){case"integer":case"nonpositiveinteger":case"negativeinteger":case"long":case"int":case"short":case"byte":case"nonnegativeinteger":case"unsignedlong":case"unsignedint":case"unsignedshort":case"unsignedbyte":case"positiveinteger":n.push(new f.A({name:s,alias:s,type:"integer",nullable:u,length:(0,y._b)("integer")}));break;case"float":case"double":case"decimal":n.push(new f.A({name:s,alias:s,type:"double",nullable:u,length:(0,y._b)("double")}));break;case"boolean":case"string":case"gyearmonth":case"gyear":case"gmonthday":case"gday":case"gmonth":case"anyuri":case"qname":case"notation":case"normalizedstring":case"token":case"language":case"idrefs":case"entities":case"nmtoken":case"nmtokens":case"name":case"ncname":case"id":case"idref":case"entity":case"duration":case"time":n.push(new f.A({name:s,alias:s,type:"string",nullable:u,length:l??(0,y._b)("string")}));break;case"datetime":case"date":n.push(new f.A({name:s,alias:s,type:"date",nullable:u,length:l??(0,y._b)("date")}));break;case"pointpropertytype":i="point",c=!0;break;case"multipointpropertytype":i="multipoint",c=!0;break;case"curvepropertytype":case"multicurvepropertytype":case"multilinestringpropertytype":i="polyline",c=!0;break;case"surfacepropertytype":case"multisurfacepropertytype":case"multipolygonpropertytype":i="polygon",c=!0;break;case"geometrypropertytype":case"multigeometrypropertytype":c=!0,t.push(new r.A(w,`geometry type '${a}' is not supported`,{type:(new XMLSerializer).serializeToString(e)}));break;default:t.push(new r.A("wfs-layer:unknown-field-type",`Unknown field type '${a}'`,{type:(new XMLSerializer).serializeToString(e)}))}c&&n.push(new f.A({name:s,alias:s,type:"geometry",nullable:u}))}for(const e of n)if("integer"===e.type&&!e.nullable&&B.has(e.name.toLowerCase())){e.type="oid";break}return{geometryType:i,fields:n,errors:t}}(t)}throw new r.A(x,`Type '${e}' not found in document`,{document:(new XMLSerializer).serializeToString(i)})}(t,(await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"DescribeFeatureType",VERSION:_,TYPENAME:t,TYPENAMES:t,...n?.customParameters},signal:n?.signal})).data)}const B=new Set(["objectid","fid"]);async function P(e,t,n,s,o){let{data:a}=await(0,i.A)(e,{responseType:"text",query:z(t,n,s,o),signal:o?.signal});a=a.replaceAll(/": +(-?\d+),(\d+)(,)?/g,'": $1.$2$3');try{return JSON.parse(a)}catch(e){throw new r.A("wfs-layer:malformed-json","Error while parsing the response",{response:a,error:e})}}function z(e,t,n,i){const r="number"==typeof t?t:t.wkid;return{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:e,OUTPUTFORMAT:n,SRSNAME:"EPSG:"+r,STARTINDEX:i?.startIndex,COUNT:i?.count,...i?.customParameters}}async function N(e,t,n){const r=await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:t,RESULTTYPE:"hits",...n?.customParameters},signal:n?.signal}),s=/numberMatched=["'](?<numberMatched>\d+)["']/gi.exec(r.data);if(s?.groups)return+s.groups.numberMatched}function k(e){return(new DOMParser).parseFromString(e.trim(),"text/xml")}function j(e){const[t,n]=e.split(":");return{prefix:n?t:"",name:n??t}}function O(e){let t="",n="";if((0,p.p)(e.firstElementChild,{Exception:e=>(t=e.getAttribute("exceptionCode"),{ExceptionText:e=>{n=e.textContent}})}),t)throw new r.A(`wfs-layer:${t}`,n)}function G(e,t,n){const i={wkid:t.defaultSpatialReference},r=null!=n?.wkid?{wkid:n.wkid}:i;return{spatialReference:r,getFeatureSpatialReference:(0,m.Fi)(e)||r.wkid&&t.supportedSpatialReferences.includes(r.wkid)?{wkid:r.wkid}:{wkid:t.defaultSpatialReference}}}},13043(e,t,n){function i(e,t){if(e&&t)for(const n of e.children)if(n.localName in t){const e=t[n.localName];if("function"==typeof e){const t=e(n);t&&i(n,t)}else i(n,e)}}function*r(e,t){for(const n of e.children)if(n.localName in t){const e=t[n.localName];"function"==typeof e?yield e(n):yield*r(n,e)}}n.d(t,{i:()=>r,p:()=>i})},39357(e,t,n){n.d(t,{A:()=>a});var i,r=n(5482),s=n(25482),o=n(91429);let a=i=class extends s.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new i({name:this.name,code:this.code})}};(0,r.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,r.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=i=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},53177(e,t,n){n.d(t,{A:()=>c});var i,r=n(5482),s=n(4718),o=n(91429),a=n(39357),l=n(76357),u=n(93223);let c=class extends l.A{static{i=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const n=String(e);this.codedValues.some(e=>(String(e.code)===n&&(t=e.name),!!t))}return t}clone(){return new i({codedValues:(0,s.o8)(this.codedValues),name:this.name})}};(0,r.Cg)([(0,o.MZ)({type:[a.A],json:{write:{isRequired:!0}}})],c.prototype,"codedValues",void 0),(0,r.Cg)([(0,u.e)({codedValue:"coded-value"})],c.prototype,"type",void 0),c=i=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],c)},76357(e,t,n){n.d(t,{A:()=>u});var i=n(5482),r=n(66552),s=n(25482),o=n(91429),a=n(93223);const l=new r.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let u=class extends s.o{constructor(e){super(e),this.name=null,this.type=null}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"name",void 0),(0,i.Cg)([(0,a.e)(l),(0,o.MZ)({json:{write:{isRequired:!0}}})],u.prototype,"type",void 0),u=(0,i.Cg)([(0,o.$K)("esri.layers.support.Domain")],u)},20437(e,t,n){n.d(t,{A:()=>m});var i,r=n(5482),s=n(66552),o=n(25482),a=n(91429),l=n(56507),u=n(8631),c=n(98453),h=n(36005),d=n(93223);const p=new s.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let m=class extends o.o{static{i=this}constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?.value??null}readValueType(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?p.fromJSON(n.fieldValueType):null}clone(){return new i({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"alias",void 0),(0,r.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],m.prototype,"defaultValue",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"description",void 0),(0,r.Cg)([(0,h.w)("description")],m.prototype,"readDescription",null),(0,r.Cg)([(0,a.MZ)({types:u.g,json:{read:{reader:u.r},write:!0}})],m.prototype,"domain",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"editable",void 0),(0,r.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],m.prototype,"length",void 0),(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"nullable",void 0),(0,r.Cg)([(0,d.e)(c.m)],m.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"valueType",void 0),(0,r.Cg)([(0,h.w)("valueType",["description"])],m.prototype,"readValueType",null),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],m.prototype,"visible",void 0),m=i=(0,r.Cg)([(0,a.$K)("esri.layers.support.Field")],m)},41628(e,t,n){n.d(t,{A:()=>l});var i,r=n(5482),s=n(91429),o=n(76357),a=n(93223);let l=class extends o.A{static{i=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new i({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,r.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,n){t[n]=[this.minValue||0,e]},isRequired:!0}}})],l.prototype,"maxValue",void 0),(0,r.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,n){t[n]=[e,this.maxValue||0]},isRequired:!0}}})],l.prototype,"minValue",void 0),(0,r.Cg)([(0,a.e)({range:"range"})],l.prototype,"type",void 0),l=i=(0,r.Cg)([(0,s.$K)("esri.layers.support.RangeDomain")],l)},8631(e,t,n){n.d(t,{r:()=>d,g:()=>h});var i,r=n(53177),s=n(76357),o=n(5482),a=n(91429),l=n(93223);let u=class extends s.A{static{i=this}constructor(e){super(e),this.type="inherited"}clone(){return new i}};(0,o.Cg)([(0,l.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=i=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],u);var c=n(41628);const h={key:"type",base:s.A,typeMap:{range:c.A,"coded-value":r.A,inherited:u}};function d(e){if(!e?.type)return null;switch(e.type){case"range":return c.A.fromJSON(e);case"codedValue":return r.A.fromJSON(e);case"inherited":return u.fromJSON(e)}return null}},98453(e,t,n){n.d(t,{m:()=>i});const i=new(n(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})},2272(e,t,n){n.d(t,{Dl:()=>u,gf:()=>h,jV:()=>l,lF:()=>c});var i=n(92602),r=n(70333),s=n(4718),o=n(84952),a=n(926);function l(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function u(e){return"string"==typeof e?(0,o.An)(e):(0,s.o8)(e)}function c(e,t,n){const i={};for(const r in e){if("declaredClass"===r)continue;const s=e[r];if(null!=s&&"function"!=typeof s)if(Array.isArray(s))i[r]=s.map(e=>c(e));else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(n?.[r]);i[r]=t?e:JSON.stringify(e)}else i[r]=t?s:JSON.stringify(s);else i[r]=s}return i}async function h(e,t,s){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.getApiKey)(e)??r.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!r.id&&i.A.request.useIdentity&&await Promise.all([n.e(7632),n.e(4235),n.e(148)]).then(n.bind(n,50148));const l=await r.id.getCredential(e,s);return l?.token}},926(e,t,n){n.d(t,{Dd:()=>d,Jn:()=>p,Qc:()=>m,getApiKey:()=>c,getSessionToken:()=>h});var i=n(92602),r=n(11254),s=n(84952);const o=/^https?:\/\/(i?basemaps|basemapstyles)-api\.arcgis\.com\//i,a=new Set(["elevation3d.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","static.arcgis.com"]),l=new Map;let u=null;function c(e){if(!m(e))return null;const t=t=>t instanceof RegExp?t.test(e):"string"==typeof t&&e.startsWith(t),n=i.A.apiKeys;if(Array.isArray(n.scopes))for(const e of n.scopes)if(Array.isArray(e.urls)){if(e.urls.some(t))return e.token}else if(t(e.urls))return e.token;return n.basemapStyles&&o.test(e)?n.basemapStyles:i.A.apiKey&&/^https?:\/\/.+\.arcgis\.com(\/|$)/i.test(e)?i.A.apiKey:null}async function h(e){if(!i.A.sessions?.basemap?.enabled||!o.test(e))return null;const t=c(e);if(!t)return null;u&&await u;const{styleFamily:n="arcgis",autoRefresh:s,duration:a=43200}=i.A.sessions.basemap,h=`${t}:${n}`,d=l.get(h);if(d&&(!s||d.endTime>Date.now()))return d.sessionToken;let p;u=(0,r.A)("https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2/sessions/start",{cacheBust:!0,query:{durationSeconds:a,styleFamily:n,token:t}});try{p=(await u).data,p.endTime-=5e3,l.set(h,p)}finally{u=null}return p.sessionToken}function d(){return null!=i.A.apiKey||null!=i.A.apiKeys.basemapStyles}function p(e,t){return t?m(e):null!=c(e)}function m(e){const t=(0,s.$z)(e,!0);return!!t&&!a.has(t)&&!e.endsWith("/sharing/rest/generateToken")}}}]);
@@ -1 +1 @@
1
- {"widgetLabel":"Feature table","header":"{title} (Total: {count} | Selection: {selected})","headerNoSelection":"{title} (Total: {count})","untitled":"Untitled","relatedRecords":"Related records","attachments":"Attachments","loading":"Loading...","syncing":"Syncing...","errorData":"Data error.","errorLayer":"Layer error.","errorUpdateFailed":"Update failed.","errorDomainType":"Domain type is not supported.","show":"Show","hide":"Hide","menu":"Menu","options":"Options","allColums":"All columns","sortAsc":"Sort ascending","sortDesc":"Sort descending","toggleColumns":"Show/hide columns","clearSelection":"Clear selection","centerOnSelection":"Center on selection","showSelected":"Show selection","filter":"Filter","addField":"Add field","refreshData":"Refresh data","date":"Date","number":"Number","string":"String","showAllRecords":"Show all","zoomToSelection":"Zoom to selection","deleteSelection":"Delete selection","deleteSelectionCount":"Delete selection: {count}","deleteRecordsRemoved":"These records will be permanently removed","keepRecords":"Keep records","recordsCount":"Records ({count})","noLayer":"No layer","exitRelatedRecords":"Exit related records","showAllTables":"Show all tables","selectALayer":"Select a layer","exportSelectionCSV":"Export selection to CSV","noValue":"No value","editingPreventedColumn":"Editing is prevented for cells in this column.","subtypes":{"changeWarning":"The subtype {newType} may have different default values from {originalType}. Keeping the current values may cause unexpected results.","changeWarningTitle":"Subtype changed","useDefaultValuesOption":"Use default values","keepCurrentValuesOption":"Keep current values","unsupportedDomainGroupTitle":"Unsupported","fieldOutOfSubtypeDomainWarning":"This field's value is out of range for its domain."},"addAttachment":"Add attachment","attachmentsCount":"Attachments ({count})","attachmentThumbnail":"Attachment thumbnail","attachmentType":"Attachment type","deleteAttachment":"Delete attachment","deleteAttachmentConfirmation":"Are you sure you want to delete the attachments?","deleteAttachmentCount":"Delete attachments ({count})","download":"Download","downloadAttachment":"Download attachment","dragAndDropToUpload":"Drag and drop file to upload an attachment.","editingDisabled":"Editing is disabled","editingRestricted":"Editing is restricted","errorFileName":"Upload failed. File name is too long.","errorFileSize":"Upload failed. File size too large","errorFileUnsupported":"Upload failed. File type not supported","errorOccured":"An error occurred","exitAttachments":"Exit attachments view","fileName":"File name","keyword":"Keyword","maximize":"Maximize","noAttachments":"There are no attachments","noDataFound":"No data found","noFeature":"No feature provided","noPreviewAvailable":"No preview available","replace":"Replace","replaceFile":"Replace file","scrollToFeature":"Scroll to feature","selectedCount":"Selected: {count}","selectFile":"Select file","size":"Size","updateAttachment":"Update attachment","viewAttachment":"View attachment","viewAttachments":"View attachments","viewDetails":"View details","attachmentTypes":{"application":"Application","audio":"Audio","document":"Document","image":"Image","model":"Model","text":"Text","unknown":"Unknown","video":"Video"},"menuText":{"default":"Default","deselectAll":"Deselect all","displayName":"Display name","fieldName":"Field name","fieldVisibility":"Field visibility","filterFields":"Filter fields","orderBy":"Order by","selectAll":"Select all","type":"Type"},"contingentValues":{"hasInvalidValues":"Select a valid combination of values to enable saving.","hasValidValues":"The value combination is valid. Saving is enabled.","other":"Other","recommended":"Recommended"}}
1
+ {"widgetLabel":"Feature table","header":"{title} (Total: {count} | Selection: {selected})","headerNoSelection":"{title} (Total: {count})","untitled":"Untitled","relatedRecords":"Related records","attachments":"Attachments","loading":"Loading...","syncing":"Syncing...","errorData":"Data error.","errorLayer":"Layer error.","errorUpdateFailed":"Update failed.","errorDomainType":"Domain type is not supported.","show":"Show","hide":"Hide","menu":"Menu","options":"Options","allColums":"All columns","sortAsc":"Sort ascending","sortDesc":"Sort descending","toggleColumns":"Show/hide columns","clearSelection":"Clear selection","centerOnSelection":"Center on selection","showSelected":"Show selection","filter":"Filter","addField":"Add field","refreshData":"Refresh data","date":"Date","number":"Number","string":"String","showAllRecords":"Show all","zoomToSelection":"Zoom to selection","deleteSelection":"Delete selection","deleteSelectionCount":"Delete selection: {count}","deleteRecordsRemoved":"These records will be permanently removed","keepRecords":"Keep records","recordsCount":"Records ({count})","noLayer":"No layer","exitRelatedRecords":"Exit related records","showAllTables":"Show all tables","selectALayer":"Select a layer","exportSelectionCSV":"Export selection to CSV","noValue":"No value","editingPreventedColumn":"Editing is prevented for cells in this column.","subtypes":{"changeWarning":"The subtype {newType} may have different default values from {originalType}. Keeping the current values may cause unexpected results.","changeWarningTitle":"Subtype changed","useDefaultValuesOption":"Use default values","keepCurrentValuesOption":"Keep current values","unsupportedDomainGroupTitle":"Unsupported","fieldOutOfSubtypeDomainWarning":"This field's value is out of range for its domain."},"addAttachment":"Add attachment","attachmentsCount":"Attachments ({count})","attachmentThumbnail":"Attachment thumbnail","attachmentType":"Attachment type","deleteAttachment":"Delete attachment","deleteAttachmentConfirmation":"Are you sure you want to delete the attachments?","deleteAttachmentCount":"Delete attachments ({count})","download":"Download","downloadAttachment":"Download attachment","dragAndDropToUpload":"Drag and drop file to upload an attachment.","editingDisabled":"Editing is disabled","editingRestricted":"Editing is restricted","errorFileName":"Upload failed. File name is too long.","errorFileSize":"Upload failed. File size too large","errorFileUnsupported":"Upload failed. File type not supported","errorOccured":"An error occurred","exitAttachments":"Exit attachments view","fileName":"File name","keyword":"Keyword","maximize":"Maximize","noAttachments":"There are no attachments","noDataFound":"No data found","noFeature":"No feature provided","noPreviewAvailable":"No preview available","replace":"Replace","replaceFile":"Replace file","scrollToFeature":"Scroll to feature","selectedCount":"Selected: {count}","selectFile":"Select file","size":"Size","updateAttachment":"Update attachment","viewAttachment":"View attachment","viewAttachments":"View attachments","viewDetails":"View details","attachmentTypes":{"application":"Application","audio":"Audio","document":"Document","image":"Image","model":"Model","text":"Text","unknown":"Unknown","video":"Video"},"menuText":{"columnVisibility":"Column visibility","default":"Default","deselectAll":"Deselect all","displayName":"Display name","fieldName":"Field name","fieldVisibility":"Field visibility","filterFields":"Filter fields","orderBy":"Order by","searchFields":"Search fields","selectAll":"Select all","type":"Type"},"contingentValues":{"hasInvalidValues":"Select a valid combination of values to enable saving.","hasValidValues":"The value combination is valid. Saving is enabled.","other":"Other","recommended":"Recommended"}}
@@ -1 +1 @@
1
- {"widgetLabel":"Feature table","header":"{title} (Total: {count} | Selection: {selected})","headerNoSelection":"{title} (Total: {count})","untitled":"Untitled","relatedRecords":"Related records","attachments":"Attachments","loading":"Loading...","syncing":"Syncing...","errorData":"Data error.","errorLayer":"Layer error.","errorUpdateFailed":"Update failed.","errorDomainType":"Domain type is not supported.","show":"Show","hide":"Hide","menu":"Menu","options":"Options","allColums":"All columns","sortAsc":"Sort ascending","sortDesc":"Sort descending","toggleColumns":"Show/hide columns","clearSelection":"Clear selection","centerOnSelection":"Center on selection","showSelected":"Show selection","filter":"Filter","addField":"Add field","refreshData":"Refresh data","date":"Date","number":"Number","string":"String","showAllRecords":"Show all","zoomToSelection":"Zoom to selection","deleteSelection":"Delete selection","deleteSelectionCount":"Delete selection: {count}","deleteRecordsRemoved":"These records will be permanently removed","keepRecords":"Keep records","recordsCount":"Records ({count})","noLayer":"No layer","exitRelatedRecords":"Exit related records","showAllTables":"Show all tables","selectALayer":"Select a layer","exportSelectionCSV":"Export selection to CSV","noValue":"No value","editingPreventedColumn":"Editing is prevented for cells in this column.","subtypes":{"changeWarning":"The subtype {newType} may have different default values from {originalType}. Keeping the current values may cause unexpected results.","changeWarningTitle":"Subtype changed","useDefaultValuesOption":"Use default values","keepCurrentValuesOption":"Keep current values","unsupportedDomainGroupTitle":"Unsupported","fieldOutOfSubtypeDomainWarning":"This field's value is out of range for its domain."},"addAttachment":"Add attachment","attachmentsCount":"Attachments ({count})","attachmentThumbnail":"Attachment thumbnail","attachmentType":"Attachment type","deleteAttachment":"Delete attachment","deleteAttachmentConfirmation":"Are you sure you want to delete the attachments?","deleteAttachmentCount":"Delete attachments ({count})","download":"Download","downloadAttachment":"Download attachment","dragAndDropToUpload":"Drag and drop file to upload an attachment.","editingDisabled":"Editing is disabled","editingRestricted":"Editing is restricted","errorFileName":"Upload failed. File name is too long.","errorFileSize":"Upload failed. File size too large","errorFileUnsupported":"Upload failed. File type not supported","errorOccured":"An error occurred","exitAttachments":"Exit attachments view","fileName":"File name","keyword":"Keyword","maximize":"Maximize","noAttachments":"There are no attachments","noDataFound":"No data found","noFeature":"No feature provided","noPreviewAvailable":"No preview available","replace":"Replace","replaceFile":"Replace file","scrollToFeature":"Scroll to feature","selectedCount":"Selected: {count}","selectFile":"Select file","size":"Size","updateAttachment":"Update attachment","viewAttachment":"View attachment","viewAttachments":"View attachments","viewDetails":"View details","attachmentTypes":{"application":"Application","audio":"Audio","document":"Document","image":"Image","model":"Model","text":"Text","unknown":"Unknown","video":"Video"},"menuText":{"default":"Default","deselectAll":"Deselect all","displayName":"Display name","fieldName":"Field name","fieldVisibility":"Field visibility","filterFields":"Filter fields","orderBy":"Order by","selectAll":"Select all","type":"Type"},"contingentValues":{"hasInvalidValues":"Select a valid combination of values to enable saving.","hasValidValues":"The value combination is valid. Saving is enabled.","other":"Other","recommended":"Recommended"}}
1
+ {"widgetLabel":"Feature table","header":"{title} (Total: {count} | Selection: {selected})","headerNoSelection":"{title} (Total: {count})","untitled":"Untitled","relatedRecords":"Related records","attachments":"Attachments","loading":"Loading...","syncing":"Syncing...","errorData":"Data error.","errorLayer":"Layer error.","errorUpdateFailed":"Update failed.","errorDomainType":"Domain type is not supported.","show":"Show","hide":"Hide","menu":"Menu","options":"Options","allColums":"All columns","sortAsc":"Sort ascending","sortDesc":"Sort descending","toggleColumns":"Show/hide columns","clearSelection":"Clear selection","centerOnSelection":"Center on selection","showSelected":"Show selection","filter":"Filter","addField":"Add field","refreshData":"Refresh data","date":"Date","number":"Number","string":"String","showAllRecords":"Show all","zoomToSelection":"Zoom to selection","deleteSelection":"Delete selection","deleteSelectionCount":"Delete selection: {count}","deleteRecordsRemoved":"These records will be permanently removed","keepRecords":"Keep records","recordsCount":"Records ({count})","noLayer":"No layer","exitRelatedRecords":"Exit related records","showAllTables":"Show all tables","selectALayer":"Select a layer","exportSelectionCSV":"Export selection to CSV","noValue":"No value","editingPreventedColumn":"Editing is prevented for cells in this column.","subtypes":{"changeWarning":"The subtype {newType} may have different default values from {originalType}. Keeping the current values may cause unexpected results.","changeWarningTitle":"Subtype changed","useDefaultValuesOption":"Use default values","keepCurrentValuesOption":"Keep current values","unsupportedDomainGroupTitle":"Unsupported","fieldOutOfSubtypeDomainWarning":"This field's value is out of range for its domain."},"addAttachment":"Add attachment","attachmentsCount":"Attachments ({count})","attachmentThumbnail":"Attachment thumbnail","attachmentType":"Attachment type","deleteAttachment":"Delete attachment","deleteAttachmentConfirmation":"Are you sure you want to delete the attachments?","deleteAttachmentCount":"Delete attachments ({count})","download":"Download","downloadAttachment":"Download attachment","dragAndDropToUpload":"Drag and drop file to upload an attachment.","editingDisabled":"Editing is disabled","editingRestricted":"Editing is restricted","errorFileName":"Upload failed. File name is too long.","errorFileSize":"Upload failed. File size too large","errorFileUnsupported":"Upload failed. File type not supported","errorOccured":"An error occurred","exitAttachments":"Exit attachments view","fileName":"File name","keyword":"Keyword","maximize":"Maximize","noAttachments":"There are no attachments","noDataFound":"No data found","noFeature":"No feature provided","noPreviewAvailable":"No preview available","replace":"Replace","replaceFile":"Replace file","scrollToFeature":"Scroll to feature","selectedCount":"Selected: {count}","selectFile":"Select file","size":"Size","updateAttachment":"Update attachment","viewAttachment":"View attachment","viewAttachments":"View attachments","viewDetails":"View details","attachmentTypes":{"application":"Application","audio":"Audio","document":"Document","image":"Image","model":"Model","text":"Text","unknown":"Unknown","video":"Video"},"menuText":{"columnVisibility":"Column visibility","default":"Default","deselectAll":"Deselect all","displayName":"Display name","fieldName":"Field name","fieldVisibility":"Field visibility","filterFields":"Filter fields","orderBy":"Order by","searchFields":"Search fields","selectAll":"Select all","type":"Type"},"contingentValues":{"hasInvalidValues":"Select a valid combination of values to enable saving.","hasValidValues":"The value combination is valid. Saving is enabled.","other":"Other","recommended":"Recommended"}}