@arcgis/core 4.25.0-next.20220718 → 4.25.0-next.20220721

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 (284) hide show
  1. package/Camera.js +1 -1
  2. package/analysis/DimensioningAnalysis.js +1 -1
  3. package/analysis/LineOfSightAnalysis.js +1 -1
  4. package/analysis/SliceAnalysis.js +1 -1
  5. package/arcade/featureset/support/RecentlyUsedCache.js +1 -1
  6. package/arcade/functions/featuresetgeom.js +1 -1
  7. package/assets/esri/core/workers/RemoteClient.js +1 -1
  8. package/assets/esri/core/workers/chunks/1751de504354d98ac3fd.js +1 -0
  9. package/assets/esri/core/workers/chunks/1f4f1896880bfa6801c5.js +1 -0
  10. package/assets/esri/core/workers/chunks/290cd411d0d18b1d0efd.js +1 -0
  11. package/assets/esri/core/workers/chunks/{ab3bd5fecdb97f2d690e.js → 3b5be512567d9c1c6fe6.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{c3236a7058e64ea3b939.js → 3c9da9b88777700879aa.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{f96e8724ae3458f5e262.js → 4a7aa1b9de61eb013647.js} +1 -1
  14. package/assets/esri/core/workers/chunks/4cb64ccb5fba126f9a66.js +1 -0
  15. package/assets/esri/core/workers/chunks/{68f19e58aae01791944e.js → 579ba109718bc2554008.js} +1 -1
  16. package/assets/esri/core/workers/chunks/59845b02b07a8ed7ce81.js +1 -0
  17. package/assets/esri/core/workers/chunks/{c705f907ce60a646d9aa.js → 652d36523efbe5c9ebb2.js} +1 -1
  18. package/assets/esri/core/workers/chunks/888d8e4471c9a2cd5009.js +1 -0
  19. package/assets/esri/core/workers/chunks/9493a8e5d6001b6bf275.js +1 -0
  20. package/assets/esri/core/workers/chunks/9d824cdfbcdf3cb3246f.js +1 -0
  21. package/assets/esri/core/workers/chunks/bf348f6f52701fa6016e.js +987 -0
  22. package/assets/esri/core/workers/chunks/d02881954c0cc0d39dfb.js +1 -0
  23. package/assets/esri/core/workers/chunks/{1ecbf642debc2207b762.js → da54483123f377e9b3e1.js} +1 -1
  24. package/assets/esri/core/workers/chunks/{61b71b8e028eda10ccab.js → e4ad2cf5d6bded02e392.js} +1 -1
  25. package/assets/esri/core/workers/chunks/{3bfab05ae07ac18a75fe.js → f298a70f3b6f27675d53.js} +1 -1
  26. package/assets/esri/core/workers/chunks/{d499cce61c1c5c367380.js → f40290cfad3fe6fb4ef9.js} +1 -1
  27. package/assets/esri/layers/support/rasterFormats/lerc-wasm.wasm +0 -0
  28. package/assets/esri/themes/base/widgets/_Tooltip.scss +1 -1
  29. package/assets/esri/themes/dark/main.css +1 -1
  30. package/assets/esri/themes/light/main.css +1 -1
  31. package/assets/esri/themes/light/view.css +1 -1
  32. package/chunks/ComponentShader.glsl.js +39 -33
  33. package/chunks/Laserlines.glsl.js +4 -4
  34. package/chunks/Precipitation.glsl.js +2 -2
  35. package/chunks/RibbonLine.glsl.js +46 -44
  36. package/chunks/Stars.glsl.js +2 -2
  37. package/chunks/Terrain.glsl.js +25 -17
  38. package/chunks/boundedPlane.js +1 -1
  39. package/chunks/lerc-wasm.js +1 -1
  40. package/chunks/mat2d.js +1 -1
  41. package/chunks/quatf32.js +1 -1
  42. package/core/BidiEngine.js +1 -1
  43. package/core/accessorSupport/watch.js +1 -1
  44. package/core/libs/gl-matrix-2/factories/quatf32.js +1 -1
  45. package/core/libs/gl-matrix-2/math/mat2d.js +1 -1
  46. package/core/perspectiveUtils.js +1 -1
  47. package/core/promiseUtils.js +1 -1
  48. package/core/reactiveUtils.js +1 -1
  49. package/core/unitUtils.js +1 -1
  50. package/geometry/projection.js +1 -1
  51. package/geometry/projectionEllipsoid.js +1 -1
  52. package/geometry/support/MeshTexture.js +1 -1
  53. package/geometry/support/axisAngleDegrees.js +1 -1
  54. package/geometry/support/coordinateSystem.js +1 -1
  55. package/geometry/support/geodesicUtils.js +1 -1
  56. package/geometry/support/meshUtils/exporters/gltf/index.js +1 -1
  57. package/geometry/support/meshUtils/loadExternal.js +1 -1
  58. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  59. package/geometry/support/scaleUtils.js +1 -1
  60. package/geometry/support/spatialReferenceUtils.js +1 -1
  61. package/identity/IdentityManagerBase.js +1 -1
  62. package/identity/IdentityModal.js +1 -1
  63. package/interfaces.d.ts +3 -33
  64. package/layers/FeatureLayer.js +1 -1
  65. package/layers/effects/parser.js +1 -1
  66. package/layers/graphics/hydratedFeatures.js +1 -1
  67. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  68. package/layers/mixins/ArcGISImageService.js +1 -1
  69. package/layers/ogc/wfsUtils.js +1 -1
  70. package/layers/support/ContingentValue.js +1 -1
  71. package/layers/support/ElevationQuery.js +1 -1
  72. package/layers/support/PixelBlock.js +1 -1
  73. package/layers/support/kmlUtils.js +1 -1
  74. package/layers/support/rasterDatasets/CloudRaster.js +1 -1
  75. package/layers/support/rasterDatasets/EphemeralBlockCache.js +1 -1
  76. package/layers/support/rasterDatasets/ImageServerRaster.js +1 -1
  77. package/layers/support/rasterDatasets/multipartParser.js +1 -1
  78. package/layers/support/rasterFormats/ImageCanvasDecoder.js +1 -1
  79. package/layers/support/rasterFormats/JpgPlus.js +1 -1
  80. package/layers/support/rasterFormats/Lerc.js +1 -1
  81. package/layers/support/rasterFormats/RasterCodec.js +1 -1
  82. package/layers/support/rasterFormats/Raw.js +1 -1
  83. package/layers/support/rasterFormats/TiffTags.js +1 -1
  84. package/layers/support/rasterFunctions/vectorFieldUtils.js +1 -1
  85. package/layers/support/vectorTileLayerLoader.js +1 -1
  86. package/layers/support/wmtsUtils.js +1 -1
  87. package/package.json +1 -1
  88. package/renderers/RasterShadedReliefRenderer.js +1 -1
  89. package/renderers/RasterStretchRenderer.js +1 -1
  90. package/renderers/UniqueValueRenderer.js +1 -1
  91. package/renderers/support/AuthoringInfo.js +1 -1
  92. package/renderers/support/RasterSymbolizer.js +1 -1
  93. package/rest/query/operations/query.js +1 -1
  94. package/rest/query/operations/queryTopFeatures.js +1 -1
  95. package/rest/support/DirectionsFeatureSet.js +1 -1
  96. package/rest/support/ImageHistogramParameters.js +1 -1
  97. package/rest/support/ImageSampleParameters.js +1 -1
  98. package/smartMapping/labels/clusters.js +1 -1
  99. package/smartMapping/renderers/relationship.js +1 -1
  100. package/smartMapping/support/adapters/support/utils.js +1 -1
  101. package/support/basemapUtils.js +1 -1
  102. package/support/revision.js +1 -1
  103. package/symbols/LabelSymbol3D.js +1 -1
  104. package/symbols/PointSymbol3D.js +1 -1
  105. package/symbols/cim/CIMCursor.js +1 -1
  106. package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
  107. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  108. package/symbols/support/previewSymbol3D.js +1 -1
  109. package/symbols/support/webStyleSymbolUtils.js +1 -1
  110. package/views/2d/ViewState.js +1 -1
  111. package/views/2d/engine/vectorTiles/Feature.js +1 -1
  112. package/views/2d/engine/vectorTiles/style/StyleRepository.js +1 -1
  113. package/views/2d/engine/webgl/SDFConverter.js +1 -1
  114. package/views/2d/engine/webgl/TurboLine.js +1 -1
  115. package/views/2d/engine/webgl/brushes/BrushClip.js +1 -1
  116. package/views/2d/engine/webgl/brushes/BrushOverlay.js +1 -1
  117. package/views/2d/engine/webgl/brushes/WGLGeometryBrushLabel.js +1 -1
  118. package/views/2d/engine/webgl/brushes/WGLGeometryBrushLine.js +1 -1
  119. package/views/2d/engine/webgl/brushes/WGLGeometryBrushText.js +1 -1
  120. package/views/2d/engine/webgl/collisions/MetricReader.js +1 -1
  121. package/views/2d/engine/webgl/cpuMapped/DisplayRecordReader.js +1 -1
  122. package/views/2d/engine/webgl/cpuMapped/FreeList.js +1 -1
  123. package/views/2d/engine/webgl/mesh/heuristics.js +1 -1
  124. package/views/2d/engine/webgl/mesh/templates/WGLDynamicFillTemplate.js +1 -1
  125. package/views/2d/engine/webgl/mesh/templates/WGLDynamicLineTemplate.js +1 -1
  126. package/views/2d/engine/webgl/mesh/templates/WGLDynamicMarkerTemplate.js +1 -1
  127. package/views/2d/engine/webgl/mesh/templates/WGLDynamicTextTemplate.js +1 -1
  128. package/views/2d/engine/webgl/mesh/templates/WGLFillTemplate.js +1 -1
  129. package/views/2d/engine/webgl/mesh/templates/WGLLineTemplate.js +1 -1
  130. package/views/2d/engine/webgl/mesh/templates/WGLMarkerTemplate.js +1 -1
  131. package/views/2d/engine/webgl/mesh/templates/shapingUtils.js +1 -1
  132. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  133. package/views/2d/input/MapViewInputManager.js +1 -1
  134. package/views/2d/layers/features/createSymbolSchema.js +1 -1
  135. package/views/2d/viewpointUtils.js +1 -1
  136. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  137. package/views/3d/analysis/LineOfSight/LineOfSightIntersectionResult.js +1 -1
  138. package/views/3d/analysis/LineOfSight/LineOfSightRayIntersector.js +1 -1
  139. package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
  140. package/views/3d/analysis/LineOfSight/LineOfSightVisualization.js +1 -1
  141. package/views/3d/analysis/LineOfSightAnalysisView3D.js +1 -1
  142. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  143. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  144. package/views/3d/camera/constraintUtils/distance.js +1 -1
  145. package/views/3d/environment/ChapmanAtmosphereTechniqueConfiguration.js +1 -1
  146. package/views/3d/environment/CloudsComposition.js +1 -1
  147. package/views/3d/environment/FogTechnique.js +1 -1
  148. package/views/3d/glTF/internal/Resource.js +1 -1
  149. package/views/3d/input/SceneInputManager.js +1 -1
  150. package/views/3d/interactive/editingTools/dragEventPipeline3D.js +1 -1
  151. package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
  152. package/views/3d/interactive/editingTools/reshapeGraphic/edgeOffsetUtils.js +1 -1
  153. package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
  154. package/views/3d/interactive/editingTools/transformGraphic/GraphicTransformTool.js +1 -1
  155. package/views/3d/interactive/editingTools/transformGraphic/ScaleRotateObjectSymbol3DAdapter.js +1 -1
  156. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js +1 -1
  157. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  158. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  159. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  160. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  161. package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
  162. package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
  163. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  164. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  165. package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
  166. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  167. package/views/3d/layers/graphics/lineUtils.js +1 -1
  168. package/views/3d/layers/i3s/I3SGeometryUtil.js +1 -1
  169. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  170. package/views/3d/layers/i3s/IDBCache.js +1 -1
  171. package/views/3d/layers/i3s/IDBMockCache.js +1 -1
  172. package/views/3d/layers/i3s/PointRenderer.js +1 -1
  173. package/views/3d/layers/support/featureTileQuery3D.js +1 -1
  174. package/views/3d/state/ViewState.js +1 -1
  175. package/views/3d/support/cameraUtils.js +1 -1
  176. package/views/3d/support/orientedBoundingBox.js +1 -1
  177. package/views/3d/support/viewpointUtils.js +1 -1
  178. package/views/3d/terrain/Overlay.js +1 -1
  179. package/views/3d/terrain/OverlayRenderTarget.js +1 -1
  180. package/views/3d/terrain/OverlayRenderer.js +1 -1
  181. package/views/3d/terrain/TerrainRenderer.js +1 -1
  182. package/views/3d/terrain/TerrainSurface.js +1 -1
  183. package/views/3d/terrain/TilingSchemeLogic.js +1 -1
  184. package/views/3d/terrain/interfaces.js +1 -1
  185. package/views/3d/webgl-engine/collections/Component/ComponentObject.js +1 -1
  186. package/views/3d/webgl-engine/collections/Component/DepthRange.js +1 -1
  187. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  188. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  189. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
  190. package/views/3d/webgl-engine/collections/Component/RenderGeometry.js +1 -1
  191. package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
  192. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  193. package/views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js +1 -1
  194. package/views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js +2 -2
  195. package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +2 -2
  196. package/views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js +9 -0
  197. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +18 -17
  198. package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
  199. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  200. package/views/3d/webgl-engine/lib/Intersector.js +1 -1
  201. package/views/3d/webgl-engine/lib/ObjectAndLayerIdRenderHelper.js +5 -0
  202. package/views/3d/webgl-engine/lib/Octree.js +1 -1
  203. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  204. package/views/3d/webgl-engine/lib/PathGeometry.js +1 -1
  205. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  206. package/views/3d/webgl-engine/lib/TextureTechniqueConfiguration.js +1 -1
  207. package/views/3d/webgl-engine/lib/VertexAttribute.js +1 -1
  208. package/views/3d/webgl-engine/lib/geometryDataUtils.js +1 -1
  209. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  210. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  211. package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
  212. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  213. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  214. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  215. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  216. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  217. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  218. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  219. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  220. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  221. package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
  222. package/views/3d/webgl-engine/shaders/LaserlinePathTechniqueConfiguration.js +1 -1
  223. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  224. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  225. package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
  226. package/views/DOMContainer.js +1 -1
  227. package/views/MapView.js +1 -1
  228. package/views/SceneView.js +1 -1
  229. package/views/View.js +1 -1
  230. package/views/analysis/analysisViewUtils.js +1 -1
  231. package/views/animation/pointToPoint/apex/planning.js +1 -1
  232. package/views/draw/PolygonDrawAction.js +1 -1
  233. package/views/draw/PolylineDrawAction.js +1 -1
  234. package/views/draw/support/createUtils.js +1 -1
  235. package/views/draw/support/surfaceCoordinateSystems.js +1 -1
  236. package/views/input/InputManager.js +1 -1
  237. package/views/input/handlers/LatestPointer.js +1 -1
  238. package/views/input/handlers/MultiTouch.js +5 -0
  239. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  240. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  241. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileCache.js +1 -1
  242. package/views/interactive/tooltip/Tooltip.js +1 -1
  243. package/views/interactive/tooltip/support/measurements.js +1 -1
  244. package/views/layers/GroupLayerView.js +1 -1
  245. package/views/navigation/FilteredFiniteDifference.js +1 -1
  246. package/views/navigation/MomentumEstimator.js +1 -1
  247. package/views/navigation/PanPlanarMomentumEstimator.js +1 -1
  248. package/views/navigation/PanSphericalMomentumEstimator.js +1 -1
  249. package/views/navigation/RotationMomentumEstimator.js +1 -1
  250. package/views/support/GroundViewElevationSampler.js +1 -1
  251. package/views/support/euclideanAreaMeasurementUtils.js +1 -1
  252. package/views/support/euclideanLengthMeasurementUtils.js +1 -1
  253. package/views/support/screenshotUtils.js +1 -1
  254. package/views/webgl/BufferObject.js +1 -1
  255. package/views/webgl/FramebufferObject.js +1 -1
  256. package/views/webgl/Texture.js +1 -1
  257. package/views/webgl/capabilities/Capabilities.js +1 -1
  258. package/views/webgl/capabilities.js +1 -1
  259. package/views/webgl/renderState.js +1 -1
  260. package/webscene/spec-certification/api.js +1 -1
  261. package/widgets/CoordinateConversion/support/formatUtils.js +1 -1
  262. package/widgets/ElevationProfile/ElevationProfileController.js +1 -1
  263. package/widgets/ElevationProfile/ElevationProfileLineInput.js +1 -1
  264. package/widgets/ElevationProfile/ElevationProfileLineView.js +1 -1
  265. package/widgets/ElevationProfile/support/chartUtils.js +1 -1
  266. package/widgets/ElevationProfile/support/geometryUtils.js +1 -1
  267. package/widgets/Expand.js +1 -1
  268. package/widgets/Legend/support/sizeRampUtils.js +1 -1
  269. package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
  270. package/widgets/Popup/PopupViewModel.js +1 -1
  271. package/widgets/Popup/actionUtils.js +1 -1
  272. package/widgets/ScaleRangeSlider.js +1 -1
  273. package/widgets/Slider/SliderViewModel.js +1 -1
  274. package/widgets/Widget.js +1 -1
  275. package/assets/esri/core/workers/chunks/04ea469cb081e181ca82.js +0 -1
  276. package/assets/esri/core/workers/chunks/16c2626ca47132700519.js +0 -1
  277. package/assets/esri/core/workers/chunks/1e4e5d147263e98536bc.js +0 -1
  278. package/assets/esri/core/workers/chunks/35083def3c658d1ae9ff.js +0 -1
  279. package/assets/esri/core/workers/chunks/40032d2bf404a46b8f80.js +0 -1
  280. package/assets/esri/core/workers/chunks/613e82a3e13442685ac4.js +0 -1
  281. package/assets/esri/core/workers/chunks/64b4f1dbf61439cde801.js +0 -1
  282. package/assets/esri/core/workers/chunks/abd68b7ba3be4696611c.js +0 -1
  283. package/assets/esri/core/workers/chunks/b8a062c0c9c626acf61e.js +0 -982
  284. package/assets/esri/core/workers/chunks/e08686088be0aaca1a99.js +0 -1
@@ -2,16 +2,16 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{h as e}from"./mat4.js";import{c as r}from"./mat4f64.js";import{b as o,n as i,s as a}from"./vec3.js";import{c as l}from"./vec3f64.js";import{OverlayIndex as n}from"../views/3d/terrain/interfaces.js";import{ShaderOutput as t}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as s}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as d}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexTangent as v}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTangent.glsl.js";import{OutputDepth as c}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as g}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{EvaluateAmbientOcclusion as m}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as w}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{NormalUtils as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PBRMode as h}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{ReadShadowMapDraw as u}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{OverlayMode as f}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js";import{OverlayTerrainPassParameters as b,OverlayTerrain as y,TerrainTexture as C}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/TerrainTexture.glsl.js";import{Float2PassUniform as x}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float3DrawUniform as S}from"../views/3d/webgl-engine/core/shaderModules/Float3DrawUniform.js";import{Float3PassUniform as M}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{FloatPassUniform as j}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as F}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{Matrix4DrawUniform as _}from"../views/3d/webgl-engine/core/shaderModules/Matrix4DrawUniform.js";import{Matrix4PassUniform as L}from"../views/3d/webgl-engine/core/shaderModules/Matrix4PassUniform.js";import{ShaderBuilder as P}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{Texture2DPassUniform as z}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{VertexAttribute as O}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{ambientBoost as T}from"../views/3d/webgl-engine/lighting/SceneLighting.js";class D extends b{}function N(r){const l=new P,{vertex:b,fragment:D,attributes:N}=l;switch(N.add(O.POSITION,"vec3"),N.add(O.UV0,"vec2"),N.add(O.NORMAL,"vec3"),b.uniforms.add([new L("proj",((e,r)=>r.camera.projectionMatrix)),new _("view",((r,o)=>e($,o.camera.viewMatrix,r.origin))),new S("origin",(e=>e.origin))]),D.uniforms.add(new S("origin",(e=>e.origin))),r.output){case t.Color:{l.include(d,r),l.include(p,r),l.include(C,r),l.include(w,r);const t=r.overlayMode!==f.Disabled,c=r.overlayMode===f.EnabledWithWater;t&&l.include(y,{...r,pbrMode:h.Water}),c&&l.include(v,r),l.varyings.add("vnormal","vec3"),l.varyings.add("vpos","vec3"),(r.atmosphere||r.screenSizePerspective)&&b.uniforms.add(new L("viewNormal",((e,r)=>r.camera.viewInverseTransposeMatrix)));const g=r.receiveShadows&&!r.renderOccluded;g&&l.varyings.add("linearDepth","float"),r.tileBorders&&l.varyings.add("vuv","vec2"),r.atmosphere&&(b.uniforms.add(new M("lightingMainDirection",((e,r)=>r.lighting.lightingMainDirection))),l.varyings.add("wnormal","vec3"),l.varyings.add("wlight","vec3")),r.screenSizePerspective&&(l.varyings.add("screenSizeDistanceToCamera","float"),l.varyings.add("screenSizeCosAngle","float")),b.code.add(F`
5
+ import{h as e}from"./mat4.js";import{c as o}from"./mat4f64.js";import{b as r,n as i,s as a}from"./vec3.js";import{c as l}from"./vec3f64.js";import{OverlayIndex as n}from"../views/3d/terrain/interfaces.js";import{ShaderOutput as t}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as s}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as d}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexTangent as v}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTangent.glsl.js";import{OutputDepth as c}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as g}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{EvaluateAmbientOcclusion as m}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{NormalUtils as w}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PBRMode as h}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{ReadShadowMapDraw as u}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{OverlayMode as f}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js";import{OverlayTerrainPassParameters as y,OverlayTerrain as b,TerrainTexture as C}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/TerrainTexture.glsl.js";import{Float2PassUniform as x}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float3DrawUniform as S}from"../views/3d/webgl-engine/core/shaderModules/Float3DrawUniform.js";import{Float3PassUniform as M}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{FloatPassUniform as j}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as F}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{Matrix4DrawUniform as _}from"../views/3d/webgl-engine/core/shaderModules/Matrix4DrawUniform.js";import{Matrix4PassUniform as L}from"../views/3d/webgl-engine/core/shaderModules/Matrix4PassUniform.js";import{ShaderBuilder as O}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{Texture2DPassUniform as P}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{VertexAttribute as z}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{ambientBoost as T}from"../views/3d/webgl-engine/lighting/SceneLighting.js";class D extends y{}function N(o){const l=new O,{vertex:y,fragment:D,attributes:N}=l;switch(N.add(z.POSITION,"vec3"),N.add(z.UV0,"vec2"),N.add(z.NORMAL,"vec3"),y.uniforms.add([new L("proj",((e,o)=>o.camera.projectionMatrix)),new _("view",((o,r)=>e($,r.camera.viewMatrix,o.origin))),new S("origin",(e=>e.origin))]),D.uniforms.add(new S("origin",(e=>e.origin))),o.output){case t.Color:{l.include(d,o),l.include(w,o),l.include(C,o),l.include(p,o);const t=o.overlayMode!==f.Disabled,c=o.overlayMode===f.EnabledWithWater;t&&l.include(b,{...o,pbrMode:h.Water}),c&&l.include(v,o),l.varyings.add("vnormal","vec3"),l.varyings.add("vpos","vec3"),(o.atmosphere||o.screenSizePerspective)&&y.uniforms.add(new L("viewNormal",((e,o)=>o.camera.viewInverseTransposeMatrix)));const g=o.receiveShadows&&!o.renderOccluded;g&&l.varyings.add("linearDepth","float"),o.tileBorders&&l.varyings.add("vuv","vec2"),o.atmosphere&&(y.uniforms.add(new M("lightingMainDirection",((e,o)=>o.lighting.lightingMainDirection))),l.varyings.add("wnormal","vec3"),l.varyings.add("wlight","vec3")),o.screenSizePerspective&&(l.varyings.add("screenSizeDistanceToCamera","float"),l.varyings.add("screenSizeCosAngle","float")),y.code.add(F`
6
6
  void main(void) {
7
7
  vpos = position;
8
- vnormal = ${r.shading?F`normal`:F`getLocalUp(vpos, origin)`};
8
+ vnormal = ${o.shading?F`normal`:F`getLocalUp(vpos, origin)`};
9
9
  vec2 uv = uv0;
10
- ${r.atmosphere?F`
10
+ ${o.atmosphere?F`
11
11
  wnormal = normalize((viewNormal * vec4(normalize(vpos + origin), 1.0)).xyz);
12
12
  wlight = normalize((view * vec4(lightingMainDirection, 1.0)).xyz);`:""}
13
- ${r.tileBorders?F`vuv = uv;`:""}
14
- ${r.screenSizePerspective?F`
13
+ ${o.tileBorders?F`vuv = uv;`:""}
14
+ ${o.screenSizePerspective?F`
15
15
  vec3 viewPos = (view * vec4(vpos, 1.0)).xyz;
16
16
  screenSizeDistanceToCamera = length(viewPos);
17
17
  vec3 viewSpaceNormal = (viewNormal * vec4(normalize(vpos + origin), 1.0)).xyz;
@@ -22,7 +22,7 @@ import{h as e}from"./mat4.js";import{c as r}from"./mat4f64.js";import{b as o,n a
22
22
  ${t?F`setOverlayVTC(uv);`:""}
23
23
  ${c?F`forwardVertexTangent(vnormal);`:F``}
24
24
  }
25
- `),l.extensions.add("GL_OES_standard_derivatives"),l.extensions.add("GL_EXT_shader_texture_lod"),l.include(s,r),l.include(w,r),l.include(m,r),l.include(u,r),D.uniforms.add([new S("cameraPosition",((e,r)=>o(U,r.camera.eye,e.origin))),new M("viewDirection",((e,r)=>i(U,a(U,r.camera.viewMatrix[12],r.camera.viewMatrix[13],r.camera.viewMatrix[14])))),new j("lightingGlobalFactor",((e,r)=>r.lighting.globalFactor)),new M("lightingMainDirection",((e,r)=>r.lighting.lightingMainDirection)),new M("lightingMainIntensity",((e,r)=>r.lighting.mainLight.intensity))]),D.constants.add("ambientBoostFactor","float",T),c&&D.uniforms.add([new z("ovWaterTex",((e,r)=>0===r.overlays.length?null:r.overlays[n.INNER].getNormalTexture(e.overlaySource))),new _("view",((r,o)=>e($,o.camera.viewMatrix,r.origin)))]),D.code.add(F`const float sliceOpacity = 0.2;
25
+ `),l.extensions.add("GL_OES_standard_derivatives"),l.extensions.add("GL_EXT_shader_texture_lod"),l.include(s,o),l.include(p,o),l.include(m,o),l.include(u,o),D.uniforms.add([new S("cameraPosition",((e,o)=>r(U,o.camera.eye,e.origin))),new M("viewDirection",((e,o)=>i(U,a(U,o.camera.viewMatrix[12],o.camera.viewMatrix[13],o.camera.viewMatrix[14])))),new j("lightingGlobalFactor",((e,o)=>o.lighting.globalFactor)),new M("lightingMainDirection",((e,o)=>o.lighting.lightingMainDirection)),new M("lightingMainIntensity",((e,o)=>o.lighting.mainLight.intensity))]),D.constants.add("ambientBoostFactor","float",T),c&&D.uniforms.add([new P("ovWaterTex",((e,o)=>0===o.overlays.length?null:o.overlays[n.INNER].getNormalTexture(e.overlaySource))),new _("view",((o,r)=>e($,r.camera.viewMatrix,o.origin)))]),D.code.add(F`const float sliceOpacity = 0.2;
26
26
  float lum(vec3 c) {
27
27
  return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
28
28
  }`),D.code.add(F`
@@ -40,19 +40,19 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
40
40
  if (rejectBySlice(vpos)) {
41
41
  tileColor *= sliceOpacity;
42
42
  }
43
- ${r.atmosphere?F`
43
+ ${o.atmosphere?F`
44
44
  float ndotl = clamp(vndl, 0.0, 1.0);
45
45
  vec3 atm = vec3(clamp(1.0 - dot(-viewDirection, wnormal), 0.0, 1.0));
46
46
  atm *= clamp(1.0 - lum(tileColor.rgb) * 1.5, 0.0, 1.0); //avoid atmosphere on bright base maps
47
47
  atm *= clamp(ndotl * 2.0, 0.0, 1.0); // avoid atmosphere on dark side of the globe
48
48
  atm *= tileColor.a; // premultiply with tile alpha`:""}
49
49
 
50
- vec3 albedo = ${r.atmosphere?F`atm + tileColor.rgb;`:F`tileColor.rgb;`}
50
+ vec3 albedo = ${o.atmosphere?F`atm + tileColor.rgb;`:F`tileColor.rgb;`}
51
51
 
52
52
  // heuristic shading function used in the old terrain, now used to add ambient lighting
53
- float additionalAmbientScale = smoothstep(0.0, 1.0, clamp(vndl${r.shading?"":F`*2.5`}, 0.0, 1.0));
53
+ float additionalAmbientScale = smoothstep(0.0, 1.0, clamp(vndl${o.shading?"":F`*2.5`}, 0.0, 1.0));
54
54
 
55
- vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor ${r.shading?"":F`* lightingGlobalFactor`};
55
+ vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor ${o.shading?"":F`* lightingGlobalFactor`};
56
56
 
57
57
  gl_FragColor = vec4(evaluateSceneLighting(normal, albedo, shadow, 1.0 - ssao, additionalLight), tileColor.a);
58
58
  ${c?F`
@@ -67,7 +67,7 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
67
67
  // un-gamma the ground color to mix in linear space
68
68
  gl_FragColor = mix(groundColor, waterColorNonLinear, waterColorLinear.w);
69
69
  }`:""}
70
- ${r.screenSizePerspective?F`
70
+ ${o.screenSizePerspective?F`
71
71
  float perspectiveScale = screenSizePerspectiveScaleFloat(1.0, screenSizeCosAngle, screenSizeDistanceToCamera, vec4(0.0, 0.0, 0.0, 0.0));
72
72
  if (perspectiveScale <= 0.25) {
73
73
  gl_FragColor = mix(gl_FragColor, vec4(1.0, 0.0, 0.0, 1.0), perspectiveScale * 4.0);
@@ -81,20 +81,20 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
81
81
  else {
82
82
  gl_FragColor = mix(gl_FragColor, vec4(1.0, 0.0, 1.0, 1.0), (perspectiveScale - 0.5) * 2.0);
83
83
  }`:""}
84
- ${r.tileBorders?F`
84
+ ${o.tileBorders?F`
85
85
  vec2 dVuv = fwidth(vuv);
86
86
  vec2 edgeFactors = smoothstep(vec2(0.0), 1.5 * dVuv, min(vuv, 1.0 - vuv));
87
87
  float edgeFactor = 1.0 - min(edgeFactors.x, edgeFactors.y);
88
88
  gl_FragColor = mix(gl_FragColor, vec4(1.0, 0.0, 0.0, 1.0), edgeFactor);`:""}
89
89
  gl_FragColor = highlightSlice(gl_FragColor, vpos);
90
90
  }
91
- `)}break;case t.Depth:case t.Shadow:case t.ShadowHighlight:case t.ShadowExludeHighlight:l.include(d,r),l.include(c,r),l.include(p,r),l.varyings.add("linearDepth","float"),b.uniforms.add(new x("nearFar",((e,r)=>r.camera.nearFar))),b.code.add(F`void main(void) {
91
+ `)}break;case t.Depth:case t.Shadow:case t.ShadowHighlight:case t.ShadowExludeHighlight:l.include(d,o),l.include(c,o),l.include(w,o),l.varyings.add("linearDepth","float"),y.uniforms.add(new x("nearFar",((e,o)=>o.camera.nearFar))),y.code.add(F`void main(void) {
92
92
  gl_Position = transformPositionWithDepth(proj, view, position, nearFar, linearDepth);
93
93
  }`),D.code.add(F`void main() {
94
94
  outputDepth(linearDepth);
95
- }`);break;case t.Normal:l.include(d,r),l.include(p,r),l.varyings.add("vnormal","vec3"),l.varyings.add("vpos","vec3"),b.uniforms.add(new L("viewNormal",((e,r)=>r.camera.viewInverseTransposeMatrix))),b.code.add(F`
95
+ }`);break;case t.Normal:l.include(d,o),l.include(w,o),l.varyings.add("vnormal","vec3"),l.varyings.add("vpos","vec3"),y.uniforms.add(new L("viewNormal",((e,o)=>o.camera.viewInverseTransposeMatrix))),y.code.add(F`
96
96
  void main(void) {
97
- vec3 normal = ${r.shading?F`normal`:F`getLocalUp(position, origin)`};
97
+ vec3 normal = ${o.shading?F`normal`:F`getLocalUp(position, origin)`};
98
98
  vpos = position;
99
99
 
100
100
  gl_Position = transformPosition(proj, view, vpos);
@@ -106,7 +106,7 @@ if (gl_FrontFacing == false) {
106
106
  normal = -normal;
107
107
  }
108
108
  gl_FragColor = vec4(vec3(0.5) + 0.5 * normal, 0.0);
109
- }`);break;case t.Highlight:l.include(d,r),l.include(p,r),l.include(y,r),b.code.add(F`void main() {
109
+ }`);break;case t.Highlight:l.include(d,o),l.include(w,o),l.include(b,o),y.code.add(F`void main() {
110
110
  setOverlayVTC(uv0);
111
111
  gl_Position = transformPosition(proj, view, position);
112
112
  }`),l.include(g),D.code.add(F`void main() {
@@ -116,4 +116,12 @@ gl_FragColor = vec4(0.0);
116
116
  return;
117
117
  }
118
118
  outputHighlight();
119
- }`)}return l}const $=r(),U=l(),W=Object.freeze(Object.defineProperty({__proto__:null,TerrainPassParameters:D,build:N},Symbol.toStringTag,{value:"Module"}));export{D as T,W as a,N as b};
119
+ }`)}return o.output===t.ObjectAndLayerIdColor&&(l.include(d,o),l.include(w,o),l.include(b,{...o,pbrMode:h.Disabled}),l.varyings.add("vnormal","vec3"),l.varyings.add("vpos","vec3"),y.uniforms.add(new L("viewNormal",((e,o)=>o.camera.viewInverseTransposeMatrix))),y.code.add(F`void main(void) {
120
+ vec3 normal = getLocalUp(position, origin);
121
+ vpos = position;
122
+ gl_Position = transformPosition(proj, view, vpos);
123
+ vnormal = normalize((viewNormal * vec4(normal, 1.0)).xyz);
124
+ setOverlayVTC(uv0);
125
+ }`),D.code.add(F`void main() {
126
+ gl_FragColor = getOverlayColor(ovColorTex, vtcOverlay);
127
+ }`)),l}const $=o(),U=l(),A=Object.freeze(Object.defineProperty({__proto__:null,TerrainPassParameters:D,build:N},Symbol.toStringTag,{value:"Module"}));export{D as T,A as a,N as b};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../core/has.js";import s from"../core/Logger.js";import{acosClamped as i}from"../core/mathUtils.js";import{ObjectStack as t}from"../core/ObjectStack.js";import{a as n,t as o,d as r}from"./mat4.js";import{c as e}from"./mat4f64.js";import{k as a,c,g as u,a as g,s as b,i as f,l,r as p,e as m,b as d,m as h,n as j,p as I}from"./vec3.js";import{f as y,a as P,c as v}from"./vec3f64.js";import{Axis as N}from"../geometry/support/Axis.js";import{create as w,projectPointClamp as M,distance2 as S}from"../geometry/support/lineSegment.js";import{create as T,wrap as A,copy as x,fromVectorsAndPoint as V,normal as _,fromValues as O,intersectRay as k,intersectLineSegment as E,intersectLineSegmentClamp as U,isPointInside as Y,projectPoint as q,setOffsetFromPoint as B}from"../geometry/support/plane.js";import{distance2 as F}from"../geometry/support/ray.js";import{projectPointSignedLength as R}from"../geometry/support/vector.js";import{sv3d as C}from"../geometry/support/vectorStacks.js";const L=s.getLogger("esri.views.3d.support.geometryUtils.boundedPlane");class z{constructor(){this.plane=T(),this.origin=v(),this.basis1=v(),this.basis2=v()}}function G(s=vs){return{plane:T(s.plane),origin:P(s.origin),basis1:P(s.basis1),basis2:P(s.basis2)}}function W(s,i,t){const n=Ss.get();return n.origin=s,n.basis1=i,n.basis2=t,n.plane=A(0,0,0,0),H(n),n}function X(s,i=G()){return D(s.origin,s.basis1,s.basis2,i)}function Z(s,i){c(i.origin,s.origin),c(i.basis1,s.basis1),c(i.basis2,s.basis2),x(i.plane,s.plane)}function D(s,i,t,n=G()){return c(n.origin,s),c(n.basis1,i),c(n.basis2,t),H(n),ys(n,"fromValues()"),n}function H(s){V(s.basis2,s.basis1,s.origin,s.plane)}function J(s,i,t){s!==t&&X(s,t);const n=u(C.get(),ms(s),i);return g(t.origin,t.origin,n),t.plane[3]-=i,t}function K(s,i,t){return Q(i,t),J(t,gs(s,s.origin),t),t}function Q(s,i=G()){const t=(s[2]-s[0])/2,n=(s[3]-s[1])/2;return b(i.origin,s[0]+t,s[1]+n,0),b(i.basis1,t,0,0),b(i.basis2,0,n,0),O(0,0,1,0,i.plane),i}function $(s,i,t){return!!k(s.plane,i,t)&&hs(s,t)}function ss(s,i,t){if($(s,i,t))return t;const n=is(s,i,C.get());return g(t,i.origin,u(C.get(),i.direction,f(i.origin,n)/l(i.direction))),t}function is(s,t,n){const o=Ns.get();Ps(s,t,o,Ns.get());let r=Number.POSITIVE_INFINITY;for(const e of Ts){const a=Is(s,e,ws.get()),u=C.get();if(E(o,a,u)){const s=p(C.get(),t.origin,u),o=Math.abs(i(m(t.direction,s)));o<r&&(r=o,c(n,u))}}return r===Number.POSITIVE_INFINITY?ts(s,t,n):n}function ts(s,i,t){if($(s,i,t))return t;const n=Ns.get(),o=Ns.get();Ps(s,i,n,o);let r=Number.POSITIVE_INFINITY;for(const e of Ts){const a=Is(s,e,ws.get()),u=C.get();if(U(n,a,u)){const s=F(i,u);if(!Y(o,u))continue;s<r&&(r=s,c(t,u))}}return rs(s,i.origin)<r&&ns(s,i.origin,t),t}function ns(s,i,t){const n=q(s.plane,i,C.get()),o=M(js(s,s.basis1),n,-1,1,C.get()),r=M(js(s,s.basis2),n,-1,1,C.get());return d(t,g(C.get(),o,r),s.origin),t}function os(s,i,t){const{origin:n,basis1:o,basis2:r}=s,e=d(C.get(),i,n),a=R(o,e),c=R(r,e),u=R(ms(s),e);return b(t,a,c,u)}function rs(s,i){const t=os(s,i,C.get()),{basis1:n,basis2:o}=s,r=l(n),e=l(o),a=Math.max(Math.abs(t[0])-r,0),c=Math.max(Math.abs(t[1])-e,0),u=t[2];return a*a+c*c+u*u}function es(s,i){return Math.sqrt(rs(s,i))}function as(s,i){let t=Number.NEGATIVE_INFINITY;for(const n of Ts){const o=Is(s,n,ws.get()),r=S(o,i);r>t&&(t=r)}return Math.sqrt(t)}function cs(s,i){return Y(s.plane,i)&&hs(s,i)}function us(s,i,t,n){return ds(s,t,n)}function gs(s,i){const t=-s.plane[3];return R(ms(s),i)-t}function bs(s,i,t,n){const o=gs(s,i),r=u(Ms,ms(s),t-o);return g(n,i,r),n}function fs(s,i){return a(s.basis1,i.basis1)&&a(s.basis2,i.basis2)&&a(s.origin,i.origin)}function ls(s,i,t){return s!==t&&X(s,t),n(As,i),o(As,As),h(t.basis1,s.basis1,As),h(t.basis2,s.basis2,As),h(_(t.plane),_(s.plane),As),h(t.origin,s.origin,i),B(t.plane,t.plane,t.origin),t}function ps(s,i,t,n){return s!==n&&X(s,n),r(xs,i,t),h(n.basis1,s.basis1,xs),h(n.basis2,s.basis2,xs),H(n),n}function ms(s){return _(s.plane)}function ds(s,i,t){switch(i){case N.X:c(t,s.basis1),j(t,t);break;case N.Y:c(t,s.basis2),j(t,t);break;case N.Z:c(t,ms(s))}return t}function hs(s,i){const t=d(C.get(),i,s.origin),n=I(s.basis1),o=I(s.basis2),r=m(s.basis1,t),e=m(s.basis2,t);return-r-n<0&&r-n<0&&-e-o<0&&e-o<0}function js(s,i){const t=ws.get();return c(t.origin,s.origin),c(t.vector,i),t}function Is(s,i,t){const{basis1:n,basis2:o,origin:r}=s,e=u(C.get(),n,i.origin[0]),a=u(C.get(),o,i.origin[1]);g(t.origin,e,a),g(t.origin,t.origin,r);const c=u(C.get(),n,i.direction[0]),b=u(C.get(),o,i.direction[1]);return u(t.vector,g(c,c,b),2),t}function ys(s,i){Math.abs(m(s.basis1,s.basis2)/(l(s.basis1)*l(s.basis2)))>1e-6&&L.warn(i,"Provided basis vectors are not perpendicular"),Math.abs(m(s.basis1,ms(s)))>1e-6&&L.warn(i,"Basis vectors and plane normal are not perpendicular"),Math.abs(-m(ms(s),s.origin)-s.plane[3])>1e-6&&L.warn(i,"Plane offset is not consistent with plane origin")}function Ps(s,i,t,n){const o=ms(s);V(o,i.direction,i.origin,t),V(_(t),o,i.origin,n)}const vs={plane:T(),origin:y(0,0,0),basis1:y(1,0,0),basis2:y(0,1,0)},Ns=new t(T),ws=new t(w),Ms=v(),Ss=new t((()=>({origin:null,basis1:null,basis2:null,plane:null}))),Ts=[{origin:[-1,-1],direction:[1,0]},{origin:[1,-1],direction:[0,1]},{origin:[1,1],direction:[-1,0]},{origin:[-1,1],direction:[0,-1]}],As=e(),xs=e(),Vs=Object.freeze(Object.defineProperty({__proto__:null,BoundedPlaneClass:z,create:G,wrap:W,copy:X,copyWithoutVerify:Z,fromValues:D,updateUnboundedPlane:H,elevate:J,setExtent:K,fromAABoundingRect:Q,intersectRay:$,intersectRayClosestSilhouette:ss,closestPointOnSilhouette:is,closestPoint:ts,projectPoint:ns,projectPointLocal:os,distance2:rs,distance:es,distanceToSilhouette:as,extrusionContainsPoint:cs,axisAt:us,altitudeAt:gs,setAltitudeAt:bs,equals:fs,transform:ls,rotate:ps,normal:ms,UP:vs},Symbol.toStringTag,{value:"Module"}));export{bs as A,z as B,vs as U,G as a,Vs as b,X as c,fs as d,cs as e,D as f,Q as g,es as h,$ as i,Z as j,J as k,ss as l,is as m,ms as n,ts as o,ns as p,os as q,ps as r,K as s,ls as t,H as u,rs as v,W as w,as as x,us as y,gs as z};
5
+ import"../core/has.js";import s from"../core/Logger.js";import{acosClamped as i}from"../core/mathUtils.js";import{ObjectStack as t}from"../core/ObjectStack.js";import{a as n,t as o,d as r}from"./mat4.js";import{c as e}from"./mat4f64.js";import{c as a,g as c,a as u,s as g,i as b,l as f,r as l,e as p,b as m,k as d,m as h,n as j,p as I}from"./vec3.js";import{f as y,c as P,a as v}from"./vec3f64.js";import{Axis as N}from"../geometry/support/Axis.js";import{create as w,projectPointClamp as M,distance2 as S}from"../geometry/support/lineSegment.js";import{create as T,wrap as A,copy as x,fromVectorsAndPoint as V,fromValues as _,intersectRay as O,intersectLineSegment as k,intersectLineSegmentClamp as E,isPointInside as U,projectPoint as Y,normal as q,setOffsetFromPoint as B}from"../geometry/support/plane.js";import{distance2 as F}from"../geometry/support/ray.js";import{projectPointSignedLength as R}from"../geometry/support/vector.js";import{sv3d as C}from"../geometry/support/vectorStacks.js";const L=s.getLogger("esri.views.3d.support.geometryUtils.boundedPlane");class z{constructor(){this.plane=T(),this.origin=P(),this.basis1=P(),this.basis2=P()}}function G(s=vs){return{plane:T(s.plane),origin:v(s.origin),basis1:v(s.basis1),basis2:v(s.basis2)}}function W(s,i,t){const n=Ss.get();return n.origin=s,n.basis1=i,n.basis2=t,n.plane=A(0,0,0,0),H(n),n}function X(s,i=G()){return D(s.origin,s.basis1,s.basis2,i)}function Z(s,i){a(i.origin,s.origin),a(i.basis1,s.basis1),a(i.basis2,s.basis2),x(i.plane,s.plane)}function D(s,i,t,n=G()){return a(n.origin,s),a(n.basis1,i),a(n.basis2,t),H(n),ys(n,"fromValues()"),n}function H(s){V(s.basis2,s.basis1,s.origin,s.plane)}function J(s,i,t){s!==t&&X(s,t);const n=c(C.get(),ms(s),i);return u(t.origin,t.origin,n),t.plane[3]-=i,t}function K(s,i,t){return Q(i,t),J(t,gs(s,s.origin),t),t}function Q(s,i=G()){const t=(s[2]-s[0])/2,n=(s[3]-s[1])/2;return g(i.origin,s[0]+t,s[1]+n,0),g(i.basis1,t,0,0),g(i.basis2,0,n,0),_(0,0,1,0,i.plane),i}function $(s,i,t){return!!O(s.plane,i,t)&&hs(s,t)}function ss(s,i,t){if($(s,i,t))return t;const n=is(s,i,C.get());return u(t,i.origin,c(C.get(),i.direction,b(i.origin,n)/f(i.direction))),t}function is(s,t,n){const o=Ns.get();Ps(s,t,o,Ns.get());let r=Number.POSITIVE_INFINITY;for(const e of Ts){const c=Is(s,e,ws.get()),u=C.get();if(k(o,c,u)){const s=l(C.get(),t.origin,u),o=Math.abs(i(p(t.direction,s)));o<r&&(r=o,a(n,u))}}return r===Number.POSITIVE_INFINITY?ts(s,t,n):n}function ts(s,i,t){if($(s,i,t))return t;const n=Ns.get(),o=Ns.get();Ps(s,i,n,o);let r=Number.POSITIVE_INFINITY;for(const e of Ts){const c=Is(s,e,ws.get()),u=C.get();if(E(n,c,u)){const s=F(i,u);if(!U(o,u))continue;s<r&&(r=s,a(t,u))}}return rs(s,i.origin)<r&&ns(s,i.origin,t),t}function ns(s,i,t){const n=Y(s.plane,i,C.get()),o=M(js(s,s.basis1),n,-1,1,C.get()),r=M(js(s,s.basis2),n,-1,1,C.get());return m(t,u(C.get(),o,r),s.origin),t}function os(s,i,t){const{origin:n,basis1:o,basis2:r}=s,e=m(C.get(),i,n),a=R(o,e),c=R(r,e),u=R(ms(s),e);return g(t,a,c,u)}function rs(s,i){const t=os(s,i,C.get()),{basis1:n,basis2:o}=s,r=f(n),e=f(o),a=Math.max(Math.abs(t[0])-r,0),c=Math.max(Math.abs(t[1])-e,0),u=t[2];return a*a+c*c+u*u}function es(s,i){return Math.sqrt(rs(s,i))}function as(s,i){let t=Number.NEGATIVE_INFINITY;for(const n of Ts){const o=Is(s,n,ws.get()),r=S(o,i);r>t&&(t=r)}return Math.sqrt(t)}function cs(s,i){return U(s.plane,i)&&hs(s,i)}function us(s,i,t,n){return ds(s,t,n)}function gs(s,i){const t=-s.plane[3];return R(ms(s),i)-t}function bs(s,i,t,n){const o=gs(s,i),r=c(Ms,ms(s),t-o);return u(n,i,r),n}function fs(s,i){return d(s.basis1,i.basis1)&&d(s.basis2,i.basis2)&&d(s.origin,i.origin)}function ls(s,i,t){return s!==t&&X(s,t),n(As,i),o(As,As),h(t.basis1,s.basis1,As),h(t.basis2,s.basis2,As),h(q(t.plane),q(s.plane),As),h(t.origin,s.origin,i),B(t.plane,t.plane,t.origin),t}function ps(s,i,t,n){return s!==n&&X(s,n),r(xs,i,t),h(n.basis1,s.basis1,xs),h(n.basis2,s.basis2,xs),H(n),n}function ms(s){return q(s.plane)}function ds(s,i,t){switch(i){case N.X:a(t,s.basis1),j(t,t);break;case N.Y:a(t,s.basis2),j(t,t);break;case N.Z:a(t,ms(s))}return t}function hs(s,i){const t=m(C.get(),i,s.origin),n=I(s.basis1),o=I(s.basis2),r=p(s.basis1,t),e=p(s.basis2,t);return-r-n<0&&r-n<0&&-e-o<0&&e-o<0}function js(s,i){const t=ws.get();return a(t.origin,s.origin),a(t.vector,i),t}function Is(s,i,t){const{basis1:n,basis2:o,origin:r}=s,e=c(C.get(),n,i.origin[0]),a=c(C.get(),o,i.origin[1]);u(t.origin,e,a),u(t.origin,t.origin,r);const g=c(C.get(),n,i.direction[0]),b=c(C.get(),o,i.direction[1]);return c(t.vector,u(g,g,b),2),t}function ys(s,i){Math.abs(p(s.basis1,s.basis2)/(f(s.basis1)*f(s.basis2)))>1e-6&&L.warn(i,"Provided basis vectors are not perpendicular"),Math.abs(p(s.basis1,ms(s)))>1e-6&&L.warn(i,"Basis vectors and plane normal are not perpendicular"),Math.abs(-p(ms(s),s.origin)-s.plane[3])>1e-6&&L.warn(i,"Plane offset is not consistent with plane origin")}function Ps(s,i,t,n){const o=ms(s);V(o,i.direction,i.origin,t),V(q(t),o,i.origin,n)}const vs={plane:T(),origin:y(0,0,0),basis1:y(1,0,0),basis2:y(0,1,0)},Ns=new t(T),ws=new t(w),Ms=P(),Ss=new t((()=>({origin:null,basis1:null,basis2:null,plane:null}))),Ts=[{origin:[-1,-1],direction:[1,0]},{origin:[1,-1],direction:[0,1]},{origin:[1,1],direction:[-1,0]},{origin:[-1,1],direction:[0,-1]}],As=e(),xs=e(),Vs=Object.freeze(Object.defineProperty({__proto__:null,BoundedPlaneClass:z,create:G,wrap:W,copy:X,copyWithoutVerify:Z,fromValues:D,updateUnboundedPlane:H,elevate:J,setExtent:K,fromAABoundingRect:Q,intersectRay:$,intersectRayClosestSilhouette:ss,closestPointOnSilhouette:is,closestPoint:ts,projectPoint:ns,projectPointLocal:os,distance2:rs,distance:es,distanceToSilhouette:as,extrusionContainsPoint:cs,axisAt:us,altitudeAt:gs,setAltitudeAt:bs,equals:fs,transform:ls,rotate:ps,normal:ms,UP:vs},Symbol.toStringTag,{value:"Module"}));export{bs as A,z as B,vs as U,G as a,Vs as b,X as c,fs as d,cs as e,D as f,Q as g,es as h,$ as i,Z as j,J as k,ss as l,is as m,ms as n,ts as o,ns as p,os as q,ps as r,K as s,ls as t,H as u,rs as v,W as w,as as x,us as y,gs as z};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- function t(t,n){for(var e=0;e<n.length;e++){const r=n[e];if("string"!=typeof r&&!Array.isArray(r))for(const n in r)if("default"!==n&&!(n in t)){const e=Object.getOwnPropertyDescriptor(r,n);e&&Object.defineProperty(t,n,e.get?e:{enumerable:!0,get:()=>r[n]})}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}var n,e,r,i={exports:{}};n=i,e="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,"undefined"!=typeof __filename&&(e=e||__filename),r=function(t){var n,r;(t=void 0!==(t=t||{})?t:{}).ready=new Promise((function(t,e){n=t,r=e}));var i,o={};for(i in t)t.hasOwnProperty(i)&&(o[i]=t[i]);var u,s,a,f,c,l="object"==typeof window,p="function"==typeof importScripts,h="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,d="";function m(n){return t.locateFile?t.locateFile(n,d):d+n}h?(d=p?require("path").dirname(d)+"/":__dirname+"/",u=function(t,n){return f||(f=require("fs")),c||(c=require("path")),t=c.normalize(t),f.readFileSync(t,n?null:"utf8")},a=function(t){var n=u(t,!0);return n.buffer||(n=new Uint8Array(n)),b(n.buffer),n},s=function(t,n,e){f||(f=require("fs")),c||(c=require("path")),t=c.normalize(t),f.readFile(t,(function(t,r){t?e(t):n(r.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",(function(t){if(!(t instanceof ct))throw t})),process.on("unhandledRejection",G),t.inspect=function(){return"[Emscripten Module object]"}):(l||p)&&(p?d=self.location.href:"undefined"!=typeof document&&document.currentScript&&(d=document.currentScript.src),e&&(d=e),d=0!==d.indexOf("blob:")?d.substr(0,d.lastIndexOf("/")+1):"",u=function(t){var n=new XMLHttpRequest;return n.open("GET",t,!1),n.send(null),n.responseText},p&&(a=function(t){var n=new XMLHttpRequest;return n.open("GET",t,!1),n.responseType="arraybuffer",n.send(null),new Uint8Array(n.response)}),s=function(t,n,e){var r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?n(r.response):e()},r.onerror=e,r.send(null)}),t.print||console.log.bind(console);var y,g,_=t.printErr||console.warn.bind(console);for(i in o)o.hasOwnProperty(i)&&(t[i]=o[i]);o=null,t.arguments&&t.arguments,t.thisProgram&&t.thisProgram,t.quit&&t.quit,t.wasmBinary&&(y=t.wasmBinary),t.noExitRuntime,"object"!=typeof WebAssembly&&G("no native wasm support detected");var w=!1;function b(t,n){t||G("Assertion failed: "+n)}var v,A,R,S,P,E="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function I(t,n,e){for(var r=n+e,i=n;t[i]&&!(i>=r);)++i;if(i-n>16&&t.subarray&&E)return E.decode(t.subarray(n,i));for(var o="";n<i;){var u=t[n++];if(128&u){var s=63&t[n++];if(192!=(224&u)){var a=63&t[n++];if((u=224==(240&u)?(15&u)<<12|s<<6|a:(7&u)<<18|s<<12|a<<6|63&t[n++])<65536)o+=String.fromCharCode(u);else{var f=u-65536;o+=String.fromCharCode(55296|f>>10,56320|1023&f)}}else o+=String.fromCharCode((31&u)<<6|s)}else o+=String.fromCharCode(u)}return o}function x(t,n){return t?I(R,t,n):""}function T(t,n){return t%n>0&&(t+=n-t%n),t}function j(n){v=n,t.HEAP8=A=new Int8Array(n),t.HEAP16=new Int16Array(n),t.HEAP32=S=new Int32Array(n),t.HEAPU8=R=new Uint8Array(n),t.HEAPU16=new Uint16Array(n),t.HEAPU32=new Uint32Array(n),t.HEAPF32=new Float32Array(n),t.HEAPF64=new Float64Array(n)}t.INITIAL_MEMORY;var D=[],H=[],M=[];function O(){if(t.preRun)for("function"==typeof t.preRun&&(t.preRun=[t.preRun]);t.preRun.length;)U(t.preRun.shift());Z(D)}function W(){Z(H)}function q(){if(t.postRun)for("function"==typeof t.postRun&&(t.postRun=[t.postRun]);t.postRun.length;)F(t.postRun.shift());Z(M)}function U(t){D.unshift(t)}function C(t){H.unshift(t)}function F(t){M.unshift(t)}var B=0,k=null;function z(n){B++,t.monitorRunDependencies&&t.monitorRunDependencies(B)}function L(n){if(B--,t.monitorRunDependencies&&t.monitorRunDependencies(B),0==B&&k){var e=k;k=null,e()}}function G(n){t.onAbort&&t.onAbort(n),_(n+=""),w=!0,n="abort("+n+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(n);throw r(e),e}t.preloadedImages={},t.preloadedAudios={};var X,N="data:application/octet-stream;base64,";function Y(t){return t.startsWith(N)}function J(t){return t.startsWith("file://")}function K(t){try{if(t==X&&y)return new Uint8Array(y);if(a)return a(t);throw"both async and sync fetching of the wasm failed"}catch(_){G(_)}}function Q(){if(!y&&(l||p)){if("function"==typeof fetch&&!J(X))return fetch(X,{credentials:"same-origin"}).then((function(t){if(!t.ok)throw"failed to load wasm binary file at '"+X+"'";return t.arrayBuffer()})).catch((function(){return K(X)}));if(s)return new Promise((function(t,n){s(X,(function(n){t(new Uint8Array(n))}),n)}))}return Promise.resolve().then((function(){return K(X)}))}function V(){var n={a:st};function e(n,e){var r=n.exports;t.asm=r,j((g=t.asm.g).buffer),P=t.asm.m,C(t.asm.h),L()}function i(t){e(t.instance)}function o(t){return Q().then((function(t){return WebAssembly.instantiate(t,n)})).then(t,(function(t){_("failed to asynchronously prepare wasm: "+t),G(t)}))}function u(){return y||"function"!=typeof WebAssembly.instantiateStreaming||Y(X)||J(X)||"function"!=typeof fetch?o(i):fetch(X,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,n).then(i,(function(t){return _("wasm streaming compile failed: "+t),_("falling back to ArrayBuffer instantiation"),o(i)}))}))}if(z(),t.instantiateWasm)try{return t.instantiateWasm(n,e)}catch(s){return _("Module.instantiateWasm callback failed with error: "+s),!1}return u().catch(r),{}}function Z(n){for(;n.length>0;){var e=n.shift();if("function"!=typeof e){var r=e.func;"number"==typeof r?void 0===e.arg?P.get(r)():P.get(r)(e.arg):r(void 0===e.arg?null:e.arg)}else e(t)}}function $(t,n,e,r){G("Assertion failed: "+x(t)+", at: "+[n?x(n):"unknown filename",e,r?x(r):"unknown function"])}function tt(t){return ft(t+16)+16}function nt(t){this.excPtr=t,this.ptr=t-16,this.set_type=function(t){S[this.ptr+4>>2]=t},this.get_type=function(){return S[this.ptr+4>>2]},this.set_destructor=function(t){S[this.ptr+8>>2]=t},this.get_destructor=function(){return S[this.ptr+8>>2]},this.set_refcount=function(t){S[this.ptr>>2]=t},this.set_caught=function(t){t=t?1:0,A[this.ptr+12>>0]=t},this.get_caught=function(){return 0!=A[this.ptr+12>>0]},this.set_rethrown=function(t){t=t?1:0,A[this.ptr+13>>0]=t},this.get_rethrown=function(){return 0!=A[this.ptr+13>>0]},this.init=function(t,n){this.set_type(t),this.set_destructor(n),this.set_refcount(0),this.set_caught(!1),this.set_rethrown(!1)},this.add_ref=function(){var t=S[this.ptr>>2];S[this.ptr>>2]=t+1},this.release_ref=function(){var t=S[this.ptr>>2];return S[this.ptr>>2]=t-1,1===t}}function et(t,n,e){throw new nt(t).init(n,e),t}function rt(){G()}function it(t,n,e){R.copyWithin(t,n,n+e)}function ot(t){try{return g.grow(t-v.byteLength+65535>>>16),j(g.buffer),1}catch(n){}}function ut(t){var n=R.length,e=2147483648;if((t>>>=0)>e)return!1;for(var r=1;r<=4;r*=2){var i=n*(1+.2/r);if(i=Math.min(i,t+100663296),ot(Math.min(e,T(Math.max(t,i),65536))))return!0}return!1}Y(X="lerc-wasm.wasm")||(X=m(X));var st={a:$,c:tt,b:et,f:rt,d:it,e:ut};V(),t.___wasm_call_ctors=function(){return(t.___wasm_call_ctors=t.asm.h).apply(null,arguments)},t._lerc_getBlobInfo=function(){return(t._lerc_getBlobInfo=t.asm.i).apply(null,arguments)},t._lerc_getDataRanges=function(){return(t._lerc_getDataRanges=t.asm.j).apply(null,arguments)},t._lerc_decode=function(){return(t._lerc_decode=t.asm.k).apply(null,arguments)},t._lerc_decode_4D=function(){return(t._lerc_decode_4D=t.asm.l).apply(null,arguments)};var at,ft=t._malloc=function(){return(ft=t._malloc=t.asm.n).apply(null,arguments)};function ct(t){this.name="ExitStatus",this.message="Program terminated with exit("+t+")",this.status=t}function lt(e){function r(){at||(at=!0,t.calledRun=!0,w||(W(),n(t),t.onRuntimeInitialized&&t.onRuntimeInitialized(),q()))}B>0||(O(),B>0||(t.setStatus?(t.setStatus("Running..."),setTimeout((function(){setTimeout((function(){t.setStatus("")}),1),r()}),1)):r()))}if(t._free=function(){return(t._free=t.asm.o).apply(null,arguments)},k=function t(){at||lt(),at||(k=t)},t.run=lt,t.preInit)for("function"==typeof t.preInit&&(t.preInit=[t.preInit]);t.preInit.length>0;)t.preInit.pop()();return lt(),t.ready},n.exports=r;const o=t({__proto__:null,default:i.exports},[i.exports]);export{o as l};
5
+ function t(t,n){for(var e=0;e<n.length;e++){const r=n[e];if("string"!=typeof r&&!Array.isArray(r))for(const n in r)if("default"!==n&&!(n in t)){const e=Object.getOwnPropertyDescriptor(r,n);e&&Object.defineProperty(t,n,e.get?e:{enumerable:!0,get:()=>r[n]})}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}var n,e,r,i={exports:{}};n=i,e="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,"undefined"!=typeof __filename&&(e=e||__filename),r=function(t){var n,r;(t=void 0!==(t=t||{})?t:{}).ready=new Promise((function(t,e){n=t,r=e}));var i,o,u,s,a,c,f=Object.assign({},t),p="object"==typeof window,l="function"==typeof importScripts,h="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,d="";function m(n){return t.locateFile?t.locateFile(n,d):d+n}h?(d=l?require("path").dirname(d)+"/":__dirname+"/",c=()=>{a||(s=require("fs"),a=require("path"))},i=function(t,n){return c(),t=a.normalize(t),s.readFileSync(t,n?void 0:"utf8")},u=t=>{var n=i(t,!0);return n.buffer||(n=new Uint8Array(n)),n},o=(t,n,e)=>{c(),t=a.normalize(t),s.readFile(t,(function(t,r){t?e(t):n(r.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",(function(t){if(!(t instanceof ht))throw t})),process.on("unhandledRejection",(function(t){throw t})),t.inspect=function(){return"[Emscripten Module object]"}):(p||l)&&(l?d=self.location.href:"undefined"!=typeof document&&document.currentScript&&(d=document.currentScript.src),e&&(d=e),d=0!==d.indexOf("blob:")?d.substr(0,d.replace(/[?#].*/,"").lastIndexOf("/")+1):"",i=t=>{var n=new XMLHttpRequest;return n.open("GET",t,!1),n.send(null),n.responseText},l&&(u=t=>{var n=new XMLHttpRequest;return n.open("GET",t,!1),n.responseType="arraybuffer",n.send(null),new Uint8Array(n.response)}),o=(t,n,e)=>{var r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=()=>{200==r.status||0==r.status&&r.response?n(r.response):e()},r.onerror=e,r.send(null)}),t.print||console.log.bind(console);var _,y,g=t.printErr||console.warn.bind(console);Object.assign(t,f),f=null,t.arguments&&t.arguments,t.thisProgram&&t.thisProgram,t.quit&&t.quit,t.wasmBinary&&(_=t.wasmBinary),t.noExitRuntime,"object"!=typeof WebAssembly&&L("no native wasm support detected");var v,w,b,A,R,x,S=!1,P="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function E(t,n,e){for(var r=n+e,i=n;t[i]&&!(i>=r);)++i;if(i-n>16&&t.buffer&&P)return P.decode(t.subarray(n,i));for(var o="";n<i;){var u=t[n++];if(128&u){var s=63&t[n++];if(192!=(224&u)){var a=63&t[n++];if((u=224==(240&u)?(15&u)<<12|s<<6|a:(7&u)<<18|s<<12|a<<6|63&t[n++])<65536)o+=String.fromCharCode(u);else{var c=u-65536;o+=String.fromCharCode(55296|c>>10,56320|1023&c)}}else o+=String.fromCharCode((31&u)<<6|s)}else o+=String.fromCharCode(u)}return o}function I(t,n){return t?E(b,t,n):""}function j(n){v=n,t.HEAP8=w=new Int8Array(n),t.HEAP16=new Int16Array(n),t.HEAP32=A=new Int32Array(n),t.HEAPU8=b=new Uint8Array(n),t.HEAPU16=new Uint16Array(n),t.HEAPU32=R=new Uint32Array(n),t.HEAPF32=new Float32Array(n),t.HEAPF64=new Float64Array(n)}t.INITIAL_MEMORY;var T=[],D=[],H=[];function M(){if(t.preRun)for("function"==typeof t.preRun&&(t.preRun=[t.preRun]);t.preRun.length;)U(t.preRun.shift());V(T)}function O(){V(D)}function W(){if(t.postRun)for("function"==typeof t.postRun&&(t.postRun=[t.postRun]);t.postRun.length;)C(t.postRun.shift());V(H)}function U(t){T.unshift(t)}function q(t){D.unshift(t)}function C(t){H.unshift(t)}var F=0,B=null;function k(n){F++,t.monitorRunDependencies&&t.monitorRunDependencies(F)}function z(n){if(F--,t.monitorRunDependencies&&t.monitorRunDependencies(F),0==F&&B){var e=B;B=null,e()}}function L(n){t.onAbort&&t.onAbort(n),g(n="Aborted("+n+")"),S=!0,n+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(n);throw r(e),e}var G,X="data:application/octet-stream;base64,";function N(t){return t.startsWith(X)}function Y(t){return t.startsWith("file://")}function J(t){try{if(t==G&&_)return new Uint8Array(_);if(u)return u(t);throw"both async and sync fetching of the wasm failed"}catch(g){L(g)}}function K(){if(!_&&(p||l)){if("function"==typeof fetch&&!Y(G))return fetch(G,{credentials:"same-origin"}).then((function(t){if(!t.ok)throw"failed to load wasm binary file at '"+G+"'";return t.arrayBuffer()})).catch((function(){return J(G)}));if(o)return new Promise((function(t,n){o(G,(function(n){t(new Uint8Array(n))}),n)}))}return Promise.resolve().then((function(){return J(G)}))}function Q(){var n={a:ct};function e(n,e){var r=n.exports;t.asm=r,j((y=t.asm.g).buffer),x=t.asm.m,q(t.asm.h),z()}function i(t){e(t.instance)}function o(t){return K().then((function(t){return WebAssembly.instantiate(t,n)})).then((function(t){return t})).then(t,(function(t){g("failed to asynchronously prepare wasm: "+t),L(t)}))}function u(){return _||"function"!=typeof WebAssembly.instantiateStreaming||N(G)||Y(G)||h||"function"!=typeof fetch?o(i):fetch(G,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,n).then(i,(function(t){return g("wasm streaming compile failed: "+t),g("falling back to ArrayBuffer instantiation"),o(i)}))}))}if(k(),t.instantiateWasm)try{return t.instantiateWasm(n,e)}catch(s){return g("Module.instantiateWasm callback failed with error: "+s),!1}return u().catch(r),{}}function V(n){for(;n.length>0;){var e=n.shift();if("function"!=typeof e){var r=e.func;"number"==typeof r?void 0===e.arg?$(r)():$(r)(e.arg):r(void 0===e.arg?null:e.arg)}else e(t)}}N(G="lerc-wasm.wasm")||(G=m(G));var Z=[];function $(t){var n=Z[t];return n||(t>=Z.length&&(Z.length=t+1),Z[t]=n=x.get(t)),n}function tt(t,n,e,r){L("Assertion failed: "+I(t)+", at: "+[n?I(n):"unknown filename",e,r?I(r):"unknown function"])}function nt(t){return ft(t+24)+24}function et(t){this.excPtr=t,this.ptr=t-24,this.set_type=function(t){R[this.ptr+4>>2]=t},this.get_type=function(){return R[this.ptr+4>>2]},this.set_destructor=function(t){R[this.ptr+8>>2]=t},this.get_destructor=function(){return R[this.ptr+8>>2]},this.set_refcount=function(t){A[this.ptr>>2]=t},this.set_caught=function(t){t=t?1:0,w[this.ptr+12>>0]=t},this.get_caught=function(){return 0!=w[this.ptr+12>>0]},this.set_rethrown=function(t){t=t?1:0,w[this.ptr+13>>0]=t},this.get_rethrown=function(){return 0!=w[this.ptr+13>>0]},this.init=function(t,n){this.set_adjusted_ptr(0),this.set_type(t),this.set_destructor(n),this.set_refcount(0),this.set_caught(!1),this.set_rethrown(!1)},this.add_ref=function(){var t=A[this.ptr>>2];A[this.ptr>>2]=t+1},this.release_ref=function(){var t=A[this.ptr>>2];return A[this.ptr>>2]=t-1,1===t},this.set_adjusted_ptr=function(t){R[this.ptr+16>>2]=t},this.get_adjusted_ptr=function(){return R[this.ptr+16>>2]},this.get_exception_ptr=function(){if(lt(this.get_type()))return R[this.excPtr>>2];var t=this.get_adjusted_ptr();return 0!==t?t:this.excPtr}}function rt(t,n,e){throw new et(t).init(n,e),t}function it(){L("")}function ot(t,n,e){b.copyWithin(t,n,n+e)}function ut(){return 2147483648}function st(t){try{return y.grow(t-v.byteLength+65535>>>16),j(y.buffer),1}catch(n){}}function at(t){var n=b.length;t>>>=0;var e=ut();if(t>e)return!1;let r=(t,n)=>t+(n-t%n)%n;for(var i=1;i<=4;i*=2){var o=n*(1+.2/i);if(o=Math.min(o,t+100663296),st(Math.min(e,r(Math.max(t,o),65536))))return!0}return!1}var ct={a:tt,c:nt,b:rt,d:it,f:ot,e:at};Q(),t.___wasm_call_ctors=function(){return(t.___wasm_call_ctors=t.asm.h).apply(null,arguments)},t._lerc_getBlobInfo=function(){return(t._lerc_getBlobInfo=t.asm.i).apply(null,arguments)},t._lerc_getDataRanges=function(){return(t._lerc_getDataRanges=t.asm.j).apply(null,arguments)},t._lerc_decode=function(){return(t._lerc_decode=t.asm.k).apply(null,arguments)},t._lerc_decode_4D=function(){return(t._lerc_decode_4D=t.asm.l).apply(null,arguments)};var ft=t._malloc=function(){return(ft=t._malloc=t.asm.n).apply(null,arguments)};t._free=function(){return(t._free=t.asm.o).apply(null,arguments)};var pt,lt=t.___cxa_is_pointer_type=function(){return(lt=t.___cxa_is_pointer_type=t.asm.p).apply(null,arguments)};function ht(t){this.name="ExitStatus",this.message="Program terminated with exit("+t+")",this.status=t}function dt(e){function r(){pt||(pt=!0,t.calledRun=!0,S||(O(),n(t),t.onRuntimeInitialized&&t.onRuntimeInitialized(),W()))}F>0||(M(),F>0||(t.setStatus?(t.setStatus("Running..."),setTimeout((function(){setTimeout((function(){t.setStatus("")}),1),r()}),1)):r()))}if(B=function t(){pt||dt(),pt||(B=t)},t.run=dt,t.preInit)for("function"==typeof t.preInit&&(t.preInit=[t.preInit]);t.preInit.length>0;)t.preInit.pop()();return dt(),t.ready},n.exports=r;const o=t({__proto__:null,default:i.exports},[i.exports]);export{o as l};
package/chunks/mat2d.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{g as t}from"./common.js";function a(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t}function n(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function s(t,a,n,s,r,u,o){return t[0]=a,t[1]=n,t[2]=s,t[3]=r,t[4]=u,t[5]=o,t}function r(t,a){const n=a[0],s=a[1],r=a[2],u=a[3],o=a[4],e=a[5];let c=n*u-s*r;return c?(c=1/c,t[0]=u*c,t[1]=-s*c,t[2]=-r*c,t[3]=n*c,t[4]=(r*e-u*o)*c,t[5]=(s*o-n*e)*c,t):null}function u(t){return t[0]*t[3]-t[1]*t[2]}function o(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1],M=n[2],f=n[3],b=n[4],l=n[5];return t[0]=s*i+u*h,t[1]=r*i+o*h,t[2]=s*M+u*f,t[3]=r*M+o*f,t[4]=s*b+u*l+e,t[5]=r*b+o*l+c,t}function e(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=Math.sin(n),h=Math.cos(n);return t[0]=s*h+u*i,t[1]=r*h+o*i,t[2]=s*-i+u*h,t[3]=r*-i+o*h,t[4]=e,t[5]=c,t}function c(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1];return t[0]=s*i,t[1]=r*i,t[2]=u*h,t[3]=o*h,t[4]=e,t[5]=c,t}function i(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1];return t[0]=s,t[1]=r,t[2]=u,t[3]=o,t[4]=s*i+u*h+e,t[5]=r*i+o*h+c,t}function h(t,a){const n=Math.sin(a),s=Math.cos(a);return t[0]=s,t[1]=n,t[2]=-n,t[3]=s,t[4]=0,t[5]=0,t}function M(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=a[1],t[4]=0,t[5]=0,t}function f(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=a[0],t[5]=a[1],t}function b(t){return"mat2d("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+")"}function l(t){return Math.sqrt(t[0]**2+t[1]**2+t[2]**2+t[3]**2+t[4]**2+t[5]**2+1)}function m(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t}function d(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t}function p(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t}function x(t,a,n,s){return t[0]=a[0]+n[0]*s,t[1]=a[1]+n[1]*s,t[2]=a[2]+n[2]*s,t[3]=a[3]+n[3]*s,t[4]=a[4]+n[4]*s,t[5]=a[5]+n[5]*s,t}function y(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]}function g(a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1],M=n[2],f=n[3],b=n[4],l=n[5],m=t();return Math.abs(s-i)<=m*Math.max(1,Math.abs(s),Math.abs(i))&&Math.abs(r-h)<=m*Math.max(1,Math.abs(r),Math.abs(h))&&Math.abs(u-M)<=m*Math.max(1,Math.abs(u),Math.abs(M))&&Math.abs(o-f)<=m*Math.max(1,Math.abs(o),Math.abs(f))&&Math.abs(e-b)<=m*Math.max(1,Math.abs(e),Math.abs(b))&&Math.abs(c-l)<=m*Math.max(1,Math.abs(c),Math.abs(l))}const S=o,j=d,q=Object.freeze(Object.defineProperty({__proto__:null,copy:a,identity:n,set:s,invert:r,determinant:u,multiply:o,rotate:e,scale:c,translate:i,fromRotation:h,fromScaling:M,fromTranslation:f,str:b,frob:l,add:m,subtract:d,multiplyScalar:p,multiplyScalarAndAdd:x,exactEquals:y,equals:g,mul:S,sub:j},Symbol.toStringTag,{value:"Module"}));export{f as a,r as b,h as c,q as d,a as e,M as f,s as g,u as h,n as i,b as j,l as k,m as l,o as m,d as n,p as o,x as p,y as q,e as r,c as s,i as t,g as u,S as v,j as w};
5
+ import{g as t}from"./common.js";function a(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t}function n(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function s(t,a,n,s,r,u,o){return t[0]=a,t[1]=n,t[2]=s,t[3]=r,t[4]=u,t[5]=o,t}function r(t,a){const n=a[0],s=a[1],r=a[2],u=a[3],o=a[4],e=a[5];let c=n*u-s*r;return c?(c=1/c,t[0]=u*c,t[1]=-s*c,t[2]=-r*c,t[3]=n*c,t[4]=(r*e-u*o)*c,t[5]=(s*o-n*e)*c,t):null}function u(t){return t[0]*t[3]-t[1]*t[2]}function o(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1],M=n[2],f=n[3],b=n[4],l=n[5];return t[0]=s*i+u*h,t[1]=r*i+o*h,t[2]=s*M+u*f,t[3]=r*M+o*f,t[4]=s*b+u*l+e,t[5]=r*b+o*l+c,t}function e(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=Math.sin(n),h=Math.cos(n);return t[0]=s*h+u*i,t[1]=r*h+o*i,t[2]=s*-i+u*h,t[3]=r*-i+o*h,t[4]=e,t[5]=c,t}function c(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1];return t[0]=s*i,t[1]=r*i,t[2]=u*h,t[3]=o*h,t[4]=e,t[5]=c,t}function i(t,a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1];return t[0]=s,t[1]=r,t[2]=u,t[3]=o,t[4]=s*i+u*h+e,t[5]=r*i+o*h+c,t}function h(t,a){const n=Math.sin(a),s=Math.cos(a);return t[0]=s,t[1]=n,t[2]=-n,t[3]=s,t[4]=0,t[5]=0,t}function M(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=a[1],t[4]=0,t[5]=0,t}function f(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=a[0],t[5]=a[1],t}function b(t){return"mat2d("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+")"}function l(t){return Math.sqrt(t[0]**2+t[1]**2+t[2]**2+t[3]**2+t[4]**2+t[5]**2+1)}function m(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t}function d(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t}function p(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t}function x(t,a,n,s){return t[0]=a[0]+n[0]*s,t[1]=a[1]+n[1]*s,t[2]=a[2]+n[2]*s,t[3]=a[3]+n[3]*s,t[4]=a[4]+n[4]*s,t[5]=a[5]+n[5]*s,t}function y(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]}function g(a,n){const s=a[0],r=a[1],u=a[2],o=a[3],e=a[4],c=a[5],i=n[0],h=n[1],M=n[2],f=n[3],b=n[4],l=n[5],m=t();return Math.abs(s-i)<=m*Math.max(1,Math.abs(s),Math.abs(i))&&Math.abs(r-h)<=m*Math.max(1,Math.abs(r),Math.abs(h))&&Math.abs(u-M)<=m*Math.max(1,Math.abs(u),Math.abs(M))&&Math.abs(o-f)<=m*Math.max(1,Math.abs(o),Math.abs(f))&&Math.abs(e-b)<=m*Math.max(1,Math.abs(e),Math.abs(b))&&Math.abs(c-l)<=m*Math.max(1,Math.abs(c),Math.abs(l))}const S=o,j=d,q=Object.freeze(Object.defineProperty({__proto__:null,copy:a,identity:n,set:s,invert:r,determinant:u,multiply:o,rotate:e,scale:c,translate:i,fromRotation:h,fromScaling:M,fromTranslation:f,str:b,frob:l,add:m,subtract:d,multiplyScalar:p,multiplyScalarAndAdd:x,exactEquals:y,equals:g,mul:S,sub:j},Symbol.toStringTag,{value:"Module"}));export{f as a,h as b,r as c,q as d,a as e,M as f,s as g,u as h,n as i,b as j,l as k,m as l,o as m,d as n,p as o,x as p,y as q,e as r,c as s,i as t,g as u,S as v,j as w};
package/chunks/quatf32.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- function e(){const e=new Float32Array(4);return e[3]=1,e}function r(e){const r=new Float32Array(4);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r}function t(e,r,t,n){const o=new Float32Array(4);return o[0]=e,o[1]=r,o[2]=t,o[3]=n,o}function n(e,r){return new Float32Array(e,r,4)}const o=Object.freeze(Object.defineProperty({__proto__:null,create:e,clone:r,fromValues:t,createView:n},Symbol.toStringTag,{value:"Module"}));export{r as a,n as b,e as c,t as f,o as q};
5
+ function e(){const e=new Float32Array(4);return e[3]=1,e}function r(e){const r=new Float32Array(4);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r}function t(e,r,t,n){const o=new Float32Array(4);return o[0]=e,o[1]=r,o[2]=t,o[3]=n,o}function n(e,r){return new Float32Array(e,r,4)}const o=Object.freeze(Object.defineProperty({__proto__:null,create:e,clone:r,fromValues:t,createView:n},Symbol.toStringTag,{value:"Module"}));export{n as a,r as b,e as c,t as f,o as q};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{AlefTable as t,FETo06Table as r,impTabRtl as e,impTabLtr as n,TBBASE as o,UnicodeTable as i,TYPES_NAMES as u,UBAT_B as s,UBAT_S as a,UBAT_WS as f,PrimaryTable as c,ArabicAlefBetIntervalsBegine as l,ArabicAlefBetIntervalsEnd as h,UBAT_L as T,UBAT_R as L,UBAT_ON as A,UBAT_AN as g,UBAT_EN as d,UBAT_ET as m,UBAT_NSM as F,UBAT_AL as b,SwapTable as p,StandAlonForm as R,BaseForm as U,MedialForm as B,LamAlefInialTableFE as S,LamAlefMedialTableFE as w,FinalForm as _,InitialForm as v,IsolatedForm as N}from"./bidiEngineTables.js";class C{constructor(){this.inputFormat="ILYNN",this.outputFormat="VLNNN",this.sourceToTarget=[],this.targetToSource=[],this.levels=[]}bidiTransform(t,r,e){if(this.sourceToTarget=[],this.targetToSource=[],!t)return"";if(ot(this.sourceToTarget,this.targetToSource,t.length),!this.checkParameters(r,e))return t;r=this.inputFormat,e=this.outputFormat;let n=t;const o=ct,i=rt(r.charAt(1)),u=rt(e.charAt(1)),s=("I"===r.charAt(0)?"L":r.charAt(0))+i,a=("I"===e.charAt(0)?"L":e.charAt(0))+u,f=r.charAt(2)+e.charAt(2);o.defInFormat=s,o.defOutFormat=a,o.defSwap=f;const c=V(t,s,a,f,o);let l=!1;return"R"===e.charAt(1)?l=!0:"C"!==e.charAt(1)&&"D"!==e.charAt(1)||(l="rtl"===this.checkContextual(c)),this.sourceToTarget=st,this.targetToSource=it(this.sourceToTarget),at=this.targetToSource,n=r.charAt(3)===e.charAt(3)?c:"S"===e.charAt(3)?I(l,c,!0):k(c,l,!0),this.sourceToTarget=st,this.targetToSource=at,this.levels=ft,n}_inputFormatSetter(t){if(!At.test(t))throw new Error("dojox/string/BidiEngine: the bidi layout string is wrong!");this.inputFormat=t}_outputFormatSetter(t){if(!At.test(t))throw new Error("dojox/string/BidiEngine: the bidi layout string is wrong!");this.outputFormat=t}checkParameters(t,r){return t?this._inputFormatSetter(t):t=this.inputFormat,r?this._outputFormatSetter(r):r=this.outputFormat,t!==r}checkContextual(t){let r=x(t);if("ltr"!==r&&"rtl"!==r){try{r=document.dir.toLowerCase()}catch(e){}"ltr"!==r&&"rtl"!==r&&(r="ltr")}return r}hasBidiChar(t){return gt.test(t)}}function V(t,r,e,n,o){const i=E(t,{inFormat:r,outFormat:e,swap:n},o);if(i.inFormat===i.outFormat)return t;r=i.inFormat,e=i.outFormat,n=i.swap;const u=r.substring(0,1),s=r.substring(1,4),a=e.substring(0,1),f=e.substring(1,4);if(o.inFormat=r,o.outFormat=e,o.swap=n,"L"===u&&"VLTR"===e){if("LTR"===s)return o.dir=Tt,y(t,o);if("RTL"===s)return o.dir=Lt,y(t,o)}if("V"===u&&"V"===a)return o.dir="RTL"===s?Lt:Tt,M(t,o);if("L"===u&&"VRTL"===e)return"LTR"===s?(o.dir=Tt,t=y(t,o)):(o.dir=Lt,t=y(t,o)),M(t);if("VLTR"===r&&"LLTR"===e)return o.dir=Tt,y(t,o);if("V"===u&&"L"===a&&s!==f)return t=M(t),"RTL"===s?V(t,"LLTR","VLTR",n,o):V(t,"LRTL","VRTL",n,o);if("VRTL"===r&&"LRTL"===e)return V(t,"LRTL","VRTL",n,o);if("L"===u&&"L"===a){const r=o.swap;return o.swap=r.substr(0,1)+"N","RTL"===s?(o.dir=Lt,t=y(t,o),o.swap="N"+r.substr(1,2),o.dir=Tt,t=y(t,o)):(o.dir=Tt,t=y(t,o),o.swap="N"+r.substr(1,2),t=V(t,"VLTR","LRTL",o.swap,o)),t}return t}function E(t,r,e){if(void 0===r.inFormat&&(r.inFormat=e.defInFormat),void 0===r.outFormat&&(r.outFormat=e.defOutFormat),void 0===r.swap&&(r.swap=e.defSwap),r.inFormat===r.outFormat)return r;const n=r.inFormat.substring(0,1),o=r.outFormat.substring(0,1);let i,u=r.inFormat.substring(1,4),s=r.outFormat.substring(1,4);return"C"===u.charAt(0)&&(i=x(t),u="ltr"===i||"rtl"===i?i.toUpperCase():"L"===r.inFormat.charAt(2)?"LTR":"RTL",r.inFormat=n+u),"C"===s.charAt(0)&&(i=x(t),"rtl"===i?s="RTL":"ltr"===i?(i=O(t),s=i.toUpperCase()):s="L"===r.outFormat.charAt(2)?"LTR":"RTL",r.outFormat=o+s),r}function I(t,r,e){if(0===r.length)return"";void 0===t&&(t=!0),void 0===e&&(e=!0);const n=(r=String(r)).split("");let o=0,i=1,u=n.length;t||(o=n.length-1,i=-1,u=1);const s=j(n,o,i,u,e);let a="";for(let f=0;f<n.length;f++)e&&W(s,s.length,f)>-1?(ut(at,f,!t,-1),st.splice(f,1)):a+=n[f];return a}function j(t,r,e,n,o){let i=0;const u=[];let s=0;for(let a=r;a*e<n;a+=e)if(Z(t[a])||tt(t[a])){if("ل"===t[a]&&q(t,a+e,e,n)){t[a]=nt(t[a+e],0===i?S:w),a+=e,et(t,a,e,n),o&&(u[s]=a,s++),i=0;continue}const r=t[a];1===i?t[a]=$(t,a+e,e,n)?Q(t[a]):X(t[a],_):!0===$(t,a+e,e,n)?t[a]=X(t[a],v):t[a]=X(t[a],N),tt(r)||(i=1),!0===K(r)&&(i=0)}else i=0;return u}function x(t){const r=/[A-Za-z\u05d0-\u065f\u066a-\u06ef\u06fa-\u07ff\ufb1d-\ufdff\ufe70-\ufefc]/.exec(t);return r?r[0]<="z"?"ltr":"rtl":""}function O(t){const r=t.split("");return r.reverse(),x(r.join(""))}function k(e,n,o){if(0===e.length)return"";void 0===o&&(o=!0),void 0===n&&(n=!0);let i="";const u=(e=String(e)).split("");for(let s=0;s<e.length;s++){let a=!1;if(u[s]>="ﹰ"&&u[s]<"\ufeff"){const f=e.charCodeAt(s);u[s]>="ﻵ"&&u[s]<="ﻼ"?(n?(s>0&&o&&" "===u[s-1]?i=i.substring(0,i.length-1)+"ل":(i+="ل",a=!0),i+=t[(f-65269)/2]):(i+=t[(f-65269)/2],i+="ل",s+1<e.length&&o&&" "===u[s+1]?s++:a=!0),a&&(ut(at,s,!0,1),st.splice(s,0,st[s]))):i+=r[f-65136]}else i+=u[s]}return i}function y(t,r){const e=t.split(""),n=[];return D(e,n,r),P(e,n,r),G(2,e,n,r),G(1,e,n,r),ft=n,e.join("")}function D(t,r,o){const i=t.length,u=o.dir?e:n;let a=0,f=-1;const c=[],l=[];o.hiLevel=o.dir,o.lastArabic=!1,o.hasUbatAl=!1,o.hasUbatB=!1,o.hasUbatS=!1;for(let e=0;e<i;e++)c[e]=z(t[e]);for(let e=0;e<i;e++){const n=a,i=H(t,c,l,e,o);l[e]=i,a=u[n][i];const h=240&a;a&=15;const T=u[a][lt];if(r[e]=T,h>0)if(16===h){for(let t=f;t<e;t++)r[t]=1;f=-1}else f=-1;if(u[a][ht])-1===f&&(f=e);else if(f>-1){for(let t=f;t<e;t++)r[t]=T;f=-1}c[e]===s&&(r[e]=0),o.hiLevel|=T}o.hasUbatS&&Y(c,r,i,o)}function Y(t,r,e,n){for(let o=0;o<e;o++)if(t[o]===a){r[o]=n.dir;for(let e=o-1;e>=0&&t[e]===f;e--)r[e]=n.dir}}function P(t,r,e){if(0!==e.hiLevel&&e.swap.substr(0,1)!==e.swap.substr(1,2))for(let n=0;n<t.length;n++)1===r[n]&&(t[n]=J(t[n]))}function z(t){const r=t.charCodeAt(0),e=c[r>>8];return e<o?e:i[e-o][255&r]}function M(t,r){const e=t.split("");if(r){const t=[];D(e,t,r),ft=t}return e.reverse(),st.reverse(),e.join("")}function W(t,r,e){for(let n=0;n<r;n++)if(t[n]===e)return n;return-1}function Z(t){for(let r=0;r<l.length;r++)if(t>=l[r]&&t<=h[r])return!0;return!1}function $(t,r,e,n){for(;r*e<n&&tt(t[r]);)r+=e;return!!(r*e<n&&Z(t[r]))}function q(r,e,n,o){for(;e*n<o&&tt(r[e]);)e+=n;let i=" ";if(!(e*n<o))return!1;i=r[e];for(let u=0;u<t.length;u++)if(t[u]===i)return!0;return!1}function G(t,r,e,n){if(n.hiLevel<t)return;if(1===t&&n.dir===Lt&&!n.hasUbatB)return r.reverse(),void st.reverse();const o=r.length;let i,u,s,a,f,c=0;for(;c<o;){if(e[c]>=t){for(i=c+1;i<o&&e[i]>=t;)i++;for(u=c,s=i-1;u<s;u++,s--)a=r[u],r[u]=r[s],r[s]=a,f=st[u],st[u]=st[s],st[s]=f;c=i}c++}}function H(t,r,e,n,o){const i=r[n];return{UBAT_L:()=>(o.lastArabic=!1,T),UBAT_R:()=>(o.lastArabic=!1,L),UBAT_ON:()=>A,UBAT_AN:()=>g,UBAT_EN:()=>o.lastArabic?g:d,UBAT_AL:()=>(o.lastArabic=!0,o.hasUbatAl=!0,L),UBAT_WS:()=>A,UBAT_CS:()=>{let t,i;return n<1||n+1>=r.length||(t=e[n-1])!==d&&t!==g||(i=r[n+1])!==d&&i!==g?A:(o.lastArabic&&(i=g),i===t?i:A)},UBAT_ES:()=>(n>0?e[n-1]:s)===d&&n+1<r.length&&r[n+1]===d?d:A,UBAT_ET:()=>{if(n>0&&e[n-1]===d)return d;if(o.lastArabic)return A;let t=n+1;const i=r.length;for(;t<i&&r[t]===m;)t++;return t<i&&r[t]===d?d:A},UBAT_NSM:()=>{if("VLTR"===o.inFormat){const e=r.length;let o=n+1;for(;o<e&&r[o]===F;)o++;if(o<e){const e=t[n].charCodeAt[0],i=e>=1425&&e<=2303||64286===e,u=r[o];if(i&&(u===L||u===b))return L}}return n<1||r[n-1]===s?A:e[n-1]},UBAT_B:()=>(o.lastArabic=!0,o.hasUbatB=!0,o.dir),UBAT_S:()=>(o.hasUbatS=!0,A),UBAT_LRE:()=>(o.lastArabic=!1,A),UBAT_RLE:()=>(o.lastArabic=!1,A),UBAT_LRO:()=>(o.lastArabic=!1,A),UBAT_RLO:()=>(o.lastArabic=!1,A),UBAT_PDF:()=>(o.lastArabic=!1,A),UBAT_BN:()=>A}[u[i]]()}function J(t){let r,e=0,n=p.length-1;for(;e<=n;)if(r=Math.floor((e+n)/2),t<p[r][0])n=r-1;else{if(!(t>p[r][0]))return p[r][1];e=r+1}return t}function K(t){for(let r=0;r<R.length;r++)if(R[r]===t)return!0;return!1}function Q(t){for(let r=0;r<U.length;r++)if(t===U[r])return B[r];return t}function X(t,r){for(let e=0;e<U.length;e++)if(t===U[e])return r[e];return t}function tt(t){return t>="ً"&&t<="ٕ"}function rt(t){return"L"===t?"LTR":"R"===t?"RTL":"C"===t?"CLR":"D"===t?"CRL":""}function et(t,r,e,n){for(;r*e<n&&tt(t[r]);)r+=e;return r*e<n&&(t[r]=" ",!0)}function nt(r,e){for(let n=0;n<t.length;n++)if(r===t[n])return e[n];return r}function ot(t,r,e){st=[],ft=[];for(let n=0;n<e;n++)t[n]=n,r[n]=n,st[n]=n}function it(t){const r=new Array(t.length);for(let e=0;e<t.length;e++)r[t[e]]=e;return r}function ut(t,r,e,n){for(let o=0;o<t.length;o++)(t[o]>r||!e&&t[o]===r)&&(t[o]+=n)}let st=[],at=[],ft=[];const ct={dir:0,defInFormat:"LLTR",defoutFormat:"VLTR",defSwap:"YN",inFormat:"LLTR",outFormat:"VLTR",swap:"YN",hiLevel:0,lastArabic:!1,hasUbatAl:!1,hasBlockSep:!1,hasSegSep:!1,defOutFormat:""},lt=5,ht=6,Tt=0,Lt=1,At=/^[(I|V)][(L|R|C|D)][(Y|N)][(S|N)][N]$/,gt=/[\u0591-\u06ff\ufb1d-\ufefc]/;export{C as default};
5
+ import{AlefTable as t,FETo06Table as r,impTabRtl as e,impTabLtr as n,UBAT_B as o,UBAT_S as i,UBAT_WS as u,PrimaryTable as s,TBBASE as a,UnicodeTable as f,ArabicAlefBetIntervalsBegine as c,ArabicAlefBetIntervalsEnd as l,TYPES_NAMES as h,SwapTable as T,StandAlonForm as L,BaseForm as A,MedialForm as g,LamAlefInialTableFE as d,LamAlefMedialTableFE as m,FinalForm as F,InitialForm as b,IsolatedForm as p,UBAT_L as R,UBAT_R as U,UBAT_ON as B,UBAT_AN as S,UBAT_EN as w,UBAT_ET as _,UBAT_NSM as v,UBAT_AL as N}from"./bidiEngineTables.js";class C{constructor(){this.inputFormat="ILYNN",this.outputFormat="VLNNN",this.sourceToTarget=[],this.targetToSource=[],this.levels=[]}bidiTransform(t,r,e){if(this.sourceToTarget=[],this.targetToSource=[],!t)return"";if(ot(this.sourceToTarget,this.targetToSource,t.length),!this.checkParameters(r,e))return t;r=this.inputFormat,e=this.outputFormat;let n=t;const o=ct,i=rt(r.charAt(1)),u=rt(e.charAt(1)),s=("I"===r.charAt(0)?"L":r.charAt(0))+i,a=("I"===e.charAt(0)?"L":e.charAt(0))+u,f=r.charAt(2)+e.charAt(2);o.defInFormat=s,o.defOutFormat=a,o.defSwap=f;const c=V(t,s,a,f,o);let l=!1;return"R"===e.charAt(1)?l=!0:"C"!==e.charAt(1)&&"D"!==e.charAt(1)||(l="rtl"===this.checkContextual(c)),this.sourceToTarget=st,this.targetToSource=it(this.sourceToTarget),at=this.targetToSource,n=r.charAt(3)===e.charAt(3)?c:"S"===e.charAt(3)?I(l,c,!0):k(c,l,!0),this.sourceToTarget=st,this.targetToSource=at,this.levels=ft,n}_inputFormatSetter(t){if(!At.test(t))throw new Error("dojox/string/BidiEngine: the bidi layout string is wrong!");this.inputFormat=t}_outputFormatSetter(t){if(!At.test(t))throw new Error("dojox/string/BidiEngine: the bidi layout string is wrong!");this.outputFormat=t}checkParameters(t,r){return t?this._inputFormatSetter(t):t=this.inputFormat,r?this._outputFormatSetter(r):r=this.outputFormat,t!==r}checkContextual(t){let r=x(t);if("ltr"!==r&&"rtl"!==r){try{r=document.dir.toLowerCase()}catch(e){}"ltr"!==r&&"rtl"!==r&&(r="ltr")}return r}hasBidiChar(t){return gt.test(t)}}function V(t,r,e,n,o){const i=E(t,{inFormat:r,outFormat:e,swap:n},o);if(i.inFormat===i.outFormat)return t;r=i.inFormat,e=i.outFormat,n=i.swap;const u=r.substring(0,1),s=r.substring(1,4),a=e.substring(0,1),f=e.substring(1,4);if(o.inFormat=r,o.outFormat=e,o.swap=n,"L"===u&&"VLTR"===e){if("LTR"===s)return o.dir=Tt,y(t,o);if("RTL"===s)return o.dir=Lt,y(t,o)}if("V"===u&&"V"===a)return o.dir="RTL"===s?Lt:Tt,M(t,o);if("L"===u&&"VRTL"===e)return"LTR"===s?(o.dir=Tt,t=y(t,o)):(o.dir=Lt,t=y(t,o)),M(t);if("VLTR"===r&&"LLTR"===e)return o.dir=Tt,y(t,o);if("V"===u&&"L"===a&&s!==f)return t=M(t),"RTL"===s?V(t,"LLTR","VLTR",n,o):V(t,"LRTL","VRTL",n,o);if("VRTL"===r&&"LRTL"===e)return V(t,"LRTL","VRTL",n,o);if("L"===u&&"L"===a){const r=o.swap;return o.swap=r.substr(0,1)+"N","RTL"===s?(o.dir=Lt,t=y(t,o),o.swap="N"+r.substr(1,2),o.dir=Tt,t=y(t,o)):(o.dir=Tt,t=y(t,o),o.swap="N"+r.substr(1,2),t=V(t,"VLTR","LRTL",o.swap,o)),t}return t}function E(t,r,e){if(void 0===r.inFormat&&(r.inFormat=e.defInFormat),void 0===r.outFormat&&(r.outFormat=e.defOutFormat),void 0===r.swap&&(r.swap=e.defSwap),r.inFormat===r.outFormat)return r;const n=r.inFormat.substring(0,1),o=r.outFormat.substring(0,1);let i,u=r.inFormat.substring(1,4),s=r.outFormat.substring(1,4);return"C"===u.charAt(0)&&(i=x(t),u="ltr"===i||"rtl"===i?i.toUpperCase():"L"===r.inFormat.charAt(2)?"LTR":"RTL",r.inFormat=n+u),"C"===s.charAt(0)&&(i=x(t),"rtl"===i?s="RTL":"ltr"===i?(i=O(t),s=i.toUpperCase()):s="L"===r.outFormat.charAt(2)?"LTR":"RTL",r.outFormat=o+s),r}function I(t,r,e){if(0===r.length)return"";void 0===t&&(t=!0),void 0===e&&(e=!0);const n=(r=String(r)).split("");let o=0,i=1,u=n.length;t||(o=n.length-1,i=-1,u=1);const s=j(n,o,i,u,e);let a="";for(let f=0;f<n.length;f++)e&&W(s,s.length,f)>-1?(ut(at,f,!t,-1),st.splice(f,1)):a+=n[f];return a}function j(t,r,e,n,o){let i=0;const u=[];let s=0;for(let a=r;a*e<n;a+=e)if(Z(t[a])||tt(t[a])){if("ل"===t[a]&&q(t,a+e,e,n)){t[a]=nt(t[a+e],0===i?d:m),a+=e,et(t,a,e,n),o&&(u[s]=a,s++),i=0;continue}const r=t[a];1===i?t[a]=$(t,a+e,e,n)?Q(t[a]):X(t[a],F):!0===$(t,a+e,e,n)?t[a]=X(t[a],b):t[a]=X(t[a],p),tt(r)||(i=1),!0===K(r)&&(i=0)}else i=0;return u}function x(t){const r=/[A-Za-z\u05d0-\u065f\u066a-\u06ef\u06fa-\u07ff\ufb1d-\ufdff\ufe70-\ufefc]/.exec(t);return r?r[0]<="z"?"ltr":"rtl":""}function O(t){const r=t.split("");return r.reverse(),x(r.join(""))}function k(e,n,o){if(0===e.length)return"";void 0===o&&(o=!0),void 0===n&&(n=!0);let i="";const u=(e=String(e)).split("");for(let s=0;s<e.length;s++){let a=!1;if(u[s]>="ﹰ"&&u[s]<"\ufeff"){const f=e.charCodeAt(s);u[s]>="ﻵ"&&u[s]<="ﻼ"?(n?(s>0&&o&&" "===u[s-1]?i=i.substring(0,i.length-1)+"ل":(i+="ل",a=!0),i+=t[(f-65269)/2]):(i+=t[(f-65269)/2],i+="ل",s+1<e.length&&o&&" "===u[s+1]?s++:a=!0),a&&(ut(at,s,!0,1),st.splice(s,0,st[s]))):i+=r[f-65136]}else i+=u[s]}return i}function y(t,r){const e=t.split(""),n=[];return D(e,n,r),P(e,n,r),G(2,e,n,r),G(1,e,n,r),ft=n,e.join("")}function D(t,r,i){const u=t.length,s=i.dir?e:n;let a=0,f=-1;const c=[],l=[];i.hiLevel=i.dir,i.lastArabic=!1,i.hasUbatAl=!1,i.hasUbatB=!1,i.hasUbatS=!1;for(let e=0;e<u;e++)c[e]=z(t[e]);for(let e=0;e<u;e++){const n=a,u=H(t,c,l,e,i);l[e]=u,a=s[n][u];const h=240&a;a&=15;const T=s[a][lt];if(r[e]=T,h>0)if(16===h){for(let t=f;t<e;t++)r[t]=1;f=-1}else f=-1;if(s[a][ht])-1===f&&(f=e);else if(f>-1){for(let t=f;t<e;t++)r[t]=T;f=-1}c[e]===o&&(r[e]=0),i.hiLevel|=T}i.hasUbatS&&Y(c,r,u,i)}function Y(t,r,e,n){for(let o=0;o<e;o++)if(t[o]===i){r[o]=n.dir;for(let e=o-1;e>=0&&t[e]===u;e--)r[e]=n.dir}}function P(t,r,e){if(0!==e.hiLevel&&e.swap.substr(0,1)!==e.swap.substr(1,2))for(let n=0;n<t.length;n++)1===r[n]&&(t[n]=J(t[n]))}function z(t){const r=t.charCodeAt(0),e=s[r>>8];return e<a?e:f[e-a][255&r]}function M(t,r){const e=t.split("");if(r){const t=[];D(e,t,r),ft=t}return e.reverse(),st.reverse(),e.join("")}function W(t,r,e){for(let n=0;n<r;n++)if(t[n]===e)return n;return-1}function Z(t){for(let r=0;r<c.length;r++)if(t>=c[r]&&t<=l[r])return!0;return!1}function $(t,r,e,n){for(;r*e<n&&tt(t[r]);)r+=e;return!!(r*e<n&&Z(t[r]))}function q(r,e,n,o){for(;e*n<o&&tt(r[e]);)e+=n;let i=" ";if(!(e*n<o))return!1;i=r[e];for(let u=0;u<t.length;u++)if(t[u]===i)return!0;return!1}function G(t,r,e,n){if(n.hiLevel<t)return;if(1===t&&n.dir===Lt&&!n.hasUbatB)return r.reverse(),void st.reverse();const o=r.length;let i,u,s,a,f,c=0;for(;c<o;){if(e[c]>=t){for(i=c+1;i<o&&e[i]>=t;)i++;for(u=c,s=i-1;u<s;u++,s--)a=r[u],r[u]=r[s],r[s]=a,f=st[u],st[u]=st[s],st[s]=f;c=i}c++}}function H(t,r,e,n,i){const u=r[n];return{UBAT_L:()=>(i.lastArabic=!1,R),UBAT_R:()=>(i.lastArabic=!1,U),UBAT_ON:()=>B,UBAT_AN:()=>S,UBAT_EN:()=>i.lastArabic?S:w,UBAT_AL:()=>(i.lastArabic=!0,i.hasUbatAl=!0,U),UBAT_WS:()=>B,UBAT_CS:()=>{let t,o;return n<1||n+1>=r.length||(t=e[n-1])!==w&&t!==S||(o=r[n+1])!==w&&o!==S?B:(i.lastArabic&&(o=S),o===t?o:B)},UBAT_ES:()=>(n>0?e[n-1]:o)===w&&n+1<r.length&&r[n+1]===w?w:B,UBAT_ET:()=>{if(n>0&&e[n-1]===w)return w;if(i.lastArabic)return B;let t=n+1;const o=r.length;for(;t<o&&r[t]===_;)t++;return t<o&&r[t]===w?w:B},UBAT_NSM:()=>{if("VLTR"===i.inFormat){const e=r.length;let o=n+1;for(;o<e&&r[o]===v;)o++;if(o<e){const e=t[n].charCodeAt[0],i=e>=1425&&e<=2303||64286===e,u=r[o];if(i&&(u===U||u===N))return U}}return n<1||r[n-1]===o?B:e[n-1]},UBAT_B:()=>(i.lastArabic=!0,i.hasUbatB=!0,i.dir),UBAT_S:()=>(i.hasUbatS=!0,B),UBAT_LRE:()=>(i.lastArabic=!1,B),UBAT_RLE:()=>(i.lastArabic=!1,B),UBAT_LRO:()=>(i.lastArabic=!1,B),UBAT_RLO:()=>(i.lastArabic=!1,B),UBAT_PDF:()=>(i.lastArabic=!1,B),UBAT_BN:()=>B}[h[u]]()}function J(t){let r,e=0,n=T.length-1;for(;e<=n;)if(r=Math.floor((e+n)/2),t<T[r][0])n=r-1;else{if(!(t>T[r][0]))return T[r][1];e=r+1}return t}function K(t){for(let r=0;r<L.length;r++)if(L[r]===t)return!0;return!1}function Q(t){for(let r=0;r<A.length;r++)if(t===A[r])return g[r];return t}function X(t,r){for(let e=0;e<A.length;e++)if(t===A[e])return r[e];return t}function tt(t){return t>="ً"&&t<="ٕ"}function rt(t){return"L"===t?"LTR":"R"===t?"RTL":"C"===t?"CLR":"D"===t?"CRL":""}function et(t,r,e,n){for(;r*e<n&&tt(t[r]);)r+=e;return r*e<n&&(t[r]=" ",!0)}function nt(r,e){for(let n=0;n<t.length;n++)if(r===t[n])return e[n];return r}function ot(t,r,e){st=[],ft=[];for(let n=0;n<e;n++)t[n]=n,r[n]=n,st[n]=n}function it(t){const r=new Array(t.length);for(let e=0;e<t.length;e++)r[t[e]]=e;return r}function ut(t,r,e,n){for(let o=0;o<t.length;o++)(t[o]>r||!e&&t[o]===r)&&(t[o]+=n)}let st=[],at=[],ft=[];const ct={dir:0,defInFormat:"LLTR",defoutFormat:"VLTR",defSwap:"YN",inFormat:"LLTR",outFormat:"VLTR",swap:"YN",hiLevel:0,lastArabic:!1,hasUbatAl:!1,hasBlockSep:!1,hasSegSep:!1,defOutFormat:""},lt=5,ht=6,Tt=0,Lt=1,At=/^[(I|V)][(L|R|C|D)][(Y|N)][(S|N)][N]$/,gt=/[\u0591-\u06ff\ufb1d-\ufefc]/;export{C as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import e from"../ArrayPool.js";import{equals as t,equalsShallow as r}from"../lang.js";import{ReentrantObjectPool as o}from"../ReentrantObjectPool.js";import{schedule as l}from"../scheduling.js";import{someSet as n}from"../SetUtils.js";import{generateUID as i}from"../uid.js";import{valueOf as s}from"./get.js";import{reaction as u,reactionDeferred as c}from"./trackingUtils.js";import{once as a,parse as d}from"./utils.js";var h;!function(e){e[e.Untracked=0]="Untracked",e[e.Tracked=1]="Tracked"}(h||(h={}));class f{constructor(){this.uid=i(),this.removed=!1,this.type=null,this.oldValue=null,this.callback=null,this.getValue=null,this.target=null,this.path=null,this.equals=null}static acquireUntracked(e,r,o,l,n){return this.pool.acquire(h.Untracked,e,r,o,l,n,t)}static acquireTracked(e,t,r,o){return this.pool.acquire(h.Tracked,e,t,r,null,null,o)}notify(e,t){this.type===h.Untracked?this.callback.call(this.target,e,t,this.path,this.target):this.callback.call(null,e,t)}acquire(e,t,r,o,l,n,s){this.uid=i(),this.removed=!1,this.type=e,this.oldValue=t,this.callback=r,this.getValue=o,this.target=l,this.path=n,this.equals=s}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=i(),this.removed=!0}}f.pool=new o(f);const m=new e,p=new Set;let v;function g(e){p.delete(e),p.add(e),v||(v=l(j))}function k(e){if(e.removed)return;const t=e.oldValue,r=e.getValue();e.equals(t,r)||(e.oldValue=r,e.notify(r,t))}function _(e){const t=Array.from(p);for(let r=0;r<t.length;r++){const o=t[r];o.target===e&&(k(o),p.delete(o))}}function q(e){for(const t of p.values())t.target===e&&(t.removed=!0)}function j(){let e=10;for(;v&&e--;){v=null;const e=y(),t=m.acquire();for(const r of e){const e=r.uid;k(r),e===r.uid&&r.removed&&t.push(r)}for(const r of p)r.removed&&(t.push(r),p.delete(r));for(const r of t)f.pool.release(r);m.release(t),m.release(e),V.forEach((e=>e()))}}function y(){const e=m.acquire();e.length=p.size;let t=0;for(const r of p)e[t]=r,++t;return p.clear(),e}const V=new Set;function U(e){return V.add(e),{remove(){V.delete(e)}}}function b(e,t,r){let o=d(e,t,r,((e,t,r)=>{let l,n,i=c((()=>s(e,t)),((i,s)=>{e.__accessor__.destroyed||l&&l.uid!==n?o.remove():(l||(l=f.acquireUntracked(i,r,s,e,t),n=l.uid),g(l))}));return{remove:a((()=>{i.remove(),l&&(l.uid!==n||l.removed||(l.removed=!0,g(l)),l=null),o=i=null}))}}));return o}function T(e,r,o){const l=d(e,r,o,((e,r,o)=>{let n=!1;return u((()=>s(e,r)),((i,s)=>{e.__accessor__.destroyed?l.remove():n||(n=!0,t(s,i)||o.call(e,i,s,r,e),n=!1)}))}));return l}function w(e,t,r,o=!1){return!e.__accessor__||e.__accessor__.destroyed?{remove(){}}:o?T(e,t,r):b(e,t,r)}function S(e,t,r){let o,l,n=c(e,((e,i)=>{o&&o.uid!==l?n.remove():(o||(o=f.acquireTracked(e,t,i,r),l=o.uid),g(o))}));return{remove:a((()=>{n.remove(),o&&(o.uid!==l||o.removed||(o.removed=!0,g(o)),o=null),n=null}))}}function A(e,t,r){let o=!1;return u(e,((e,l)=>{o||(o=!0,r(l,e)||t(e,l),o=!1)}))}function P(e,t,o=!1,l=r){return o?A(e,t,l):S(e,t,l)}function x(e){return n(p,(t=>t.oldValue===e))}export{U as afterDispatch,j as dispatch,_ as dispatchTarget,x as isValueInUse,q as removeTarget,w as watch,P as watchTracked};
5
+ import e from"../ArrayPool.js";import{equals as t,equalsShallow as r}from"../lang.js";import{ReentrantObjectPool as o}from"../ReentrantObjectPool.js";import{schedule as l}from"../scheduling.js";import{someSet as n}from"../SetUtils.js";import{generateUID as i}from"../uid.js";import{valueOf as s}from"./get.js";import{reactionDeferred as u,reaction as c}from"./trackingUtils.js";import{parse as a,once as d}from"./utils.js";var h;!function(e){e[e.Untracked=0]="Untracked",e[e.Tracked=1]="Tracked"}(h||(h={}));class f{constructor(){this.uid=i(),this.removed=!1,this.type=null,this.oldValue=null,this.callback=null,this.getValue=null,this.target=null,this.path=null,this.equals=null}static acquireUntracked(e,r,o,l,n){return this.pool.acquire(h.Untracked,e,r,o,l,n,t)}static acquireTracked(e,t,r,o){return this.pool.acquire(h.Tracked,e,t,r,null,null,o)}notify(e,t){this.type===h.Untracked?this.callback.call(this.target,e,t,this.path,this.target):this.callback.call(null,e,t)}acquire(e,t,r,o,l,n,s){this.uid=i(),this.removed=!1,this.type=e,this.oldValue=t,this.callback=r,this.getValue=o,this.target=l,this.path=n,this.equals=s}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=i(),this.removed=!0}}f.pool=new o(f);const m=new e,p=new Set;let v;function g(e){p.delete(e),p.add(e),v||(v=l(j))}function k(e){if(e.removed)return;const t=e.oldValue,r=e.getValue();e.equals(t,r)||(e.oldValue=r,e.notify(r,t))}function _(e){const t=Array.from(p);for(let r=0;r<t.length;r++){const o=t[r];o.target===e&&(k(o),p.delete(o))}}function q(e){for(const t of p.values())t.target===e&&(t.removed=!0)}function j(){let e=10;for(;v&&e--;){v=null;const e=y(),t=m.acquire();for(const r of e){const e=r.uid;k(r),e===r.uid&&r.removed&&t.push(r)}for(const r of p)r.removed&&(t.push(r),p.delete(r));for(const r of t)f.pool.release(r);m.release(t),m.release(e),V.forEach((e=>e()))}}function y(){const e=m.acquire();e.length=p.size;let t=0;for(const r of p)e[t]=r,++t;return p.clear(),e}const V=new Set;function U(e){return V.add(e),{remove(){V.delete(e)}}}function b(e,t,r){let o=a(e,t,r,((e,t,r)=>{let l,n,i=u((()=>s(e,t)),((i,s)=>{e.__accessor__.destroyed||l&&l.uid!==n?o.remove():(l||(l=f.acquireUntracked(i,r,s,e,t),n=l.uid),g(l))}));return{remove:d((()=>{i.remove(),l&&(l.uid!==n||l.removed||(l.removed=!0,g(l)),l=null),o=i=null}))}}));return o}function T(e,r,o){const l=a(e,r,o,((e,r,o)=>{let n=!1;return c((()=>s(e,r)),((i,s)=>{e.__accessor__.destroyed?l.remove():n||(n=!0,t(s,i)||o.call(e,i,s,r,e),n=!1)}))}));return l}function w(e,t,r,o=!1){return!e.__accessor__||e.__accessor__.destroyed?{remove(){}}:o?T(e,t,r):b(e,t,r)}function S(e,t,r){let o,l,n=u(e,((e,i)=>{o&&o.uid!==l?n.remove():(o||(o=f.acquireTracked(e,t,i,r),l=o.uid),g(o))}));return{remove:d((()=>{n.remove(),o&&(o.uid!==l||o.removed||(o.removed=!0,g(o)),o=null),n=null}))}}function A(e,t,r){let o=!1;return c(e,((e,l)=>{o||(o=!0,r(l,e)||t(e,l),o=!1)}))}function P(e,t,o=!1,l=r){return o?A(e,t,l):S(e,t,l)}function x(e){return n(p,(t=>t.oldValue===e))}export{U as afterDispatch,j as dispatch,_ as dispatchTarget,x as isValueInUse,q as removeTarget,w as watch,P as watchTracked};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- export{a as clone,c as create,b as createView,f as fromValues}from"../../../../chunks/quatf32.js";
5
+ export{b as clone,c as create,a as createView,f as fromValues}from"../../../../chunks/quatf32.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../chunks/common.js";export{l as add,e as copy,h as determinant,u as equals,q as exactEquals,k as frob,c as fromRotation,f as fromScaling,a as fromTranslation,i as identity,b as invert,v as mul,m as multiply,o as multiplyScalar,p as multiplyScalarAndAdd,r as rotate,s as scale,g as set,j as str,w as sub,n as subtract,t as translate}from"../../../../chunks/mat2d.js";
5
+ import"../../../../chunks/common.js";export{l as add,e as copy,h as determinant,u as equals,q as exactEquals,k as frob,b as fromRotation,f as fromScaling,a as fromTranslation,i as identity,c as invert,v as mul,m as multiply,o as multiplyScalar,p as multiplyScalarAndAdd,r as rotate,s as scale,g as set,j as str,w as sub,n as subtract,t as translate}from"../../../../chunks/mat2d.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{m as s,a as t,t as r,s as n}from"../chunks/mat3.js";import{c as o}from"../chunks/mat3f64.js";import{s as c}from"../chunks/vec2.js";import{s as m,t as a}from"../chunks/vec3.js";import{c as u}from"../chunks/vec3f64.js";const f=u(),i=o(),e=o(),p=o();function h(s,t,n){return m(f,t[0],t[1],1),a(f,f,r(i,n)),0===f[2]?c(s,f[0],f[1]):c(s,f[0]/f[2],f[1]/f[2])}function j(r,n,o){return k(e,n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]),k(p,o[0],o[1],o[2],o[3],o[4],o[5],o[6],o[7]),s(r,t(e,e),p)}function k(o,c,u,e,p,h,j,k,v){n(o,c,e,h,u,p,j,1,1,1),m(f,k,v,1),t(i,o);const[x,b,d]=a(f,f,r(i,i));return n(i,x,0,0,0,b,0,0,0,d),s(o,i,o)}export{j as getProjectiveTransform,h as transformProjective};
5
+ import{t as s,m as t,a as r,s as n}from"../chunks/mat3.js";import{c as o}from"../chunks/mat3f64.js";import{s as c}from"../chunks/vec2.js";import{s as m,t as a}from"../chunks/vec3.js";import{c as u}from"../chunks/vec3f64.js";const f=u(),i=o(),e=o(),p=o();function h(t,r,n){return m(f,r[0],r[1],1),a(f,f,s(i,n)),0===f[2]?c(t,f[0],f[1]):c(t,f[0]/f[2],f[1]/f[2])}function j(s,n,o){return k(e,n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]),k(p,o[0],o[1],o[2],o[3],o[4],o[5],o[6],o[7]),t(s,r(e,e),p)}function k(o,c,u,e,p,h,j,k,v){n(o,c,e,h,u,p,j,1,1,1),m(f,k,v,1),r(i,o);const[x,b,d]=a(f,f,s(i,i));return n(i,x,0,0,0,b,0,0,0,d),t(o,i,o)}export{j as getProjectiveTransform,h as transformProjective};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{clock as t}from"./clock.js";import{deprecatedFunction as e}from"./deprecate.js";import r from"./Error.js";import{once as n}from"./events.js";import o from"./Logger.js";import{isSome as i,isNone as s,assumeNonNull as c,removeMaybe as u}from"./maybe.js";async function l(t,e){const r=t.slice(),n=await Promise.all(t.map(((t,r)=>e(t,r))));return r.filter(((t,e)=>n[e]))}function m(t){return e(o.getLogger("esri.core.promiseUtils"),"create",{moduleName:"esri.core.promiseUtils",replacement:"new Promise()",version:"4.24"}),new Promise(((e,r)=>{try{t(e,r)}catch(n){Promise.resolve().then((()=>r(n)))}}))}function a(t="Aborted"){return new r("AbortError",t)}function f(t,e="Aborted"){if(p(t))throw a(e)}function h(t){return i(t)?"aborted"in t?t:t.signal:t}function p(t){const e=h(t);return i(e)&&e.aborted}function w(t){if(j(t))throw t}function b(t){if(!j(t))throw t}function v(t,e){const r=h(t);if(!s(r)){if(!r.aborted)return n(r,"abort",(()=>e()));e()}}function d(t,e){const r=h(t);if(!s(r))return f(r),n(r,"abort",(()=>e(a())))}function y(t,e){const r=h(e);return s(r)?t:new Promise(((r,n)=>{let o=v(e,(()=>n(a())));const i=()=>o=u(o);t.then(i,i),t.then(r,n)}))}function P(t,e,n){return Promise.race([t,U(e).then((()=>{throw new r("timeout",`Did not resolve within ${e} milliseconds (${n??"timeout"})`)}))])}function j(t){return"AbortError"===t?.name}async function g(t){try{return await t}catch(e){if(!j(e))throw e;return}}async function T(t,e=o.getLogger("esri")){try{return await t}catch(r){j(r)||e.error(r)}}function A(){let t=null;const e=new Promise(((e,r)=>{t={promise:void 0,resolve:e,reject:r}}));return t.promise=e,t}async function E(t){if(!t)return;if("function"!=typeof t.forEach){const e=Object.keys(t),r=e.map((e=>t[e])),n=await E(r),o={};return e.map(((t,e)=>o[t]=n[e])),o}const e=t;return new Promise((t=>{const r=[];let n=e.length;0===n&&t(r),e.forEach((e=>{const o={promise:e||Promise.resolve(e)};r.push(o),o.promise.then((t=>{o.value=t})).catch((t=>{o.error=t})).then((()=>{--n,0===n&&t(r)}))}))}))}async function L(t){return(await E(t)).filter((t=>!!t.value)).map((t=>t.value))}function U(t,e,r){const n=new AbortController;return v(r,(()=>n.abort())),new Promise(((r,o)=>{let i=setTimeout((()=>{i=0,r(e)}),t);v(n,(()=>{i&&(clearTimeout(i),o(a()))}))}))}function k(t,e,n,o){const i=n&&"abort"in n?n:null;null!=o||i||(o=n);let s=setTimeout((()=>{s=0,i&&i.abort()}),e);const c=()=>o||new r("promiseUtils:timeout","The wrapped promise did not resolve within "+e+" ms");return t.then((t=>{if(0===s)throw c();return clearTimeout(s),t}),(t=>{throw clearTimeout(s),0===s?c():t}))}function C(t){return t&&"function"==typeof t.then}function $(t){return C(t)?t:Promise.resolve(t)}function x(t,e=-1){let r,n,o,i,s=null;const u=(...l)=>{if(r){n=l,i&&i.reject(a()),i=A();const t=c(i.promise);if(s){const t=s;s=null,t.abort()}return t}if(o=i||A(),i=null,e>0){const n=new AbortController;r=$(t(...l,n.signal));const o=r;U(e).then((()=>{r===o&&(i?n.abort():s=n)}))}else r=1,r=$(t(...l));const m=()=>{const t=n;n=o=r=s=null,null!=t&&u(...t)},f=r,h=o;return f.then(m,m),f.then(h.resolve,h.reject),c(h.promise)};return u}function D(){let e,r;const n=new Promise(((t,n)=>{e=t,r=n})),o=t=>{e(t)};return o.resolve=t=>e(t),o.reject=t=>r(t),o.timeout=(e,r)=>t.setTimeout((()=>o.reject(r)),e),o.promise=n,o}function N(t,e){return t.then(e,e)}async function O(t){await Promise.resolve(),f(t)}export{U as after,N as always,m as create,a as createAbortError,A as createDeferred,D as createResolver,x as debounce,E as eachAlways,L as eachAlwaysValues,l as filter,g as ignoreAbortErrors,j as isAbortError,p as isAborted,C as isPromiseLike,T as logOnError,v as onAbort,d as onAbortOrThrow,w as throwIfAbortError,f as throwIfAborted,b as throwIfNotAbortError,k as timeout,O as waitTick,$ as when,y as whenOrAbort,P as whenOrTimeout};
5
+ import{clock as t}from"./clock.js";import{deprecatedFunction as e}from"./deprecate.js";import r from"./Error.js";import{once as n}from"./events.js";import o from"./Logger.js";import{isSome as i,isNone as s,removeMaybe as c,assumeNonNull as u}from"./maybe.js";async function l(t,e){const r=t.slice(),n=await Promise.all(t.map(((t,r)=>e(t,r))));return r.filter(((t,e)=>n[e]))}function m(t){return e(o.getLogger("esri.core.promiseUtils"),"create",{moduleName:"esri.core.promiseUtils",replacement:"new Promise()",version:"4.24"}),new Promise(((e,r)=>{try{t(e,r)}catch(n){Promise.resolve().then((()=>r(n)))}}))}function a(t="Aborted"){return new r("AbortError",t)}function f(t,e="Aborted"){if(p(t))throw a(e)}function h(t){return i(t)?"aborted"in t?t:t.signal:t}function p(t){const e=h(t);return i(e)&&e.aborted}function w(t){if(j(t))throw t}function b(t){if(!j(t))throw t}function v(t,e){const r=h(t);if(!s(r)){if(!r.aborted)return n(r,"abort",(()=>e()));e()}}function d(t,e){const r=h(t);if(!s(r))return f(r),n(r,"abort",(()=>e(a())))}function y(t,e){const r=h(e);return s(r)?t:new Promise(((r,n)=>{let o=v(e,(()=>n(a())));const i=()=>o=c(o);t.then(i,i),t.then(r,n)}))}function P(t,e,n){return Promise.race([t,U(e).then((()=>{throw new r("timeout",`Did not resolve within ${e} milliseconds (${n??"timeout"})`)}))])}function j(t){return"AbortError"===t?.name}async function g(t){try{return await t}catch(e){if(!j(e))throw e;return}}async function T(t,e=o.getLogger("esri")){try{return await t}catch(r){j(r)||e.error(r)}}function A(){let t=null;const e=new Promise(((e,r)=>{t={promise:void 0,resolve:e,reject:r}}));return t.promise=e,t}async function E(t){if(!t)return;if("function"!=typeof t.forEach){const e=Object.keys(t),r=e.map((e=>t[e])),n=await E(r),o={};return e.map(((t,e)=>o[t]=n[e])),o}const e=t;return new Promise((t=>{const r=[];let n=e.length;0===n&&t(r),e.forEach((e=>{const o={promise:e||Promise.resolve(e)};r.push(o),o.promise.then((t=>{o.value=t})).catch((t=>{o.error=t})).then((()=>{--n,0===n&&t(r)}))}))}))}async function L(t){return(await E(t)).filter((t=>!!t.value)).map((t=>t.value))}function U(t,e,r){const n=new AbortController;return v(r,(()=>n.abort())),new Promise(((r,o)=>{let i=setTimeout((()=>{i=0,r(e)}),t);v(n,(()=>{i&&(clearTimeout(i),o(a()))}))}))}function k(t,e,n,o){const i=n&&"abort"in n?n:null;null!=o||i||(o=n);let s=setTimeout((()=>{s=0,i&&i.abort()}),e);const c=()=>o||new r("promiseUtils:timeout","The wrapped promise did not resolve within "+e+" ms");return t.then((t=>{if(0===s)throw c();return clearTimeout(s),t}),(t=>{throw clearTimeout(s),0===s?c():t}))}function C(t){return t&&"function"==typeof t.then}function $(t){return C(t)?t:Promise.resolve(t)}function x(t,e=-1){let r,n,o,i,s=null;const c=(...l)=>{if(r){n=l,i&&i.reject(a()),i=A();const t=u(i.promise);if(s){const t=s;s=null,t.abort()}return t}if(o=i||A(),i=null,e>0){const n=new AbortController;r=$(t(...l,n.signal));const o=r;U(e).then((()=>{r===o&&(i?n.abort():s=n)}))}else r=1,r=$(t(...l));const m=()=>{const t=n;n=o=r=s=null,null!=t&&c(...t)},f=r,h=o;return f.then(m,m),f.then(h.resolve,h.reject),u(h.promise)};return c}function D(){let e,r;const n=new Promise(((t,n)=>{e=t,r=n})),o=t=>{e(t)};return o.resolve=t=>e(t),o.reject=t=>r(t),o.timeout=(e,r)=>t.setTimeout((()=>o.reject(r)),e),o.promise=n,o}function N(t,e){return t.then(e,e)}async function O(t){await Promise.resolve(),f(t)}export{U as after,N as always,m as create,a as createAbortError,A as createDeferred,D as createResolver,x as debounce,E as eachAlways,L as eachAlwaysValues,l as filter,g as ignoreAbortErrors,j as isAbortError,p as isAborted,C as isPromiseLike,T as logOnError,v as onAbort,d as onAbortOrThrow,w as throwIfAbortError,f as throwIfAborted,b as throwIfNotAbortError,k as timeout,O as waitTick,$ as when,y as whenOrAbort,P as whenOrTimeout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{isEventTarget as n,on as t}from"./events.js";import{makeHandle as r,handlesGroup as e}from"./handleUtils.js";import{removeMaybe as o}from"./maybe.js";import{isAborted as i,createAbortError as u,onAbort as s}from"./promiseUtils.js";import{watchTracked as c}from"./accessorSupport/watch.js";export{autorun}from"./accessorSupport/trackingUtils.js";function l(n,t,r={}){return m(n,t,r,y)}function f(n,t,r={}){return m(n,t,r,d)}function m(n,t,r={},e){let i=null;const u=r.once?(n,r)=>{e(n)&&(o(i),t(n,r))}:(n,r)=>{e(n)&&t(n,r)};if(i=c(n,u,r.sync,r.equals),r.initial){const t=n();u(t,t)}return i}function a(e,i,u,s={}){let c=null,f=null,m=null;function a(){c&&f&&(f.remove(),s.onListenerRemove?.(c),c=null,f=null)}function p(n){s.once&&s.once&&o(m),u(n)}const j=l(e,((r,e)=>{a(),n(r)&&(c=r,f=t(r,i,p),s.onListenerAdd?.(r))}),{sync:s.sync,initial:!0});return m=r((()=>{j.remove(),a()})),m}function p(n,t){return v(n,null,t)}function j(n,t){return v(n,d,t)}function v(n,t,r){if(i(r))return Promise.reject(u());const c=n();if(t?.(c))return Promise.resolve(c);let l=null;function f(){l=o(l)}return new Promise(((o,i)=>{l=e([s(r,(()=>{f(),i(u())})),m(n,(n=>{f(),o(n)}),{sync:!1,once:!0},t??y)])}))}function y(n){return!0}function d(n){return!!n}function P(n,t,r={}){let e=!1;const o=l(n,((n,r)=>{e||t(n,r)}),r);return{remove(){o.remove()},pause(){e=!0},resume(){e=!1}}}const U={sync:!0},h={initial:!0},w={sync:!0,initial:!0};export{h as initial,a as on,p as once,P as pausable,U as sync,w as syncAndInitial,l as watch,f as when,j as whenOnce};
5
+ import{isEventTarget as n,on as t}from"./events.js";import{handlesGroup as r,makeHandle as e}from"./handleUtils.js";import{removeMaybe as o}from"./maybe.js";import{isAborted as i,createAbortError as u,onAbort as s}from"./promiseUtils.js";import{watchTracked as c}from"./accessorSupport/watch.js";export{autorun}from"./accessorSupport/trackingUtils.js";function l(n,t,r={}){return m(n,t,r,y)}function f(n,t,r={}){return m(n,t,r,d)}function m(n,t,r={},e){let i=null;const u=r.once?(n,r)=>{e(n)&&(o(i),t(n,r))}:(n,r)=>{e(n)&&t(n,r)};if(i=c(n,u,r.sync,r.equals),r.initial){const t=n();u(t,t)}return i}function a(r,i,u,s={}){let c=null,f=null,m=null;function a(){c&&f&&(f.remove(),s.onListenerRemove?.(c),c=null,f=null)}function p(n){s.once&&s.once&&o(m),u(n)}const j=l(r,((r,e)=>{a(),n(r)&&(c=r,f=t(r,i,p),s.onListenerAdd?.(r))}),{sync:s.sync,initial:!0});return m=e((()=>{j.remove(),a()})),m}function p(n,t){return v(n,null,t)}function j(n,t){return v(n,d,t)}function v(n,t,e){if(i(e))return Promise.reject(u());const c=n();if(t?.(c))return Promise.resolve(c);let l=null;function f(){l=o(l)}return new Promise(((o,i)=>{l=r([s(e,(()=>{f(),i(u())})),m(n,(n=>{f(),o(n)}),{sync:!1,once:!0},t??y)])}))}function y(n){return!0}function d(n){return!!n}function P(n,t,r={}){let e=!1;const o=l(n,((n,r)=>{e||t(n,r)}),r);return{remove(){o.remove()},pause(){e=!0},resume(){e=!1}}}const U={sync:!0},h={initial:!0},w={sync:!0,initial:!0};export{h as initial,a as on,p as once,P as pausable,U as sync,w as syncAndInitial,l as watch,f as when,j as whenOnce};
package/core/unitUtils.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"./has.js";import{strict as e}from"./jsonMap.js";import{unwrapOr as s,isSome as t,isNone as r}from"./maybe.js";import{getReferenceEllipsoid as i}from"../geometry/projectionEllipsoid.js";import{earth as n,mars as a,moon as u}from"../geometry/support/Ellipsoid.js";import{isEarth as c,isWKIDFromMars as o,isWKIDFromMoon as l}from"../geometry/support/spatialReferenceUtils.js";import m from"../geometry/support/WKIDUnitConversion.js";const f=39.37,d=n.radius*Math.PI/200,U=/UNIT\[([^\]]+)\]\]$/i,q=m,h=/UNIT\[([^\]]+)\]/i,B=new Set([4261,4305,4807,4810,4811,4812,4816,4819,4821,4901,4902,37225,104139,104140]),p=e()({meter:"meters",foot:"feet",foot_us:"us-feet",foot_clarke:"clarke-feet",yard_clarke:"clarke-yards",link_clarke:"clarke-links",yard_sears:"sears-yards",foot_sears:"sears-feet",chain_sears:"sears-chains",chain_benoit_1895_b:"benoit-1895-b-chains",yard_indian:"indian-yards",yard_indian_1937:"indian-1937-yards",foot_gold_coast:"gold-coast-feet",chain_sears_1922_truncated:"sears-1922-truncated-chains","50_kilometers":"50-kilometers","150_kilometers":"150-kilometers"}),k=e=>e*e,b=e=>e*e*e,y={length:{baseUnit:"meters",units:{millimeters:{inBaseUnits:.001},centimeters:{inBaseUnits:.01},decimeters:{inBaseUnits:.1},meters:{inBaseUnits:1},kilometers:{inBaseUnits:1e3},inches:{inBaseUnits:.0254},feet:{inBaseUnits:.3048},yards:{inBaseUnits:.9144},miles:{inBaseUnits:1609.344},"nautical-miles":{inBaseUnits:1852},"us-feet":{inBaseUnits:1200/3937}}},area:{baseUnit:"square-meters",units:{"square-millimeters":{inBaseUnits:k(.001)},"square-centimeters":{inBaseUnits:k(.01)},"square-decimeters":{inBaseUnits:k(.1)},"square-meters":{inBaseUnits:1},"square-kilometers":{inBaseUnits:k(1e3)},"square-inches":{inBaseUnits:k(.0254)},"square-feet":{inBaseUnits:k(.3048)},"square-yards":{inBaseUnits:k(.9144)},"square-miles":{inBaseUnits:k(1609.344)},"square-us-feet":{inBaseUnits:k(1200/3937)},acres:{inBaseUnits:.0015625*k(1609.344)},ares:{inBaseUnits:100},hectares:{inBaseUnits:1e4}}},volume:{baseUnit:"liters",units:{liters:{inBaseUnits:1},"cubic-millimeters":{inBaseUnits:1e3*b(.001)},"cubic-centimeters":{inBaseUnits:1e3*b(.01)},"cubic-decimeters":{inBaseUnits:1e3*b(.1)},"cubic-meters":{inBaseUnits:1e3},"cubic-kilometers":{inBaseUnits:1e3*b(1e3)},"cubic-inches":{inBaseUnits:1e3*b(.0254)},"cubic-feet":{inBaseUnits:1e3*b(.3048)},"cubic-yards":{inBaseUnits:1e3*b(.9144)},"cubic-miles":{inBaseUnits:1e3*b(1609.344)}}},angle:{baseUnit:"radians",units:{radians:{inBaseUnits:1},degrees:{inBaseUnits:Math.PI/180}}}},_=(()=>{const e={};for(const s in y)for(const t in y[s].units)e[t]=s;return e})();function M(e,s,t){return e*y[t].units[s].inBaseUnits}function g(e,s,t){return e/y[t].units[s].inBaseUnits}const w=["metric","imperial","square-inches","square-feet","square-yards","square-miles","square-us-feet","square-meters","square-kilometers","acres","ares","hectares"],S=["metric","imperial","inches","feet","yards","miles","nautical-miles","us-feet","meters","kilometers"],I=new Map([["meters","square-meters"],["feet","square-feet"],["us-feet","square-us-feet"]]);function j(e){return"imperial"===e||"metric"===e}function P(e){const s=_[e];if(!s)throw new Error("unknown type");return s}function C(e){return y[e].baseUnit}function D(e){return C(P(e))}function x(e,s=null){return s=s||P(e),y[s].baseUnit===e}function E(e,s,t){if(s===t)return e;const r=P(s);if(r!==P(t))throw new Error("incompatible units");const i=x(s,r)?e:M(e,s,r);return x(t,r)?i:g(i,t,r)}function N(e,s,t){switch(t){case"metric":return O(e,s);case"imperial":return K(e,s);default:return t}}function v(e,s,t){switch(t){case"metric":return J(e,s);case"imperial":return R(e,s);default:return t}}function F(e,s,t){switch(t){case"metric":return A(e,s);case"imperial":return T(e,s);default:return t}}function O(e,s){const t=E(e,s,"meters");return Math.abs(t)<3e3?"meters":"kilometers"}function J(e,s){const t=E(e,s,"meters");return Math.abs(t)<1e5?"meters":"kilometers"}function K(e,s){const t=E(e,s,"feet");return Math.abs(t)<1e3?"feet":"miles"}function R(e,s){const t=E(e,s,"feet");return Math.abs(t)<1e5?"feet":"miles"}function A(e,s){const t=E(e,s,"square-meters");return Math.abs(t)<3e6?"square-meters":"square-kilometers"}function T(e,s){const t=E(e,s,"square-feet");return Math.abs(t)<1e6?"square-feet":"square-miles"}function Y(e,s,t){return E(e,s,"meters")/(t*Math.PI/180)}function G(e){return p.fromJSON(e.toLowerCase())||null}function H(e){return p.toJSON(e)||null}function L(e){if(t(e)&&!c(e))return 1;const s=$(e);return s>1e5?1:s}function W(e){return $(e)>=i(e).metersPerDegree?"meters":X(e)}function $(e,t=n.metersPerDegree){return s(z(e,!0),t)}function z(e,s=!1){const r=t(e)?e.wkid:null,i=t(e)?e.wkt:null;let n=null;if(r){if(o(r))return a.metersPerDegree;if(l(r))return u.metersPerDegree;n=q.values[q[r]],!n&&s&&B.has(r)&&(n=d)}else i&&(re(i)?n=Q(U.exec(i),n):te(i)&&(n=Q(h.exec(i),n)));return n}function Q(e,s){return e&&e[1]?V(e[1]):s}function V(e){return parseFloat(e.split(",")[1])}function X(e){const s=t(e)?e.wkid:null,r=t(e)?e.wkt:null;let i=null;if(s)i=q.units[q[s]];else if(r){const e=re(r)?U:te(r)?h:null;if(e){const s=e.exec(r);s&&s[1]&&(i=ne(s[1]))}}return t(i)?G(i):null}function Z(e){const s=X(e);return r(s)||!S.includes(s)?null:s}function ee(e){const s=W(e);return r(s)||!S.includes(s)?null:s}function se(e){const s=X(e);return r(s)?null:I.get(s)}function te(e){return/^GEOCCS/i.test(e)}function re(e){return/^PROJCS/i.test(e)}const ie=1e-7;function ne(e){const s=/[\\"\\']{1}([^\\"\\']+)/.exec(e);let t=s&&s[1];if(!t||!q.units.includes(t)){const s=V(e);t=null;const r=q.values;for(let e=0;e<r.length;++e)if(Math.abs(s-r[e])<ie){t=q.units[e];break}}return t}function ae(e){const s=X(e);if(r(s))return null;switch(s){case"feet":case"us-feet":case"clarke-feet":case"clarke-yards":case"clarke-links":case"sears-yards":case"sears-feet":case"sears-chains":case"benoit-1895-b-chains":case"indian-yards":case"indian-1937-yards":case"gold-coast-feet":case"sears-1922-truncated-chains":return"imperial";case"50-kilometers":case"150-kilometers":case"meters":return"metric"}return null}function ue(e){const t="metric";if(r(e))return t;const i=e.map,n=i&&"portalItem"in i?i.portalItem?.portal:null;if(n){switch(n?.user?.units??n.units){case t:return t;case"english":return"imperial"}}return s(ae(e.spatialReference),t)}const ce={esriAcres:"acres",esriAres:"ares",esriHectares:"hectares",esriSquareCentimeters:"square-centimeters",esriSquareDecimeters:"square-decimeters",esriSquareFeet:"square-feet",esriSquareInches:"square-inches",esriSquareKilometers:"square-kilometers",esriSquareMeters:"square-meters",esriSquareMiles:"square-miles",esriSquareMillimeters:"square-millimeters",esriSquareUsFeet:"square-us-feet",esriSquareYards:"square-yards"},oe={esriCentimeters:"centimeters",esriDecimeters:"decimeters",esriFeet:"feet",esriInches:"inches",esriKilometers:"kilometers",esriMeters:"meters",esriMiles:"miles",esriMillimeters:"millimeters",esriNauticalMiles:"nautical-miles",esriYards:"yards"},le=e()(ce),me=e()(oe),fe=e()({...ce,...oe});export{se as areaUnitFromSpatialReference,le as areaUnitsJSONMap,D as baseUnitForUnit,C as baseUnitForUnitType,E as convertUnit,ue as getDefaultUnitForView,ae as getDefaultUnitSystem,z as getMetersPerUnit,$ as getMetersPerUnitForSR,L as getMetersPerVerticalUnitForSR,X as getUnitString,W as getVerticalUnitStringForSR,f as inchesPerMeter,x as isBaseUnit,j as isMeasurementSystem,Y as lengthToDegrees,Z as lengthUnitFromSpatialReference,me as lengthUnitsJSONMap,w as measurementAreaUnits,S as measurementLengthUnits,F as preferredAreaUnit,T as preferredImperialAreaUnit,K as preferredImperialLengthUnit,R as preferredImperialVerticalLengthUnit,N as preferredLengthUnit,A as preferredMetricAreaUnit,O as preferredMetricLengthUnit,J as preferredMetricVerticalLengthUnit,v as preferredVerticalLengthUnit,G as unitFromRESTJSON,H as unitToRESTJSON,P as unitType,fe as unitsJSONMap,ee as verticalLengthUnitFromSpatialReference};
5
+ import"./has.js";import{strict as e}from"./jsonMap.js";import{isSome as s,unwrapOr as t,isNone as r}from"./maybe.js";import{getReferenceEllipsoid as i}from"../geometry/projectionEllipsoid.js";import{earth as n,mars as a,moon as u}from"../geometry/support/Ellipsoid.js";import{isEarth as c,isWKIDFromMars as o,isWKIDFromMoon as l}from"../geometry/support/spatialReferenceUtils.js";import m from"../geometry/support/WKIDUnitConversion.js";const f=39.37,d=n.radius*Math.PI/200,U=/UNIT\[([^\]]+)\]\]$/i,q=m,h=/UNIT\[([^\]]+)\]/i,B=new Set([4261,4305,4807,4810,4811,4812,4816,4819,4821,4901,4902,37225,104139,104140]),p=e()({meter:"meters",foot:"feet",foot_us:"us-feet",foot_clarke:"clarke-feet",yard_clarke:"clarke-yards",link_clarke:"clarke-links",yard_sears:"sears-yards",foot_sears:"sears-feet",chain_sears:"sears-chains",chain_benoit_1895_b:"benoit-1895-b-chains",yard_indian:"indian-yards",yard_indian_1937:"indian-1937-yards",foot_gold_coast:"gold-coast-feet",chain_sears_1922_truncated:"sears-1922-truncated-chains","50_kilometers":"50-kilometers","150_kilometers":"150-kilometers"}),k=e=>e*e,b=e=>e*e*e,y={length:{baseUnit:"meters",units:{millimeters:{inBaseUnits:.001},centimeters:{inBaseUnits:.01},decimeters:{inBaseUnits:.1},meters:{inBaseUnits:1},kilometers:{inBaseUnits:1e3},inches:{inBaseUnits:.0254},feet:{inBaseUnits:.3048},yards:{inBaseUnits:.9144},miles:{inBaseUnits:1609.344},"nautical-miles":{inBaseUnits:1852},"us-feet":{inBaseUnits:1200/3937}}},area:{baseUnit:"square-meters",units:{"square-millimeters":{inBaseUnits:k(.001)},"square-centimeters":{inBaseUnits:k(.01)},"square-decimeters":{inBaseUnits:k(.1)},"square-meters":{inBaseUnits:1},"square-kilometers":{inBaseUnits:k(1e3)},"square-inches":{inBaseUnits:k(.0254)},"square-feet":{inBaseUnits:k(.3048)},"square-yards":{inBaseUnits:k(.9144)},"square-miles":{inBaseUnits:k(1609.344)},"square-us-feet":{inBaseUnits:k(1200/3937)},acres:{inBaseUnits:.0015625*k(1609.344)},ares:{inBaseUnits:100},hectares:{inBaseUnits:1e4}}},volume:{baseUnit:"liters",units:{liters:{inBaseUnits:1},"cubic-millimeters":{inBaseUnits:1e3*b(.001)},"cubic-centimeters":{inBaseUnits:1e3*b(.01)},"cubic-decimeters":{inBaseUnits:1e3*b(.1)},"cubic-meters":{inBaseUnits:1e3},"cubic-kilometers":{inBaseUnits:1e3*b(1e3)},"cubic-inches":{inBaseUnits:1e3*b(.0254)},"cubic-feet":{inBaseUnits:1e3*b(.3048)},"cubic-yards":{inBaseUnits:1e3*b(.9144)},"cubic-miles":{inBaseUnits:1e3*b(1609.344)}}},angle:{baseUnit:"radians",units:{radians:{inBaseUnits:1},degrees:{inBaseUnits:Math.PI/180}}}},_=(()=>{const e={};for(const s in y)for(const t in y[s].units)e[t]=s;return e})();function M(e,s,t){return e*y[t].units[s].inBaseUnits}function g(e,s,t){return e/y[t].units[s].inBaseUnits}const w=["metric","imperial","square-inches","square-feet","square-yards","square-miles","square-us-feet","square-meters","square-kilometers","acres","ares","hectares"],S=["metric","imperial","inches","feet","yards","miles","nautical-miles","us-feet","meters","kilometers"],I=new Map([["meters","square-meters"],["feet","square-feet"],["us-feet","square-us-feet"]]);function j(e){return"imperial"===e||"metric"===e}function P(e){const s=_[e];if(!s)throw new Error("unknown type");return s}function C(e){return y[e].baseUnit}function D(e){return C(P(e))}function x(e,s=null){return s=s||P(e),y[s].baseUnit===e}function E(e,s,t){if(s===t)return e;const r=P(s);if(r!==P(t))throw new Error("incompatible units");const i=x(s,r)?e:M(e,s,r);return x(t,r)?i:g(i,t,r)}function N(e,s,t){switch(t){case"metric":return O(e,s);case"imperial":return K(e,s);default:return t}}function v(e,s,t){switch(t){case"metric":return J(e,s);case"imperial":return R(e,s);default:return t}}function F(e,s,t){switch(t){case"metric":return A(e,s);case"imperial":return T(e,s);default:return t}}function O(e,s){const t=E(e,s,"meters");return Math.abs(t)<3e3?"meters":"kilometers"}function J(e,s){const t=E(e,s,"meters");return Math.abs(t)<1e5?"meters":"kilometers"}function K(e,s){const t=E(e,s,"feet");return Math.abs(t)<1e3?"feet":"miles"}function R(e,s){const t=E(e,s,"feet");return Math.abs(t)<1e5?"feet":"miles"}function A(e,s){const t=E(e,s,"square-meters");return Math.abs(t)<3e6?"square-meters":"square-kilometers"}function T(e,s){const t=E(e,s,"square-feet");return Math.abs(t)<1e6?"square-feet":"square-miles"}function Y(e,s,t){return E(e,s,"meters")/(t*Math.PI/180)}function G(e){return p.fromJSON(e.toLowerCase())||null}function H(e){return p.toJSON(e)||null}function L(e){if(s(e)&&!c(e))return 1;const t=$(e);return t>1e5?1:t}function W(e){return $(e)>=i(e).metersPerDegree?"meters":X(e)}function $(e,s=n.metersPerDegree){return t(z(e,!0),s)}function z(e,t=!1){const r=s(e)?e.wkid:null,i=s(e)?e.wkt:null;let n=null;if(r){if(o(r))return a.metersPerDegree;if(l(r))return u.metersPerDegree;n=q.values[q[r]],!n&&t&&B.has(r)&&(n=d)}else i&&(re(i)?n=Q(U.exec(i),n):te(i)&&(n=Q(h.exec(i),n)));return n}function Q(e,s){return e&&e[1]?V(e[1]):s}function V(e){return parseFloat(e.split(",")[1])}function X(e){const t=s(e)?e.wkid:null,r=s(e)?e.wkt:null;let i=null;if(t)i=q.units[q[t]];else if(r){const e=re(r)?U:te(r)?h:null;if(e){const s=e.exec(r);s&&s[1]&&(i=ne(s[1]))}}return s(i)?G(i):null}function Z(e){const s=X(e);return r(s)||!S.includes(s)?null:s}function ee(e){const s=W(e);return r(s)||!S.includes(s)?null:s}function se(e){const s=X(e);return r(s)?null:I.get(s)}function te(e){return/^GEOCCS/i.test(e)}function re(e){return/^PROJCS/i.test(e)}const ie=1e-7;function ne(e){const s=/[\\"\\']{1}([^\\"\\']+)/.exec(e);let t=s&&s[1];if(!t||!q.units.includes(t)){const s=V(e);t=null;const r=q.values;for(let e=0;e<r.length;++e)if(Math.abs(s-r[e])<ie){t=q.units[e];break}}return t}function ae(e){const s=X(e);if(r(s))return null;switch(s){case"feet":case"us-feet":case"clarke-feet":case"clarke-yards":case"clarke-links":case"sears-yards":case"sears-feet":case"sears-chains":case"benoit-1895-b-chains":case"indian-yards":case"indian-1937-yards":case"gold-coast-feet":case"sears-1922-truncated-chains":return"imperial";case"50-kilometers":case"150-kilometers":case"meters":return"metric"}return null}function ue(e){const s="metric";if(r(e))return s;const i=e.map,n=i&&"portalItem"in i?i.portalItem?.portal:null;if(n){switch(n?.user?.units??n.units){case s:return s;case"english":return"imperial"}}return t(ae(e.spatialReference),s)}const ce={esriAcres:"acres",esriAres:"ares",esriHectares:"hectares",esriSquareCentimeters:"square-centimeters",esriSquareDecimeters:"square-decimeters",esriSquareFeet:"square-feet",esriSquareInches:"square-inches",esriSquareKilometers:"square-kilometers",esriSquareMeters:"square-meters",esriSquareMiles:"square-miles",esriSquareMillimeters:"square-millimeters",esriSquareUsFeet:"square-us-feet",esriSquareYards:"square-yards"},oe={esriCentimeters:"centimeters",esriDecimeters:"decimeters",esriFeet:"feet",esriInches:"inches",esriKilometers:"kilometers",esriMeters:"meters",esriMiles:"miles",esriMillimeters:"millimeters",esriNauticalMiles:"nautical-miles",esriYards:"yards"},le=e()(ce),me=e()(oe),fe=e()({...ce,...oe});export{se as areaUnitFromSpatialReference,le as areaUnitsJSONMap,D as baseUnitForUnit,C as baseUnitForUnitType,E as convertUnit,ue as getDefaultUnitForView,ae as getDefaultUnitSystem,z as getMetersPerUnit,$ as getMetersPerUnitForSR,L as getMetersPerVerticalUnitForSR,X as getUnitString,W as getVerticalUnitStringForSR,f as inchesPerMeter,x as isBaseUnit,j as isMeasurementSystem,Y as lengthToDegrees,Z as lengthUnitFromSpatialReference,me as lengthUnitsJSONMap,w as measurementAreaUnits,S as measurementLengthUnits,F as preferredAreaUnit,T as preferredImperialAreaUnit,K as preferredImperialLengthUnit,R as preferredImperialVerticalLengthUnit,N as preferredLengthUnit,A as preferredMetricAreaUnit,O as preferredMetricLengthUnit,J as preferredMetricVerticalLengthUnit,v as preferredVerticalLengthUnit,G as unitFromRESTJSON,H as unitToRESTJSON,P as unitType,fe as unitsJSONMap,ee as verticalLengthUnitFromSpatialReference};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import n from"../core/Error.js";import{clamp as e,deg2rad as t,rad2deg as r,asinClamped as l}from"../core/mathUtils.js";import{isSome as u,isNone as o,unwrap as s}from"../core/maybe.js";import{throwIfAborted as i,waitTick as a}from"../core/promiseUtils.js";import{getMetersPerUnitForSR as c}from"../core/unitUtils.js";import{trackAccess as E}from"../core/accessorSupport/tracking.js";import{SimpleObservable as C}from"../core/accessorSupport/tracking/SimpleObservable.js";import{f as R,i as A,t as f}from"../chunks/mat4.js";import{s as _,c as S,a as P,b as L,n as M,l as O}from"../chunks/vec3.js";import{c as p}from"../chunks/vec3f64.js";import N from"./Extent.js";import G from"./Multipoint.js";import{p as h,i as W,l as m}from"../chunks/pe.js";import T from"./Point.js";import F from"./Polygon.js";import I from"./Polyline.js";import{SphericalECEFSpatialReference as d,WGS84ECEFSpatialReference as H,SphericalPCPFMars as g,SphericalPCPFMoon as B}from"./projectionEllipsoid.js";import{copy as j}from"./support/aaBoundingRect.js";import{earth as y,moon as w,mars as U}from"./support/Ellipsoid.js";import{earthEllipsoidConstants as x}from"./support/geodesicConstants.js";import K from"./support/GeographicTransformation.js";import{equals as b,isValid as k,isWGS84 as z,isWebMercator as v,isPlateCarree as q,isMars as Z,isMoon as V}from"./support/spatialReferenceUtils.js";import{SupportedGCSWkids as X}from"./support/SupportedGCSWkids.js";import{getGeometryZScaler as D}from"./support/zscale.js";let J=null,Q=null,Y=null,$={};const nn=new C;function en(){return!!J&&W()}function tn(n){return o(Y)&&(Y=Promise.all([m(),import("../chunks/geometryEngineBase.js").then((n=>n.g)),import("./geometryAdapters/hydrated.js")])),Y.then((([,e,{hydratedAdapter:t}])=>{i(n),Q=t,J=e.default,J._enableProjection(h),nn.notify()}))}function rn(n,e,t=null,r=null){return Array.isArray(n)?0===n.length?[]:ln(Q,n,n[0].spatialReference,e,t,r):ln(Q,[n],n.spatialReference,e,t,r)[0]}function ln(n,e,t,r,l=null,i=null){if(o(t)||o(r))return e;if(An(t,r,l))return e.map((n=>s(Sn(n,t,r))));if(o(l)){const n=K.cacheKey(t,r);void 0!==$[n]?l=$[n]:(l=on(t,r,null),o(l)&&(l=new K),$[n]=l)}if(o(J))throw new an;return u(i)?J._project(n,e,t,r,l,i):J._project(n,e,t,r,l)}function un(n,e){return o(n)?{pending:null,geometry:null}:b(n.spatialReference,e)?{pending:null,geometry:n}:k(n.spatialReference)&&k(e)?An(n.spatialReference,e)||en()?{pending:null,geometry:Rn(n,e)}:(E(nn),{pending:tn(),geometry:null}):{pending:null,geometry:null}}function on(n,e,t=null){if(o(J))throw new an;if(o(n)||o(e))return null;const r=J._getTransformation(Q,n,e,t,t?.spatialReference);return null!==r?K.fromGE(r):null}function sn(n,e,t=null){if(o(J))throw new an;const r=J._getTransformationBySuitability(Q,n,e,t,t?.spatialReference);if(null!==r){const n=[];for(const e of r)n.push(K.fromGE(e));return n}return[]}class an extends n{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}var cn;function En(){J=null,Q=null,Y=null,$={}}!function(n){n[n.UNKNOWN=0]="UNKNOWN",n[n.SPHERICAL_ECEF=1]="SPHERICAL_ECEF",n[n.WGS84=2]="WGS84",n[n.WEB_MERCATOR=3]="WEB_MERCATOR",n[n.WGS84_ECEF=4]="WGS84_ECEF",n[n.CGCS2000=5]="CGCS2000",n[n.WGS84_COMPARABLE_LON_LAT=6]="WGS84_COMPARABLE_LON_LAT",n[n.SPHERICAL_MARS_PCPF=7]="SPHERICAL_MARS_PCPF",n[n.GCSMARS2000=8]="GCSMARS2000",n[n.SPHERICAL_MOON_PCPF=9]="SPHERICAL_MOON_PCPF",n[n.GCSMOON2000=10]="GCSMOON2000",n[n.LON_LAT=11]="LON_LAT",n[n.PLATE_CARREE=12]="PLATE_CARREE"}(cn||(cn={}));const Cn={get loadPromise(){return Y}};function Rn(n,e){try{const t=rn(n,e);if(null==t)return null;"xmin"in n&&"xmin"in t&&(t.zmin=n.zmin,t.zmax=n.zmax);const r=D(t.type,n.spatialReference,e);return u(r)&&r(t),t}catch(t){if(!(t instanceof an))throw t;return null}}function An(n,e,t){return!t&&(!!b(n,e)||k(n)&&k(e)&&!!Ie(n,e,je))}async function fn(n,e,t,r){if(en())return a(r);if(Array.isArray(n)){for(const{source:l,dest:u,geographicTransformation:o}of n)if(!An(l,u,o))return tn(r)}else if(!An(n,e,t))return tn(r);return a(r)}function _n(n,e){switch(Ie(n,e,je)){case Jn:return"copy3";case Se:return"wgs84ToSphericalECEF";case ee:return"wgs84ToWebMercator";case le:return"wgs84ToPlateCarree";case he:return"wgs84ToWGS84ECEF";case Qn:return"webMercatorToWGS84";case Yn:return"webMercatorToSphericalECEF";case $n:return"webMercatorToWGS84ECEF";case oe:return"webMercatorToPlateCarree";case We:return"wgs84ECEFToWGS84";case me:return"wgs84ECEFToSphericalECEF";case Te:return"wgs84ECEFToWebMercator";case Oe:return"sphericalECEFToWGS84";case pe:return"sphericalECEFToWebMercator";case Me:return"sphericalMarsPCPFToMars2000";case Le:return"sphericalMoonPCPFToMoon2000";case Ne:return"sphericalECEFToWGS84ECEF";case _e:return"mars2000ToSphericalPCPF";case fe:return"moon2000ToSphericalPCPF";default:return null}}function Sn(n,e,t){return n?"x"in n?Ln(n,e,new T,t,0):"xmin"in n?Fn(n,e,new N,t,0):"rings"in n?mn(n,e,new F,t,0):"paths"in n?Nn(n,e,new I,t,0):"points"in n?On(n,e,new G,t,0):null:null}function Pn(n,e,t=e.spatialReference,r=0){return!o(t)&&u(Ln(n,n.spatialReference,e,t,r))}function Ln(n,e,t,r,l){ke[0]=n.x,ke[1]=n.y;const u=n.z;return ke[2]=void 0!==u?u:l,Un(ke,e,0,ke,r,0,1)?(t.x=ke[0],t.y=ke[1],t.spatialReference=r,void 0===u?(t.z=void 0,t.hasZ=!1):(t.z=ke[2],t.hasZ=!0),void 0===n.m?(t.m=void 0,t.hasM=!1):(t.m=n.m,t.hasM=!0),t):null}function Mn(n,e,t=e.spatialReference,r=0){return!o(t)&&u(On(n,n.spatialReference,e,t,r))}function On(n,e,t,r,l){const{points:u,hasZ:o,hasM:s}=n,i=[],a=u.length,c=[];for(const E of u)c.push(E[0],E[1],o?E[2]:l);if(!Un(c,e,0,c,r,0,a))return null;for(let E=0;E<a;++E){const n=3*E,e=c[n],t=c[n+1];o&&s?i.push([e,t,c[n+2],u[E][3]]):o?i.push([e,t,c[n+2]]):s?i.push([e,t,u[E][2]]):i.push([e,t])}return t.points=i,t.spatialReference=r,t.hasZ=o,t.hasM=s,t}function pn(n,e,t=e.spatialReference,r=0){return u(t)&&u(Nn(n,n.spatialReference,e,t,r))}function Nn(n,e,t,r,l){const{paths:u,hasZ:o,hasM:s}=n,i=[];return Kn(u,o,s,e,i,r,l)?(t.paths=i,t.spatialReference=r,t.hasZ=o,t.hasM=s,t):null}function Gn({hasZ:n,spatialReference:e,paths:t},r,l=0){const u=Dn(e,ge),s=Fe[u][cn.WGS84_COMPARABLE_LON_LAT];if(o(s))return!1;const i=n?n=>n:n=>_(ke,n[0],n[1],l);for(const o of t){const n=[];for(const e of o){const t=[0,0,l];s(i(e),0,t,0),n.push(t)}r.push(n)}return!0}function hn({hasZ:n,spatialReference:e,rings:t},r,l=0){const u=Dn(e,ge),s=Fe[u][cn.WGS84_COMPARABLE_LON_LAT];if(o(s))return!1;const i=n?n=>n:n=>_(ke,n[0],n[1],l);for(const o of t){const n=[];for(const e of o){const t=[0,0,l];s(i(e),0,t,0),n.push(t)}r.push(n)}return!0}function Wn(n,e,t=e.spatialReference,r=0){return u(t)&&u(mn(n,n.spatialReference,e,t,r))}function mn(n,e,t,r,l){const{rings:u,hasZ:o,hasM:s}=n,i=[];return Kn(u,o,s,e,i,r,l)?(t.rings=i,t.spatialReference=r,t.hasZ=o,t.hasM=s,t):null}function Tn(n,e,t=e.spatialReference,r=0){return u(t)&&u(Fn(n,n.spatialReference,e,t,r))}function Fn(n,e,t,r,l){const{xmin:u,ymin:o,xmax:s,ymax:i,hasZ:a,hasM:c}=n;if(!gn(u,o,a?n.zmin:l,e,ke,r))return null;t.xmin=ke[0],t.ymin=ke[1],a&&(t.zmin=ke[2]);return gn(s,i,a?n.zmax:l,e,ke,r)?(t.xmax=ke[0],t.ymax=ke[1],a&&(t.zmax=ke[2]),c&&(t.mmin=n.mmin,t.mmax=n.mmax),t.spatialReference=r,t):null}function In(n,e,t){if(o(e)||o(t))return null;const r=new T({spatialReference:t});return Un(n,e,0,ke,t,0,1)?(r.x=ke[0],r.y=ke[1],r.z=ke[2],r):null}function dn(n,e,t){return Un(n,e,0,ke,t.spatialReference,0,1)?(t.x=ke[0],t.y=ke[1],t.z=ke[2],t):null}function Hn(n,e,t,r=0){ke[0]=n.x,ke[1]=n.y;const l=n.z;return ke[2]=void 0!==l?l:r,Un(ke,n.spatialReference,0,e,t,0,1)}function gn(n,e,t,r,l,u){return xe[0]=n,xe[1]=e,xe[2]=t,Un(xe,r,0,l,u,0,1)}function Bn(n,e,t,r){return!(o(e)||o(r)||n.length<2)&&(2===n.length&&(xe[0]=n[0],xe[1]=n[1],xe[2]=0,n=xe),Un(n,e,0,t,r,0,1))}function jn(n,e){ke[0]=n.x,ke[1]=n.y;const t=n.z;return ke[2]=void 0!==t?t:0,yn(ke,n.spatialReference,e)}function yn(n,e,t){return wn(n,e,t)}function wn(n,e,t){if(o(e))return!1;const r=Dn(e,ge),l=Fe[r][cn.WGS84_COMPARABLE_LON_LAT];return!o(l)&&(l(n,0,xe,0),t!==xe&&(t[0]=xe[0],t[1]=xe[1],t.length>2&&(t[2]=xe[2])),!0)}function Un(n,e,t,r,l,u,s=1){const i=Ie(e,l,je);if(o(i))return!1;if(i===Jn){if(n===r&&t===u)return!0;const e=t+3*s;for(let l=t,o=u;l<e;l++,o++)r[o]=n[l];return!0}const a=t+3*s;for(let o=t,c=u;o<a;o+=3,c+=3)i(n,o,r,c);return!0}function xn(n,e,t,r,l){S(ke,n),P(ze,n,e),Bn(ke,t,ke,l),Bn(ze,t,ze,l),L(r,ze,ke),M(r,r)}function Kn(n,e,t,r,l,u,o=0){const s=new Array;for(const a of n)for(const n of a)s.push(n[0],n[1],e?n[2]:o);if(!Un(s,r,0,s,u,0,s.length/3))return!1;let i=0;l.length=0;for(const a of n){const n=new Array;for(const r of a)e&&t?n.push([s[i++],s[i++],s[i++],r[3]]):e?n.push([s[i++],s[i++],s[i++]]):t?(n.push([s[i++],s[i++],r[2]]),i++):(n.push([s[i++],s[i++]]),i++);l.push(n)}return!0}function bn(n,e,t,r){if(o(e)||o(r))return!1;const l=de(e,r,ye);if(l.projector===Jn)return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],!0;if(o(l.projector))return!1;const{source:s,dest:i}=l;if(i.spatialReferenceId===cn.WEB_MERCATOR){const e=Fe[s.spatialReferenceId][cn.WGS84];return!o(e)&&(e(n,0,Ke,0),ee(Ke,0,t,0),t[3]=kn(Ke[1],n[2],n[3],y.radius),!0)}if(s.spatialReferenceId!==cn.WGS84&&s.spatialReferenceId!==cn.CGCS2000||i.spatialReferenceId!==cn.PLATE_CARREE)l.projector(n,0,t,0),t[3]=n[3]*s.metersPerUnit/i.metersPerUnit;else{const e=Fe[s.spatialReferenceId][cn.SPHERICAL_ECEF],r=Fe[cn.SPHERICAL_ECEF][cn.PLATE_CARREE];let o=n[3];u(e)&&u(r)&&(o=kn(n[1],n[2],n[3],y.radius)),l.projector(n,0,t,0),t[3]=o}return!0}function kn(n,e,t,r){const l=r+e;if(l<r/2||t>l)return Number.MAX_VALUE;const u=Math.abs(we*n)+Math.asin(t/l);return u>=Math.PI/2?Number.MAX_VALUE:t/Math.cos(u)}function zn(n,e,t,r){return null!=n&&(b(e,r)?(j(t,n),!0):(xe[0]=n[0],xe[1]=n[1],xe[2]=0,!!Un(xe,e,0,xe,r,0,1)&&(t[0]=xe[0],t[1]=xe[1],xe[0]=n[2],xe[1]=n[3],xe[2]=0,!!Un(xe,e,0,xe,r,0,1)&&(t[2]=xe[0],t[3]=xe[1],!0))))}function vn(n,e,t,r){if(o(e)||o(r))return!1;const l=Dn(e,ge),u=Dn(r,Be);if(l===u&&l!==cn.UNKNOWN||b(e,r))return t[0]=1,t[1]=1,t[2]=1,!0;if(l===cn.SPHERICAL_ECEF){const e=O(n),r=e/Math.sqrt(n[0]*n[0]+n[1]*n[1]),l=e/y.radius;if(u===cn.WEB_MERCATOR)return t[0]=r*l,t[1]=r*l,t[2]=1,!0;if(u===cn.WGS84||u===cn.CGCS2000){const n=re;return t[0]=n*r*l,t[1]=n*l,t[2]=1,!0}}else if(l===cn.PLATE_CARREE){if(u===cn.WGS84||u===cn.CGCS2000)return t[0]=re,t[1]=re,t[2]=1,!0;if(u===cn.WEB_MERCATOR){const e=n[1]/y.radius;return t[0]=1,t[1]=1/Math.cos(e),t[2]=1,!0}}return!1}function qn(n,e,t,r){if(o(n)||o(r))return!1;const l=Dn(n,ge),u=Dn(r,Be);if(l===u&&!Zn(u)&&(l!==cn.UNKNOWN||b(n,r)))return R(t,e),!0;if(Zn(u)){const n=Fe[l][cn.LON_LAT],r=Fe[cn.LON_LAT][u];return!o(n)&&!o(r)&&(n(e,0,Ke,0),r(Ke,0,be,0),Vn(we*Ke[0],we*Ke[1],t),t[12]=be[0],t[13]=be[1],t[14]=be[2],!0)}if((u===cn.WEB_MERCATOR||u===cn.PLATE_CARREE)&&(l===cn.WGS84||l===cn.CGCS2000&&u===cn.PLATE_CARREE||l===cn.SPHERICAL_ECEF||l===cn.WEB_MERCATOR)){const n=Fe[l][cn.LON_LAT],r=Fe[cn.LON_LAT][u];return!o(n)&&!o(r)&&(n(e,0,Ke,0),r(Ke,0,be,0),l===cn.SPHERICAL_ECEF?Xn(we*Ke[0],we*Ke[1],t):A(t),t[12]=be[0],t[13]=be[1],t[14]=be[2],!0)}return!1}function Zn(n){return n===cn.SPHERICAL_ECEF||n===cn.SPHERICAL_MARS_PCPF||n===cn.SPHERICAL_MOON_PCPF}function Vn(n,e,t){const r=Math.sin(n),l=Math.cos(n),u=Math.sin(e),o=Math.cos(e),s=t;return s[0]=-r,s[4]=-u*l,s[8]=o*l,s[12]=0,s[1]=l,s[5]=-u*r,s[9]=o*r,s[13]=0,s[2]=0,s[6]=o,s[10]=u,s[14]=0,s[3]=0,s[7]=0,s[11]=0,s[15]=1,s}function Xn(n,e,t){return Vn(n,e,t),f(t,t),t}function Dn(n,e){return e.spatialReference===n?e.spatialReferenceId:(e.spatialReference=n,"metersPerUnit"in e&&(e.metersPerUnit=c(n,1)),n.wkt===d.wkt?e.spatialReferenceId=cn.SPHERICAL_ECEF:z(n)?e.spatialReferenceId=cn.WGS84:v(n)?e.spatialReferenceId=cn.WEB_MERCATOR:q(n)?e.spatialReferenceId=cn.PLATE_CARREE:n.wkt===H.wkt?e.spatialReferenceId=cn.WGS84_ECEF:n.wkid===X.CGCS2000?e.spatialReferenceId=cn.CGCS2000:n.wkt===g.wkt?e.spatialReferenceId=cn.SPHERICAL_MARS_PCPF:n.wkt===B.wkt?e.spatialReferenceId=cn.SPHERICAL_MOON_PCPF:Z(n)?e.spatialReferenceId=cn.GCSMARS2000:V(n)?e.spatialReferenceId=cn.GCSMOON2000:e.spatialReferenceId=cn.UNKNOWN)}function Jn(n,e,t,r){n!==t&&(t[r++]=n[e++],t[r++]=n[e++],t[r]=n[e])}function Qn(n,e,t,r){t[r++]=Ue*(n[e++]/y.radius),t[r++]=Ue*(Math.PI/2-2*Math.atan(Math.exp(-n[e++]/y.radius))),t[r]=n[e]}function Yn(n,e,t,r){Qn(n,e,t,r),Se(t,r,t,r)}function $n(n,e,t,r){Qn(n,e,t,r),he(t,r,t,r)}function ne(n,t,r,l,u){const o=.4999999*Math.PI,s=e(we*n[t+1],-o,o),i=Math.sin(s);r[l++]=we*n[t]*u.radius,r[l++]=u.halfSemiMajorAxis*Math.log((1+i)/(1-i)),r[l]=n[t+2]}function ee(n,e,t,r){ne(n,e,t,r,y)}const te=y.radius*Math.PI/180,re=180/(y.radius*Math.PI);function le(n,e,t,r){t[r]=n[e]*te,t[r+1]=n[e+1]*te,t[r+2]=n[e+2]}function ue(n,e,t,r){t[r]=n[e]*re,t[r+1]=n[e+1]*re,t[r+2]=n[e+2]}function oe(n,e,t,r){Qn(n,e,t,r),le(t,r,t,r)}function se(n,e,t,r){We(n,e,t,r),le(t,r,t,r)}function ie(n,e,t,r){Oe(n,e,t,r),le(t,r,t,r)}function ae(n,e,t,r){ue(n,e,t,r),Se(t,r,t,r)}function ce(n,e,t,r){ue(n,e,t,r),ee(t,r,t,r)}function Ee(n,e,t,r){ue(n,e,t,r),he(t,r,t,r)}function Ce(n){if(o(n))return!1;const e=Dn(n,ge);return!!Fe[e][cn.WGS84_COMPARABLE_LON_LAT]}function Re(n,e,t,r){const l=Math.cos(t);n[0]=Math.cos(e)*l*r,n[1]=Math.sin(e)*l*r,n[2]=Math.sin(t)*r}function Ae(n,e,t,r,l){const u=l+n[e+2],o=we*n[e+1],s=we*n[e],i=Math.cos(o);t[r++]=Math.cos(s)*i*u,t[r++]=Math.sin(s)*i*u,t[r]=Math.sin(o)*u}function fe(n,e,t,r){Ae(n,e,t,r,w.radius)}function _e(n,e,t,r){Ae(n,e,t,r,U.radius)}function Se(n,e,t,r){Ae(n,e,t,r,y.radius)}function Pe(n,e,t,r,u){const o=n[e],s=n[e+1],i=n[e+2],a=Math.sqrt(o*o+s*s+i*i),c=l(i/(0===a?1:a)),E=Math.atan2(s,o);t[r++]=Ue*E,t[r++]=Ue*c,t[r]=a-u}function Le(n,e,t,r){Pe(n,e,t,r,w.radius)}function Me(n,e,t,r){Pe(n,e,t,r,U.radius)}function Oe(n,e,t,r){Pe(n,e,t,r,y.radius)}function pe(n,e,t,r){Oe(n,e,t,r),ee(t,r,t,r)}function Ne(n,e,t,r){Oe(n,e,t,r),he(t,r,t,r)}function Ge(n,e,t,r,l){const u=we*n[e],o=we*n[e+1],s=n[e+2],i=Math.sin(o),a=Math.cos(o),c=l.radius/Math.sqrt(1-l.eccentricitySquared*i*i);t[r++]=(c+s)*a*Math.cos(u),t[r++]=(c+s)*a*Math.sin(u),t[r++]=(c*(1-l.eccentricitySquared)+s)*i}function he(n,e,t,r){Ge(n,e,t,r,y)}function We(n,e,t,r){const l=x,u=n[e],o=n[e+1],s=n[e+2];let i,a,c,E,C,R,A,f,_,S,P,L,M,O,p,N,G,h,W,m,T;i=Math.abs(s),a=u*u+o*o,c=Math.sqrt(a),E=a+s*s,C=Math.sqrt(E),m=Math.atan2(o,u),R=s*s/E,A=a/E,O=l.a2/C,p=l.a3-l.a4/C,A>.3?(f=i/C*(1+A*(l.a1+O+R*p)/C),W=Math.asin(f),S=f*f,_=Math.sqrt(1-S)):(_=c/C*(1-R*(l.a5-O-A*p)/C),W=Math.acos(_),S=1-_*_,f=Math.sqrt(S)),P=1-y.eccentricitySquared*S,L=y.radius/Math.sqrt(P),M=l.a6*L,O=c-L*_,p=i-M*f,G=_*O+f*p,N=_*p-f*O,h=N/(M/P+G),W+=h,T=G+N*h/2,s<0&&(W=-W),t[r++]=Ue*m,t[r++]=Ue*W,t[r]=T}function me(n,e,t,r){We(n,e,t,r),Se(t,r,t,r)}function Te(n,e,t,r){We(n,e,t,r),ee(t,r,t,r)}const Fe={[cn.WGS84]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:ee,[cn.PLATE_CARREE]:le,[cn.WGS84]:Jn,[cn.WGS84_ECEF]:he},[cn.CGCS2000]:{[cn.CGCS2000]:Jn,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:le,[cn.WGS84]:null,[cn.WGS84_ECEF]:he},[cn.GCSMARS2000]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:Jn,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:_e,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.GCSMOON2000]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:Jn,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:fe,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.WEB_MERCATOR]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Qn,[cn.WGS84_COMPARABLE_LON_LAT]:Qn,[cn.SPHERICAL_ECEF]:Yn,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:Jn,[cn.PLATE_CARREE]:oe,[cn.WGS84]:Qn,[cn.WGS84_ECEF]:$n},[cn.WGS84_ECEF]:{[cn.CGCS2000]:We,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:We,[cn.WGS84_COMPARABLE_LON_LAT]:We,[cn.SPHERICAL_ECEF]:me,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:Te,[cn.PLATE_CARREE]:se,[cn.WGS84]:We,[cn.WGS84_ECEF]:Jn},[cn.SPHERICAL_ECEF]:{[cn.CGCS2000]:Oe,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Oe,[cn.WGS84_COMPARABLE_LON_LAT]:Oe,[cn.SPHERICAL_ECEF]:Jn,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:pe,[cn.PLATE_CARREE]:ie,[cn.WGS84]:Oe,[cn.WGS84_ECEF]:Ne},[cn.SPHERICAL_MARS_PCPF]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:Me,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Me,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:Jn,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.SPHERICAL_MOON_PCPF]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:Le,[cn.LON_LAT]:Le,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:Jn,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.UNKNOWN]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:null,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:Jn,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.LON_LAT]:{[cn.CGCS2000]:Jn,[cn.GCSMARS2000]:Jn,[cn.GCSMOON2000]:Jn,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:_e,[cn.SPHERICAL_MOON_PCPF]:fe,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:ee,[cn.PLATE_CARREE]:le,[cn.WGS84]:Jn,[cn.WGS84_ECEF]:he},[cn.WGS84_COMPARABLE_LON_LAT]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:le,[cn.WGS84]:Jn,[cn.WGS84_ECEF]:he},[cn.PLATE_CARREE]:{[cn.CGCS2000]:ue,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:ue,[cn.WGS84_COMPARABLE_LON_LAT]:ue,[cn.SPHERICAL_ECEF]:ae,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:ce,[cn.PLATE_CARREE]:Jn,[cn.WGS84]:ue,[cn.WGS84_ECEF]:Ee}};function Ie(n,e,t=He()){return o(n)||o(e)?null:de(n,e,t).projector}function de(n,e,t){if(o(n)||o(e)||t.source.spatialReference===n&&t.dest.spatialReference===e)return t;const r=Dn(n,t.source),l=Dn(e,t.dest);return r===cn.UNKNOWN&&l===cn.UNKNOWN?b(n,e)?t.projector=Jn:t.projector=null:t.projector=Fe[r][l],t}function He(){return{source:{spatialReference:null,spatialReferenceId:cn.UNKNOWN,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:cn.UNKNOWN,metersPerUnit:1},projector:Jn}}const ge={spatialReference:null,spatialReferenceId:cn.UNKNOWN},Be={spatialReference:null,spatialReferenceId:cn.UNKNOWN},je=He(),ye=He(),we=t(1),Ue=r(1),xe=p(),Ke=p(),be=p(),ke=p(),ze=p();export{Ce as canProjectToWGS84ComparableLonLat,An as canProjectWithoutEngine,Vn as computeENUToSphericalPCPFLocalRotation,Xn as computeSphericalPCPFToENULocalRotation,qn as computeTranslationToOriginAndRotation,_n as getProjectorName,on as getTransformation,sn as getTransformations,fn as initializeProjection,en as isLoaded,tn as load,vn as localLinearScaleFactors,Re as lonLatToSphericalPCPF,ne as lonLatToWebMercatorComparable,rn as project,zn as projectBoundingRect,bn as projectBoundingSphere,Un as projectBuffer,xn as projectDirection,Tn as projectExtent,ln as projectMany,Mn as projectMultipoint,un as projectOrLoad,Pn as projectPoint,Hn as projectPointToVector,jn as projectPointToWGS84ComparableLonLat,Wn as projectPolygon,hn as projectPolygonToWGS84ComparableLonLat,pn as projectPolyline,Gn as projectPolylineToWGS84ComparableLonLat,dn as projectVectorToDehydratedPoint,In as projectVectorToPoint,Bn as projectVectorToVector,yn as projectVectorToWGS84ComparableLonLat,Sn as projectWithoutEngine,gn as projectXYZToVector,Pe as sphericalPCPFtoLonLatElevation,Cn as test,Rn as tryProjectWithZConversion,En as unload};
5
+ import n from"../core/Error.js";import{clamp as e,deg2rad as t,rad2deg as r,asinClamped as l}from"../core/mathUtils.js";import{isNone as u,unwrap as o,isSome as s}from"../core/maybe.js";import{throwIfAborted as i,waitTick as a}from"../core/promiseUtils.js";import{getMetersPerUnitForSR as c}from"../core/unitUtils.js";import{trackAccess as E}from"../core/accessorSupport/tracking.js";import{SimpleObservable as C}from"../core/accessorSupport/tracking/SimpleObservable.js";import{f as R,i as A,t as f}from"../chunks/mat4.js";import{c as _,a as S,b as P,n as L,l as M,s as O}from"../chunks/vec3.js";import{c as p}from"../chunks/vec3f64.js";import N from"./Extent.js";import G from"./Multipoint.js";import{l as h,p as W,i as m}from"../chunks/pe.js";import T from"./Point.js";import F from"./Polygon.js";import I from"./Polyline.js";import{SphericalECEFSpatialReference as d,WGS84ECEFSpatialReference as H,SphericalPCPFMars as g,SphericalPCPFMoon as B}from"./projectionEllipsoid.js";import{copy as j}from"./support/aaBoundingRect.js";import{earth as y,moon as w,mars as U}from"./support/Ellipsoid.js";import{earthEllipsoidConstants as x}from"./support/geodesicConstants.js";import K from"./support/GeographicTransformation.js";import{equals as b,isValid as k,isWGS84 as z,isWebMercator as v,isPlateCarree as q,isMars as Z,isMoon as V}from"./support/spatialReferenceUtils.js";import{SupportedGCSWkids as X}from"./support/SupportedGCSWkids.js";import{getGeometryZScaler as D}from"./support/zscale.js";let J=null,Q=null,Y=null,$={};const nn=new C;function en(){return!!J&&m()}function tn(n){return u(Y)&&(Y=Promise.all([h(),import("../chunks/geometryEngineBase.js").then((n=>n.g)),import("./geometryAdapters/hydrated.js")])),Y.then((([,e,{hydratedAdapter:t}])=>{i(n),Q=t,J=e.default,J._enableProjection(W),nn.notify()}))}function rn(n,e,t=null,r=null){return Array.isArray(n)?0===n.length?[]:ln(Q,n,n[0].spatialReference,e,t,r):ln(Q,[n],n.spatialReference,e,t,r)[0]}function ln(n,e,t,r,l=null,i=null){if(u(t)||u(r))return e;if(An(t,r,l))return e.map((n=>o(Sn(n,t,r))));if(u(l)){const n=K.cacheKey(t,r);void 0!==$[n]?l=$[n]:(l=on(t,r,null),u(l)&&(l=new K),$[n]=l)}if(u(J))throw new an;return s(i)?J._project(n,e,t,r,l,i):J._project(n,e,t,r,l)}function un(n,e){return u(n)?{pending:null,geometry:null}:b(n.spatialReference,e)?{pending:null,geometry:n}:k(n.spatialReference)&&k(e)?An(n.spatialReference,e)||en()?{pending:null,geometry:Rn(n,e)}:(E(nn),{pending:tn(),geometry:null}):{pending:null,geometry:null}}function on(n,e,t=null){if(u(J))throw new an;if(u(n)||u(e))return null;const r=J._getTransformation(Q,n,e,t,t?.spatialReference);return null!==r?K.fromGE(r):null}function sn(n,e,t=null){if(u(J))throw new an;const r=J._getTransformationBySuitability(Q,n,e,t,t?.spatialReference);if(null!==r){const n=[];for(const e of r)n.push(K.fromGE(e));return n}return[]}class an extends n{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}var cn;function En(){J=null,Q=null,Y=null,$={}}!function(n){n[n.UNKNOWN=0]="UNKNOWN",n[n.SPHERICAL_ECEF=1]="SPHERICAL_ECEF",n[n.WGS84=2]="WGS84",n[n.WEB_MERCATOR=3]="WEB_MERCATOR",n[n.WGS84_ECEF=4]="WGS84_ECEF",n[n.CGCS2000=5]="CGCS2000",n[n.WGS84_COMPARABLE_LON_LAT=6]="WGS84_COMPARABLE_LON_LAT",n[n.SPHERICAL_MARS_PCPF=7]="SPHERICAL_MARS_PCPF",n[n.GCSMARS2000=8]="GCSMARS2000",n[n.SPHERICAL_MOON_PCPF=9]="SPHERICAL_MOON_PCPF",n[n.GCSMOON2000=10]="GCSMOON2000",n[n.LON_LAT=11]="LON_LAT",n[n.PLATE_CARREE=12]="PLATE_CARREE"}(cn||(cn={}));const Cn={get loadPromise(){return Y}};function Rn(n,e){try{const t=rn(n,e);if(null==t)return null;"xmin"in n&&"xmin"in t&&(t.zmin=n.zmin,t.zmax=n.zmax);const r=D(t.type,n.spatialReference,e);return s(r)&&r(t),t}catch(t){if(!(t instanceof an))throw t;return null}}function An(n,e,t){return!t&&(!!b(n,e)||k(n)&&k(e)&&!!Ie(n,e,je))}async function fn(n,e,t,r){if(en())return a(r);if(Array.isArray(n)){for(const{source:l,dest:u,geographicTransformation:o}of n)if(!An(l,u,o))return tn(r)}else if(!An(n,e,t))return tn(r);return a(r)}function _n(n,e){switch(Ie(n,e,je)){case Jn:return"copy3";case Se:return"wgs84ToSphericalECEF";case ee:return"wgs84ToWebMercator";case le:return"wgs84ToPlateCarree";case he:return"wgs84ToWGS84ECEF";case Qn:return"webMercatorToWGS84";case Yn:return"webMercatorToSphericalECEF";case $n:return"webMercatorToWGS84ECEF";case oe:return"webMercatorToPlateCarree";case We:return"wgs84ECEFToWGS84";case me:return"wgs84ECEFToSphericalECEF";case Te:return"wgs84ECEFToWebMercator";case Oe:return"sphericalECEFToWGS84";case pe:return"sphericalECEFToWebMercator";case Me:return"sphericalMarsPCPFToMars2000";case Le:return"sphericalMoonPCPFToMoon2000";case Ne:return"sphericalECEFToWGS84ECEF";case _e:return"mars2000ToSphericalPCPF";case fe:return"moon2000ToSphericalPCPF";default:return null}}function Sn(n,e,t){return n?"x"in n?Ln(n,e,new T,t,0):"xmin"in n?Fn(n,e,new N,t,0):"rings"in n?mn(n,e,new F,t,0):"paths"in n?Nn(n,e,new I,t,0):"points"in n?On(n,e,new G,t,0):null:null}function Pn(n,e,t=e.spatialReference,r=0){return!u(t)&&s(Ln(n,n.spatialReference,e,t,r))}function Ln(n,e,t,r,l){ke[0]=n.x,ke[1]=n.y;const u=n.z;return ke[2]=void 0!==u?u:l,Un(ke,e,0,ke,r,0,1)?(t.x=ke[0],t.y=ke[1],t.spatialReference=r,void 0===u?(t.z=void 0,t.hasZ=!1):(t.z=ke[2],t.hasZ=!0),void 0===n.m?(t.m=void 0,t.hasM=!1):(t.m=n.m,t.hasM=!0),t):null}function Mn(n,e,t=e.spatialReference,r=0){return!u(t)&&s(On(n,n.spatialReference,e,t,r))}function On(n,e,t,r,l){const{points:u,hasZ:o,hasM:s}=n,i=[],a=u.length,c=[];for(const E of u)c.push(E[0],E[1],o?E[2]:l);if(!Un(c,e,0,c,r,0,a))return null;for(let E=0;E<a;++E){const n=3*E,e=c[n],t=c[n+1];o&&s?i.push([e,t,c[n+2],u[E][3]]):o?i.push([e,t,c[n+2]]):s?i.push([e,t,u[E][2]]):i.push([e,t])}return t.points=i,t.spatialReference=r,t.hasZ=o,t.hasM=s,t}function pn(n,e,t=e.spatialReference,r=0){return s(t)&&s(Nn(n,n.spatialReference,e,t,r))}function Nn(n,e,t,r,l){const{paths:u,hasZ:o,hasM:s}=n,i=[];return Kn(u,o,s,e,i,r,l)?(t.paths=i,t.spatialReference=r,t.hasZ=o,t.hasM=s,t):null}function Gn({hasZ:n,spatialReference:e,paths:t},r,l=0){const o=Dn(e,ge),s=Fe[o][cn.WGS84_COMPARABLE_LON_LAT];if(u(s))return!1;const i=n?n=>n:n=>O(ke,n[0],n[1],l);for(const u of t){const n=[];for(const e of u){const t=[0,0,l];s(i(e),0,t,0),n.push(t)}r.push(n)}return!0}function hn({hasZ:n,spatialReference:e,rings:t},r,l=0){const o=Dn(e,ge),s=Fe[o][cn.WGS84_COMPARABLE_LON_LAT];if(u(s))return!1;const i=n?n=>n:n=>O(ke,n[0],n[1],l);for(const u of t){const n=[];for(const e of u){const t=[0,0,l];s(i(e),0,t,0),n.push(t)}r.push(n)}return!0}function Wn(n,e,t=e.spatialReference,r=0){return s(t)&&s(mn(n,n.spatialReference,e,t,r))}function mn(n,e,t,r,l){const{rings:u,hasZ:o,hasM:s}=n,i=[];return Kn(u,o,s,e,i,r,l)?(t.rings=i,t.spatialReference=r,t.hasZ=o,t.hasM=s,t):null}function Tn(n,e,t=e.spatialReference,r=0){return s(t)&&s(Fn(n,n.spatialReference,e,t,r))}function Fn(n,e,t,r,l){const{xmin:u,ymin:o,xmax:s,ymax:i,hasZ:a,hasM:c}=n;if(!gn(u,o,a?n.zmin:l,e,ke,r))return null;t.xmin=ke[0],t.ymin=ke[1],a&&(t.zmin=ke[2]);return gn(s,i,a?n.zmax:l,e,ke,r)?(t.xmax=ke[0],t.ymax=ke[1],a&&(t.zmax=ke[2]),c&&(t.mmin=n.mmin,t.mmax=n.mmax),t.spatialReference=r,t):null}function In(n,e,t){if(u(e)||u(t))return null;const r=new T({spatialReference:t});return Un(n,e,0,ke,t,0,1)?(r.x=ke[0],r.y=ke[1],r.z=ke[2],r):null}function dn(n,e,t){return Un(n,e,0,ke,t.spatialReference,0,1)?(t.x=ke[0],t.y=ke[1],t.z=ke[2],t):null}function Hn(n,e,t,r=0){ke[0]=n.x,ke[1]=n.y;const l=n.z;return ke[2]=void 0!==l?l:r,Un(ke,n.spatialReference,0,e,t,0,1)}function gn(n,e,t,r,l,u){return xe[0]=n,xe[1]=e,xe[2]=t,Un(xe,r,0,l,u,0,1)}function Bn(n,e,t,r){return!(u(e)||u(r)||n.length<2)&&(2===n.length&&(xe[0]=n[0],xe[1]=n[1],xe[2]=0,n=xe),Un(n,e,0,t,r,0,1))}function jn(n,e){ke[0]=n.x,ke[1]=n.y;const t=n.z;return ke[2]=void 0!==t?t:0,yn(ke,n.spatialReference,e)}function yn(n,e,t){return wn(n,e,t)}function wn(n,e,t){if(u(e))return!1;const r=Dn(e,ge),l=Fe[r][cn.WGS84_COMPARABLE_LON_LAT];return!u(l)&&(l(n,0,xe,0),t!==xe&&(t[0]=xe[0],t[1]=xe[1],t.length>2&&(t[2]=xe[2])),!0)}function Un(n,e,t,r,l,o,s=1){const i=Ie(e,l,je);if(u(i))return!1;if(i===Jn){if(n===r&&t===o)return!0;const e=t+3*s;for(let l=t,u=o;l<e;l++,u++)r[u]=n[l];return!0}const a=t+3*s;for(let u=t,c=o;u<a;u+=3,c+=3)i(n,u,r,c);return!0}function xn(n,e,t,r,l){_(ke,n),S(ze,n,e),Bn(ke,t,ke,l),Bn(ze,t,ze,l),P(r,ze,ke),L(r,r)}function Kn(n,e,t,r,l,u,o=0){const s=new Array;for(const a of n)for(const n of a)s.push(n[0],n[1],e?n[2]:o);if(!Un(s,r,0,s,u,0,s.length/3))return!1;let i=0;l.length=0;for(const a of n){const n=new Array;for(const r of a)e&&t?n.push([s[i++],s[i++],s[i++],r[3]]):e?n.push([s[i++],s[i++],s[i++]]):t?(n.push([s[i++],s[i++],r[2]]),i++):(n.push([s[i++],s[i++]]),i++);l.push(n)}return!0}function bn(n,e,t,r){if(u(e)||u(r))return!1;const l=de(e,r,ye);if(l.projector===Jn)return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],!0;if(u(l.projector))return!1;const{source:o,dest:i}=l;if(i.spatialReferenceId===cn.WEB_MERCATOR){const e=Fe[o.spatialReferenceId][cn.WGS84];return!u(e)&&(e(n,0,Ke,0),ee(Ke,0,t,0),t[3]=kn(Ke[1],n[2],n[3],y.radius),!0)}if(o.spatialReferenceId!==cn.WGS84&&o.spatialReferenceId!==cn.CGCS2000||i.spatialReferenceId!==cn.PLATE_CARREE)l.projector(n,0,t,0),t[3]=n[3]*o.metersPerUnit/i.metersPerUnit;else{const e=Fe[o.spatialReferenceId][cn.SPHERICAL_ECEF],r=Fe[cn.SPHERICAL_ECEF][cn.PLATE_CARREE];let u=n[3];s(e)&&s(r)&&(u=kn(n[1],n[2],n[3],y.radius)),l.projector(n,0,t,0),t[3]=u}return!0}function kn(n,e,t,r){const l=r+e;if(l<r/2||t>l)return Number.MAX_VALUE;const u=Math.abs(we*n)+Math.asin(t/l);return u>=Math.PI/2?Number.MAX_VALUE:t/Math.cos(u)}function zn(n,e,t,r){return null!=n&&(b(e,r)?(j(t,n),!0):(xe[0]=n[0],xe[1]=n[1],xe[2]=0,!!Un(xe,e,0,xe,r,0,1)&&(t[0]=xe[0],t[1]=xe[1],xe[0]=n[2],xe[1]=n[3],xe[2]=0,!!Un(xe,e,0,xe,r,0,1)&&(t[2]=xe[0],t[3]=xe[1],!0))))}function vn(n,e,t,r){if(u(e)||u(r))return!1;const l=Dn(e,ge),o=Dn(r,Be);if(l===o&&l!==cn.UNKNOWN||b(e,r))return t[0]=1,t[1]=1,t[2]=1,!0;if(l===cn.SPHERICAL_ECEF){const e=M(n),r=e/Math.sqrt(n[0]*n[0]+n[1]*n[1]),l=e/y.radius;if(o===cn.WEB_MERCATOR)return t[0]=r*l,t[1]=r*l,t[2]=1,!0;if(o===cn.WGS84||o===cn.CGCS2000){const n=re;return t[0]=n*r*l,t[1]=n*l,t[2]=1,!0}}else if(l===cn.PLATE_CARREE){if(o===cn.WGS84||o===cn.CGCS2000)return t[0]=re,t[1]=re,t[2]=1,!0;if(o===cn.WEB_MERCATOR){const e=n[1]/y.radius;return t[0]=1,t[1]=1/Math.cos(e),t[2]=1,!0}}return!1}function qn(n,e,t,r){if(u(n)||u(r))return!1;const l=Dn(n,ge),o=Dn(r,Be);if(l===o&&!Zn(o)&&(l!==cn.UNKNOWN||b(n,r)))return R(t,e),!0;if(Zn(o)){const n=Fe[l][cn.LON_LAT],r=Fe[cn.LON_LAT][o];return!u(n)&&!u(r)&&(n(e,0,Ke,0),r(Ke,0,be,0),Vn(we*Ke[0],we*Ke[1],t),t[12]=be[0],t[13]=be[1],t[14]=be[2],!0)}if((o===cn.WEB_MERCATOR||o===cn.PLATE_CARREE)&&(l===cn.WGS84||l===cn.CGCS2000&&o===cn.PLATE_CARREE||l===cn.SPHERICAL_ECEF||l===cn.WEB_MERCATOR)){const n=Fe[l][cn.LON_LAT],r=Fe[cn.LON_LAT][o];return!u(n)&&!u(r)&&(n(e,0,Ke,0),r(Ke,0,be,0),l===cn.SPHERICAL_ECEF?Xn(we*Ke[0],we*Ke[1],t):A(t),t[12]=be[0],t[13]=be[1],t[14]=be[2],!0)}return!1}function Zn(n){return n===cn.SPHERICAL_ECEF||n===cn.SPHERICAL_MARS_PCPF||n===cn.SPHERICAL_MOON_PCPF}function Vn(n,e,t){const r=Math.sin(n),l=Math.cos(n),u=Math.sin(e),o=Math.cos(e),s=t;return s[0]=-r,s[4]=-u*l,s[8]=o*l,s[12]=0,s[1]=l,s[5]=-u*r,s[9]=o*r,s[13]=0,s[2]=0,s[6]=o,s[10]=u,s[14]=0,s[3]=0,s[7]=0,s[11]=0,s[15]=1,s}function Xn(n,e,t){return Vn(n,e,t),f(t,t),t}function Dn(n,e){return e.spatialReference===n?e.spatialReferenceId:(e.spatialReference=n,"metersPerUnit"in e&&(e.metersPerUnit=c(n,1)),n.wkt===d.wkt?e.spatialReferenceId=cn.SPHERICAL_ECEF:z(n)?e.spatialReferenceId=cn.WGS84:v(n)?e.spatialReferenceId=cn.WEB_MERCATOR:q(n)?e.spatialReferenceId=cn.PLATE_CARREE:n.wkt===H.wkt?e.spatialReferenceId=cn.WGS84_ECEF:n.wkid===X.CGCS2000?e.spatialReferenceId=cn.CGCS2000:n.wkt===g.wkt?e.spatialReferenceId=cn.SPHERICAL_MARS_PCPF:n.wkt===B.wkt?e.spatialReferenceId=cn.SPHERICAL_MOON_PCPF:Z(n)?e.spatialReferenceId=cn.GCSMARS2000:V(n)?e.spatialReferenceId=cn.GCSMOON2000:e.spatialReferenceId=cn.UNKNOWN)}function Jn(n,e,t,r){n!==t&&(t[r++]=n[e++],t[r++]=n[e++],t[r]=n[e])}function Qn(n,e,t,r){t[r++]=Ue*(n[e++]/y.radius),t[r++]=Ue*(Math.PI/2-2*Math.atan(Math.exp(-n[e++]/y.radius))),t[r]=n[e]}function Yn(n,e,t,r){Qn(n,e,t,r),Se(t,r,t,r)}function $n(n,e,t,r){Qn(n,e,t,r),he(t,r,t,r)}function ne(n,t,r,l,u){const o=.4999999*Math.PI,s=e(we*n[t+1],-o,o),i=Math.sin(s);r[l++]=we*n[t]*u.radius,r[l++]=u.halfSemiMajorAxis*Math.log((1+i)/(1-i)),r[l]=n[t+2]}function ee(n,e,t,r){ne(n,e,t,r,y)}const te=y.radius*Math.PI/180,re=180/(y.radius*Math.PI);function le(n,e,t,r){t[r]=n[e]*te,t[r+1]=n[e+1]*te,t[r+2]=n[e+2]}function ue(n,e,t,r){t[r]=n[e]*re,t[r+1]=n[e+1]*re,t[r+2]=n[e+2]}function oe(n,e,t,r){Qn(n,e,t,r),le(t,r,t,r)}function se(n,e,t,r){We(n,e,t,r),le(t,r,t,r)}function ie(n,e,t,r){Oe(n,e,t,r),le(t,r,t,r)}function ae(n,e,t,r){ue(n,e,t,r),Se(t,r,t,r)}function ce(n,e,t,r){ue(n,e,t,r),ee(t,r,t,r)}function Ee(n,e,t,r){ue(n,e,t,r),he(t,r,t,r)}function Ce(n){if(u(n))return!1;const e=Dn(n,ge);return!!Fe[e][cn.WGS84_COMPARABLE_LON_LAT]}function Re(n,e,t,r){const l=Math.cos(t);n[0]=Math.cos(e)*l*r,n[1]=Math.sin(e)*l*r,n[2]=Math.sin(t)*r}function Ae(n,e,t,r,l){const u=l+n[e+2],o=we*n[e+1],s=we*n[e],i=Math.cos(o);t[r++]=Math.cos(s)*i*u,t[r++]=Math.sin(s)*i*u,t[r]=Math.sin(o)*u}function fe(n,e,t,r){Ae(n,e,t,r,w.radius)}function _e(n,e,t,r){Ae(n,e,t,r,U.radius)}function Se(n,e,t,r){Ae(n,e,t,r,y.radius)}function Pe(n,e,t,r,u){const o=n[e],s=n[e+1],i=n[e+2],a=Math.sqrt(o*o+s*s+i*i),c=l(i/(0===a?1:a)),E=Math.atan2(s,o);t[r++]=Ue*E,t[r++]=Ue*c,t[r]=a-u}function Le(n,e,t,r){Pe(n,e,t,r,w.radius)}function Me(n,e,t,r){Pe(n,e,t,r,U.radius)}function Oe(n,e,t,r){Pe(n,e,t,r,y.radius)}function pe(n,e,t,r){Oe(n,e,t,r),ee(t,r,t,r)}function Ne(n,e,t,r){Oe(n,e,t,r),he(t,r,t,r)}function Ge(n,e,t,r,l){const u=we*n[e],o=we*n[e+1],s=n[e+2],i=Math.sin(o),a=Math.cos(o),c=l.radius/Math.sqrt(1-l.eccentricitySquared*i*i);t[r++]=(c+s)*a*Math.cos(u),t[r++]=(c+s)*a*Math.sin(u),t[r++]=(c*(1-l.eccentricitySquared)+s)*i}function he(n,e,t,r){Ge(n,e,t,r,y)}function We(n,e,t,r){const l=x,u=n[e],o=n[e+1],s=n[e+2];let i,a,c,E,C,R,A,f,_,S,P,L,M,O,p,N,G,h,W,m,T;i=Math.abs(s),a=u*u+o*o,c=Math.sqrt(a),E=a+s*s,C=Math.sqrt(E),m=Math.atan2(o,u),R=s*s/E,A=a/E,O=l.a2/C,p=l.a3-l.a4/C,A>.3?(f=i/C*(1+A*(l.a1+O+R*p)/C),W=Math.asin(f),S=f*f,_=Math.sqrt(1-S)):(_=c/C*(1-R*(l.a5-O-A*p)/C),W=Math.acos(_),S=1-_*_,f=Math.sqrt(S)),P=1-y.eccentricitySquared*S,L=y.radius/Math.sqrt(P),M=l.a6*L,O=c-L*_,p=i-M*f,G=_*O+f*p,N=_*p-f*O,h=N/(M/P+G),W+=h,T=G+N*h/2,s<0&&(W=-W),t[r++]=Ue*m,t[r++]=Ue*W,t[r]=T}function me(n,e,t,r){We(n,e,t,r),Se(t,r,t,r)}function Te(n,e,t,r){We(n,e,t,r),ee(t,r,t,r)}const Fe={[cn.WGS84]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:ee,[cn.PLATE_CARREE]:le,[cn.WGS84]:Jn,[cn.WGS84_ECEF]:he},[cn.CGCS2000]:{[cn.CGCS2000]:Jn,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:le,[cn.WGS84]:null,[cn.WGS84_ECEF]:he},[cn.GCSMARS2000]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:Jn,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:_e,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.GCSMOON2000]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:Jn,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:fe,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.WEB_MERCATOR]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Qn,[cn.WGS84_COMPARABLE_LON_LAT]:Qn,[cn.SPHERICAL_ECEF]:Yn,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:Jn,[cn.PLATE_CARREE]:oe,[cn.WGS84]:Qn,[cn.WGS84_ECEF]:$n},[cn.WGS84_ECEF]:{[cn.CGCS2000]:We,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:We,[cn.WGS84_COMPARABLE_LON_LAT]:We,[cn.SPHERICAL_ECEF]:me,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:Te,[cn.PLATE_CARREE]:se,[cn.WGS84]:We,[cn.WGS84_ECEF]:Jn},[cn.SPHERICAL_ECEF]:{[cn.CGCS2000]:Oe,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Oe,[cn.WGS84_COMPARABLE_LON_LAT]:Oe,[cn.SPHERICAL_ECEF]:Jn,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:pe,[cn.PLATE_CARREE]:ie,[cn.WGS84]:Oe,[cn.WGS84_ECEF]:Ne},[cn.SPHERICAL_MARS_PCPF]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:Me,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Me,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:Jn,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.SPHERICAL_MOON_PCPF]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:Le,[cn.LON_LAT]:Le,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:Jn,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.UNKNOWN]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:null,[cn.WGS84_COMPARABLE_LON_LAT]:null,[cn.SPHERICAL_ECEF]:null,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:Jn,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:null,[cn.WGS84]:null,[cn.WGS84_ECEF]:null},[cn.LON_LAT]:{[cn.CGCS2000]:Jn,[cn.GCSMARS2000]:Jn,[cn.GCSMOON2000]:Jn,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:_e,[cn.SPHERICAL_MOON_PCPF]:fe,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:ee,[cn.PLATE_CARREE]:le,[cn.WGS84]:Jn,[cn.WGS84_ECEF]:he},[cn.WGS84_COMPARABLE_LON_LAT]:{[cn.CGCS2000]:null,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:Jn,[cn.WGS84_COMPARABLE_LON_LAT]:Jn,[cn.SPHERICAL_ECEF]:Se,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:null,[cn.PLATE_CARREE]:le,[cn.WGS84]:Jn,[cn.WGS84_ECEF]:he},[cn.PLATE_CARREE]:{[cn.CGCS2000]:ue,[cn.GCSMARS2000]:null,[cn.GCSMOON2000]:null,[cn.LON_LAT]:ue,[cn.WGS84_COMPARABLE_LON_LAT]:ue,[cn.SPHERICAL_ECEF]:ae,[cn.SPHERICAL_MARS_PCPF]:null,[cn.SPHERICAL_MOON_PCPF]:null,[cn.UNKNOWN]:null,[cn.WEB_MERCATOR]:ce,[cn.PLATE_CARREE]:Jn,[cn.WGS84]:ue,[cn.WGS84_ECEF]:Ee}};function Ie(n,e,t=He()){return u(n)||u(e)?null:de(n,e,t).projector}function de(n,e,t){if(u(n)||u(e)||t.source.spatialReference===n&&t.dest.spatialReference===e)return t;const r=Dn(n,t.source),l=Dn(e,t.dest);return r===cn.UNKNOWN&&l===cn.UNKNOWN?b(n,e)?t.projector=Jn:t.projector=null:t.projector=Fe[r][l],t}function He(){return{source:{spatialReference:null,spatialReferenceId:cn.UNKNOWN,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:cn.UNKNOWN,metersPerUnit:1},projector:Jn}}const ge={spatialReference:null,spatialReferenceId:cn.UNKNOWN},Be={spatialReference:null,spatialReferenceId:cn.UNKNOWN},je=He(),ye=He(),we=t(1),Ue=r(1),xe=p(),Ke=p(),be=p(),ke=p(),ze=p();export{Ce as canProjectToWGS84ComparableLonLat,An as canProjectWithoutEngine,Vn as computeENUToSphericalPCPFLocalRotation,Xn as computeSphericalPCPFToENULocalRotation,qn as computeTranslationToOriginAndRotation,_n as getProjectorName,on as getTransformation,sn as getTransformations,fn as initializeProjection,en as isLoaded,tn as load,vn as localLinearScaleFactors,Re as lonLatToSphericalPCPF,ne as lonLatToWebMercatorComparable,rn as project,zn as projectBoundingRect,bn as projectBoundingSphere,Un as projectBuffer,xn as projectDirection,Tn as projectExtent,ln as projectMany,Mn as projectMultipoint,un as projectOrLoad,Pn as projectPoint,Hn as projectPointToVector,jn as projectPointToWGS84ComparableLonLat,Wn as projectPolygon,hn as projectPolygonToWGS84ComparableLonLat,pn as projectPolyline,Gn as projectPolylineToWGS84ComparableLonLat,dn as projectVectorToDehydratedPoint,In as projectVectorToPoint,Bn as projectVectorToVector,yn as projectVectorToWGS84ComparableLonLat,Sn as projectWithoutEngine,gn as projectXYZToVector,Pe as sphericalPCPFtoLonLatElevation,Cn as test,Rn as tryProjectWithZConversion,En as unload};