@itwin/core-frontend 3.0.0-extension.0 → 3.1.0-dev.5

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 (1302) hide show
  1. package/CHANGELOG.md +89 -1
  2. package/LICENSE.md +1 -1
  3. package/lib/cjs/AccuSnap.js +3 -3
  4. package/lib/cjs/AccuSnap.js.map +1 -1
  5. package/lib/cjs/ApproximateTerrainHeights.d.ts.map +1 -1
  6. package/lib/cjs/ApproximateTerrainHeights.js +10 -5
  7. package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
  8. package/lib/cjs/BackgroundMapGeometry.d.ts +1 -1
  9. package/lib/cjs/BackgroundMapGeometry.d.ts.map +1 -1
  10. package/lib/cjs/BackgroundMapGeometry.js +2 -2
  11. package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
  12. package/lib/cjs/BingLocation.js +2 -2
  13. package/lib/cjs/BingLocation.js.map +1 -1
  14. package/lib/cjs/CheckpointConnection.js +1 -1
  15. package/lib/cjs/CheckpointConnection.js.map +1 -1
  16. package/lib/cjs/ContextRealityModelState.js +1 -1
  17. package/lib/cjs/ContextRealityModelState.js.map +1 -1
  18. package/lib/cjs/DisplayStyleState.d.ts +10 -163
  19. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  20. package/lib/cjs/DisplayStyleState.js +69 -350
  21. package/lib/cjs/DisplayStyleState.js.map +1 -1
  22. package/lib/cjs/DrawingViewState.d.ts +2 -2
  23. package/lib/cjs/DrawingViewState.d.ts.map +1 -1
  24. package/lib/cjs/DrawingViewState.js +3 -3
  25. package/lib/cjs/DrawingViewState.js.map +1 -1
  26. package/lib/cjs/ElementLocateManager.d.ts +5 -0
  27. package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
  28. package/lib/cjs/ElementLocateManager.js +12 -2
  29. package/lib/cjs/ElementLocateManager.js.map +1 -1
  30. package/lib/cjs/EmphasizeElements.d.ts.map +1 -1
  31. package/lib/cjs/EmphasizeElements.js +14 -4
  32. package/lib/cjs/EmphasizeElements.js.map +1 -1
  33. package/lib/cjs/EnvironmentDecorations.d.ts +39 -0
  34. package/lib/cjs/EnvironmentDecorations.d.ts.map +1 -0
  35. package/lib/cjs/EnvironmentDecorations.js +200 -0
  36. package/lib/cjs/EnvironmentDecorations.js.map +1 -0
  37. package/lib/cjs/FrontendHubAccess.d.ts +11 -7
  38. package/lib/cjs/FrontendHubAccess.d.ts.map +1 -1
  39. package/lib/cjs/FrontendHubAccess.js.map +1 -1
  40. package/lib/cjs/FrontendLoggerCategory.d.ts +2 -8
  41. package/lib/cjs/FrontendLoggerCategory.d.ts.map +1 -1
  42. package/lib/cjs/FrontendLoggerCategory.js +2 -8
  43. package/lib/cjs/FrontendLoggerCategory.js.map +1 -1
  44. package/lib/cjs/HitDetail.js +7 -7
  45. package/lib/cjs/HitDetail.js.map +1 -1
  46. package/lib/cjs/IModelApp.d.ts +31 -24
  47. package/lib/cjs/IModelApp.d.ts.map +1 -1
  48. package/lib/cjs/IModelApp.js +35 -36
  49. package/lib/cjs/IModelApp.js.map +1 -1
  50. package/lib/cjs/IModelConnection.d.ts +4 -6
  51. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  52. package/lib/cjs/IModelConnection.js +6 -11
  53. package/lib/cjs/IModelConnection.js.map +1 -1
  54. package/lib/cjs/IModeljs-css.d.ts.map +1 -1
  55. package/lib/cjs/IModeljs-css.js +8 -6
  56. package/lib/cjs/IModeljs-css.js.map +1 -1
  57. package/lib/cjs/ImageUtil.d.ts +3 -3
  58. package/lib/cjs/ImageUtil.d.ts.map +1 -1
  59. package/lib/cjs/ImageUtil.js +7 -4
  60. package/lib/cjs/ImageUtil.js.map +1 -1
  61. package/lib/cjs/LocalhostIpcApp.d.ts +2 -1
  62. package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
  63. package/lib/cjs/LocalhostIpcApp.js +21 -7
  64. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  65. package/lib/cjs/Marker.d.ts +9 -2
  66. package/lib/cjs/Marker.d.ts.map +1 -1
  67. package/lib/cjs/Marker.js +33 -5
  68. package/lib/cjs/Marker.js.map +1 -1
  69. package/lib/cjs/ModelState.js +1 -1
  70. package/lib/cjs/ModelState.js.map +1 -1
  71. package/lib/cjs/NativeApp.d.ts +3 -38
  72. package/lib/cjs/NativeApp.d.ts.map +1 -1
  73. package/lib/cjs/NativeApp.js +4 -73
  74. package/lib/cjs/NativeApp.js.map +1 -1
  75. package/lib/cjs/NoRenderApp.d.ts +0 -1
  76. package/lib/cjs/NoRenderApp.d.ts.map +1 -1
  77. package/lib/cjs/NoRenderApp.js +0 -1
  78. package/lib/cjs/NoRenderApp.js.map +1 -1
  79. package/lib/cjs/NotificationManager.d.ts +3 -1
  80. package/lib/cjs/NotificationManager.d.ts.map +1 -1
  81. package/lib/cjs/NotificationManager.js +2 -0
  82. package/lib/cjs/NotificationManager.js.map +1 -1
  83. package/lib/cjs/RealityDataSource.d.ts +59 -29
  84. package/lib/cjs/RealityDataSource.d.ts.map +1 -1
  85. package/lib/cjs/RealityDataSource.js +247 -94
  86. package/lib/cjs/RealityDataSource.js.map +1 -1
  87. package/lib/cjs/RenderScheduleState.d.ts +2 -0
  88. package/lib/cjs/RenderScheduleState.d.ts.map +1 -1
  89. package/lib/cjs/RenderScheduleState.js +10 -5
  90. package/lib/cjs/RenderScheduleState.js.map +1 -1
  91. package/lib/cjs/SheetViewState.d.ts +2 -2
  92. package/lib/cjs/SheetViewState.d.ts.map +1 -1
  93. package/lib/cjs/SheetViewState.js +8 -9
  94. package/lib/cjs/SheetViewState.js.map +1 -1
  95. package/lib/cjs/SpatialViewState.d.ts +10 -2
  96. package/lib/cjs/SpatialViewState.d.ts.map +1 -1
  97. package/lib/cjs/SpatialViewState.js +12 -2
  98. package/lib/cjs/SpatialViewState.js.map +1 -1
  99. package/lib/cjs/SubCategoriesCache.js +1 -1
  100. package/lib/cjs/SubCategoriesCache.js.map +1 -1
  101. package/lib/cjs/Tiles.d.ts +11 -1
  102. package/lib/cjs/Tiles.d.ts.map +1 -1
  103. package/lib/cjs/Tiles.js +7 -0
  104. package/lib/cjs/Tiles.js.map +1 -1
  105. package/lib/cjs/TwoWayViewportSync.d.ts +35 -6
  106. package/lib/cjs/TwoWayViewportSync.d.ts.map +1 -1
  107. package/lib/cjs/TwoWayViewportSync.js +51 -11
  108. package/lib/cjs/TwoWayViewportSync.js.map +1 -1
  109. package/lib/cjs/UserPreferences.d.ts +72 -0
  110. package/lib/cjs/UserPreferences.d.ts.map +1 -0
  111. package/lib/cjs/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
  112. package/lib/cjs/UserPreferences.js.map +1 -0
  113. package/lib/cjs/ViewContext.d.ts +3 -1
  114. package/lib/cjs/ViewContext.d.ts.map +1 -1
  115. package/lib/cjs/ViewContext.js +4 -0
  116. package/lib/cjs/ViewContext.js.map +1 -1
  117. package/lib/cjs/ViewCreator2d.js +3 -3
  118. package/lib/cjs/ViewCreator2d.js.map +1 -1
  119. package/lib/cjs/ViewCreator3d.d.ts +1 -1
  120. package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
  121. package/lib/cjs/ViewCreator3d.js +4 -5
  122. package/lib/cjs/ViewCreator3d.js.map +1 -1
  123. package/lib/cjs/ViewManager.d.ts +6 -6
  124. package/lib/cjs/ViewManager.d.ts.map +1 -1
  125. package/lib/cjs/ViewManager.js +13 -13
  126. package/lib/cjs/ViewManager.js.map +1 -1
  127. package/lib/cjs/ViewState.d.ts +11 -5
  128. package/lib/cjs/ViewState.d.ts.map +1 -1
  129. package/lib/cjs/ViewState.js +18 -63
  130. package/lib/cjs/ViewState.js.map +1 -1
  131. package/lib/cjs/ViewingSpace.js +1 -1
  132. package/lib/cjs/ViewingSpace.js.map +1 -1
  133. package/lib/cjs/Viewport.d.ts +57 -11
  134. package/lib/cjs/Viewport.d.ts.map +1 -1
  135. package/lib/cjs/Viewport.js +55 -31
  136. package/lib/cjs/Viewport.js.map +1 -1
  137. package/lib/cjs/core-frontend.d.ts +17 -31
  138. package/lib/cjs/core-frontend.d.ts.map +1 -1
  139. package/lib/cjs/core-frontend.js +17 -31
  140. package/lib/cjs/core-frontend.js.map +1 -1
  141. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
  142. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
  143. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
  144. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  145. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
  146. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  147. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +20 -5
  148. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  149. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts +26 -3
  150. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  151. package/lib/cjs/quantity-formatting/QuantityFormatter.js +46 -7
  152. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  153. package/lib/cjs/render/FeatureSymbology.d.ts.map +1 -1
  154. package/lib/cjs/render/FeatureSymbology.js +3 -3
  155. package/lib/cjs/render/FeatureSymbology.js.map +1 -1
  156. package/lib/cjs/render/GraphicBranch.d.ts +18 -2
  157. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  158. package/lib/cjs/render/GraphicBranch.js +9 -1
  159. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  160. package/lib/cjs/render/GraphicBuilder.d.ts +7 -1
  161. package/lib/cjs/render/GraphicBuilder.d.ts.map +1 -1
  162. package/lib/cjs/render/GraphicBuilder.js.map +1 -1
  163. package/lib/cjs/render/MockRender.d.ts +3 -1
  164. package/lib/cjs/render/MockRender.d.ts.map +1 -1
  165. package/lib/cjs/render/MockRender.js.map +1 -1
  166. package/lib/cjs/render/RenderMaterial.d.ts +61 -0
  167. package/lib/cjs/render/RenderMaterial.d.ts.map +1 -0
  168. package/lib/cjs/render/RenderMaterial.js +10 -0
  169. package/lib/cjs/render/RenderMaterial.js.map +1 -0
  170. package/lib/cjs/render/RenderMemory.d.ts +21 -15
  171. package/lib/cjs/render/RenderMemory.d.ts.map +1 -1
  172. package/lib/cjs/render/RenderMemory.js +21 -15
  173. package/lib/cjs/render/RenderMemory.js.map +1 -1
  174. package/lib/cjs/render/RenderSystem.d.ts +44 -7
  175. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  176. package/lib/cjs/render/RenderSystem.js +32 -9
  177. package/lib/cjs/render/RenderSystem.js.map +1 -1
  178. package/lib/cjs/render/RenderTarget.d.ts +10 -2
  179. package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
  180. package/lib/cjs/render/RenderTarget.js +2 -1
  181. package/lib/cjs/render/RenderTarget.js.map +1 -1
  182. package/lib/cjs/render/RenderTexture.d.ts +2 -17
  183. package/lib/cjs/render/RenderTexture.d.ts.map +1 -1
  184. package/lib/cjs/render/RenderTexture.js +0 -17
  185. package/lib/cjs/render/RenderTexture.js.map +1 -1
  186. package/lib/cjs/render/primitives/EdgeParams.d.ts +84 -0
  187. package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -0
  188. package/lib/cjs/render/primitives/EdgeParams.js +220 -0
  189. package/lib/cjs/render/primitives/EdgeParams.js.map +1 -0
  190. package/lib/cjs/render/primitives/PointStringParams.d.ts +16 -0
  191. package/lib/cjs/render/primitives/PointStringParams.d.ts.map +1 -0
  192. package/lib/cjs/render/primitives/PointStringParams.js +43 -0
  193. package/lib/cjs/render/primitives/PointStringParams.js.map +1 -0
  194. package/lib/cjs/render/primitives/PolylineParams.d.ts +44 -0
  195. package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -0
  196. package/lib/cjs/render/primitives/PolylineParams.js +205 -0
  197. package/lib/cjs/render/primitives/PolylineParams.js.map +1 -0
  198. package/lib/cjs/render/primitives/Primitives.d.ts +1 -1
  199. package/lib/cjs/render/primitives/Primitives.d.ts.map +1 -1
  200. package/lib/cjs/render/primitives/Primitives.js.map +1 -1
  201. package/lib/cjs/render/primitives/SurfaceParams.d.ts +46 -0
  202. package/lib/cjs/render/primitives/SurfaceParams.d.ts.map +1 -0
  203. package/lib/cjs/render/primitives/SurfaceParams.js +42 -0
  204. package/lib/cjs/render/primitives/SurfaceParams.js.map +1 -0
  205. package/lib/cjs/render/primitives/VertexTable.d.ts +4 -123
  206. package/lib/cjs/render/primitives/VertexTable.d.ts.map +1 -1
  207. package/lib/cjs/render/primitives/VertexTable.js +16 -352
  208. package/lib/cjs/render/primitives/VertexTable.js.map +1 -1
  209. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
  210. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  211. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js +2 -1
  212. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  213. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  214. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +1 -0
  215. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  216. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
  217. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  218. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +3 -3
  219. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  220. package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
  221. package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
  222. package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
  223. package/lib/cjs/render/webgl/AttributeMap.js +5 -5
  224. package/lib/cjs/render/webgl/BackgroundMapDrape.js +1 -1
  225. package/lib/cjs/render/webgl/BackgroundMapDrape.js.map +1 -1
  226. package/lib/cjs/render/webgl/BranchUniforms.d.ts.map +1 -1
  227. package/lib/cjs/render/webgl/BranchUniforms.js +8 -5
  228. package/lib/cjs/render/webgl/BranchUniforms.js.map +1 -1
  229. package/lib/cjs/render/webgl/CachedGeometry.d.ts +16 -11
  230. package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
  231. package/lib/cjs/render/webgl/CachedGeometry.js +26 -23
  232. package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
  233. package/lib/cjs/render/webgl/DrawCommand.d.ts +2 -3
  234. package/lib/cjs/render/webgl/DrawCommand.d.ts.map +1 -1
  235. package/lib/cjs/render/webgl/DrawCommand.js +6 -4
  236. package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
  237. package/lib/cjs/render/webgl/EdgeGeometry.d.ts +73 -0
  238. package/lib/cjs/render/webgl/EdgeGeometry.d.ts.map +1 -0
  239. package/lib/cjs/render/webgl/EdgeGeometry.js +141 -0
  240. package/lib/cjs/render/webgl/EdgeGeometry.js.map +1 -0
  241. package/lib/cjs/render/webgl/FeatureOverrides.d.ts +2 -0
  242. package/lib/cjs/render/webgl/FeatureOverrides.d.ts.map +1 -1
  243. package/lib/cjs/render/webgl/FeatureOverrides.js +11 -3
  244. package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
  245. package/lib/cjs/render/webgl/FloatRGBA.d.ts.map +1 -1
  246. package/lib/cjs/render/webgl/FloatRGBA.js +13 -11
  247. package/lib/cjs/render/webgl/FloatRGBA.js.map +1 -1
  248. package/lib/cjs/render/webgl/Graphic.d.ts +13 -0
  249. package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
  250. package/lib/cjs/render/webgl/Graphic.js +41 -3
  251. package/lib/cjs/render/webgl/Graphic.js.map +1 -1
  252. package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
  253. package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
  254. package/lib/cjs/render/webgl/IndexedEdgeGeometry.js +90 -0
  255. package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -0
  256. package/lib/cjs/render/webgl/InstancedGeometry.d.ts +6 -5
  257. package/lib/cjs/render/webgl/InstancedGeometry.d.ts.map +1 -1
  258. package/lib/cjs/render/webgl/InstancedGeometry.js +2 -1
  259. package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
  260. package/lib/cjs/render/webgl/LightingUniforms.d.ts +1 -0
  261. package/lib/cjs/render/webgl/LightingUniforms.d.ts.map +1 -1
  262. package/lib/cjs/render/webgl/LightingUniforms.js +4 -1
  263. package/lib/cjs/render/webgl/LightingUniforms.js.map +1 -1
  264. package/lib/cjs/render/webgl/Material.d.ts +1 -1
  265. package/lib/cjs/render/webgl/Material.d.ts.map +1 -1
  266. package/lib/cjs/render/webgl/Material.js +2 -0
  267. package/lib/cjs/render/webgl/Material.js.map +1 -1
  268. package/lib/cjs/render/webgl/Mesh.d.ts +8 -162
  269. package/lib/cjs/render/webgl/Mesh.d.ts.map +1 -1
  270. package/lib/cjs/render/webgl/Mesh.js +18 -458
  271. package/lib/cjs/render/webgl/Mesh.js.map +1 -1
  272. package/lib/cjs/render/webgl/MeshData.d.ts +38 -0
  273. package/lib/cjs/render/webgl/MeshData.d.ts.map +1 -0
  274. package/lib/cjs/render/webgl/MeshData.js +66 -0
  275. package/lib/cjs/render/webgl/MeshData.js.map +1 -0
  276. package/lib/cjs/render/webgl/MeshGeometry.d.ts +38 -0
  277. package/lib/cjs/render/webgl/MeshGeometry.d.ts.map +1 -0
  278. package/lib/cjs/render/webgl/MeshGeometry.js +59 -0
  279. package/lib/cjs/render/webgl/MeshGeometry.js.map +1 -0
  280. package/lib/cjs/render/webgl/PlanarClassifier.d.ts.map +1 -1
  281. package/lib/cjs/render/webgl/PlanarClassifier.js +8 -4
  282. package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
  283. package/lib/cjs/render/webgl/PlanarGrid.d.ts +2 -3
  284. package/lib/cjs/render/webgl/PlanarGrid.d.ts.map +1 -1
  285. package/lib/cjs/render/webgl/PlanarGrid.js +3 -3
  286. package/lib/cjs/render/webgl/PlanarGrid.js.map +1 -1
  287. package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  288. package/lib/cjs/render/webgl/PlanarTextureProjection.js +1 -0
  289. package/lib/cjs/render/webgl/PlanarTextureProjection.js.map +1 -1
  290. package/lib/cjs/render/webgl/PointCloud.d.ts +2 -2
  291. package/lib/cjs/render/webgl/PointCloud.d.ts.map +1 -1
  292. package/lib/cjs/render/webgl/PointCloud.js +2 -2
  293. package/lib/cjs/render/webgl/PointCloud.js.map +1 -1
  294. package/lib/cjs/render/webgl/PointString.d.ts +3 -3
  295. package/lib/cjs/render/webgl/PointString.d.ts.map +1 -1
  296. package/lib/cjs/render/webgl/PointString.js +1 -1
  297. package/lib/cjs/render/webgl/PointString.js.map +1 -1
  298. package/lib/cjs/render/webgl/Polyline.d.ts +3 -3
  299. package/lib/cjs/render/webgl/Polyline.d.ts.map +1 -1
  300. package/lib/cjs/render/webgl/Polyline.js +6 -6
  301. package/lib/cjs/render/webgl/Polyline.js.map +1 -1
  302. package/lib/cjs/render/webgl/Primitive.d.ts +2 -2
  303. package/lib/cjs/render/webgl/Primitive.d.ts.map +1 -1
  304. package/lib/cjs/render/webgl/Primitive.js +5 -5
  305. package/lib/cjs/render/webgl/Primitive.js.map +1 -1
  306. package/lib/cjs/render/webgl/RealityMesh.d.ts +2 -2
  307. package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
  308. package/lib/cjs/render/webgl/RealityMesh.js +9 -9
  309. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  310. package/lib/cjs/render/webgl/RenderCommands.d.ts +6 -2
  311. package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
  312. package/lib/cjs/render/webgl/RenderCommands.js +81 -48
  313. package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
  314. package/lib/cjs/render/webgl/RenderFlags.d.ts +48 -1
  315. package/lib/cjs/render/webgl/RenderFlags.d.ts.map +1 -1
  316. package/lib/cjs/render/webgl/RenderFlags.js +64 -2
  317. package/lib/cjs/render/webgl/RenderFlags.js.map +1 -1
  318. package/lib/cjs/render/webgl/SceneCompositor.js +10 -9
  319. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  320. package/lib/cjs/render/webgl/ScreenSpaceEffect.js +1 -1
  321. package/lib/cjs/render/webgl/ShaderBuilder.d.ts +23 -20
  322. package/lib/cjs/render/webgl/ShaderBuilder.d.ts.map +1 -1
  323. package/lib/cjs/render/webgl/ShaderBuilder.js +38 -32
  324. package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
  325. package/lib/cjs/render/webgl/ShaderProgram.d.ts +1 -1
  326. package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
  327. package/lib/cjs/render/webgl/ShaderProgram.js +4 -4
  328. package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
  329. package/lib/cjs/render/webgl/SolarShadowMap.d.ts.map +1 -1
  330. package/lib/cjs/render/webgl/SolarShadowMap.js +4 -3
  331. package/lib/cjs/render/webgl/SolarShadowMap.js.map +1 -1
  332. package/lib/cjs/render/webgl/SurfaceGeometry.d.ts +54 -0
  333. package/lib/cjs/render/webgl/SurfaceGeometry.d.ts.map +1 -0
  334. package/lib/cjs/render/webgl/SurfaceGeometry.js +248 -0
  335. package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -0
  336. package/lib/cjs/render/webgl/System.d.ts +13 -10
  337. package/lib/cjs/render/webgl/System.d.ts.map +1 -1
  338. package/lib/cjs/render/webgl/System.js +75 -21
  339. package/lib/cjs/render/webgl/System.js.map +1 -1
  340. package/lib/cjs/render/webgl/Target.d.ts +13 -1
  341. package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
  342. package/lib/cjs/render/webgl/Target.js +88 -2
  343. package/lib/cjs/render/webgl/Target.js.map +1 -1
  344. package/lib/cjs/render/webgl/Technique.d.ts.map +1 -1
  345. package/lib/cjs/render/webgl/Technique.js +112 -119
  346. package/lib/cjs/render/webgl/Technique.js.map +1 -1
  347. package/lib/cjs/render/webgl/TechniqueFlags.d.ts +7 -1
  348. package/lib/cjs/render/webgl/TechniqueFlags.d.ts.map +1 -1
  349. package/lib/cjs/render/webgl/TechniqueFlags.js +10 -1
  350. package/lib/cjs/render/webgl/TechniqueFlags.js.map +1 -1
  351. package/lib/cjs/render/webgl/TechniqueId.d.ts +29 -28
  352. package/lib/cjs/render/webgl/TechniqueId.d.ts.map +1 -1
  353. package/lib/cjs/render/webgl/TechniqueId.js +7 -7
  354. package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
  355. package/lib/cjs/render/webgl/Texture.d.ts +15 -12
  356. package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
  357. package/lib/cjs/render/webgl/Texture.js +26 -23
  358. package/lib/cjs/render/webgl/Texture.js.map +1 -1
  359. package/lib/cjs/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
  360. package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js +83 -18
  361. package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  362. package/lib/cjs/render/webgl/glsl/Animation.js +1 -1
  363. package/lib/cjs/render/webgl/glsl/Blur.js +1 -1
  364. package/lib/cjs/render/webgl/glsl/ClearPickAndColor.js +2 -2
  365. package/lib/cjs/render/webgl/glsl/ClearTranslucent.js +2 -2
  366. package/lib/cjs/render/webgl/glsl/Color.js +1 -1
  367. package/lib/cjs/render/webgl/glsl/Combine3Textures.js +1 -1
  368. package/lib/cjs/render/webgl/glsl/CombineTextures.js +1 -1
  369. package/lib/cjs/render/webgl/glsl/Composite.js +1 -1
  370. package/lib/cjs/render/webgl/glsl/CopyColor.d.ts.map +1 -1
  371. package/lib/cjs/render/webgl/glsl/CopyColor.js +17 -2
  372. package/lib/cjs/render/webgl/glsl/CopyColor.js.map +1 -1
  373. package/lib/cjs/render/webgl/glsl/CopyPickBuffers.js +2 -2
  374. package/lib/cjs/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
  375. package/lib/cjs/render/webgl/glsl/CopyStencil.js +10 -13
  376. package/lib/cjs/render/webgl/glsl/CopyStencil.js.map +1 -1
  377. package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js +2 -2
  378. package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  379. package/lib/cjs/render/webgl/glsl/Edge.d.ts +2 -1
  380. package/lib/cjs/render/webgl/glsl/Edge.d.ts.map +1 -1
  381. package/lib/cjs/render/webgl/glsl/Edge.js +132 -14
  382. package/lib/cjs/render/webgl/glsl/Edge.js.map +1 -1
  383. package/lib/cjs/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
  384. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js +43 -21
  385. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  386. package/lib/cjs/render/webgl/glsl/Fragment.d.ts.map +1 -1
  387. package/lib/cjs/render/webgl/glsl/Fragment.js +19 -11
  388. package/lib/cjs/render/webgl/glsl/Fragment.js.map +1 -1
  389. package/lib/cjs/render/webgl/glsl/Lighting.d.ts.map +1 -1
  390. package/lib/cjs/render/webgl/glsl/Lighting.js +16 -2
  391. package/lib/cjs/render/webgl/glsl/Lighting.js.map +1 -1
  392. package/lib/cjs/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
  393. package/lib/cjs/render/webgl/glsl/LookupTable.d.ts +4 -2
  394. package/lib/cjs/render/webgl/glsl/LookupTable.d.ts.map +1 -1
  395. package/lib/cjs/render/webgl/glsl/LookupTable.js +7 -3
  396. package/lib/cjs/render/webgl/glsl/LookupTable.js.map +1 -1
  397. package/lib/cjs/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
  398. package/lib/cjs/render/webgl/glsl/PlanarClassification.js +13 -4
  399. package/lib/cjs/render/webgl/glsl/PlanarClassification.js.map +1 -1
  400. package/lib/cjs/render/webgl/glsl/PlanarGrid.js +2 -2
  401. package/lib/cjs/render/webgl/glsl/PlanarGrid.js.map +1 -1
  402. package/lib/cjs/render/webgl/glsl/PointCloud.js +2 -2
  403. package/lib/cjs/render/webgl/glsl/PointCloud.js.map +1 -1
  404. package/lib/cjs/render/webgl/glsl/PointString.js +1 -1
  405. package/lib/cjs/render/webgl/glsl/PointString.js.map +1 -1
  406. package/lib/cjs/render/webgl/glsl/Polyline.js +1 -1
  407. package/lib/cjs/render/webgl/glsl/Polyline.js.map +1 -1
  408. package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  409. package/lib/cjs/render/webgl/glsl/RealityMesh.js +9 -6
  410. package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
  411. package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
  412. package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  413. package/lib/cjs/render/webgl/glsl/SkyBox.js +2 -2
  414. package/lib/cjs/render/webgl/glsl/SkyBox.js.map +1 -1
  415. package/lib/cjs/render/webgl/glsl/SkySphere.js +2 -2
  416. package/lib/cjs/render/webgl/glsl/Surface.d.ts.map +1 -1
  417. package/lib/cjs/render/webgl/glsl/Surface.js +41 -16
  418. package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
  419. package/lib/cjs/render/webgl/glsl/Translucency.js +2 -2
  420. package/lib/cjs/render/webgl/glsl/Vertex.js +2 -2
  421. package/lib/cjs/render/webgl/glsl/Vertex.js.map +1 -1
  422. package/lib/cjs/render/webgl/glsl/ViewportQuad.js +1 -1
  423. package/lib/cjs/render/webgl/glsl/ViewportQuad.js.map +1 -1
  424. package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts +9 -0
  425. package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
  426. package/lib/cjs/render/webgl/glsl/Wiremesh.js +40 -0
  427. package/lib/cjs/render/webgl/glsl/Wiremesh.js.map +1 -0
  428. package/lib/cjs/render-primitives.d.ts +5 -1
  429. package/lib/cjs/render-primitives.d.ts.map +1 -1
  430. package/lib/cjs/render-primitives.js +5 -1
  431. package/lib/cjs/render-primitives.js.map +1 -1
  432. package/lib/cjs/request/Request.d.ts +167 -0
  433. package/lib/cjs/request/Request.d.ts.map +1 -0
  434. package/lib/cjs/request/Request.js +315 -0
  435. package/lib/cjs/request/Request.js.map +1 -0
  436. package/lib/cjs/tile/B3dmReader.d.ts +2 -1
  437. package/lib/cjs/tile/B3dmReader.d.ts.map +1 -1
  438. package/lib/cjs/tile/B3dmReader.js +11 -7
  439. package/lib/cjs/tile/B3dmReader.js.map +1 -1
  440. package/lib/cjs/tile/CesiumAssetProvider.d.ts +14 -0
  441. package/lib/cjs/tile/CesiumAssetProvider.d.ts.map +1 -0
  442. package/lib/cjs/tile/CesiumAssetProvider.js +35 -0
  443. package/lib/cjs/tile/CesiumAssetProvider.js.map +1 -0
  444. package/lib/cjs/tile/ContextShareProvider.d.ts +22 -0
  445. package/lib/cjs/tile/ContextShareProvider.d.ts.map +1 -0
  446. package/lib/cjs/tile/ContextShareProvider.js +129 -0
  447. package/lib/cjs/tile/ContextShareProvider.js.map +1 -0
  448. package/lib/cjs/tile/DynamicIModelTile.js +9 -3
  449. package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
  450. package/lib/cjs/tile/GltfReader.d.ts +594 -55
  451. package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
  452. package/lib/cjs/tile/GltfReader.js +703 -264
  453. package/lib/cjs/tile/GltfReader.js.map +1 -1
  454. package/lib/cjs/tile/I3dmReader.d.ts +2 -1
  455. package/lib/cjs/tile/I3dmReader.d.ts.map +1 -1
  456. package/lib/cjs/tile/I3dmReader.js +10 -6
  457. package/lib/cjs/tile/I3dmReader.js.map +1 -1
  458. package/lib/cjs/tile/IModelTile.d.ts.map +1 -1
  459. package/lib/cjs/tile/IModelTile.js +14 -7
  460. package/lib/cjs/tile/IModelTile.js.map +1 -1
  461. package/lib/cjs/tile/IModelTileTree.d.ts +8 -0
  462. package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
  463. package/lib/cjs/tile/IModelTileTree.js +36 -1
  464. package/lib/cjs/tile/IModelTileTree.js.map +1 -1
  465. package/lib/cjs/tile/ImdlReader.d.ts +365 -10
  466. package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
  467. package/lib/cjs/tile/ImdlReader.js +202 -68
  468. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  469. package/lib/cjs/tile/OrbitGtTileTree.d.ts +0 -9
  470. package/lib/cjs/tile/OrbitGtTileTree.d.ts.map +1 -1
  471. package/lib/cjs/tile/OrbitGtTileTree.js +10 -20
  472. package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
  473. package/lib/cjs/tile/PrimaryTileTree.d.ts +14 -5
  474. package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
  475. package/lib/cjs/tile/PrimaryTileTree.js +69 -14
  476. package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
  477. package/lib/cjs/tile/RealityModelTileTree.d.ts +2 -41
  478. package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
  479. package/lib/cjs/tile/RealityModelTileTree.js +57 -217
  480. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  481. package/lib/cjs/tile/RealityTileLoader.d.ts +1 -0
  482. package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
  483. package/lib/cjs/tile/RealityTileLoader.js +4 -3
  484. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  485. package/lib/cjs/tile/Tile.d.ts.map +1 -1
  486. package/lib/cjs/tile/Tile.js +5 -1
  487. package/lib/cjs/tile/Tile.js.map +1 -1
  488. package/lib/cjs/tile/TileAdmin.d.ts +37 -4
  489. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  490. package/lib/cjs/tile/TileAdmin.js +18 -12
  491. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  492. package/lib/cjs/tile/TileDrawArgs.d.ts +11 -0
  493. package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
  494. package/lib/cjs/tile/TileDrawArgs.js +6 -1
  495. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  496. package/lib/cjs/tile/TileTreeReference.d.ts +2 -0
  497. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  498. package/lib/cjs/tile/TileTreeReference.js +5 -0
  499. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  500. package/lib/cjs/tile/internal.d.ts +4 -1
  501. package/lib/cjs/tile/internal.d.ts.map +1 -1
  502. package/lib/cjs/tile/internal.js +4 -1
  503. package/lib/cjs/tile/internal.js.map +1 -1
  504. package/lib/cjs/tile/map/ArcGISTileMap.d.ts +22 -0
  505. package/lib/cjs/tile/map/ArcGISTileMap.d.ts.map +1 -0
  506. package/lib/cjs/tile/map/ArcGISTileMap.js +177 -0
  507. package/lib/cjs/tile/map/ArcGISTileMap.js.map +1 -0
  508. package/lib/cjs/tile/map/ArcGisTokenGenerator.js +3 -3
  509. package/lib/cjs/tile/map/ArcGisTokenGenerator.js.map +1 -1
  510. package/lib/cjs/tile/map/ArcGisUtilities.d.ts +1 -1
  511. package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
  512. package/lib/cjs/tile/map/ArcGisUtilities.js +18 -10
  513. package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
  514. package/lib/cjs/tile/map/BingElevation.js +4 -4
  515. package/lib/cjs/tile/map/BingElevation.js.map +1 -1
  516. package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  517. package/lib/cjs/tile/map/CesiumTerrainProvider.js +27 -15
  518. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  519. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +2 -2
  520. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  521. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +23 -44
  522. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  523. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +3 -3
  524. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  525. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
  526. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  527. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
  528. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  529. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
  530. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  531. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
  532. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  533. package/lib/cjs/tile/map/ImageryTileTree.d.ts +4 -4
  534. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  535. package/lib/cjs/tile/map/ImageryTileTree.js +20 -24
  536. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  537. package/lib/cjs/tile/map/MapCartoRectangle.js +1 -1
  538. package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
  539. package/lib/cjs/tile/map/MapLayerAuthentication.d.ts +20 -0
  540. package/lib/cjs/tile/map/MapLayerAuthentication.d.ts.map +1 -0
  541. package/lib/cjs/tile/map/MapLayerAuthentication.js +18 -0
  542. package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -0
  543. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +6 -3
  544. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  545. package/lib/cjs/tile/map/MapLayerFormatRegistry.js +3 -1
  546. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  547. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts +2 -2
  548. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  549. package/lib/cjs/tile/map/MapLayerImageryFormats.js +21 -8
  550. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  551. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +18 -6
  552. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  553. package/lib/cjs/tile/map/MapLayerImageryProvider.js +47 -14
  554. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  555. package/lib/cjs/tile/map/MapLayerSources.d.ts +3 -11
  556. package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
  557. package/lib/cjs/tile/map/MapLayerSources.js +5 -34
  558. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  559. package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
  560. package/lib/cjs/tile/map/MapTile.js +4 -3
  561. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  562. package/lib/cjs/tile/map/MapTileLoader.js +2 -2
  563. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  564. package/lib/cjs/tile/map/MapTileTree.d.ts +1 -1
  565. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  566. package/lib/cjs/tile/map/MapTileTree.js +30 -21
  567. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  568. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
  569. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  570. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +4 -6
  571. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  572. package/lib/cjs/tile/map/MapTilingScheme.d.ts +7 -2
  573. package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
  574. package/lib/cjs/tile/map/MapTilingScheme.js +21 -8
  575. package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
  576. package/lib/cjs/tile/map/QuadId.d.ts +1 -0
  577. package/lib/cjs/tile/map/QuadId.d.ts.map +1 -1
  578. package/lib/cjs/tile/map/QuadId.js +2 -1
  579. package/lib/cjs/tile/map/QuadId.js.map +1 -1
  580. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts +1 -1
  581. package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
  582. package/lib/cjs/tile/map/WmsCapabilities.d.ts +8 -1
  583. package/lib/cjs/tile/map/WmsCapabilities.d.ts.map +1 -1
  584. package/lib/cjs/tile/map/WmsCapabilities.js +39 -5
  585. package/lib/cjs/tile/map/WmsCapabilities.js.map +1 -1
  586. package/lib/cjs/tile/map/WmtsCapabilities.d.ts +11 -1
  587. package/lib/cjs/tile/map/WmtsCapabilities.d.ts.map +1 -1
  588. package/lib/cjs/tile/map/WmtsCapabilities.js +23 -9
  589. package/lib/cjs/tile/map/WmtsCapabilities.js.map +1 -1
  590. package/lib/cjs/tools/EditManipulator.d.ts.map +1 -1
  591. package/lib/cjs/tools/EditManipulator.js +1 -1
  592. package/lib/cjs/tools/EditManipulator.js.map +1 -1
  593. package/lib/cjs/tools/ElementSetTool.js +2 -2
  594. package/lib/cjs/tools/ElementSetTool.js.map +1 -1
  595. package/lib/cjs/tools/PrimitiveTool.d.ts +4 -4
  596. package/lib/cjs/tools/PrimitiveTool.d.ts.map +1 -1
  597. package/lib/cjs/tools/PrimitiveTool.js +2 -2
  598. package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
  599. package/lib/cjs/tools/Tool.d.ts +29 -1
  600. package/lib/cjs/tools/Tool.d.ts.map +1 -1
  601. package/lib/cjs/tools/Tool.js +66 -0
  602. package/lib/cjs/tools/Tool.js.map +1 -1
  603. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  604. package/lib/cjs/tools/ToolAdmin.js +20 -10
  605. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  606. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  607. package/lib/cjs/tools/ViewTool.js +3 -11
  608. package/lib/cjs/tools/ViewTool.js.map +1 -1
  609. package/lib/cjs/webgl.d.ts +5 -0
  610. package/lib/cjs/webgl.d.ts.map +1 -1
  611. package/lib/cjs/webgl.js +5 -0
  612. package/lib/cjs/webgl.js.map +1 -1
  613. package/lib/esm/AccuSnap.js +3 -3
  614. package/lib/esm/AccuSnap.js.map +1 -1
  615. package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
  616. package/lib/esm/ApproximateTerrainHeights.js +10 -5
  617. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  618. package/lib/esm/BackgroundMapGeometry.d.ts +1 -1
  619. package/lib/esm/BackgroundMapGeometry.d.ts.map +1 -1
  620. package/lib/esm/BackgroundMapGeometry.js +2 -2
  621. package/lib/esm/BackgroundMapGeometry.js.map +1 -1
  622. package/lib/esm/BingLocation.js +1 -1
  623. package/lib/esm/BingLocation.js.map +1 -1
  624. package/lib/esm/CheckpointConnection.js +1 -1
  625. package/lib/esm/CheckpointConnection.js.map +1 -1
  626. package/lib/esm/ContextRealityModelState.js +1 -1
  627. package/lib/esm/ContextRealityModelState.js.map +1 -1
  628. package/lib/esm/DisplayStyleState.d.ts +10 -163
  629. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  630. package/lib/esm/DisplayStyleState.js +70 -346
  631. package/lib/esm/DisplayStyleState.js.map +1 -1
  632. package/lib/esm/DrawingViewState.d.ts +2 -2
  633. package/lib/esm/DrawingViewState.d.ts.map +1 -1
  634. package/lib/esm/DrawingViewState.js +3 -3
  635. package/lib/esm/DrawingViewState.js.map +1 -1
  636. package/lib/esm/ElementLocateManager.d.ts +5 -0
  637. package/lib/esm/ElementLocateManager.d.ts.map +1 -1
  638. package/lib/esm/ElementLocateManager.js +12 -2
  639. package/lib/esm/ElementLocateManager.js.map +1 -1
  640. package/lib/esm/EmphasizeElements.d.ts.map +1 -1
  641. package/lib/esm/EmphasizeElements.js +14 -4
  642. package/lib/esm/EmphasizeElements.js.map +1 -1
  643. package/lib/esm/EnvironmentDecorations.d.ts +39 -0
  644. package/lib/esm/EnvironmentDecorations.d.ts.map +1 -0
  645. package/lib/esm/EnvironmentDecorations.js +196 -0
  646. package/lib/esm/EnvironmentDecorations.js.map +1 -0
  647. package/lib/esm/FrontendHubAccess.d.ts +11 -7
  648. package/lib/esm/FrontendHubAccess.d.ts.map +1 -1
  649. package/lib/esm/FrontendHubAccess.js.map +1 -1
  650. package/lib/esm/FrontendLoggerCategory.d.ts +2 -8
  651. package/lib/esm/FrontendLoggerCategory.d.ts.map +1 -1
  652. package/lib/esm/FrontendLoggerCategory.js +2 -8
  653. package/lib/esm/FrontendLoggerCategory.js.map +1 -1
  654. package/lib/esm/HitDetail.js +7 -7
  655. package/lib/esm/HitDetail.js.map +1 -1
  656. package/lib/esm/IModelApp.d.ts +31 -24
  657. package/lib/esm/IModelApp.d.ts.map +1 -1
  658. package/lib/esm/IModelApp.js +34 -35
  659. package/lib/esm/IModelApp.js.map +1 -1
  660. package/lib/esm/IModelConnection.d.ts +4 -6
  661. package/lib/esm/IModelConnection.d.ts.map +1 -1
  662. package/lib/esm/IModelConnection.js +6 -11
  663. package/lib/esm/IModelConnection.js.map +1 -1
  664. package/lib/esm/IModeljs-css.d.ts.map +1 -1
  665. package/lib/esm/IModeljs-css.js +8 -6
  666. package/lib/esm/IModeljs-css.js.map +1 -1
  667. package/lib/esm/ImageUtil.d.ts +3 -3
  668. package/lib/esm/ImageUtil.d.ts.map +1 -1
  669. package/lib/esm/ImageUtil.js +7 -4
  670. package/lib/esm/ImageUtil.js.map +1 -1
  671. package/lib/esm/LocalhostIpcApp.d.ts +2 -1
  672. package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
  673. package/lib/esm/LocalhostIpcApp.js +22 -8
  674. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  675. package/lib/esm/Marker.d.ts +9 -2
  676. package/lib/esm/Marker.d.ts.map +1 -1
  677. package/lib/esm/Marker.js +34 -6
  678. package/lib/esm/Marker.js.map +1 -1
  679. package/lib/esm/ModelState.js +1 -1
  680. package/lib/esm/ModelState.js.map +1 -1
  681. package/lib/esm/NativeApp.d.ts +3 -38
  682. package/lib/esm/NativeApp.d.ts.map +1 -1
  683. package/lib/esm/NativeApp.js +1 -69
  684. package/lib/esm/NativeApp.js.map +1 -1
  685. package/lib/esm/NoRenderApp.d.ts +0 -1
  686. package/lib/esm/NoRenderApp.d.ts.map +1 -1
  687. package/lib/esm/NoRenderApp.js +0 -1
  688. package/lib/esm/NoRenderApp.js.map +1 -1
  689. package/lib/esm/NotificationManager.d.ts +3 -1
  690. package/lib/esm/NotificationManager.d.ts.map +1 -1
  691. package/lib/esm/NotificationManager.js +2 -0
  692. package/lib/esm/NotificationManager.js.map +1 -1
  693. package/lib/esm/RealityDataSource.d.ts +59 -29
  694. package/lib/esm/RealityDataSource.d.ts.map +1 -1
  695. package/lib/esm/RealityDataSource.js +247 -92
  696. package/lib/esm/RealityDataSource.js.map +1 -1
  697. package/lib/esm/RenderScheduleState.d.ts +2 -0
  698. package/lib/esm/RenderScheduleState.d.ts.map +1 -1
  699. package/lib/esm/RenderScheduleState.js +8 -4
  700. package/lib/esm/RenderScheduleState.js.map +1 -1
  701. package/lib/esm/SheetViewState.d.ts +2 -2
  702. package/lib/esm/SheetViewState.d.ts.map +1 -1
  703. package/lib/esm/SheetViewState.js +8 -9
  704. package/lib/esm/SheetViewState.js.map +1 -1
  705. package/lib/esm/SpatialViewState.d.ts +10 -2
  706. package/lib/esm/SpatialViewState.d.ts.map +1 -1
  707. package/lib/esm/SpatialViewState.js +12 -2
  708. package/lib/esm/SpatialViewState.js.map +1 -1
  709. package/lib/esm/SubCategoriesCache.js +1 -1
  710. package/lib/esm/SubCategoriesCache.js.map +1 -1
  711. package/lib/esm/Tiles.d.ts +11 -1
  712. package/lib/esm/Tiles.d.ts.map +1 -1
  713. package/lib/esm/Tiles.js +7 -0
  714. package/lib/esm/Tiles.js.map +1 -1
  715. package/lib/esm/TwoWayViewportSync.d.ts +35 -6
  716. package/lib/esm/TwoWayViewportSync.d.ts.map +1 -1
  717. package/lib/esm/TwoWayViewportSync.js +49 -10
  718. package/lib/esm/TwoWayViewportSync.js.map +1 -1
  719. package/lib/esm/UserPreferences.d.ts +72 -0
  720. package/lib/esm/UserPreferences.d.ts.map +1 -0
  721. package/lib/esm/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
  722. package/lib/esm/UserPreferences.js.map +1 -0
  723. package/lib/esm/ViewContext.d.ts +3 -1
  724. package/lib/esm/ViewContext.d.ts.map +1 -1
  725. package/lib/esm/ViewContext.js +4 -0
  726. package/lib/esm/ViewContext.js.map +1 -1
  727. package/lib/esm/ViewCreator2d.js +3 -3
  728. package/lib/esm/ViewCreator2d.js.map +1 -1
  729. package/lib/esm/ViewCreator3d.d.ts +1 -1
  730. package/lib/esm/ViewCreator3d.d.ts.map +1 -1
  731. package/lib/esm/ViewCreator3d.js +5 -6
  732. package/lib/esm/ViewCreator3d.js.map +1 -1
  733. package/lib/esm/ViewManager.d.ts +6 -6
  734. package/lib/esm/ViewManager.d.ts.map +1 -1
  735. package/lib/esm/ViewManager.js +13 -13
  736. package/lib/esm/ViewManager.js.map +1 -1
  737. package/lib/esm/ViewState.d.ts +11 -5
  738. package/lib/esm/ViewState.d.ts.map +1 -1
  739. package/lib/esm/ViewState.js +21 -66
  740. package/lib/esm/ViewState.js.map +1 -1
  741. package/lib/esm/ViewingSpace.js +1 -1
  742. package/lib/esm/ViewingSpace.js.map +1 -1
  743. package/lib/esm/Viewport.d.ts +57 -11
  744. package/lib/esm/Viewport.d.ts.map +1 -1
  745. package/lib/esm/Viewport.js +56 -32
  746. package/lib/esm/Viewport.js.map +1 -1
  747. package/lib/esm/core-frontend.d.ts +17 -31
  748. package/lib/esm/core-frontend.d.ts.map +1 -1
  749. package/lib/esm/core-frontend.js +17 -31
  750. package/lib/esm/core-frontend.js.map +1 -1
  751. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
  752. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
  753. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
  754. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  755. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
  756. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  757. package/lib/esm/quantity-formatting/BasicUnitsProvider.js +18 -4
  758. package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  759. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts +26 -3
  760. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  761. package/lib/esm/quantity-formatting/QuantityFormatter.js +45 -7
  762. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  763. package/lib/esm/render/FeatureSymbology.d.ts.map +1 -1
  764. package/lib/esm/render/FeatureSymbology.js +3 -3
  765. package/lib/esm/render/FeatureSymbology.js.map +1 -1
  766. package/lib/esm/render/GraphicBranch.d.ts +18 -2
  767. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  768. package/lib/esm/render/GraphicBranch.js +8 -0
  769. package/lib/esm/render/GraphicBranch.js.map +1 -1
  770. package/lib/esm/render/GraphicBuilder.d.ts +7 -1
  771. package/lib/esm/render/GraphicBuilder.d.ts.map +1 -1
  772. package/lib/esm/render/GraphicBuilder.js.map +1 -1
  773. package/lib/esm/render/MockRender.d.ts +3 -1
  774. package/lib/esm/render/MockRender.d.ts.map +1 -1
  775. package/lib/esm/render/MockRender.js.map +1 -1
  776. package/lib/esm/render/RenderMaterial.d.ts +61 -0
  777. package/lib/esm/render/RenderMaterial.d.ts.map +1 -0
  778. package/lib/esm/render/RenderMaterial.js +9 -0
  779. package/lib/esm/render/RenderMaterial.js.map +1 -0
  780. package/lib/esm/render/RenderMemory.d.ts +21 -15
  781. package/lib/esm/render/RenderMemory.d.ts.map +1 -1
  782. package/lib/esm/render/RenderMemory.js +21 -15
  783. package/lib/esm/render/RenderMemory.js.map +1 -1
  784. package/lib/esm/render/RenderSystem.d.ts +44 -7
  785. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  786. package/lib/esm/render/RenderSystem.js +32 -9
  787. package/lib/esm/render/RenderSystem.js.map +1 -1
  788. package/lib/esm/render/RenderTarget.d.ts +10 -2
  789. package/lib/esm/render/RenderTarget.d.ts.map +1 -1
  790. package/lib/esm/render/RenderTarget.js +2 -1
  791. package/lib/esm/render/RenderTarget.js.map +1 -1
  792. package/lib/esm/render/RenderTexture.d.ts +2 -17
  793. package/lib/esm/render/RenderTexture.d.ts.map +1 -1
  794. package/lib/esm/render/RenderTexture.js +1 -16
  795. package/lib/esm/render/RenderTexture.js.map +1 -1
  796. package/lib/esm/render/primitives/EdgeParams.d.ts +84 -0
  797. package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -0
  798. package/lib/esm/render/primitives/EdgeParams.js +217 -0
  799. package/lib/esm/render/primitives/EdgeParams.js.map +1 -0
  800. package/lib/esm/render/primitives/PointStringParams.d.ts +16 -0
  801. package/lib/esm/render/primitives/PointStringParams.d.ts.map +1 -0
  802. package/lib/esm/render/primitives/PointStringParams.js +39 -0
  803. package/lib/esm/render/primitives/PointStringParams.js.map +1 -0
  804. package/lib/esm/render/primitives/PolylineParams.d.ts +44 -0
  805. package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -0
  806. package/lib/esm/render/primitives/PolylineParams.js +199 -0
  807. package/lib/esm/render/primitives/PolylineParams.js.map +1 -0
  808. package/lib/esm/render/primitives/Primitives.d.ts +1 -1
  809. package/lib/esm/render/primitives/Primitives.d.ts.map +1 -1
  810. package/lib/esm/render/primitives/Primitives.js.map +1 -1
  811. package/lib/esm/render/primitives/SurfaceParams.d.ts +46 -0
  812. package/lib/esm/render/primitives/SurfaceParams.d.ts.map +1 -0
  813. package/lib/esm/render/primitives/SurfaceParams.js +37 -0
  814. package/lib/esm/render/primitives/SurfaceParams.js.map +1 -0
  815. package/lib/esm/render/primitives/VertexTable.d.ts +4 -123
  816. package/lib/esm/render/primitives/VertexTable.d.ts.map +1 -1
  817. package/lib/esm/render/primitives/VertexTable.js +11 -342
  818. package/lib/esm/render/primitives/VertexTable.js.map +1 -1
  819. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
  820. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  821. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js +2 -1
  822. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  823. package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  824. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +1 -0
  825. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  826. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
  827. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  828. package/lib/esm/render/primitives/mesh/MeshPrimitives.js +3 -3
  829. package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  830. package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
  831. package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
  832. package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
  833. package/lib/esm/render/webgl/AttributeMap.js +5 -5
  834. package/lib/esm/render/webgl/BackgroundMapDrape.js +2 -2
  835. package/lib/esm/render/webgl/BackgroundMapDrape.js.map +1 -1
  836. package/lib/esm/render/webgl/BranchUniforms.d.ts.map +1 -1
  837. package/lib/esm/render/webgl/BranchUniforms.js +8 -5
  838. package/lib/esm/render/webgl/BranchUniforms.js.map +1 -1
  839. package/lib/esm/render/webgl/CachedGeometry.d.ts +16 -11
  840. package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
  841. package/lib/esm/render/webgl/CachedGeometry.js +26 -23
  842. package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
  843. package/lib/esm/render/webgl/DrawCommand.d.ts +2 -3
  844. package/lib/esm/render/webgl/DrawCommand.d.ts.map +1 -1
  845. package/lib/esm/render/webgl/DrawCommand.js +6 -4
  846. package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
  847. package/lib/esm/render/webgl/EdgeGeometry.d.ts +73 -0
  848. package/lib/esm/render/webgl/EdgeGeometry.d.ts.map +1 -0
  849. package/lib/esm/render/webgl/EdgeGeometry.js +135 -0
  850. package/lib/esm/render/webgl/EdgeGeometry.js.map +1 -0
  851. package/lib/esm/render/webgl/FeatureOverrides.d.ts +2 -0
  852. package/lib/esm/render/webgl/FeatureOverrides.d.ts.map +1 -1
  853. package/lib/esm/render/webgl/FeatureOverrides.js +11 -3
  854. package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
  855. package/lib/esm/render/webgl/FloatRGBA.d.ts.map +1 -1
  856. package/lib/esm/render/webgl/FloatRGBA.js +13 -11
  857. package/lib/esm/render/webgl/FloatRGBA.js.map +1 -1
  858. package/lib/esm/render/webgl/Graphic.d.ts +13 -0
  859. package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
  860. package/lib/esm/render/webgl/Graphic.js +39 -2
  861. package/lib/esm/render/webgl/Graphic.js.map +1 -1
  862. package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
  863. package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
  864. package/lib/esm/render/webgl/IndexedEdgeGeometry.js +85 -0
  865. package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -0
  866. package/lib/esm/render/webgl/InstancedGeometry.d.ts +6 -5
  867. package/lib/esm/render/webgl/InstancedGeometry.d.ts.map +1 -1
  868. package/lib/esm/render/webgl/InstancedGeometry.js +2 -1
  869. package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
  870. package/lib/esm/render/webgl/LightingUniforms.d.ts +1 -0
  871. package/lib/esm/render/webgl/LightingUniforms.d.ts.map +1 -1
  872. package/lib/esm/render/webgl/LightingUniforms.js +4 -1
  873. package/lib/esm/render/webgl/LightingUniforms.js.map +1 -1
  874. package/lib/esm/render/webgl/Material.d.ts +1 -1
  875. package/lib/esm/render/webgl/Material.d.ts.map +1 -1
  876. package/lib/esm/render/webgl/Material.js +2 -0
  877. package/lib/esm/render/webgl/Material.js.map +1 -1
  878. package/lib/esm/render/webgl/Mesh.d.ts +8 -162
  879. package/lib/esm/render/webgl/Mesh.d.ts.map +1 -1
  880. package/lib/esm/render/webgl/Mesh.js +12 -445
  881. package/lib/esm/render/webgl/Mesh.js.map +1 -1
  882. package/lib/esm/render/webgl/MeshData.d.ts +38 -0
  883. package/lib/esm/render/webgl/MeshData.d.ts.map +1 -0
  884. package/lib/esm/render/webgl/MeshData.js +62 -0
  885. package/lib/esm/render/webgl/MeshData.js.map +1 -0
  886. package/lib/esm/render/webgl/MeshGeometry.d.ts +38 -0
  887. package/lib/esm/render/webgl/MeshGeometry.d.ts.map +1 -0
  888. package/lib/esm/render/webgl/MeshGeometry.js +55 -0
  889. package/lib/esm/render/webgl/MeshGeometry.js.map +1 -0
  890. package/lib/esm/render/webgl/PlanarClassifier.d.ts.map +1 -1
  891. package/lib/esm/render/webgl/PlanarClassifier.js +9 -5
  892. package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
  893. package/lib/esm/render/webgl/PlanarGrid.d.ts +2 -3
  894. package/lib/esm/render/webgl/PlanarGrid.d.ts.map +1 -1
  895. package/lib/esm/render/webgl/PlanarGrid.js +3 -3
  896. package/lib/esm/render/webgl/PlanarGrid.js.map +1 -1
  897. package/lib/esm/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  898. package/lib/esm/render/webgl/PlanarTextureProjection.js +1 -0
  899. package/lib/esm/render/webgl/PlanarTextureProjection.js.map +1 -1
  900. package/lib/esm/render/webgl/PointCloud.d.ts +2 -2
  901. package/lib/esm/render/webgl/PointCloud.d.ts.map +1 -1
  902. package/lib/esm/render/webgl/PointCloud.js +2 -2
  903. package/lib/esm/render/webgl/PointCloud.js.map +1 -1
  904. package/lib/esm/render/webgl/PointString.d.ts +3 -3
  905. package/lib/esm/render/webgl/PointString.d.ts.map +1 -1
  906. package/lib/esm/render/webgl/PointString.js +1 -1
  907. package/lib/esm/render/webgl/PointString.js.map +1 -1
  908. package/lib/esm/render/webgl/Polyline.d.ts +3 -3
  909. package/lib/esm/render/webgl/Polyline.d.ts.map +1 -1
  910. package/lib/esm/render/webgl/Polyline.js +6 -6
  911. package/lib/esm/render/webgl/Polyline.js.map +1 -1
  912. package/lib/esm/render/webgl/Primitive.d.ts +2 -2
  913. package/lib/esm/render/webgl/Primitive.d.ts.map +1 -1
  914. package/lib/esm/render/webgl/Primitive.js +5 -5
  915. package/lib/esm/render/webgl/Primitive.js.map +1 -1
  916. package/lib/esm/render/webgl/RealityMesh.d.ts +2 -2
  917. package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
  918. package/lib/esm/render/webgl/RealityMesh.js +9 -9
  919. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  920. package/lib/esm/render/webgl/RenderCommands.d.ts +6 -2
  921. package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
  922. package/lib/esm/render/webgl/RenderCommands.js +78 -45
  923. package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
  924. package/lib/esm/render/webgl/RenderFlags.d.ts +48 -1
  925. package/lib/esm/render/webgl/RenderFlags.d.ts.map +1 -1
  926. package/lib/esm/render/webgl/RenderFlags.js +63 -1
  927. package/lib/esm/render/webgl/RenderFlags.js.map +1 -1
  928. package/lib/esm/render/webgl/SceneCompositor.js +10 -9
  929. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  930. package/lib/esm/render/webgl/ScreenSpaceEffect.js +1 -1
  931. package/lib/esm/render/webgl/ShaderBuilder.d.ts +23 -20
  932. package/lib/esm/render/webgl/ShaderBuilder.d.ts.map +1 -1
  933. package/lib/esm/render/webgl/ShaderBuilder.js +38 -32
  934. package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
  935. package/lib/esm/render/webgl/ShaderProgram.d.ts +1 -1
  936. package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
  937. package/lib/esm/render/webgl/ShaderProgram.js +4 -4
  938. package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
  939. package/lib/esm/render/webgl/SolarShadowMap.d.ts.map +1 -1
  940. package/lib/esm/render/webgl/SolarShadowMap.js +5 -4
  941. package/lib/esm/render/webgl/SolarShadowMap.js.map +1 -1
  942. package/lib/esm/render/webgl/SurfaceGeometry.d.ts +54 -0
  943. package/lib/esm/render/webgl/SurfaceGeometry.d.ts.map +1 -0
  944. package/lib/esm/render/webgl/SurfaceGeometry.js +243 -0
  945. package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -0
  946. package/lib/esm/render/webgl/System.d.ts +13 -10
  947. package/lib/esm/render/webgl/System.d.ts.map +1 -1
  948. package/lib/esm/render/webgl/System.js +77 -23
  949. package/lib/esm/render/webgl/System.js.map +1 -1
  950. package/lib/esm/render/webgl/Target.d.ts +13 -1
  951. package/lib/esm/render/webgl/Target.d.ts.map +1 -1
  952. package/lib/esm/render/webgl/Target.js +88 -2
  953. package/lib/esm/render/webgl/Target.js.map +1 -1
  954. package/lib/esm/render/webgl/Technique.d.ts.map +1 -1
  955. package/lib/esm/render/webgl/Technique.js +112 -119
  956. package/lib/esm/render/webgl/Technique.js.map +1 -1
  957. package/lib/esm/render/webgl/TechniqueFlags.d.ts +7 -1
  958. package/lib/esm/render/webgl/TechniqueFlags.d.ts.map +1 -1
  959. package/lib/esm/render/webgl/TechniqueFlags.js +10 -1
  960. package/lib/esm/render/webgl/TechniqueFlags.js.map +1 -1
  961. package/lib/esm/render/webgl/TechniqueId.d.ts +29 -28
  962. package/lib/esm/render/webgl/TechniqueId.d.ts.map +1 -1
  963. package/lib/esm/render/webgl/TechniqueId.js +7 -7
  964. package/lib/esm/render/webgl/TechniqueId.js.map +1 -1
  965. package/lib/esm/render/webgl/Texture.d.ts +15 -12
  966. package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
  967. package/lib/esm/render/webgl/Texture.js +27 -24
  968. package/lib/esm/render/webgl/Texture.js.map +1 -1
  969. package/lib/esm/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
  970. package/lib/esm/render/webgl/glsl/AmbientOcclusion.js +84 -19
  971. package/lib/esm/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  972. package/lib/esm/render/webgl/glsl/Animation.js +1 -1
  973. package/lib/esm/render/webgl/glsl/Blur.js +1 -1
  974. package/lib/esm/render/webgl/glsl/ClearPickAndColor.js +2 -2
  975. package/lib/esm/render/webgl/glsl/ClearTranslucent.js +2 -2
  976. package/lib/esm/render/webgl/glsl/Color.js +1 -1
  977. package/lib/esm/render/webgl/glsl/Combine3Textures.js +1 -1
  978. package/lib/esm/render/webgl/glsl/CombineTextures.js +1 -1
  979. package/lib/esm/render/webgl/glsl/Composite.js +1 -1
  980. package/lib/esm/render/webgl/glsl/CopyColor.d.ts.map +1 -1
  981. package/lib/esm/render/webgl/glsl/CopyColor.js +17 -2
  982. package/lib/esm/render/webgl/glsl/CopyColor.js.map +1 -1
  983. package/lib/esm/render/webgl/glsl/CopyPickBuffers.js +2 -2
  984. package/lib/esm/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
  985. package/lib/esm/render/webgl/glsl/CopyStencil.js +10 -13
  986. package/lib/esm/render/webgl/glsl/CopyStencil.js.map +1 -1
  987. package/lib/esm/render/webgl/glsl/EVSMFromDepth.js +2 -2
  988. package/lib/esm/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  989. package/lib/esm/render/webgl/glsl/Edge.d.ts +2 -1
  990. package/lib/esm/render/webgl/glsl/Edge.d.ts.map +1 -1
  991. package/lib/esm/render/webgl/glsl/Edge.js +132 -14
  992. package/lib/esm/render/webgl/glsl/Edge.js.map +1 -1
  993. package/lib/esm/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
  994. package/lib/esm/render/webgl/glsl/FeatureSymbology.js +44 -22
  995. package/lib/esm/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  996. package/lib/esm/render/webgl/glsl/Fragment.d.ts.map +1 -1
  997. package/lib/esm/render/webgl/glsl/Fragment.js +19 -11
  998. package/lib/esm/render/webgl/glsl/Fragment.js.map +1 -1
  999. package/lib/esm/render/webgl/glsl/Lighting.d.ts.map +1 -1
  1000. package/lib/esm/render/webgl/glsl/Lighting.js +16 -2
  1001. package/lib/esm/render/webgl/glsl/Lighting.js.map +1 -1
  1002. package/lib/esm/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
  1003. package/lib/esm/render/webgl/glsl/LookupTable.d.ts +4 -2
  1004. package/lib/esm/render/webgl/glsl/LookupTable.d.ts.map +1 -1
  1005. package/lib/esm/render/webgl/glsl/LookupTable.js +7 -3
  1006. package/lib/esm/render/webgl/glsl/LookupTable.js.map +1 -1
  1007. package/lib/esm/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
  1008. package/lib/esm/render/webgl/glsl/PlanarClassification.js +13 -4
  1009. package/lib/esm/render/webgl/glsl/PlanarClassification.js.map +1 -1
  1010. package/lib/esm/render/webgl/glsl/PlanarGrid.js +2 -2
  1011. package/lib/esm/render/webgl/glsl/PlanarGrid.js.map +1 -1
  1012. package/lib/esm/render/webgl/glsl/PointCloud.js +2 -2
  1013. package/lib/esm/render/webgl/glsl/PointCloud.js.map +1 -1
  1014. package/lib/esm/render/webgl/glsl/PointString.js +1 -1
  1015. package/lib/esm/render/webgl/glsl/PointString.js.map +1 -1
  1016. package/lib/esm/render/webgl/glsl/Polyline.js +1 -1
  1017. package/lib/esm/render/webgl/glsl/Polyline.js.map +1 -1
  1018. package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  1019. package/lib/esm/render/webgl/glsl/RealityMesh.js +9 -6
  1020. package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
  1021. package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
  1022. package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  1023. package/lib/esm/render/webgl/glsl/SkyBox.js +2 -2
  1024. package/lib/esm/render/webgl/glsl/SkyBox.js.map +1 -1
  1025. package/lib/esm/render/webgl/glsl/SkySphere.js +2 -2
  1026. package/lib/esm/render/webgl/glsl/Surface.d.ts.map +1 -1
  1027. package/lib/esm/render/webgl/glsl/Surface.js +41 -16
  1028. package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
  1029. package/lib/esm/render/webgl/glsl/Translucency.js +2 -2
  1030. package/lib/esm/render/webgl/glsl/Vertex.js +3 -3
  1031. package/lib/esm/render/webgl/glsl/Vertex.js.map +1 -1
  1032. package/lib/esm/render/webgl/glsl/ViewportQuad.js +1 -1
  1033. package/lib/esm/render/webgl/glsl/ViewportQuad.js.map +1 -1
  1034. package/lib/esm/render/webgl/glsl/Wiremesh.d.ts +9 -0
  1035. package/lib/esm/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
  1036. package/lib/esm/render/webgl/glsl/Wiremesh.js +36 -0
  1037. package/lib/esm/render/webgl/glsl/Wiremesh.js.map +1 -0
  1038. package/lib/esm/render-primitives.d.ts +5 -1
  1039. package/lib/esm/render-primitives.d.ts.map +1 -1
  1040. package/lib/esm/render-primitives.js +5 -1
  1041. package/lib/esm/render-primitives.js.map +1 -1
  1042. package/lib/esm/request/Request.d.ts +167 -0
  1043. package/lib/esm/request/Request.d.ts.map +1 -0
  1044. package/lib/esm/request/Request.js +289 -0
  1045. package/lib/esm/request/Request.js.map +1 -0
  1046. package/lib/esm/tile/B3dmReader.d.ts +2 -1
  1047. package/lib/esm/tile/B3dmReader.d.ts.map +1 -1
  1048. package/lib/esm/tile/B3dmReader.js +12 -8
  1049. package/lib/esm/tile/B3dmReader.js.map +1 -1
  1050. package/lib/esm/tile/CesiumAssetProvider.d.ts +14 -0
  1051. package/lib/esm/tile/CesiumAssetProvider.d.ts.map +1 -0
  1052. package/lib/esm/tile/CesiumAssetProvider.js +31 -0
  1053. package/lib/esm/tile/CesiumAssetProvider.js.map +1 -0
  1054. package/lib/esm/tile/ContextShareProvider.d.ts +22 -0
  1055. package/lib/esm/tile/ContextShareProvider.d.ts.map +1 -0
  1056. package/lib/esm/tile/ContextShareProvider.js +125 -0
  1057. package/lib/esm/tile/ContextShareProvider.js.map +1 -0
  1058. package/lib/esm/tile/DynamicIModelTile.js +9 -3
  1059. package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
  1060. package/lib/esm/tile/GltfReader.d.ts +594 -55
  1061. package/lib/esm/tile/GltfReader.d.ts.map +1 -1
  1062. package/lib/esm/tile/GltfReader.js +678 -242
  1063. package/lib/esm/tile/GltfReader.js.map +1 -1
  1064. package/lib/esm/tile/I3dmReader.d.ts +2 -1
  1065. package/lib/esm/tile/I3dmReader.d.ts.map +1 -1
  1066. package/lib/esm/tile/I3dmReader.js +11 -7
  1067. package/lib/esm/tile/I3dmReader.js.map +1 -1
  1068. package/lib/esm/tile/IModelTile.d.ts.map +1 -1
  1069. package/lib/esm/tile/IModelTile.js +14 -7
  1070. package/lib/esm/tile/IModelTile.js.map +1 -1
  1071. package/lib/esm/tile/IModelTileTree.d.ts +8 -0
  1072. package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
  1073. package/lib/esm/tile/IModelTileTree.js +36 -1
  1074. package/lib/esm/tile/IModelTileTree.js.map +1 -1
  1075. package/lib/esm/tile/ImdlReader.d.ts +365 -10
  1076. package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
  1077. package/lib/esm/tile/ImdlReader.js +199 -66
  1078. package/lib/esm/tile/ImdlReader.js.map +1 -1
  1079. package/lib/esm/tile/OrbitGtTileTree.d.ts +0 -9
  1080. package/lib/esm/tile/OrbitGtTileTree.d.ts.map +1 -1
  1081. package/lib/esm/tile/OrbitGtTileTree.js +10 -20
  1082. package/lib/esm/tile/OrbitGtTileTree.js.map +1 -1
  1083. package/lib/esm/tile/PrimaryTileTree.d.ts +14 -5
  1084. package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
  1085. package/lib/esm/tile/PrimaryTileTree.js +70 -15
  1086. package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
  1087. package/lib/esm/tile/RealityModelTileTree.d.ts +2 -41
  1088. package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
  1089. package/lib/esm/tile/RealityModelTileTree.js +56 -215
  1090. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  1091. package/lib/esm/tile/RealityTileLoader.d.ts +1 -0
  1092. package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
  1093. package/lib/esm/tile/RealityTileLoader.js +4 -3
  1094. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  1095. package/lib/esm/tile/Tile.d.ts.map +1 -1
  1096. package/lib/esm/tile/Tile.js +5 -1
  1097. package/lib/esm/tile/Tile.js.map +1 -1
  1098. package/lib/esm/tile/TileAdmin.d.ts +37 -4
  1099. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  1100. package/lib/esm/tile/TileAdmin.js +19 -13
  1101. package/lib/esm/tile/TileAdmin.js.map +1 -1
  1102. package/lib/esm/tile/TileDrawArgs.d.ts +11 -0
  1103. package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
  1104. package/lib/esm/tile/TileDrawArgs.js +6 -1
  1105. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  1106. package/lib/esm/tile/TileTreeReference.d.ts +2 -0
  1107. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  1108. package/lib/esm/tile/TileTreeReference.js +5 -0
  1109. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  1110. package/lib/esm/tile/internal.d.ts +4 -1
  1111. package/lib/esm/tile/internal.d.ts.map +1 -1
  1112. package/lib/esm/tile/internal.js +4 -1
  1113. package/lib/esm/tile/internal.js.map +1 -1
  1114. package/lib/esm/tile/map/ArcGISTileMap.d.ts +22 -0
  1115. package/lib/esm/tile/map/ArcGISTileMap.d.ts.map +1 -0
  1116. package/lib/esm/tile/map/ArcGISTileMap.js +173 -0
  1117. package/lib/esm/tile/map/ArcGISTileMap.js.map +1 -0
  1118. package/lib/esm/tile/map/ArcGisTokenGenerator.js +1 -1
  1119. package/lib/esm/tile/map/ArcGisTokenGenerator.js.map +1 -1
  1120. package/lib/esm/tile/map/ArcGisUtilities.d.ts +1 -1
  1121. package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
  1122. package/lib/esm/tile/map/ArcGisUtilities.js +14 -6
  1123. package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
  1124. package/lib/esm/tile/map/BingElevation.js +1 -1
  1125. package/lib/esm/tile/map/BingElevation.js.map +1 -1
  1126. package/lib/esm/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  1127. package/lib/esm/tile/map/CesiumTerrainProvider.js +25 -13
  1128. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  1129. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +2 -2
  1130. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  1131. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +21 -42
  1132. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  1133. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +2 -2
  1134. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  1135. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
  1136. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  1137. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
  1138. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  1139. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
  1140. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  1141. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
  1142. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  1143. package/lib/esm/tile/map/ImageryTileTree.d.ts +4 -4
  1144. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  1145. package/lib/esm/tile/map/ImageryTileTree.js +21 -25
  1146. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  1147. package/lib/esm/tile/map/MapCartoRectangle.js +1 -1
  1148. package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
  1149. package/lib/esm/tile/map/MapLayerAuthentication.d.ts +20 -0
  1150. package/lib/esm/tile/map/MapLayerAuthentication.d.ts.map +1 -0
  1151. package/lib/esm/tile/map/MapLayerAuthentication.js +15 -0
  1152. package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -0
  1153. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +6 -3
  1154. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  1155. package/lib/esm/tile/map/MapLayerFormatRegistry.js +3 -1
  1156. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  1157. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts +2 -2
  1158. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  1159. package/lib/esm/tile/map/MapLayerImageryFormats.js +22 -9
  1160. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  1161. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +18 -6
  1162. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  1163. package/lib/esm/tile/map/MapLayerImageryProvider.js +44 -11
  1164. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  1165. package/lib/esm/tile/map/MapLayerSources.d.ts +3 -11
  1166. package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
  1167. package/lib/esm/tile/map/MapLayerSources.js +7 -36
  1168. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  1169. package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
  1170. package/lib/esm/tile/map/MapTile.js +4 -3
  1171. package/lib/esm/tile/map/MapTile.js.map +1 -1
  1172. package/lib/esm/tile/map/MapTileLoader.js +1 -1
  1173. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  1174. package/lib/esm/tile/map/MapTileTree.d.ts +1 -1
  1175. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  1176. package/lib/esm/tile/map/MapTileTree.js +30 -21
  1177. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  1178. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
  1179. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  1180. package/lib/esm/tile/map/MapTiledGraphicsProvider.js +4 -6
  1181. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  1182. package/lib/esm/tile/map/MapTilingScheme.d.ts +7 -2
  1183. package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
  1184. package/lib/esm/tile/map/MapTilingScheme.js +22 -9
  1185. package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
  1186. package/lib/esm/tile/map/QuadId.d.ts +1 -0
  1187. package/lib/esm/tile/map/QuadId.d.ts.map +1 -1
  1188. package/lib/esm/tile/map/QuadId.js +2 -1
  1189. package/lib/esm/tile/map/QuadId.js.map +1 -1
  1190. package/lib/esm/tile/map/TerrainMeshProvider.d.ts +1 -1
  1191. package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
  1192. package/lib/esm/tile/map/WmsCapabilities.d.ts +8 -1
  1193. package/lib/esm/tile/map/WmsCapabilities.d.ts.map +1 -1
  1194. package/lib/esm/tile/map/WmsCapabilities.js +37 -3
  1195. package/lib/esm/tile/map/WmsCapabilities.js.map +1 -1
  1196. package/lib/esm/tile/map/WmtsCapabilities.d.ts +11 -1
  1197. package/lib/esm/tile/map/WmtsCapabilities.d.ts.map +1 -1
  1198. package/lib/esm/tile/map/WmtsCapabilities.js +20 -6
  1199. package/lib/esm/tile/map/WmtsCapabilities.js.map +1 -1
  1200. package/lib/esm/tools/EditManipulator.d.ts.map +1 -1
  1201. package/lib/esm/tools/EditManipulator.js +1 -1
  1202. package/lib/esm/tools/EditManipulator.js.map +1 -1
  1203. package/lib/esm/tools/ElementSetTool.js +2 -2
  1204. package/lib/esm/tools/ElementSetTool.js.map +1 -1
  1205. package/lib/esm/tools/PrimitiveTool.d.ts +4 -4
  1206. package/lib/esm/tools/PrimitiveTool.d.ts.map +1 -1
  1207. package/lib/esm/tools/PrimitiveTool.js +2 -2
  1208. package/lib/esm/tools/PrimitiveTool.js.map +1 -1
  1209. package/lib/esm/tools/Tool.d.ts +29 -1
  1210. package/lib/esm/tools/Tool.d.ts.map +1 -1
  1211. package/lib/esm/tools/Tool.js +66 -0
  1212. package/lib/esm/tools/Tool.js.map +1 -1
  1213. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  1214. package/lib/esm/tools/ToolAdmin.js +20 -10
  1215. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  1216. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  1217. package/lib/esm/tools/ViewTool.js +3 -11
  1218. package/lib/esm/tools/ViewTool.js.map +1 -1
  1219. package/lib/esm/webgl.d.ts +5 -0
  1220. package/lib/esm/webgl.d.ts.map +1 -1
  1221. package/lib/esm/webgl.js +5 -0
  1222. package/lib/esm/webgl.js.map +1 -1
  1223. package/lib/public/locales/en/iModelJs.json +3 -1
  1224. package/package.json +33 -28
  1225. package/lib/cjs/RealityDataAccessProps.d.ts +0 -44
  1226. package/lib/cjs/RealityDataAccessProps.d.ts.map +0 -1
  1227. package/lib/cjs/RealityDataAccessProps.js +0 -23
  1228. package/lib/cjs/RealityDataAccessProps.js.map +0 -1
  1229. package/lib/cjs/RealityDataConnection.d.ts +0 -31
  1230. package/lib/cjs/RealityDataConnection.d.ts.map +0 -1
  1231. package/lib/cjs/RealityDataConnection.js +0 -101
  1232. package/lib/cjs/RealityDataConnection.js.map +0 -1
  1233. package/lib/cjs/extension/Extension.d.ts +0 -39
  1234. package/lib/cjs/extension/Extension.d.ts.map +0 -1
  1235. package/lib/cjs/extension/Extension.js +0 -39
  1236. package/lib/cjs/extension/Extension.js.map +0 -1
  1237. package/lib/cjs/extension/ExtensionAdmin.d.ts +0 -70
  1238. package/lib/cjs/extension/ExtensionAdmin.d.ts.map +0 -1
  1239. package/lib/cjs/extension/ExtensionAdmin.js +0 -105
  1240. package/lib/cjs/extension/ExtensionAdmin.js.map +0 -1
  1241. package/lib/cjs/extension/ExtensionHost.d.ts +0 -20
  1242. package/lib/cjs/extension/ExtensionHost.d.ts.map +0 -1
  1243. package/lib/cjs/extension/ExtensionHost.js +0 -19
  1244. package/lib/cjs/extension/ExtensionHost.js.map +0 -1
  1245. package/lib/cjs/extension/ExtensionImpl.d.ts +0 -16
  1246. package/lib/cjs/extension/ExtensionImpl.d.ts.map +0 -1
  1247. package/lib/cjs/extension/ExtensionImpl.js +0 -40
  1248. package/lib/cjs/extension/ExtensionImpl.js.map +0 -1
  1249. package/lib/cjs/extension/ExtensionLoader.d.ts +0 -20
  1250. package/lib/cjs/extension/ExtensionLoader.d.ts.map +0 -1
  1251. package/lib/cjs/extension/ExtensionLoader.js.map +0 -1
  1252. package/lib/cjs/extension/ExtensionRuntime.d.ts +0 -2
  1253. package/lib/cjs/extension/ExtensionRuntime.d.ts.map +0 -1
  1254. package/lib/cjs/extension/ExtensionRuntime.js +0 -60
  1255. package/lib/cjs/extension/ExtensionRuntime.js.map +0 -1
  1256. package/lib/cjs/extension/extensions.d.ts +0 -18
  1257. package/lib/cjs/extension/extensions.d.ts.map +0 -1
  1258. package/lib/cjs/extension/extensions.js +0 -35
  1259. package/lib/cjs/extension/extensions.js.map +0 -1
  1260. package/lib/cjs/tile/map/MapLayerSettingsService.d.ts +0 -39
  1261. package/lib/cjs/tile/map/MapLayerSettingsService.d.ts.map +0 -1
  1262. package/lib/cjs/tile/map/MapLayerSettingsService.js +0 -190
  1263. package/lib/cjs/tile/map/MapLayerSettingsService.js.map +0 -1
  1264. package/lib/esm/RealityDataAccessProps.d.ts +0 -44
  1265. package/lib/esm/RealityDataAccessProps.d.ts.map +0 -1
  1266. package/lib/esm/RealityDataAccessProps.js +0 -20
  1267. package/lib/esm/RealityDataAccessProps.js.map +0 -1
  1268. package/lib/esm/RealityDataConnection.d.ts +0 -31
  1269. package/lib/esm/RealityDataConnection.d.ts.map +0 -1
  1270. package/lib/esm/RealityDataConnection.js +0 -98
  1271. package/lib/esm/RealityDataConnection.js.map +0 -1
  1272. package/lib/esm/extension/Extension.d.ts +0 -39
  1273. package/lib/esm/extension/Extension.d.ts.map +0 -1
  1274. package/lib/esm/extension/Extension.js +0 -38
  1275. package/lib/esm/extension/Extension.js.map +0 -1
  1276. package/lib/esm/extension/ExtensionAdmin.d.ts +0 -70
  1277. package/lib/esm/extension/ExtensionAdmin.d.ts.map +0 -1
  1278. package/lib/esm/extension/ExtensionAdmin.js +0 -101
  1279. package/lib/esm/extension/ExtensionAdmin.js.map +0 -1
  1280. package/lib/esm/extension/ExtensionHost.d.ts +0 -20
  1281. package/lib/esm/extension/ExtensionHost.d.ts.map +0 -1
  1282. package/lib/esm/extension/ExtensionHost.js +0 -15
  1283. package/lib/esm/extension/ExtensionHost.js.map +0 -1
  1284. package/lib/esm/extension/ExtensionImpl.d.ts +0 -16
  1285. package/lib/esm/extension/ExtensionImpl.d.ts.map +0 -1
  1286. package/lib/esm/extension/ExtensionImpl.js +0 -35
  1287. package/lib/esm/extension/ExtensionImpl.js.map +0 -1
  1288. package/lib/esm/extension/ExtensionLoader.d.ts +0 -20
  1289. package/lib/esm/extension/ExtensionLoader.d.ts.map +0 -1
  1290. package/lib/esm/extension/ExtensionLoader.js.map +0 -1
  1291. package/lib/esm/extension/ExtensionRuntime.d.ts +0 -2
  1292. package/lib/esm/extension/ExtensionRuntime.d.ts.map +0 -1
  1293. package/lib/esm/extension/ExtensionRuntime.js +0 -58
  1294. package/lib/esm/extension/ExtensionRuntime.js.map +0 -1
  1295. package/lib/esm/extension/extensions.d.ts +0 -18
  1296. package/lib/esm/extension/extensions.d.ts.map +0 -1
  1297. package/lib/esm/extension/extensions.js +0 -23
  1298. package/lib/esm/extension/extensions.js.map +0 -1
  1299. package/lib/esm/tile/map/MapLayerSettingsService.d.ts +0 -39
  1300. package/lib/esm/tile/map/MapLayerSettingsService.d.ts.map +0 -1
  1301. package/lib/esm/tile/map/MapLayerSettingsService.js +0 -186
  1302. package/lib/esm/tile/map/MapLayerSettingsService.js.map +0 -1
@@ -2,13 +2,13 @@
2
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- import { Point2d, Range2d } from "@itwin/core-geometry";
6
- import { request } from "@bentley/itwin-client";
7
- import { xml2json } from "xml-js";
8
- import { MapCartoRectangle, WmsUtilities } from "../internal"; // WmsUtilities needed for getBaseUrl
9
5
  /** @packageDocumentation
10
6
  * @module Views
11
7
  */
8
+ import { Point2d, Range2d } from "@itwin/core-geometry";
9
+ import { request } from "../../request/Request";
10
+ import { xml2json } from "xml-js";
11
+ import { MapCartoRectangle, WmsUtilities } from "../internal"; // WmsUtilities needed for getBaseUrl
12
12
  /**
13
13
  * fetch XML from HTTP request
14
14
  * @param url server URL to address the request
@@ -229,6 +229,9 @@ export var WmtsCapability;
229
229
  });
230
230
  return googleMapsTms;
231
231
  }
232
+ getEpsg4326CompatibleTileMatrixSet() {
233
+ return this.tileMatrixSets.filter((tms) => tms.supportedCrs.includes("4326"));
234
+ }
232
235
  }
233
236
  WmtsCapability.Contents = Contents;
234
237
  class Style {
@@ -257,11 +260,22 @@ export var WmtsCapability;
257
260
  }
258
261
  }
259
262
  WmtsCapability.BoundingBox = BoundingBox;
263
+ class TileMatrixSetLimits {
264
+ constructor(_json) {
265
+ this.tileMatrix = _json.TileMatrix;
266
+ if (_json.MinTileRow !== undefined && _json.MaxTileRow !== undefined && _json.MinTileCol !== undefined && _json.MaxTileCol)
267
+ this.limits = Range2d.createXYXY(Number(_json.MinTileCol._text), Number(_json.MinTileRow._text), Number(_json.MaxTileCol._text), Number(_json.MaxTileRow._text));
268
+ }
269
+ }
270
+ WmtsCapability.TileMatrixSetLimits = TileMatrixSetLimits;
260
271
  class TileMatrixSetLink {
261
- // TODO: TileMatrixSetLimits
262
272
  constructor(_json) {
263
- var _a;
273
+ var _a, _b;
274
+ this.tileMatrixSetLimits = new Array();
264
275
  this.tileMatrixSet = (((_a = _json === null || _json === void 0 ? void 0 : _json.TileMatrixSet) === null || _a === void 0 ? void 0 : _a._text) ? _json.TileMatrixSet._text : "");
276
+ const tileMatrixLimits = (_b = _json === null || _json === void 0 ? void 0 : _json.TileMatrixSetLimits) === null || _b === void 0 ? void 0 : _b.TileMatrixLimits;
277
+ if (Array.isArray(tileMatrixLimits))
278
+ tileMatrixLimits.forEach((tml) => this.tileMatrixSetLimits.push(new TileMatrixSetLimits(tml)));
265
279
  }
266
280
  }
267
281
  WmtsCapability.TileMatrixSetLink = TileMatrixSetLink;
@@ -1 +1 @@
1
- {"version":3,"file":"WmtsCapabilities.js","sourceRoot":"","sources":["../../../../src/tile/map/WmtsCapabilities.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,OAAO,EAA2C,MAAM,uBAAuB,CAAC;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC,CAAC,qCAAqC;AAEpG;;GAEG;AAEH;;;;GAIG;AACH,KAAK,UAAU,MAAM,CAAC,GAAW,EAAE,WAAqC;IACtE,MAAM,OAAO,GAAmB;QAC9B,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,MAAM;QACpB,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC5B,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,WAAW;KAClB,CAAC;IACF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACzC,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,KAAW,cAAc,CAya9B;AAzaD,WAAiB,cAAc;IAE7B,MAAsB,YAAY;;IAChC,oBAAoB;IACG,4BAAe,GAAG,cAAc,CAAC;IACjC,qCAAwB,GAAG,uBAAuB,CAAC;IACnD,iCAAoB,GAAG,mBAAmB,CAAC;IAC3C,+BAAkB,GAAG,iBAAiB,CAAC;IACvC,8BAAiB,GAAG,gBAAgB,CAAC;IACrC,uBAAU,GAAG,SAAS,CAAC;IACvB,wBAAW,GAAG,UAAU,CAAC;IACzB,uBAAU,GAAG,SAAS,CAAC;IACvB,wBAAW,GAAG,UAAU,CAAC;IACzB,8BAAiB,GAAG,gBAAgB,CAAC;IACrC,4BAAe,GAAG,cAAc,CAAC;IACjC,2BAAc,GAAG,aAAa,CAAC;IAC/B,+BAAkB,GAAG,iBAAiB,CAAC;IACvC,6BAAgB,GAAG,eAAe,CAAC;IACnC,sCAAyB,GAAG,wBAAwB,CAAC;IACrD,wBAAW,GAAG,UAAU,CAAC;IACzB,yCAA4B,GAAG,2BAA2B,CAAC;IAC3D,+BAAkB,GAAG,iBAAiB,CAAC;IACvC,sCAAyB,GAAG,wBAAwB,CAAC;IACrD,gCAAmB,GAAG,kBAAkB,CAAC;IACzC,yBAAY,GAAG,WAAW,CAAC;IAC3B,+BAAkB,GAAG,iBAAiB,CAAC;IACvC,yBAAY,GAAG,WAAW,CAAC;IAC3B,oCAAuB,GAAG,sBAAsB,CAAC;IAzBpD,2BAAY,eA0BjC,CAAA;IAED,MAAsB,YAAY;;IAChC,mBAAmB;IACI,4BAAe,GAAG,iBAAiB,CAAC;IACpC,oBAAO,GAAG,SAAS,CAAC;IACpB,2BAAc,GAAG,gBAAgB,CAAC;IAElC,+BAAkB,GAAG,aAAa,CAAC;IACnC,gCAAmB,GAAG,cAAc,CAAC;IACrC,oCAAuB,GAAG,kBAAkB,CAAC;IAE7C,8BAAiB,GAAG,YAAY,CAAC;IACjC,8BAAiB,GAAG,YAAY,CAAC;IACjC,qCAAwB,GAAG,mBAAmB,CAAC;IAC/C,6BAAgB,GAAG,WAAW,CAAC;IAC/B,iCAAoB,GAAG,eAAe,CAAC;IACvC,qCAAwB,GAAG,mBAAmB,CAAC;IAE/C,mCAAsB,GAAG,UAAU,CAAC;IACpC,4BAAe,GAAG,WAAW,CAAC;IAC9B,uBAAU,GAAG,YAAY,CAAC;IAnB7B,2BAAY,eAoBjC,CAAA;IAED,MAAsB,SAAS;;IACN,uCAA6B,GAAG,iBAAiB,CAAC;IAClD,6CAAmC,GAAG,sBAAsB,CAAC;IAFhE,wBAAS,YAG9B,CAAA;IAED,MAAa,qBAAqB;QAShC,YAAY,IAAS;;YACnB,IAAI,CAAC,QAAQ,GAAG,MAAA,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,0CAAE,KAAK,CAAC;YAC1D,IAAI,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,0CAAE,KAAK,CAAC;YAChE,IAAI,CAAC,kBAAkB,GAAG,MAAA,IAAI,CAAC,YAAY,CAAC,yBAAyB,CAAC,0CAAE,KAAK,CAAC;YAC9E,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,0CAAE,KAAK,CAAC;YAEpD,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,0CAAG,YAAY,CAAC,cAAc,CAAC,CAAC;YACnF,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC1B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBAEnB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBAC3B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;wBAC9B,IAAI,OAAO,KAAK,SAAS,EAAE;4BACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;yBACnC;qBACF;iBACF;qBAAM;oBACL,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;iBACpC;aACF;YAED,IAAI,CAAC,iBAAiB,GAAG,MAAA,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC,0CAAE,KAAK,CAAC;YAC5E,IAAI,CAAC,IAAI,GAAG,MAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,0CAAE,KAAK,CAAC;QACpD,CAAC;KACF;IAjCY,oCAAqB,wBAiCjC,CAAA;IAED,MAAa,iBAAiB;QAmB5B,YAAY,IAAS;YACnB,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC3E,IAAI,SAAS,EAAE;gBACb,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;oBAC5B,SAAS,CAAC,OAAO,CAAC,CAAC,EAAO,EAAE,EAAE;wBAC5B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;oBACzB,CAAC,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;iBAC/B;aACF;QACH,CAAC;QA5BD,IAAW,eAAe,KAA4B,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAGrF,IAAW,cAAc,KAA4B,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QAGnF,IAAW,OAAO,KAA4B,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE7D,aAAa,CAAC,EAAO;;YAC3B,IAAI,CAAA,MAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,WAAW,0CAAE,IAAI,MAAK,YAAY,CAAC,eAAe;gBACxD,IAAI,CAAC,gBAAgB,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;iBACvC,IAAI,CAAA,MAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,WAAW,0CAAE,IAAI,MAAK,YAAY,CAAC,OAAO;gBACrD,IAAI,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;iBAC/B,IAAI,CAAA,MAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,WAAW,0CAAE,IAAI,MAAK,YAAY,CAAC,cAAc;gBAC5D,IAAI,CAAC,eAAe,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;KAcF;IA/BY,gCAAiB,oBA+B7B,CAAA;IAED,MAAa,OAAO;QASlB,YAAY,IAAS;;YACnB,IAAI,CAAC,GAAG,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAA,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,0CAAE,WAAW,0CAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACnG,IAAI,MAAA,IAAI,CAAC,cAAc,0CAAE,QAAQ,CAAC,YAAY,CAAC,sBAAsB,CAAC;gBACpE,IAAI,CAAC,QAAQ,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,0CAAG,YAAY,CAAC,oBAAoB,CAAC,0CAAG,YAAY,CAAC,YAAY,CAAC,0CAAE,KAAK,CAAC;QAClI,CAAC;KACF;IAfY,sBAAO,UAenB,CAAA;IAED,MAAa,SAAS;QAOpB,YAAY,IAAS;;YACnB,IAAI,CAAC,IAAI,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,0CAAE,IAAI,CAAC;YAEpC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,0CAAG,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC/F,IAAI,CAAC,OAAO;gBACV,OAAO;YAET,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAC7C,IAAI,GAAG,EAAE;gBACP,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;gBAEtB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACtB,GAAG,CAAC,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE;;wBAC3B,MAAA,IAAI,CAAC,WAAW,0CAAE,IAAI,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC9D,CAAC,CAAC,CAAC;iBACJ;qBAAM;oBACL,MAAA,IAAI,CAAC,WAAW,0CAAE,IAAI,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;iBACzD;aACF;YAED,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YAC/C,IAAI,IAAI,EAAE;gBACR,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;gBAEvB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACvB,IAAI,CAAC,OAAO,CAAC,CAAC,QAAa,EAAE,EAAE;;wBAC7B,MAAA,IAAI,CAAC,YAAY,0CAAE,IAAI,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAChE,CAAC,CAAC,CAAC;iBACJ;qBAAM;oBACL,MAAA,IAAI,CAAC,YAAY,0CAAE,IAAI,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC3D;aACF;QACH,CAAC;QApCD,IAAW,UAAU,KAA4B,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAE3E,IAAW,WAAW,KAA4B,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;KAmC9E;IAxCY,wBAAS,YAwCrB,CAAA;IAED,MAAa,QAAQ;QAInB,YAAoB,KAAU;YAAV,UAAK,GAAL,KAAK,CAAK;YAHd,WAAM,GAA2B,EAAE,CAAC;YACpC,mBAAc,GAAmC,EAAE,CAAC;YAIlE,SAAS;YACT,MAAM,SAAS,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC;YAC/B,IAAI,SAAS,EAAE;gBACb,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;oBAC5B,SAAS,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;wBAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;oBACpD,CAAC,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;iBACvD;aACF;YAED,gBAAgB;YAChB,MAAM,iBAAiB,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,CAAC;YAC/C,IAAI,iBAAiB,EAAE;gBACrB,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;oBACpC,iBAAiB,CAAC,OAAO,CAAC,CAAC,SAAc,EAAE,EAAE;wBAC3C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;oBACxE,CAAC,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBAC/E;aACF;QACH,CAAC;QAEM,oCAAoC;YACzC,MAAM,aAAa,GAAmC,EAAE,CAAC;YACzD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;;gBAClC,IAAI,MAAA,GAAG,CAAC,iBAAiB,0CAAE,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,mCAAmC,CAAC;oBAC9F,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAE1B,mFAAmF;gBACnF,kGAAkG;qBAC7F,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;uBAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC,6BAA6B,CAAC,GAAG,CAAC;uBAC1F,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAC7E,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YACH,OAAO,aAAa,CAAC;QACvB,CAAC;KACF;IA9CY,uBAAQ,WA8CpB,CAAA;IAED,MAAa,KAAK;QAIhB,kBAAkB;QAElB,YAAoB,KAAU;;YAAV,UAAK,GAAL,KAAK,CAAK;YALd,cAAS,GAAY,KAAK,CAAC;YAMzC,IAAI,CAAC,KAAK;gBACR,OAAO;YAET,IAAI,MAAA,KAAK,CAAC,WAAW,0CAAE,SAAS;gBAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;YAExE,IAAI,CAAC,KAAK,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,0CAAE,KAAK,CAAC;YACrD,IAAI,CAAC,UAAU,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,0CAAE,KAAK,CAAC;QACjE,CAAC;KACF;IAhBY,oBAAK,QAgBjB,CAAA;IACD,MAAa,WAAW;QAItB,YAAY,KAAU;;YACpB,IAAI,CAAC,GAAG,GAAG,MAAA,KAAK,CAAC,WAAW,0CAAE,GAAG,CAAC;YAClC,MAAM,WAAW,GAAG,MAAA,MAAA,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,0CAAE,KAAK,0CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACrG,MAAM,WAAW,GAAG,MAAA,MAAA,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,0CAAE,KAAK,0CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACrG,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;gBACtD,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QACpG,CAAC;KACF;IAXY,0BAAW,cAWvB,CAAA;IAED,MAAa,iBAAiB;QAE5B,4BAA4B;QAE5B,YAAY,KAAU;;YACpB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,0CAAE,KAAK,EAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;KACF;IAPY,gCAAiB,oBAO7B,CAAA;IAED,MAAa,aAAa;QAQxB,YAAY,KAAU;;YAFN,eAAU,GAAiB,EAAE,CAAC;YAG5C,IAAI,CAAC,UAAU,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,0CAAE,KAAK,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,UAAU;gBAClB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAE1C,IAAI,CAAC,KAAK,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,0CAAE,KAAK,CAAC;YACrD,IAAI,CAAC,QAAQ,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,0CAAE,KAAK,CAAC;YAC3D,IAAI,CAAC,YAAY,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,0CAAE,KAAK,CAAC;YACnE,IAAI,CAAC,IAAI,CAAC,YAAY;gBACpB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAE7C,IAAI,CAAC,iBAAiB,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,wBAAwB,CAAC,0CAAE,KAAK,CAAC;YAE7E,cAAc;YACd,wGAAwG;YACxG,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;YACzD,IAAI,CAAC,UAAU;gBACb,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAE7D,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAC7B,UAAU,CAAC,OAAO,CAAC,CAAC,EAAO,EAAE,EAAE;oBAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;aAClD;QACH,CAAC;KACF;IAnCY,4BAAa,gBAmCzB,CAAA;IAED,MAAa,UAAU;QAWrB,YAAY,KAAU;;YACpB,IAAI,CAAC,KAAK;gBACR,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAEhD,IAAI,CAAC,UAAU,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,0CAAE,KAAK,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,UAAU;gBAClB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAE1C,IAAI,CAAC,KAAK,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,0CAAE,KAAK,CAAC;YACrD,IAAI,CAAC,QAAQ,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,0CAAE,KAAK,CAAC;YAE3D,oBAAoB;YACpB,MAAM,aAAa,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,uBAAuB,CAAC,0CAAE,KAAK,CAAC;YACzE,IAAI,CAAC,aAAa;gBAChB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAC/D,IAAI,CAAC,gBAAgB,GAAG,CAAC,aAAa,CAAC;YAEvC,kBAAkB;YAClB,MAAM,aAAa,GAAG,MAAA,MAAA,KAAK,CAAC,YAAY,CAAC,oBAAoB,CAAC,0CAAE,KAAK,0CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACzG,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,MAAK,CAAC;gBAC7B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC3D,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAExE,aAAa;YACb,MAAM,YAAY,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,0CAAE,KAAK,CAAC;YACjE,IAAI,CAAC,YAAY;gBACf,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,IAAI,CAAC,SAAS,GAAG,CAAC,YAAY,CAAC;YAE/B,cAAc;YACd,MAAM,aAAa,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,0CAAE,KAAK,CAAC;YACnE,IAAI,CAAC,aAAa;gBAChB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,IAAI,CAAC,UAAU,GAAG,CAAC,aAAa,CAAC;YAEjC,eAAe;YACf,MAAM,cAAc,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,0CAAE,KAAK,CAAC;YACrE,IAAI,CAAC,cAAc;gBACjB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,IAAI,CAAC,WAAW,GAAG,CAAC,cAAc,CAAC;YAEnC,gBAAgB;YAChB,MAAM,eAAe,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,0CAAE,KAAK,CAAC;YACvE,IAAI,CAAC,eAAe;gBAClB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe,CAAC;QACvC,CAAC;KACF;IA1DY,yBAAU,aA0DtB,CAAA;IAED,MAAa,KAAK;QAUhB,YAAY,KAAU;;YAHN,WAAM,GAAY,EAAE,CAAC;YACrB,uBAAkB,GAAwB,EAAE,CAAC;YAG3D,IAAI,CAAC,KAAK;gBACR,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAEhD,IAAI,CAAC,UAAU,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,0CAAE,KAAK,CAAC;YAC/D,IAAI,CAAC,KAAK,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,0CAAE,KAAK,CAAC;YACrD,IAAI,CAAC,MAAM,GAAG,MAAA,KAAK,CAAC,MAAM,0CAAE,KAAK,CAAC;YAElC,cAAc;YACd,IAAI,CAAC,WAAW,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAElI,oBAAoB;YACpB,MAAM,WAAW,GAAG,MAAA,MAAA,MAAA,KAAK,CAAC,YAAY,CAAC,uBAAuB,CAAC,0CAAG,YAAY,CAAC,kBAAkB,CAAC,0CAAE,KAAK,0CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7I,MAAM,WAAW,GAAG,MAAA,MAAA,MAAA,KAAK,CAAC,YAAY,CAAC,uBAAuB,CAAC,0CAAG,YAAY,CAAC,kBAAkB,CAAC,0CAAE,KAAK,0CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7I,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,MAAK,CAAC,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,MAAK,CAAC;gBACxD,IAAI,CAAC,gBAAgB,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAE9H,8FAA8F;YAC9F,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,GAAG,0CAAE,QAAQ,CAAC,WAAW,CAAC,MAAI,MAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,GAAG,0CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA,CAAC,EAAE;gBACzH,IAAI,CAAC,gBAAgB,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,MAAA,IAAI,CAAC,WAAW,CAAC,KAAK,0CAAE,GAAG,CAAC,CAAC,EAAE,MAAA,IAAI,CAAC,WAAW,CAAC,KAAK,0CAAE,GAAG,CAAC,CAAC,EAAE,MAAA,IAAI,CAAC,WAAW,CAAC,KAAK,0CAAE,IAAI,CAAC,CAAC,EAAE,MAAA,IAAI,CAAC,WAAW,CAAC,KAAK,0CAAE,IAAI,CAAC,CAAC,CAAC,CAAC;aAC3L;YAED,QAAQ;YACR,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBAC9B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;oBACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;aACJ;iBAAM,IAAI,KAAK,CAAC,KAAK,EAAE;gBACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;aAC1C;YAED,oBAAoB;YACpB,uGAAuG;YACvG,MAAM,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;YAEvE,IAAI,CAAC,iBAAiB;gBACpB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAE7D,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;gBACpC,iBAAiB,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;oBACtC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5D,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAC;aACxE;QACH,CAAC;KACF;IAxDY,oBAAK,QAwDjB,CAAA;AACH,CAAC,EAzagB,cAAc,KAAd,cAAc,QAya9B;AAED,gBAAgB;AAChB,MAAM,OAAO,gBAAgB;IAW3B,YAAoB,KAAU;;QAAV,UAAK,GAAL,KAAK,CAAK;QAC5B,uBAAuB;QACvB,IAAI,CAAC,OAAO,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,0CAAE,WAAW,CAAC,OAAO,CAAC;QAExD,yBAAyB;QACzB,IAAI,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,0CAAG,cAAc,CAAC,YAAY,CAAC,4BAA4B,CAAC;YACjF,IAAI,CAAC,qBAAqB,GAAG,IAAI,cAAc,CAAC,qBAAqB,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,0CAAG,cAAc,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAAC,CAAC;QAEzJ,sBAAsB;QACtB,IAAI,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,0CAAG,cAAc,CAAC,YAAY,CAAC,yBAAyB,CAAC;YAC9E,IAAI,CAAC,kBAAkB,GAAG,IAAI,cAAc,CAAC,iBAAiB,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,0CAAG,cAAc,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAE/I,WAAW;QACX,IAAI,MAAA,KAAK,CAAC,YAAY,0CAAE,QAAQ;YAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAA,KAAK,CAAC,YAAY,0CAAE,QAAQ,CAAC,CAAC;IAC9E,CAAC;IAvBD,IAAW,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAyBjC,MAAM,CAAC,aAAa,CAAC,eAAuB;QACjD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9G,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAClD,OAAO,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,WAAqC,EAAE,WAAqB;QAClG,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,MAAM,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5D,IAAI,MAAM,KAAK,SAAS;gBACtB,OAAO,MAAM,CAAC;SACjB;QAED,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,uCAAuC,EAAE,WAAW,CAAC,CAAC;QAE1H,IAAI,CAAC,eAAe;YAClB,OAAO,SAAS,CAAC;QAEnB,MAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QACrE,IAAI,YAAY;YACd,gBAAgB,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAE7D,OAAO,YAAY,CAAC;IACtB,CAAC;;AAlDc,mCAAkB,GAAG,IAAI,GAAG,EAAwC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\nimport { Point2d, Range2d } from \"@itwin/core-geometry\";\r\nimport { request, RequestBasicCredentials, RequestOptions } from \"@bentley/itwin-client\";\r\nimport { xml2json } from \"xml-js\";\r\nimport { MapCartoRectangle, WmsUtilities } from \"../internal\"; // WmsUtilities needed for getBaseUrl\r\n\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\n/**\r\n * fetch XML from HTTP request\r\n * @param url server URL to address the request\r\n * @internal\r\n */\r\nasync function getXml(url: string, credentials?: RequestBasicCredentials): Promise<any> {\r\n const options: RequestOptions = {\r\n method: \"GET\",\r\n responseType: \"text\",\r\n timeout: { response: 20000 },\r\n retries: 2,\r\n auth: credentials,\r\n };\r\n const data = await request(url, options);\r\n return data.text;\r\n}\r\n\r\n/** Encapsulation of the capabilities for an WMTS server\r\n * @internal\r\n */\r\nexport namespace WmtsCapability {\r\n\r\n export abstract class OwsConstants {\r\n // OWS xml tag names\r\n public static readonly ABSTRACT_XMLTAG = \"ows:Abstract\";\r\n public static readonly ACCESSCONSTRAINTS_XMLTAG = \"ows:AccessConstraints\";\r\n public static readonly ALLOWEDVALUES_XMLTAG = \"ows:AllowedValues\";\r\n public static readonly BOUNDINGBOX_XMLTAG = \"ows:BoundingBox\";\r\n public static readonly CONSTRAINT_XMLTAG = \"ows:Constraint\";\r\n public static readonly DCP_XMLTAG = \"ows:DCP\";\r\n public static readonly FEES_XMLTAG = \"ows:Fees\";\r\n public static readonly GET_XMLTAG = \"ows:Get\";\r\n public static readonly HTTP_XMLTAG = \"ows:HTTP\";\r\n public static readonly IDENTIFIER_XMLTAG = \"ows:Identifier\";\r\n public static readonly KEYWORDS_XMLTAG = \"ows:Keywords\";\r\n public static readonly KEYWORD_XMLTAG = \"ows:Keyword\";\r\n public static readonly LOWERCORNER_XMLTAG = \"ows:LowerCorner\";\r\n public static readonly OPERATION_XMLTAG = \"ows:Operation\";\r\n public static readonly OPERATIONSMETADATA_XMLTAG = \"ows:OperationsMetadata\";\r\n public static readonly POST_XMLTAG = \"ows:Post\";\r\n public static readonly SERVICEIDENTIFICATION_XMLTAG = \"ows:ServiceIdentification\";\r\n public static readonly SERVICETYPE_XMLTAG = \"ows:ServiceType\";\r\n public static readonly SERVICETYPEVERSION_XMLTAG = \"ows:ServiceTypeVersion\";\r\n public static readonly SUPPORTEDCRS_XMLTAG = \"ows:SupportedCRS\";\r\n public static readonly TITLE_XMLTAG = \"ows:Title\";\r\n public static readonly UPPERCORNER_XMLTAG = \"ows:UpperCorner\";\r\n public static readonly VALUE_XMLTAG = \"ows:Value\";\r\n public static readonly WGS84BOUNDINGBOX_XMLTAG = \"ows:WGS84BoundingBox\";\r\n }\r\n\r\n export abstract class XmlConstants {\r\n // Operations names\r\n public static readonly GETCAPABILITIES = \"GetCapabilities\";\r\n public static readonly GETTILE = \"GetTile\";\r\n public static readonly GETFEATUREINFO = \"GetFeatureInfo\";\r\n\r\n public static readonly MATRIXWIDTH_XMLTAG = \"MatrixWidth\";\r\n public static readonly MATRIXHEIGHT_XMLTAG = \"MatrixHeight\";\r\n public static readonly SCALEDENOMINATOR_XMLTAG = \"ScaleDenominator\";\r\n\r\n public static readonly TILEHEIGHT_XMLTAG = \"TileHeight\";\r\n public static readonly TILEMATRIX_XMLTAG = \"TileMatrix\";\r\n public static readonly TILEMATRIXSETLINK_XMLTAG = \"TileMatrixSetLink\";\r\n public static readonly TILEWIDTH_XMLTAG = \"TileWidth\";\r\n public static readonly TOPLEFTCORNER_XMLTAG = \"TopLeftCorner\";\r\n public static readonly WELLKNOWNSCALESET_XMLTAG = \"WellKnownScaleSet\";\r\n\r\n public static readonly CONSTRAINT_NAME_FILTER = \"Encoding\";\r\n public static readonly STYLE_ISDEFAULT = \"IsDefault\";\r\n public static readonly XLINK_HREF = \"xlink:href\";\r\n }\r\n\r\n export abstract class Constants {\r\n public static readonly GOOGLEMAPS_LEVEL0_SCALE_DENOM = 559082264.0287178;\r\n public static readonly GOOGLEMAPS_COMPATIBLE_WELLKNOWNNAME = \"googlemapscompatible\";\r\n }\r\n\r\n export class ServiceIdentification {\r\n public readonly abstract?: string;\r\n public readonly accessConstraints?: string;\r\n public readonly fees?: string;\r\n public readonly serviceType?: string;\r\n public readonly serviceTypeVersion?: string;\r\n public readonly title?: string;\r\n public readonly keywords?: string[];\r\n\r\n constructor(json: any) {\r\n this.abstract = json[OwsConstants.ABSTRACT_XMLTAG]?._text;\r\n this.serviceType = json[OwsConstants.SERVICETYPE_XMLTAG]?._text;\r\n this.serviceTypeVersion = json[OwsConstants.SERVICETYPEVERSION_XMLTAG]?._text;\r\n this.title = json[OwsConstants.TITLE_XMLTAG]?._text;\r\n\r\n const keywords = json[OwsConstants.KEYWORDS_XMLTAG]?.[OwsConstants.KEYWORD_XMLTAG];\r\n if (keywords !== undefined) {\r\n this.keywords = [];\r\n\r\n if (Array.isArray(keywords)) {\r\n for (const keyword of keywords) {\r\n if (keyword !== undefined) {\r\n this.keywords.push(keyword._text);\r\n }\r\n }\r\n } else {\r\n this.keywords.push(keywords._text);\r\n }\r\n }\r\n\r\n this.accessConstraints = json[OwsConstants.ACCESSCONSTRAINTS_XMLTAG]?._text;\r\n this.fees = json[OwsConstants.FEES_XMLTAG]?._text;\r\n }\r\n }\r\n\r\n export class OperationMetadata {\r\n private _getCapabilities?: Operation;\r\n public get getCapabilities(): Operation | undefined { return this._getCapabilities; }\r\n\r\n private _getFeatureInfo?: Operation;\r\n public get getFeatureInfo(): Operation | undefined { return this._getFeatureInfo; }\r\n\r\n private _getTile?: Operation;\r\n public get getTile(): Operation | undefined { return this._getTile; }\r\n\r\n private readOperation(op: any) {\r\n if (op?._attributes?.name === XmlConstants.GETCAPABILITIES)\r\n this._getCapabilities = new Operation(op);\r\n else if (op?._attributes?.name === XmlConstants.GETTILE)\r\n this._getTile = new Operation(op);\r\n else if (op?._attributes?.name === XmlConstants.GETFEATUREINFO)\r\n this._getFeatureInfo = new Operation(op);\r\n }\r\n\r\n constructor(json: any) {\r\n const operation = (json ? json[OwsConstants.OPERATION_XMLTAG] : undefined);\r\n if (operation) {\r\n if (Array.isArray(operation)) {\r\n operation.forEach((op: any) => {\r\n this.readOperation(op);\r\n });\r\n } else {\r\n this.readOperation(operation);\r\n }\r\n }\r\n }\r\n }\r\n\r\n export class HttpDcp {\r\n public readonly url?: string;\r\n public readonly constraintName?: string;\r\n\r\n // For simplicity of use we create a 'static' encoding property instead of having\r\n // a generic constraint data model.\r\n // We make sure the constraint name is 'encoding' related.\r\n public readonly encoding?: string;\r\n\r\n constructor(json: any) {\r\n this.url = json?._attributes[XmlConstants.XLINK_HREF];\r\n this.constraintName = (json ? json[OwsConstants.CONSTRAINT_XMLTAG]?._attributes?.name : undefined);\r\n if (this.constraintName?.endsWith(XmlConstants.CONSTRAINT_NAME_FILTER))\r\n this.encoding = json[OwsConstants.CONSTRAINT_XMLTAG]?.[OwsConstants.ALLOWEDVALUES_XMLTAG]?.[OwsConstants.VALUE_XMLTAG]?._text;\r\n }\r\n }\r\n\r\n export class Operation {\r\n public readonly name?: string;\r\n private _getDcpHttp?: HttpDcp[];\r\n public get getDcpHttp(): HttpDcp[] | undefined { return this._getDcpHttp; }\r\n private _postDcpHttp?: HttpDcp[];\r\n public get postDcpHttp(): HttpDcp[] | undefined { return this._postDcpHttp; }\r\n\r\n constructor(json: any) {\r\n this.name = json?._attributes?.name;\r\n\r\n const dcpHttp = (json ? json[OwsConstants.DCP_XMLTAG]?.[OwsConstants.HTTP_XMLTAG] : undefined);\r\n if (!dcpHttp)\r\n return;\r\n\r\n const get = dcpHttp[OwsConstants.GET_XMLTAG];\r\n if (get) {\r\n this._getDcpHttp = [];\r\n\r\n if (Array.isArray(get)) {\r\n get.forEach((getItem: any) => {\r\n this._getDcpHttp?.push(new WmtsCapability.HttpDcp(getItem));\r\n });\r\n } else {\r\n this._getDcpHttp?.push(new WmtsCapability.HttpDcp(get));\r\n }\r\n }\r\n\r\n const post = dcpHttp[OwsConstants.POST_XMLTAG];\r\n if (post) {\r\n this._postDcpHttp = [];\r\n\r\n if (Array.isArray(post)) {\r\n post.forEach((postItem: any) => {\r\n this._postDcpHttp?.push(new WmtsCapability.HttpDcp(postItem));\r\n });\r\n } else {\r\n this._postDcpHttp?.push(new WmtsCapability.HttpDcp(post));\r\n }\r\n }\r\n }\r\n }\r\n\r\n export class Contents {\r\n public readonly layers: WmtsCapability.Layer[] = [];\r\n public readonly tileMatrixSets: WmtsCapability.TileMatrixSet[] = [];\r\n\r\n constructor(private _json: any) {\r\n\r\n // Layers\r\n const jsonLayer = _json?.Layer;\r\n if (jsonLayer) {\r\n if (Array.isArray(jsonLayer)) {\r\n jsonLayer.forEach((layer: any) => {\r\n this.layers.push(new WmtsCapability.Layer(layer));\r\n });\r\n } else {\r\n this.layers.push(new WmtsCapability.Layer(jsonLayer));\r\n }\r\n }\r\n\r\n // TileMatrixSet\r\n const jsonTileMatrixSet = _json?.TileMatrixSet;\r\n if (jsonTileMatrixSet) {\r\n if (Array.isArray(jsonTileMatrixSet)) {\r\n jsonTileMatrixSet.forEach((matrixSet: any) => {\r\n this.tileMatrixSets.push(new WmtsCapability.TileMatrixSet(matrixSet));\r\n });\r\n } else {\r\n this.tileMatrixSets.push(new WmtsCapability.TileMatrixSet(jsonTileMatrixSet));\r\n }\r\n }\r\n }\r\n\r\n public getGoogleMapsCompatibleTileMatrixSet(): WmtsCapability.TileMatrixSet[] {\r\n const googleMapsTms: WmtsCapability.TileMatrixSet[] = [];\r\n this.tileMatrixSets.forEach((tms) => {\r\n if (tms.wellKnownScaleSet?.toLowerCase().includes(Constants.GOOGLEMAPS_COMPATIBLE_WELLKNOWNNAME))\r\n googleMapsTms.push(tms);\r\n\r\n // In case wellKnownScaleSet was not been set properly, infer from scaleDenominator\r\n // Note: some servers are quite inaccurate in their scale values, hence I used a delta value of 1.\r\n else if (tms.tileMatrix.length > 0\r\n && Math.abs(tms.tileMatrix[0].scaleDenominator - Constants.GOOGLEMAPS_LEVEL0_SCALE_DENOM) < 1\r\n && (tms.supportedCrs.includes(\"3857\") || tms.supportedCrs.includes(\"900913\")))\r\n googleMapsTms.push(tms);\r\n });\r\n return googleMapsTms;\r\n }\r\n }\r\n\r\n export class Style {\r\n public readonly isDefault: boolean = false;\r\n public readonly title?: string;\r\n public readonly identifier?: string;\r\n // TODO: LegendURL\r\n\r\n constructor(private _json: any) {\r\n if (!_json)\r\n return;\r\n\r\n if (_json._attributes?.isDefault)\r\n this.isDefault = _json._attributes.isDefault.toLowerCase() === \"true\";\r\n\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n }\r\n }\r\n export class BoundingBox {\r\n public readonly crs?: string;\r\n public readonly range?: Range2d;\r\n\r\n constructor(_json: any) {\r\n this.crs = _json._attributes?.crs;\r\n const lowerCorner = _json[OwsConstants.LOWERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n const upperCorner = _json[OwsConstants.UPPERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n if (lowerCorner.length === 2 && upperCorner.length === 2)\r\n this.range = Range2d.createXYXY(lowerCorner[0], lowerCorner[1], upperCorner[0], upperCorner[1]);\r\n }\r\n }\r\n\r\n export class TileMatrixSetLink {\r\n public readonly tileMatrixSet: string;\r\n // TODO: TileMatrixSetLimits\r\n\r\n constructor(_json: any) {\r\n this.tileMatrixSet = (_json?.TileMatrixSet?._text ? _json.TileMatrixSet._text : \"\");\r\n }\r\n }\r\n\r\n export class TileMatrixSet {\r\n public readonly identifier: string;\r\n public readonly title?: string;\r\n public readonly abstract?: string;\r\n public readonly supportedCrs: string;\r\n public readonly wellKnownScaleSet: string;\r\n public readonly tileMatrix: TileMatrix[] = [];\r\n\r\n constructor(_json: any) {\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n if (!this.identifier)\r\n throw new Error(\"No Identifier found.\");\r\n\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.abstract = _json[OwsConstants.ABSTRACT_XMLTAG]?._text;\r\n this.supportedCrs = _json[OwsConstants.SUPPORTEDCRS_XMLTAG]?._text;\r\n if (!this.supportedCrs)\r\n throw new Error(\"No supported CRS found.\");\r\n\r\n this.wellKnownScaleSet = _json[XmlConstants.WELLKNOWNSCALESET_XMLTAG]?._text;\r\n\r\n // TileMatrix:\r\n // TileMatrix is mandatory on TileMatrixSet, if it doesn't exists, something is OFF with the capability.\r\n const tileMatrix = _json[XmlConstants.TILEMATRIX_XMLTAG];\r\n if (!tileMatrix)\r\n throw new Error(\"No matrix set link found for WMTS layer\");\r\n\r\n if (Array.isArray(tileMatrix)) {\r\n tileMatrix.forEach((tm: any) => {\r\n this.tileMatrix.push(new TileMatrix(tm));\r\n });\r\n } else {\r\n this.tileMatrix.push(new TileMatrix(tileMatrix));\r\n }\r\n }\r\n }\r\n\r\n export class TileMatrix {\r\n public readonly identifier: string;\r\n public readonly title?: string;\r\n public readonly abstract?: string;\r\n public readonly scaleDenominator: number;\r\n public readonly topLeftCorner: Point2d;\r\n public readonly tileWidth: number;\r\n public readonly tileHeight: number;\r\n public readonly matrixWidth: number;\r\n public readonly matrixHeight: number;\r\n\r\n constructor(_json: any) {\r\n if (!_json)\r\n throw new Error(\"Invalid json data provided\");\r\n\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n if (!this.identifier)\r\n throw new Error(\"No Identifier found.\");\r\n\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.abstract = _json[OwsConstants.ABSTRACT_XMLTAG]?._text;\r\n\r\n // Scale denominator\r\n const scaleDenomStr = _json[XmlConstants.SCALEDENOMINATOR_XMLTAG]?._text;\r\n if (!scaleDenomStr)\r\n throw new Error(\"No scale denominator found on TileMatrix.\");\r\n this.scaleDenominator = +scaleDenomStr;\r\n\r\n // Top left corner\r\n const topLeftCorner = _json[XmlConstants.TOPLEFTCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n if (topLeftCorner?.length !== 2)\r\n throw new Error(\"No TopLeftCorner found on TileMatrix.\");\r\n this.topLeftCorner = Point2d.create(topLeftCorner[0], topLeftCorner[1]);\r\n\r\n // Tile Width\r\n const tileWidthStr = _json[XmlConstants.TILEWIDTH_XMLTAG]?._text;\r\n if (!tileWidthStr)\r\n throw new Error(\"No tile width found on TileMatrix.\");\r\n this.tileWidth = +tileWidthStr;\r\n\r\n // Tile Height\r\n const tileHeightStr = _json[XmlConstants.TILEHEIGHT_XMLTAG]?._text;\r\n if (!tileHeightStr)\r\n throw new Error(\"No tile eight found on TileMatrix.\");\r\n this.tileHeight = +tileHeightStr;\r\n\r\n // Matrix Width\r\n const matrixWidthStr = _json[XmlConstants.MATRIXWIDTH_XMLTAG]?._text;\r\n if (!matrixWidthStr)\r\n throw new Error(\"No tile width found on TileMatrix.\");\r\n this.matrixWidth = +matrixWidthStr;\r\n\r\n // Matrix Height\r\n const matrixHeightStr = _json[XmlConstants.MATRIXHEIGHT_XMLTAG]?._text;\r\n if (!matrixHeightStr)\r\n throw new Error(\"No tile eight found on TileMatrix.\");\r\n this.matrixHeight = +matrixHeightStr;\r\n }\r\n }\r\n\r\n export class Layer {\r\n public readonly identifier: string;\r\n public readonly title?: string;\r\n public readonly abstract?: string;\r\n public readonly format?: string;\r\n public readonly wsg84BoundingBox?: MapCartoRectangle;\r\n public readonly boundingBox?: BoundingBox;\r\n public readonly styles: Style[] = [];\r\n public readonly tileMatrixSetLinks: TileMatrixSetLink[] = [];\r\n\r\n constructor(_json: any) {\r\n if (!_json)\r\n throw new Error(\"Invalid json data provided\");\r\n\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.format = _json.Format?._text;\r\n\r\n // BoundingBox\r\n this.boundingBox = (_json[OwsConstants.BOUNDINGBOX_XMLTAG] ? new BoundingBox(_json[OwsConstants.BOUNDINGBOX_XMLTAG]) : undefined);\r\n\r\n // WSG84 BoundingBox\r\n const lowerCorner = _json[OwsConstants.WGS84BOUNDINGBOX_XMLTAG]?.[OwsConstants.LOWERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n const upperCorner = _json[OwsConstants.WGS84BOUNDINGBOX_XMLTAG]?.[OwsConstants.UPPERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n if (lowerCorner?.length === 2 && upperCorner?.length === 2)\r\n this.wsg84BoundingBox = MapCartoRectangle.createFromDegrees(lowerCorner[0], lowerCorner[1], upperCorner[0], upperCorner[1]);\r\n\r\n // If we could not initialized WSG84 bounding box, attempt to initialized it from Bounding Box\r\n if (!this.wsg84BoundingBox && (this.boundingBox?.crs?.includes(\"EPSG:4326\") || this.boundingBox?.crs?.includes(\"CRS:84\"))) {\r\n this.wsg84BoundingBox = MapCartoRectangle.createFromDegrees(this.boundingBox.range?.low.x, this.boundingBox.range?.low.y, this.boundingBox.range?.high.x, this.boundingBox.range?.high.y);\r\n }\r\n\r\n // Style\r\n if (Array.isArray(_json.Style)) {\r\n _json.Style.forEach((style: any) => {\r\n this.styles.push(new Style(style));\r\n });\r\n } else if (_json.Style) {\r\n this.styles.push(new Style(_json.Style));\r\n }\r\n\r\n // TileMatrixSetLink\r\n // TileMatrixSetLink is mandatory on Layer, if it doesn't exists, something is OFF with the capability.\r\n const tileMatrixSetLink = _json[XmlConstants.TILEMATRIXSETLINK_XMLTAG];\r\n\r\n if (!tileMatrixSetLink)\r\n throw new Error(\"No matrix set link found for WMTS layer\");\r\n\r\n if (Array.isArray(tileMatrixSetLink)) {\r\n tileMatrixSetLink.forEach((tmsl: any) => {\r\n this.tileMatrixSetLinks.push(new TileMatrixSetLink(tmsl));\r\n });\r\n } else {\r\n this.tileMatrixSetLinks.push(new TileMatrixSetLink(tileMatrixSetLink));\r\n }\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class WmtsCapabilities {\r\n private static _capabilitiesCache = new Map<string, WmtsCapabilities | undefined>();\r\n\r\n public get json() { return this._json; }\r\n\r\n public readonly version?: string;\r\n public readonly serviceIdentification?: WmtsCapability.ServiceIdentification;\r\n public readonly contents?: WmtsCapability.Contents;\r\n\r\n public readonly operationsMetadata?: WmtsCapability.OperationMetadata;\r\n\r\n constructor(private _json: any) {\r\n // Capabilities version\r\n this.version = _json?.Capabilities?._attributes.version;\r\n\r\n // Service Identification\r\n if (_json?.Capabilities?.[WmtsCapability.OwsConstants.SERVICEIDENTIFICATION_XMLTAG])\r\n this.serviceIdentification = new WmtsCapability.ServiceIdentification(_json?.Capabilities?.[WmtsCapability.OwsConstants.SERVICEIDENTIFICATION_XMLTAG]);\r\n\r\n // Operations metadata\r\n if (_json?.Capabilities?.[WmtsCapability.OwsConstants.OPERATIONSMETADATA_XMLTAG])\r\n this.operationsMetadata = new WmtsCapability.OperationMetadata(_json?.Capabilities?.[WmtsCapability.OwsConstants.OPERATIONSMETADATA_XMLTAG]);\r\n\r\n // Contents\r\n if (_json.Capabilities?.Contents)\r\n this.contents = new WmtsCapability.Contents(_json.Capabilities?.Contents);\r\n }\r\n\r\n public static createFromXml(xmlCapabilities: string): WmtsCapabilities | undefined {\r\n const jsonCapabilities = xml2json(xmlCapabilities, { compact: true, nativeType: false, ignoreComment: true });\r\n const capabilities = JSON.parse(jsonCapabilities);\r\n return new WmtsCapabilities(capabilities);\r\n }\r\n\r\n public static async create(url: string, credentials?: RequestBasicCredentials, ignoreCache?: boolean): Promise<WmtsCapabilities | undefined> {\r\n if (!ignoreCache) {\r\n const cached = WmtsCapabilities._capabilitiesCache.get(url);\r\n if (cached !== undefined)\r\n return cached;\r\n }\r\n\r\n const xmlCapabilities = await getXml(`${WmsUtilities.getBaseUrl(url)}?request=GetCapabilities&service=WMTS`, credentials);\r\n\r\n if (!xmlCapabilities)\r\n return undefined;\r\n\r\n const capabilities = WmtsCapabilities.createFromXml(xmlCapabilities);\r\n if (capabilities)\r\n WmtsCapabilities._capabilitiesCache.set(url, capabilities);\r\n\r\n return capabilities;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"WmtsCapabilities.js","sourceRoot":"","sources":["../../../../src/tile/map/WmtsCapabilities.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { Point2d, Range2d } from \"@itwin/core-geometry\";\r\nimport { request, RequestBasicCredentials, RequestOptions } from \"../../request/Request\";\r\nimport { xml2json } from \"xml-js\";\r\nimport { MapCartoRectangle, WmsUtilities } from \"../internal\"; // WmsUtilities needed for getBaseUrl\r\n\r\n/**\r\n * fetch XML from HTTP request\r\n * @param url server URL to address the request\r\n * @internal\r\n */\r\nasync function getXml(url: string, credentials?: RequestBasicCredentials): Promise<any> {\r\n const options: RequestOptions = {\r\n method: \"GET\",\r\n responseType: \"text\",\r\n timeout: { response: 20000 },\r\n retries: 2,\r\n auth: credentials,\r\n };\r\n const data = await request(url, options);\r\n return data.text;\r\n}\r\n\r\n/** Encapsulation of the capabilities for an WMTS server\r\n * @internal\r\n */\r\nexport namespace WmtsCapability {\r\n\r\n export abstract class OwsConstants {\r\n // OWS xml tag names\r\n public static readonly ABSTRACT_XMLTAG = \"ows:Abstract\";\r\n public static readonly ACCESSCONSTRAINTS_XMLTAG = \"ows:AccessConstraints\";\r\n public static readonly ALLOWEDVALUES_XMLTAG = \"ows:AllowedValues\";\r\n public static readonly BOUNDINGBOX_XMLTAG = \"ows:BoundingBox\";\r\n public static readonly CONSTRAINT_XMLTAG = \"ows:Constraint\";\r\n public static readonly DCP_XMLTAG = \"ows:DCP\";\r\n public static readonly FEES_XMLTAG = \"ows:Fees\";\r\n public static readonly GET_XMLTAG = \"ows:Get\";\r\n public static readonly HTTP_XMLTAG = \"ows:HTTP\";\r\n public static readonly IDENTIFIER_XMLTAG = \"ows:Identifier\";\r\n public static readonly KEYWORDS_XMLTAG = \"ows:Keywords\";\r\n public static readonly KEYWORD_XMLTAG = \"ows:Keyword\";\r\n public static readonly LOWERCORNER_XMLTAG = \"ows:LowerCorner\";\r\n public static readonly OPERATION_XMLTAG = \"ows:Operation\";\r\n public static readonly OPERATIONSMETADATA_XMLTAG = \"ows:OperationsMetadata\";\r\n public static readonly POST_XMLTAG = \"ows:Post\";\r\n public static readonly SERVICEIDENTIFICATION_XMLTAG = \"ows:ServiceIdentification\";\r\n public static readonly SERVICETYPE_XMLTAG = \"ows:ServiceType\";\r\n public static readonly SERVICETYPEVERSION_XMLTAG = \"ows:ServiceTypeVersion\";\r\n public static readonly SUPPORTEDCRS_XMLTAG = \"ows:SupportedCRS\";\r\n public static readonly TITLE_XMLTAG = \"ows:Title\";\r\n public static readonly UPPERCORNER_XMLTAG = \"ows:UpperCorner\";\r\n public static readonly VALUE_XMLTAG = \"ows:Value\";\r\n public static readonly WGS84BOUNDINGBOX_XMLTAG = \"ows:WGS84BoundingBox\";\r\n }\r\n\r\n export abstract class XmlConstants {\r\n // Operations names\r\n public static readonly GETCAPABILITIES = \"GetCapabilities\";\r\n public static readonly GETTILE = \"GetTile\";\r\n public static readonly GETFEATUREINFO = \"GetFeatureInfo\";\r\n\r\n public static readonly MATRIXWIDTH_XMLTAG = \"MatrixWidth\";\r\n public static readonly MATRIXHEIGHT_XMLTAG = \"MatrixHeight\";\r\n public static readonly SCALEDENOMINATOR_XMLTAG = \"ScaleDenominator\";\r\n\r\n public static readonly TILEHEIGHT_XMLTAG = \"TileHeight\";\r\n public static readonly TILEMATRIX_XMLTAG = \"TileMatrix\";\r\n public static readonly TILEMATRIXSETLINK_XMLTAG = \"TileMatrixSetLink\";\r\n public static readonly TILEWIDTH_XMLTAG = \"TileWidth\";\r\n public static readonly TOPLEFTCORNER_XMLTAG = \"TopLeftCorner\";\r\n public static readonly WELLKNOWNSCALESET_XMLTAG = \"WellKnownScaleSet\";\r\n\r\n public static readonly CONSTRAINT_NAME_FILTER = \"Encoding\";\r\n public static readonly STYLE_ISDEFAULT = \"IsDefault\";\r\n public static readonly XLINK_HREF = \"xlink:href\";\r\n }\r\n\r\n export abstract class Constants {\r\n public static readonly GOOGLEMAPS_LEVEL0_SCALE_DENOM = 559082264.0287178;\r\n public static readonly GOOGLEMAPS_COMPATIBLE_WELLKNOWNNAME = \"googlemapscompatible\";\r\n }\r\n\r\n export class ServiceIdentification {\r\n public readonly abstract?: string;\r\n public readonly accessConstraints?: string;\r\n public readonly fees?: string;\r\n public readonly serviceType?: string;\r\n public readonly serviceTypeVersion?: string;\r\n public readonly title?: string;\r\n public readonly keywords?: string[];\r\n\r\n constructor(json: any) {\r\n this.abstract = json[OwsConstants.ABSTRACT_XMLTAG]?._text;\r\n this.serviceType = json[OwsConstants.SERVICETYPE_XMLTAG]?._text;\r\n this.serviceTypeVersion = json[OwsConstants.SERVICETYPEVERSION_XMLTAG]?._text;\r\n this.title = json[OwsConstants.TITLE_XMLTAG]?._text;\r\n\r\n const keywords = json[OwsConstants.KEYWORDS_XMLTAG]?.[OwsConstants.KEYWORD_XMLTAG];\r\n if (keywords !== undefined) {\r\n this.keywords = [];\r\n\r\n if (Array.isArray(keywords)) {\r\n for (const keyword of keywords) {\r\n if (keyword !== undefined) {\r\n this.keywords.push(keyword._text);\r\n }\r\n }\r\n } else {\r\n this.keywords.push(keywords._text);\r\n }\r\n }\r\n\r\n this.accessConstraints = json[OwsConstants.ACCESSCONSTRAINTS_XMLTAG]?._text;\r\n this.fees = json[OwsConstants.FEES_XMLTAG]?._text;\r\n }\r\n }\r\n\r\n export class OperationMetadata {\r\n private _getCapabilities?: Operation;\r\n public get getCapabilities(): Operation | undefined { return this._getCapabilities; }\r\n\r\n private _getFeatureInfo?: Operation;\r\n public get getFeatureInfo(): Operation | undefined { return this._getFeatureInfo; }\r\n\r\n private _getTile?: Operation;\r\n public get getTile(): Operation | undefined { return this._getTile; }\r\n\r\n private readOperation(op: any) {\r\n if (op?._attributes?.name === XmlConstants.GETCAPABILITIES)\r\n this._getCapabilities = new Operation(op);\r\n else if (op?._attributes?.name === XmlConstants.GETTILE)\r\n this._getTile = new Operation(op);\r\n else if (op?._attributes?.name === XmlConstants.GETFEATUREINFO)\r\n this._getFeatureInfo = new Operation(op);\r\n }\r\n\r\n constructor(json: any) {\r\n const operation = (json ? json[OwsConstants.OPERATION_XMLTAG] : undefined);\r\n if (operation) {\r\n if (Array.isArray(operation)) {\r\n operation.forEach((op: any) => {\r\n this.readOperation(op);\r\n });\r\n } else {\r\n this.readOperation(operation);\r\n }\r\n }\r\n }\r\n }\r\n\r\n export class HttpDcp {\r\n public readonly url?: string;\r\n public readonly constraintName?: string;\r\n\r\n // For simplicity of use we create a 'static' encoding property instead of having\r\n // a generic constraint data model.\r\n // We make sure the constraint name is 'encoding' related.\r\n public readonly encoding?: string;\r\n\r\n constructor(json: any) {\r\n this.url = json?._attributes[XmlConstants.XLINK_HREF];\r\n this.constraintName = (json ? json[OwsConstants.CONSTRAINT_XMLTAG]?._attributes?.name : undefined);\r\n if (this.constraintName?.endsWith(XmlConstants.CONSTRAINT_NAME_FILTER))\r\n this.encoding = json[OwsConstants.CONSTRAINT_XMLTAG]?.[OwsConstants.ALLOWEDVALUES_XMLTAG]?.[OwsConstants.VALUE_XMLTAG]?._text;\r\n }\r\n }\r\n\r\n export class Operation {\r\n public readonly name?: string;\r\n private _getDcpHttp?: HttpDcp[];\r\n public get getDcpHttp(): HttpDcp[] | undefined { return this._getDcpHttp; }\r\n private _postDcpHttp?: HttpDcp[];\r\n public get postDcpHttp(): HttpDcp[] | undefined { return this._postDcpHttp; }\r\n\r\n constructor(json: any) {\r\n this.name = json?._attributes?.name;\r\n\r\n const dcpHttp = (json ? json[OwsConstants.DCP_XMLTAG]?.[OwsConstants.HTTP_XMLTAG] : undefined);\r\n if (!dcpHttp)\r\n return;\r\n\r\n const get = dcpHttp[OwsConstants.GET_XMLTAG];\r\n if (get) {\r\n this._getDcpHttp = [];\r\n\r\n if (Array.isArray(get)) {\r\n get.forEach((getItem: any) => {\r\n this._getDcpHttp?.push(new WmtsCapability.HttpDcp(getItem));\r\n });\r\n } else {\r\n this._getDcpHttp?.push(new WmtsCapability.HttpDcp(get));\r\n }\r\n }\r\n\r\n const post = dcpHttp[OwsConstants.POST_XMLTAG];\r\n if (post) {\r\n this._postDcpHttp = [];\r\n\r\n if (Array.isArray(post)) {\r\n post.forEach((postItem: any) => {\r\n this._postDcpHttp?.push(new WmtsCapability.HttpDcp(postItem));\r\n });\r\n } else {\r\n this._postDcpHttp?.push(new WmtsCapability.HttpDcp(post));\r\n }\r\n }\r\n }\r\n }\r\n\r\n export class Contents {\r\n public readonly layers: WmtsCapability.Layer[] = [];\r\n public readonly tileMatrixSets: WmtsCapability.TileMatrixSet[] = [];\r\n\r\n constructor(private _json: any) {\r\n\r\n // Layers\r\n const jsonLayer = _json?.Layer;\r\n if (jsonLayer) {\r\n if (Array.isArray(jsonLayer)) {\r\n jsonLayer.forEach((layer: any) => {\r\n this.layers.push(new WmtsCapability.Layer(layer));\r\n });\r\n } else {\r\n this.layers.push(new WmtsCapability.Layer(jsonLayer));\r\n }\r\n }\r\n\r\n // TileMatrixSet\r\n const jsonTileMatrixSet = _json?.TileMatrixSet;\r\n if (jsonTileMatrixSet) {\r\n if (Array.isArray(jsonTileMatrixSet)) {\r\n jsonTileMatrixSet.forEach((matrixSet: any) => {\r\n this.tileMatrixSets.push(new WmtsCapability.TileMatrixSet(matrixSet));\r\n });\r\n } else {\r\n this.tileMatrixSets.push(new WmtsCapability.TileMatrixSet(jsonTileMatrixSet));\r\n }\r\n }\r\n }\r\n\r\n public getGoogleMapsCompatibleTileMatrixSet(): WmtsCapability.TileMatrixSet[] {\r\n const googleMapsTms: WmtsCapability.TileMatrixSet[] = [];\r\n this.tileMatrixSets.forEach((tms) => {\r\n if (tms.wellKnownScaleSet?.toLowerCase().includes(Constants.GOOGLEMAPS_COMPATIBLE_WELLKNOWNNAME))\r\n googleMapsTms.push(tms);\r\n\r\n // In case wellKnownScaleSet was not been set properly, infer from scaleDenominator\r\n // Note: some servers are quite inaccurate in their scale values, hence I used a delta value of 1.\r\n else if (tms.tileMatrix.length > 0\r\n && Math.abs(tms.tileMatrix[0].scaleDenominator - Constants.GOOGLEMAPS_LEVEL0_SCALE_DENOM) < 1\r\n && (tms.supportedCrs.includes(\"3857\") || tms.supportedCrs.includes(\"900913\")))\r\n googleMapsTms.push(tms);\r\n });\r\n return googleMapsTms;\r\n }\r\n\r\n public getEpsg4326CompatibleTileMatrixSet(): WmtsCapability.TileMatrixSet[] {\r\n return this.tileMatrixSets.filter((tms) => tms.supportedCrs.includes(\"4326\"));\r\n }\r\n }\r\n\r\n export class Style {\r\n public readonly isDefault: boolean = false;\r\n public readonly title?: string;\r\n public readonly identifier?: string;\r\n // TODO: LegendURL\r\n\r\n constructor(private _json: any) {\r\n if (!_json)\r\n return;\r\n\r\n if (_json._attributes?.isDefault)\r\n this.isDefault = _json._attributes.isDefault.toLowerCase() === \"true\";\r\n\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n }\r\n }\r\n export class BoundingBox {\r\n public readonly crs?: string;\r\n public readonly range?: Range2d;\r\n\r\n constructor(_json: any) {\r\n this.crs = _json._attributes?.crs;\r\n const lowerCorner = _json[OwsConstants.LOWERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n const upperCorner = _json[OwsConstants.UPPERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n if (lowerCorner.length === 2 && upperCorner.length === 2)\r\n this.range = Range2d.createXYXY(lowerCorner[0], lowerCorner[1], upperCorner[0], upperCorner[1]);\r\n }\r\n }\r\n\r\n export class TileMatrixSetLimits {\r\n public limits?: Range2d;\r\n public tileMatrix?: string;\r\n\r\n constructor(_json: any) {\r\n this.tileMatrix = _json.TileMatrix;\r\n if (_json.MinTileRow !== undefined && _json.MaxTileRow !== undefined && _json.MinTileCol !== undefined && _json.MaxTileCol)\r\n this.limits = Range2d.createXYXY(Number(_json.MinTileCol._text), Number(_json.MinTileRow._text), Number(_json.MaxTileCol._text), Number(_json.MaxTileRow._text));\r\n }\r\n }\r\n\r\n export class TileMatrixSetLink {\r\n public readonly tileMatrixSet: string;\r\n public readonly tileMatrixSetLimits = new Array<TileMatrixSetLimits>();\r\n\r\n constructor(_json: any) {\r\n this.tileMatrixSet = (_json?.TileMatrixSet?._text ? _json.TileMatrixSet._text : \"\");\r\n const tileMatrixLimits = _json?.TileMatrixSetLimits?.TileMatrixLimits;\r\n if (Array.isArray(tileMatrixLimits))\r\n tileMatrixLimits.forEach((tml: any) => this.tileMatrixSetLimits.push(new TileMatrixSetLimits(tml)));\r\n }\r\n }\r\n\r\n export class TileMatrixSet {\r\n public readonly identifier: string;\r\n public readonly title?: string;\r\n public readonly abstract?: string;\r\n public readonly supportedCrs: string;\r\n public readonly wellKnownScaleSet: string;\r\n public readonly tileMatrix: TileMatrix[] = [];\r\n\r\n constructor(_json: any) {\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n if (!this.identifier)\r\n throw new Error(\"No Identifier found.\");\r\n\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.abstract = _json[OwsConstants.ABSTRACT_XMLTAG]?._text;\r\n this.supportedCrs = _json[OwsConstants.SUPPORTEDCRS_XMLTAG]?._text;\r\n if (!this.supportedCrs)\r\n throw new Error(\"No supported CRS found.\");\r\n\r\n this.wellKnownScaleSet = _json[XmlConstants.WELLKNOWNSCALESET_XMLTAG]?._text;\r\n\r\n // TileMatrix:\r\n // TileMatrix is mandatory on TileMatrixSet, if it doesn't exists, something is OFF with the capability.\r\n const tileMatrix = _json[XmlConstants.TILEMATRIX_XMLTAG];\r\n if (!tileMatrix)\r\n throw new Error(\"No matrix set link found for WMTS layer\");\r\n\r\n if (Array.isArray(tileMatrix)) {\r\n tileMatrix.forEach((tm: any) => {\r\n this.tileMatrix.push(new TileMatrix(tm));\r\n });\r\n } else {\r\n this.tileMatrix.push(new TileMatrix(tileMatrix));\r\n }\r\n }\r\n }\r\n\r\n export class TileMatrix {\r\n public readonly identifier: string;\r\n public readonly title?: string;\r\n public readonly abstract?: string;\r\n public readonly scaleDenominator: number;\r\n public readonly topLeftCorner: Point2d;\r\n public readonly tileWidth: number;\r\n public readonly tileHeight: number;\r\n public readonly matrixWidth: number;\r\n public readonly matrixHeight: number;\r\n\r\n constructor(_json: any) {\r\n if (!_json)\r\n throw new Error(\"Invalid json data provided\");\r\n\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n if (!this.identifier)\r\n throw new Error(\"No Identifier found.\");\r\n\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.abstract = _json[OwsConstants.ABSTRACT_XMLTAG]?._text;\r\n\r\n // Scale denominator\r\n const scaleDenomStr = _json[XmlConstants.SCALEDENOMINATOR_XMLTAG]?._text;\r\n if (!scaleDenomStr)\r\n throw new Error(\"No scale denominator found on TileMatrix.\");\r\n this.scaleDenominator = +scaleDenomStr;\r\n\r\n // Top left corner\r\n const topLeftCorner = _json[XmlConstants.TOPLEFTCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n if (topLeftCorner?.length !== 2)\r\n throw new Error(\"No TopLeftCorner found on TileMatrix.\");\r\n this.topLeftCorner = Point2d.create(topLeftCorner[0], topLeftCorner[1]);\r\n\r\n // Tile Width\r\n const tileWidthStr = _json[XmlConstants.TILEWIDTH_XMLTAG]?._text;\r\n if (!tileWidthStr)\r\n throw new Error(\"No tile width found on TileMatrix.\");\r\n this.tileWidth = +tileWidthStr;\r\n\r\n // Tile Height\r\n const tileHeightStr = _json[XmlConstants.TILEHEIGHT_XMLTAG]?._text;\r\n if (!tileHeightStr)\r\n throw new Error(\"No tile eight found on TileMatrix.\");\r\n this.tileHeight = +tileHeightStr;\r\n\r\n // Matrix Width\r\n const matrixWidthStr = _json[XmlConstants.MATRIXWIDTH_XMLTAG]?._text;\r\n if (!matrixWidthStr)\r\n throw new Error(\"No tile width found on TileMatrix.\");\r\n this.matrixWidth = +matrixWidthStr;\r\n\r\n // Matrix Height\r\n const matrixHeightStr = _json[XmlConstants.MATRIXHEIGHT_XMLTAG]?._text;\r\n if (!matrixHeightStr)\r\n throw new Error(\"No tile eight found on TileMatrix.\");\r\n this.matrixHeight = +matrixHeightStr;\r\n }\r\n }\r\n\r\n export class Layer {\r\n public readonly identifier: string;\r\n public readonly title?: string;\r\n public readonly abstract?: string;\r\n public readonly format?: string;\r\n public readonly wsg84BoundingBox?: MapCartoRectangle;\r\n public readonly boundingBox?: BoundingBox;\r\n public readonly styles: Style[] = [];\r\n public readonly tileMatrixSetLinks: TileMatrixSetLink[] = [];\r\n\r\n constructor(_json: any) {\r\n if (!_json)\r\n throw new Error(\"Invalid json data provided\");\r\n\r\n this.identifier = _json[OwsConstants.IDENTIFIER_XMLTAG]?._text;\r\n this.title = _json[OwsConstants.TITLE_XMLTAG]?._text;\r\n this.format = _json.Format?._text;\r\n\r\n // BoundingBox\r\n this.boundingBox = (_json[OwsConstants.BOUNDINGBOX_XMLTAG] ? new BoundingBox(_json[OwsConstants.BOUNDINGBOX_XMLTAG]) : undefined);\r\n\r\n // WSG84 BoundingBox\r\n const lowerCorner = _json[OwsConstants.WGS84BOUNDINGBOX_XMLTAG]?.[OwsConstants.LOWERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n const upperCorner = _json[OwsConstants.WGS84BOUNDINGBOX_XMLTAG]?.[OwsConstants.UPPERCORNER_XMLTAG]?._text?.split(\" \").map((x: string) => +x);\r\n if (lowerCorner?.length === 2 && upperCorner?.length === 2)\r\n this.wsg84BoundingBox = MapCartoRectangle.createFromDegrees(lowerCorner[0], lowerCorner[1], upperCorner[0], upperCorner[1]);\r\n\r\n // If we could not initialized WSG84 bounding box, attempt to initialized it from Bounding Box\r\n if (!this.wsg84BoundingBox && (this.boundingBox?.crs?.includes(\"EPSG:4326\") || this.boundingBox?.crs?.includes(\"CRS:84\"))) {\r\n this.wsg84BoundingBox = MapCartoRectangle.createFromDegrees(this.boundingBox.range?.low.x, this.boundingBox.range?.low.y, this.boundingBox.range?.high.x, this.boundingBox.range?.high.y);\r\n }\r\n\r\n // Style\r\n if (Array.isArray(_json.Style)) {\r\n _json.Style.forEach((style: any) => {\r\n this.styles.push(new Style(style));\r\n });\r\n } else if (_json.Style) {\r\n this.styles.push(new Style(_json.Style));\r\n }\r\n\r\n // TileMatrixSetLink\r\n // TileMatrixSetLink is mandatory on Layer, if it doesn't exists, something is OFF with the capability.\r\n const tileMatrixSetLink = _json[XmlConstants.TILEMATRIXSETLINK_XMLTAG];\r\n\r\n if (!tileMatrixSetLink)\r\n throw new Error(\"No matrix set link found for WMTS layer\");\r\n\r\n if (Array.isArray(tileMatrixSetLink)) {\r\n tileMatrixSetLink.forEach((tmsl: any) => {\r\n this.tileMatrixSetLinks.push(new TileMatrixSetLink(tmsl));\r\n });\r\n } else {\r\n this.tileMatrixSetLinks.push(new TileMatrixSetLink(tileMatrixSetLink));\r\n }\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class WmtsCapabilities {\r\n private static _capabilitiesCache = new Map<string, WmtsCapabilities | undefined>();\r\n\r\n public get json() { return this._json; }\r\n\r\n public readonly version?: string;\r\n public readonly serviceIdentification?: WmtsCapability.ServiceIdentification;\r\n public readonly contents?: WmtsCapability.Contents;\r\n\r\n public readonly operationsMetadata?: WmtsCapability.OperationMetadata;\r\n\r\n constructor(private _json: any) {\r\n // Capabilities version\r\n this.version = _json?.Capabilities?._attributes.version;\r\n\r\n // Service Identification\r\n if (_json?.Capabilities?.[WmtsCapability.OwsConstants.SERVICEIDENTIFICATION_XMLTAG])\r\n this.serviceIdentification = new WmtsCapability.ServiceIdentification(_json?.Capabilities?.[WmtsCapability.OwsConstants.SERVICEIDENTIFICATION_XMLTAG]);\r\n\r\n // Operations metadata\r\n if (_json?.Capabilities?.[WmtsCapability.OwsConstants.OPERATIONSMETADATA_XMLTAG])\r\n this.operationsMetadata = new WmtsCapability.OperationMetadata(_json?.Capabilities?.[WmtsCapability.OwsConstants.OPERATIONSMETADATA_XMLTAG]);\r\n\r\n // Contents\r\n if (_json.Capabilities?.Contents)\r\n this.contents = new WmtsCapability.Contents(_json.Capabilities?.Contents);\r\n }\r\n\r\n public static createFromXml(xmlCapabilities: string): WmtsCapabilities | undefined {\r\n const jsonCapabilities = xml2json(xmlCapabilities, { compact: true, nativeType: false, ignoreComment: true });\r\n const capabilities = JSON.parse(jsonCapabilities);\r\n return new WmtsCapabilities(capabilities);\r\n }\r\n\r\n public static async create(url: string, credentials?: RequestBasicCredentials, ignoreCache?: boolean): Promise<WmtsCapabilities | undefined> {\r\n if (!ignoreCache) {\r\n const cached = WmtsCapabilities._capabilitiesCache.get(url);\r\n if (cached !== undefined)\r\n return cached;\r\n }\r\n\r\n const xmlCapabilities = await getXml(`${WmsUtilities.getBaseUrl(url)}?request=GetCapabilities&service=WMTS`, credentials);\r\n\r\n if (!xmlCapabilities)\r\n return undefined;\r\n\r\n const capabilities = WmtsCapabilities.createFromXml(xmlCapabilities);\r\n if (capabilities)\r\n WmtsCapabilities._capabilitiesCache.set(url, capabilities);\r\n\r\n return capabilities;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"EditManipulator.d.ts","sourceRoot":"","sources":["../../../src/tools/EditManipulator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditManipulator.d.ts","sourceRoot":"","sources":["../../../src/tools/EditManipulator.ts"],"names":[],"mappings":"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"}
@@ -220,7 +220,7 @@ export var EditManipulator;
220
220
  * @return color adjusted for view background color or original color if view background color isn't being used.
221
221
  */
222
222
  static adjustForBackgroundColor(color, vp) {
223
- if (vp.view.is3d() && vp.view.getDisplayStyle3d().environment.sky.display)
223
+ if (vp.view.is3d() && vp.view.getDisplayStyle3d().environment.displaySky)
224
224
  return color;
225
225
  return color.adjustedForContrast(vp.view.backgroundColor);
226
226
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EditManipulator.js","sourceRoot":"","sources":["../../../src/tools/EditManipulator.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tools\r\n */\r\n\r\nimport { AxisOrder, Matrix3d, Point3d, Transform, Vector3d } from \"@itwin/core-geometry\";\r\nimport { ColorDef } from \"@itwin/core-common\";\r\nimport { AccuDrawHintBuilder } from \"../AccuDraw\";\r\nimport { HitDetail } from \"../HitDetail\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { SelectionSetEvent } from \"../SelectionSet\";\r\nimport { DecorateContext } from \"../ViewContext\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport { BeButton, BeButtonEvent, BeTouchEvent, CoordinateLockOverrides, EventHandled, InputCollector, InputSource, Tool } from \"./Tool\";\r\nimport { ManipulatorToolEvent } from \"./ToolAdmin\";\r\n\r\n/** Classes and methods to create on screen control handles for interactive modification of element(s) and pickable decorations.\r\n * The basic flow is:\r\n * - Create a sub-class of [[EditManipulator.HandleProvider]] to listen for start of [[SelectTool]] or any other PrimitiveTool that supports handle providers.\r\n * - Respond to [[ManipulatorToolEvent.Start]] by adding a listener for [[SelectionSet]] change event.\r\n * - Respond to selection changed event to create control handles as pickable decorations when the desired element(s) or pickable decoration is selected.\r\n * - Respond to button events on the control handle decoration and run a sub-class of [[EditManipulator.HandleTool]] to modify.\r\n * @public\r\n*/\r\nexport namespace EditManipulator {\r\n /** Specifies the event for [[EditManipulator.HandleProvider.onManipulatorEvent]] */\r\n export enum EventType {\r\n /** Control handles should be created, updated, or cleared based on the active selection. */\r\n Synch,\r\n /** Control handle modification was cancelled by user. */\r\n Cancel,\r\n /** Control handle modification was accepted by user. */\r\n Accept\r\n }\r\n\r\n /** Interactive control handle modification is done by installing an [[InputCollector]].\r\n * Modification typically is started from a click or press and drag while over the handle graphics.\r\n * The HandleTool base class is set up to define an offset by 2 points. The second point is\r\n * defined by either another click, or up event when initiated from press and drag.\r\n * @see [[EditManipulator.HandleProvider]]\r\n */\r\n export abstract class HandleTool extends InputCollector {\r\n public static override toolId = \"Select.Manipulator\"; // Doesn't matter, not included in tool registry...\r\n public static override hidden = true;\r\n public readonly manipulator: HandleProvider;\r\n\r\n public constructor(manipulator: HandleProvider) {\r\n super();\r\n this.manipulator = manipulator;\r\n }\r\n\r\n /** Establish the initial tool state for handle modification.\r\n * Default implementation honors the active locks and enables AccuSnap; behavior suitable for a shape vertex handle.\r\n * @note An InputCollector inherits the tool state of the suspended primitive tool.\r\n */\r\n protected init(): void {\r\n // Set this.receivedDownEvent to still get up events sent to this tool instance when installed from another tool's down event (ex. onModelStartDrag).\r\n this.receivedDownEvent = true;\r\n\r\n // Override inherited tool state from suspended primitive tool...\r\n if (this.wantAccuSnap)\r\n this.initLocateElements(false, true, undefined, CoordinateLockOverrides.None);\r\n else\r\n this.initLocateElements(false, false, undefined, CoordinateLockOverrides.All);\r\n }\r\n\r\n /** Whether to call [[AccuSnap.enableSnap]] for handle modification.\r\n * @return true to enable snapping to elements.\r\n */\r\n protected get wantAccuSnap(): boolean { return true; }\r\n\r\n /** Called from reset button up event to allow modification to be cancelled.\r\n * @return true to cancel modification.\r\n */\r\n protected cancel(_ev: BeButtonEvent): boolean { return true; }\r\n\r\n /** Called from data button down event to check if enough input has been gathered to complete the modification.\r\n * @return true to complete modification.\r\n */\r\n protected abstract accept(_ev: BeButtonEvent): boolean;\r\n\r\n /** Called following cancel or accept to update the handle provider\r\n * and return control to suspended PrimitiveTool.\r\n */\r\n protected async onComplete(_ev: BeButtonEvent, event: EventType): Promise<EventHandled> {\r\n await this.exitTool();\r\n this.manipulator.onManipulatorEvent(event);\r\n\r\n return EventHandled.Yes;\r\n }\r\n\r\n public override async onDataButtonDown(ev: BeButtonEvent): Promise<EventHandled> {\r\n if (!this.accept(ev))\r\n return EventHandled.No;\r\n\r\n return this.onComplete(ev, EventType.Accept);\r\n }\r\n\r\n public override async onResetButtonUp(ev: BeButtonEvent): Promise<EventHandled> {\r\n if (!this.cancel(ev))\r\n return EventHandled.No;\r\n\r\n return this.onComplete(ev, EventType.Cancel);\r\n }\r\n\r\n public override async onTouchMove(ev: BeTouchEvent): Promise<void> { return IModelApp.toolAdmin.convertTouchMoveToMotion(ev); }\r\n public override async onTouchComplete(ev: BeTouchEvent): Promise<void> { return IModelApp.toolAdmin.convertTouchEndToButtonUp(ev); }\r\n public override async onTouchCancel(ev: BeTouchEvent): Promise<void> { return IModelApp.toolAdmin.convertTouchEndToButtonUp(ev, BeButton.Reset); }\r\n\r\n public override async onPostInstall() {\r\n await super.onPostInstall();\r\n this.init();\r\n }\r\n }\r\n\r\n /** A handle provider maintains a set of controls used to modify element(s) or pickable decorations.\r\n * The provider works in conjunction with any PrimitiveTool that raises events for [[ToolAdmin.manipulatorToolEvent]].\r\n * @see [[SelectTool]] The default PrimitiveTool that supports handle providers.\r\n */\r\n export abstract class HandleProvider {\r\n protected _isActive = false;\r\n protected _removeManipulatorToolListener?: () => void;\r\n protected _removeSelectionListener?: () => void;\r\n protected _removeDecorationListener?: () => void;\r\n\r\n /** Create a new handle provider to listen for [[ToolAdmin.manipulatorToolEvent]].\r\n * Usually followed by a call to [[IModelApp.toolAdmin.startDefaultTool]] to immediately raise the [[ManipulatorToolEvent.Start]] event.\r\n */\r\n public constructor(public iModel: IModelConnection) {\r\n this._removeManipulatorToolListener = IModelApp.toolAdmin.manipulatorToolEvent.addListener((tool, event) => this.onManipulatorToolEvent(tool, event));\r\n }\r\n\r\n /** Call to clear this handle provider. */\r\n protected stop(): void {\r\n if (this._removeSelectionListener) {\r\n this._removeSelectionListener();\r\n this._removeSelectionListener = undefined;\r\n }\r\n if (this._removeManipulatorToolListener) {\r\n this._removeManipulatorToolListener();\r\n this._removeManipulatorToolListener = undefined;\r\n }\r\n this.clearControls();\r\n }\r\n\r\n /** Event raised by a PrimitiveTool that supports handle providers.\r\n * Add listener for [[IModelConnection.selectionSet.onChanged]] on start event and remove on stop event.\r\n * Control handles can be created from the active selection set, which may include persistent elements and pickable decorations.\r\n * @see [[SelectionSet]]\r\n */\r\n public onManipulatorToolEvent(_tool: Tool, event: ManipulatorToolEvent): void {\r\n switch (event) {\r\n case ManipulatorToolEvent.Start: {\r\n if (this._removeSelectionListener)\r\n break;\r\n this._removeSelectionListener = this.iModel.selectionSet.onChanged.addListener((ev) => this.onSelectionChanged(ev));\r\n if (this.iModel.selectionSet.isActive)\r\n this.onManipulatorEvent(EventType.Synch); // Give opportunity to add controls when tool is started with an existing selection...\r\n break;\r\n }\r\n case ManipulatorToolEvent.Stop: {\r\n if (!this._removeSelectionListener)\r\n break;\r\n this._removeSelectionListener();\r\n this._removeSelectionListener = undefined;\r\n this.clearControls();\r\n }\r\n }\r\n }\r\n\r\n /** Event raised by [[SelectionSet]] when the active selection changes.\r\n * Calls onManipulatorEvent to let the provider create, update, or clear it's set of controls as appropriate.\r\n * @see [[SelectionSet]]\r\n */\r\n public onSelectionChanged(ev: SelectionSetEvent): void {\r\n if (this.iModel === ev.set.iModel)\r\n this.onManipulatorEvent(EventType.Synch);\r\n }\r\n\r\n /** Register for decorate event to start displaying control handles. */\r\n protected updateDecorationListener(add: boolean): void {\r\n if (this._removeDecorationListener) {\r\n if (!add) {\r\n this._removeDecorationListener();\r\n this._removeDecorationListener = undefined;\r\n }\r\n IModelApp.viewManager.invalidateDecorationsAllViews();\r\n } else if (add) {\r\n if (!this._removeDecorationListener)\r\n this._removeDecorationListener = IModelApp.viewManager.addDecorator(this);\r\n IModelApp.viewManager.invalidateDecorationsAllViews();\r\n }\r\n }\r\n\r\n /** Sub-classes should override to display the pickable graphics for their controls. */\r\n public decorate(_context: DecorateContext): void { }\r\n\r\n /** The provider is responsible for checking if modification by controls is valid.\r\n * May still wish to present controls for \"transient\" geometry in non-read/write applications, etc.\r\n */\r\n protected abstract createControls(): Promise<boolean>;\r\n\r\n /* Call to stop displaying the the control handles */\r\n protected clearControls(): void {\r\n this.updateDecorationListener(this._isActive = false);\r\n }\r\n\r\n /** A provider can install an [[InputCollector]] to support interactive modification.\r\n * @return true if a tool was successfully run.\r\n * @see [[EditManipulator.HandleTool]]\r\n */\r\n protected abstract modifyControls(_hit: HitDetail, _ev: BeButtonEvent): Promise<boolean>;\r\n\r\n /* Create, update, or clear based on the current selection. */\r\n protected async updateControls(): Promise<void> {\r\n const created = await this.createControls();\r\n if (this._isActive && !created)\r\n this.clearControls();\r\n else\r\n this.updateDecorationListener(this._isActive = created);\r\n }\r\n\r\n /* Update controls to reflect active selection or post-modification state. */\r\n public onManipulatorEvent(_eventType: EventType): void {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this.updateControls();\r\n }\r\n\r\n /** Sub-classes can override to perform some operation for a double click on a handle. */\r\n protected async onDoubleClick(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> { return EventHandled.No; }\r\n\r\n /** Sub-classes can override to present a menu for a right click on a handle. */\r\n protected async onRightClick(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> { return EventHandled.No; }\r\n\r\n /** Sub-classes can override to respond to a touch tap on a handle. By default, handles are selected by touch drag and taps are ignored. */\r\n protected async onTouchTap(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> { return EventHandled.Yes; }\r\n\r\n /** Event raised by a PrimitiveTool that supports handle providers to allow a pickable decoration to respond to being located. */\r\n public async onDecorationButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n if (!this._isActive)\r\n return EventHandled.No;\r\n\r\n if (ev.isDoubleClick)\r\n return this.onDoubleClick(hit, ev); // Allow double click on handle to override default operation (ex. fit view).\r\n\r\n if (BeButton.Reset === ev.button && !ev.isDown && !ev.isDragging)\r\n return this.onRightClick(hit, ev); // Allow right click on handle to present a menu.\r\n\r\n if (BeButton.Data !== ev.button)\r\n return EventHandled.No;\r\n\r\n if (ev.isControlKey)\r\n return EventHandled.No; // Support ctrl+click to select multiple controls (ex. linestring vertices)...\r\n\r\n if (InputSource.Touch === ev.inputSource && !ev.isDragging)\r\n return this.onTouchTap(hit, ev); // Default is to select controls on touch drag only, ignore tap on control...\r\n\r\n if (ev.isDown && !ev.isDragging)\r\n return EventHandled.No; // Select controls on up event or down event only after drag started...\r\n\r\n if (!await this.modifyControls(hit, ev))\r\n return EventHandled.No;\r\n\r\n // In case InputCollector was installed for handle modification, don't wait for motion to show dynamic frame adjusted for AccuDraw hints...\r\n IModelApp.accuDraw.refreshDecorationsAndDynamics();\r\n\r\n return EventHandled.Yes;\r\n }\r\n }\r\n\r\n /** Utility methods for creating control handles and other decorations. */\r\n export class HandleUtils {\r\n /** Adjust input color for contrast against view background.\r\n * @param color The color to adjust.\r\n * @param vp The viewport to compare.\r\n * @return color adjusted for view background color or original color if view background color isn't being used.\r\n */\r\n public static adjustForBackgroundColor(color: ColorDef, vp: Viewport): ColorDef {\r\n if (vp.view.is3d() && vp.view.getDisplayStyle3d().environment.sky.display)\r\n return color;\r\n return color.adjustedForContrast(vp.view.backgroundColor);\r\n }\r\n\r\n /** Compute a transform that will try to orient a 2d shape (like an arrow) to face the camera.\r\n * @param vp The viewport to get the rotation from.\r\n * @param base The world coordinate point to pivot about.\r\n * @param direction The world coordinate axis to tilt along.\r\n * @param sizeInches The transform scale specified in screen inches.\r\n * @returns transform or undefined when input direction is almost perpendicular to viewing direction.\r\n * @see [[getArrowShape]]\r\n */\r\n public static getArrowTransform(vp: Viewport, base: Point3d, direction: Vector3d, sizeInches: number): Transform | undefined {\r\n const boresite = AccuDrawHintBuilder.getBoresite(base, vp);\r\n if (Math.abs(direction.dotProduct(boresite.direction)) >= 0.99)\r\n return undefined;\r\n\r\n const pixelSize = vp.pixelsFromInches(sizeInches);\r\n const scale = vp.viewingSpace.getPixelSizeAtPoint(base) * pixelSize;\r\n const matrix = Matrix3d.createRigidFromColumns(direction, boresite.direction, AxisOrder.XZY);\r\n if (undefined === matrix)\r\n return undefined;\r\n\r\n matrix.scaleColumnsInPlace(scale, scale, scale);\r\n return Transform.createRefs(base.clone(), matrix);\r\n }\r\n\r\n /** Return array of shape points representing a unit arrow in xy plane pointing in positive x direction. */\r\n public static getArrowShape(baseStart: number = 0.0, baseWidth: number = 0.15, tipStart: number = 0.55, tipEnd: number = 1.0, tipWidth: number = 0.3, flangeStart: number = tipStart, flangeWidth: number = baseWidth): Point3d[] {\r\n const shapePts: Point3d[] = [];\r\n shapePts[0] = Point3d.create(tipEnd, 0.0);\r\n shapePts[1] = Point3d.create(flangeStart, tipWidth);\r\n shapePts[2] = Point3d.create(tipStart, flangeWidth);\r\n shapePts[3] = Point3d.create(baseStart, baseWidth);\r\n shapePts[4] = Point3d.create(baseStart, -baseWidth);\r\n shapePts[5] = Point3d.create(tipStart, -flangeWidth);\r\n shapePts[6] = Point3d.create(flangeStart, -tipWidth);\r\n shapePts[7] = shapePts[0].clone();\r\n return shapePts;\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"EditManipulator.js","sourceRoot":"","sources":["../../../src/tools/EditManipulator.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tools\r\n */\r\n\r\nimport { AxisOrder, Matrix3d, Point3d, Transform, Vector3d } from \"@itwin/core-geometry\";\r\nimport { ColorDef } from \"@itwin/core-common\";\r\nimport { AccuDrawHintBuilder } from \"../AccuDraw\";\r\nimport { HitDetail } from \"../HitDetail\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { SelectionSetEvent } from \"../SelectionSet\";\r\nimport { DecorateContext } from \"../ViewContext\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport { BeButton, BeButtonEvent, BeTouchEvent, CoordinateLockOverrides, EventHandled, InputCollector, InputSource, Tool } from \"./Tool\";\r\nimport { ManipulatorToolEvent } from \"./ToolAdmin\";\r\n\r\n/** Classes and methods to create on screen control handles for interactive modification of element(s) and pickable decorations.\r\n * The basic flow is:\r\n * - Create a sub-class of [[EditManipulator.HandleProvider]] to listen for start of [[SelectTool]] or any other PrimitiveTool that supports handle providers.\r\n * - Respond to [[ManipulatorToolEvent.Start]] by adding a listener for [[SelectionSet]] change event.\r\n * - Respond to selection changed event to create control handles as pickable decorations when the desired element(s) or pickable decoration is selected.\r\n * - Respond to button events on the control handle decoration and run a sub-class of [[EditManipulator.HandleTool]] to modify.\r\n * @public\r\n*/\r\nexport namespace EditManipulator {\r\n /** Specifies the event for [[EditManipulator.HandleProvider.onManipulatorEvent]] */\r\n export enum EventType {\r\n /** Control handles should be created, updated, or cleared based on the active selection. */\r\n Synch,\r\n /** Control handle modification was cancelled by user. */\r\n Cancel,\r\n /** Control handle modification was accepted by user. */\r\n Accept\r\n }\r\n\r\n /** Interactive control handle modification is done by installing an [[InputCollector]].\r\n * Modification typically is started from a click or press and drag while over the handle graphics.\r\n * The HandleTool base class is set up to define an offset by 2 points. The second point is\r\n * defined by either another click, or up event when initiated from press and drag.\r\n * @see [[EditManipulator.HandleProvider]]\r\n */\r\n export abstract class HandleTool extends InputCollector {\r\n public static override toolId = \"Select.Manipulator\"; // Doesn't matter, not included in tool registry...\r\n public static override hidden = true;\r\n public readonly manipulator: HandleProvider;\r\n\r\n public constructor(manipulator: HandleProvider) {\r\n super();\r\n this.manipulator = manipulator;\r\n }\r\n\r\n /** Establish the initial tool state for handle modification.\r\n * Default implementation honors the active locks and enables AccuSnap; behavior suitable for a shape vertex handle.\r\n * @note An InputCollector inherits the tool state of the suspended primitive tool.\r\n */\r\n protected init(): void {\r\n // Set this.receivedDownEvent to still get up events sent to this tool instance when installed from another tool's down event (ex. onModelStartDrag).\r\n this.receivedDownEvent = true;\r\n\r\n // Override inherited tool state from suspended primitive tool...\r\n if (this.wantAccuSnap)\r\n this.initLocateElements(false, true, undefined, CoordinateLockOverrides.None);\r\n else\r\n this.initLocateElements(false, false, undefined, CoordinateLockOverrides.All);\r\n }\r\n\r\n /** Whether to call [[AccuSnap.enableSnap]] for handle modification.\r\n * @return true to enable snapping to elements.\r\n */\r\n protected get wantAccuSnap(): boolean { return true; }\r\n\r\n /** Called from reset button up event to allow modification to be cancelled.\r\n * @return true to cancel modification.\r\n */\r\n protected cancel(_ev: BeButtonEvent): boolean { return true; }\r\n\r\n /** Called from data button down event to check if enough input has been gathered to complete the modification.\r\n * @return true to complete modification.\r\n */\r\n protected abstract accept(_ev: BeButtonEvent): boolean;\r\n\r\n /** Called following cancel or accept to update the handle provider\r\n * and return control to suspended PrimitiveTool.\r\n */\r\n protected async onComplete(_ev: BeButtonEvent, event: EventType): Promise<EventHandled> {\r\n await this.exitTool();\r\n this.manipulator.onManipulatorEvent(event);\r\n\r\n return EventHandled.Yes;\r\n }\r\n\r\n public override async onDataButtonDown(ev: BeButtonEvent): Promise<EventHandled> {\r\n if (!this.accept(ev))\r\n return EventHandled.No;\r\n\r\n return this.onComplete(ev, EventType.Accept);\r\n }\r\n\r\n public override async onResetButtonUp(ev: BeButtonEvent): Promise<EventHandled> {\r\n if (!this.cancel(ev))\r\n return EventHandled.No;\r\n\r\n return this.onComplete(ev, EventType.Cancel);\r\n }\r\n\r\n public override async onTouchMove(ev: BeTouchEvent): Promise<void> { return IModelApp.toolAdmin.convertTouchMoveToMotion(ev); }\r\n public override async onTouchComplete(ev: BeTouchEvent): Promise<void> { return IModelApp.toolAdmin.convertTouchEndToButtonUp(ev); }\r\n public override async onTouchCancel(ev: BeTouchEvent): Promise<void> { return IModelApp.toolAdmin.convertTouchEndToButtonUp(ev, BeButton.Reset); }\r\n\r\n public override async onPostInstall() {\r\n await super.onPostInstall();\r\n this.init();\r\n }\r\n }\r\n\r\n /** A handle provider maintains a set of controls used to modify element(s) or pickable decorations.\r\n * The provider works in conjunction with any PrimitiveTool that raises events for [[ToolAdmin.manipulatorToolEvent]].\r\n * @see [[SelectTool]] The default PrimitiveTool that supports handle providers.\r\n */\r\n export abstract class HandleProvider {\r\n protected _isActive = false;\r\n protected _removeManipulatorToolListener?: () => void;\r\n protected _removeSelectionListener?: () => void;\r\n protected _removeDecorationListener?: () => void;\r\n\r\n /** Create a new handle provider to listen for [[ToolAdmin.manipulatorToolEvent]].\r\n * Usually followed by a call to [[IModelApp.toolAdmin.startDefaultTool]] to immediately raise the [[ManipulatorToolEvent.Start]] event.\r\n */\r\n public constructor(public iModel: IModelConnection) {\r\n this._removeManipulatorToolListener = IModelApp.toolAdmin.manipulatorToolEvent.addListener((tool, event) => this.onManipulatorToolEvent(tool, event));\r\n }\r\n\r\n /** Call to clear this handle provider. */\r\n protected stop(): void {\r\n if (this._removeSelectionListener) {\r\n this._removeSelectionListener();\r\n this._removeSelectionListener = undefined;\r\n }\r\n if (this._removeManipulatorToolListener) {\r\n this._removeManipulatorToolListener();\r\n this._removeManipulatorToolListener = undefined;\r\n }\r\n this.clearControls();\r\n }\r\n\r\n /** Event raised by a PrimitiveTool that supports handle providers.\r\n * Add listener for [[IModelConnection.selectionSet.onChanged]] on start event and remove on stop event.\r\n * Control handles can be created from the active selection set, which may include persistent elements and pickable decorations.\r\n * @see [[SelectionSet]]\r\n */\r\n public onManipulatorToolEvent(_tool: Tool, event: ManipulatorToolEvent): void {\r\n switch (event) {\r\n case ManipulatorToolEvent.Start: {\r\n if (this._removeSelectionListener)\r\n break;\r\n this._removeSelectionListener = this.iModel.selectionSet.onChanged.addListener((ev) => this.onSelectionChanged(ev));\r\n if (this.iModel.selectionSet.isActive)\r\n this.onManipulatorEvent(EventType.Synch); // Give opportunity to add controls when tool is started with an existing selection...\r\n break;\r\n }\r\n case ManipulatorToolEvent.Stop: {\r\n if (!this._removeSelectionListener)\r\n break;\r\n this._removeSelectionListener();\r\n this._removeSelectionListener = undefined;\r\n this.clearControls();\r\n }\r\n }\r\n }\r\n\r\n /** Event raised by [[SelectionSet]] when the active selection changes.\r\n * Calls onManipulatorEvent to let the provider create, update, or clear it's set of controls as appropriate.\r\n * @see [[SelectionSet]]\r\n */\r\n public onSelectionChanged(ev: SelectionSetEvent): void {\r\n if (this.iModel === ev.set.iModel)\r\n this.onManipulatorEvent(EventType.Synch);\r\n }\r\n\r\n /** Register for decorate event to start displaying control handles. */\r\n protected updateDecorationListener(add: boolean): void {\r\n if (this._removeDecorationListener) {\r\n if (!add) {\r\n this._removeDecorationListener();\r\n this._removeDecorationListener = undefined;\r\n }\r\n IModelApp.viewManager.invalidateDecorationsAllViews();\r\n } else if (add) {\r\n if (!this._removeDecorationListener)\r\n this._removeDecorationListener = IModelApp.viewManager.addDecorator(this);\r\n IModelApp.viewManager.invalidateDecorationsAllViews();\r\n }\r\n }\r\n\r\n /** Sub-classes should override to display the pickable graphics for their controls. */\r\n public decorate(_context: DecorateContext): void { }\r\n\r\n /** The provider is responsible for checking if modification by controls is valid.\r\n * May still wish to present controls for \"transient\" geometry in non-read/write applications, etc.\r\n */\r\n protected abstract createControls(): Promise<boolean>;\r\n\r\n /* Call to stop displaying the the control handles */\r\n protected clearControls(): void {\r\n this.updateDecorationListener(this._isActive = false);\r\n }\r\n\r\n /** A provider can install an [[InputCollector]] to support interactive modification.\r\n * @return true if a tool was successfully run.\r\n * @see [[EditManipulator.HandleTool]]\r\n */\r\n protected abstract modifyControls(_hit: HitDetail, _ev: BeButtonEvent): Promise<boolean>;\r\n\r\n /* Create, update, or clear based on the current selection. */\r\n protected async updateControls(): Promise<void> {\r\n const created = await this.createControls();\r\n if (this._isActive && !created)\r\n this.clearControls();\r\n else\r\n this.updateDecorationListener(this._isActive = created);\r\n }\r\n\r\n /* Update controls to reflect active selection or post-modification state. */\r\n public onManipulatorEvent(_eventType: EventType): void {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this.updateControls();\r\n }\r\n\r\n /** Sub-classes can override to perform some operation for a double click on a handle. */\r\n protected async onDoubleClick(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> { return EventHandled.No; }\r\n\r\n /** Sub-classes can override to present a menu for a right click on a handle. */\r\n protected async onRightClick(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> { return EventHandled.No; }\r\n\r\n /** Sub-classes can override to respond to a touch tap on a handle. By default, handles are selected by touch drag and taps are ignored. */\r\n protected async onTouchTap(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> { return EventHandled.Yes; }\r\n\r\n /** Event raised by a PrimitiveTool that supports handle providers to allow a pickable decoration to respond to being located. */\r\n public async onDecorationButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n if (!this._isActive)\r\n return EventHandled.No;\r\n\r\n if (ev.isDoubleClick)\r\n return this.onDoubleClick(hit, ev); // Allow double click on handle to override default operation (ex. fit view).\r\n\r\n if (BeButton.Reset === ev.button && !ev.isDown && !ev.isDragging)\r\n return this.onRightClick(hit, ev); // Allow right click on handle to present a menu.\r\n\r\n if (BeButton.Data !== ev.button)\r\n return EventHandled.No;\r\n\r\n if (ev.isControlKey)\r\n return EventHandled.No; // Support ctrl+click to select multiple controls (ex. linestring vertices)...\r\n\r\n if (InputSource.Touch === ev.inputSource && !ev.isDragging)\r\n return this.onTouchTap(hit, ev); // Default is to select controls on touch drag only, ignore tap on control...\r\n\r\n if (ev.isDown && !ev.isDragging)\r\n return EventHandled.No; // Select controls on up event or down event only after drag started...\r\n\r\n if (!await this.modifyControls(hit, ev))\r\n return EventHandled.No;\r\n\r\n // In case InputCollector was installed for handle modification, don't wait for motion to show dynamic frame adjusted for AccuDraw hints...\r\n IModelApp.accuDraw.refreshDecorationsAndDynamics();\r\n\r\n return EventHandled.Yes;\r\n }\r\n }\r\n\r\n /** Utility methods for creating control handles and other decorations. */\r\n export class HandleUtils {\r\n /** Adjust input color for contrast against view background.\r\n * @param color The color to adjust.\r\n * @param vp The viewport to compare.\r\n * @return color adjusted for view background color or original color if view background color isn't being used.\r\n */\r\n public static adjustForBackgroundColor(color: ColorDef, vp: Viewport): ColorDef {\r\n if (vp.view.is3d() && vp.view.getDisplayStyle3d().environment.displaySky)\r\n return color;\r\n\r\n return color.adjustedForContrast(vp.view.backgroundColor);\r\n }\r\n\r\n /** Compute a transform that will try to orient a 2d shape (like an arrow) to face the camera.\r\n * @param vp The viewport to get the rotation from.\r\n * @param base The world coordinate point to pivot about.\r\n * @param direction The world coordinate axis to tilt along.\r\n * @param sizeInches The transform scale specified in screen inches.\r\n * @returns transform or undefined when input direction is almost perpendicular to viewing direction.\r\n * @see [[getArrowShape]]\r\n */\r\n public static getArrowTransform(vp: Viewport, base: Point3d, direction: Vector3d, sizeInches: number): Transform | undefined {\r\n const boresite = AccuDrawHintBuilder.getBoresite(base, vp);\r\n if (Math.abs(direction.dotProduct(boresite.direction)) >= 0.99)\r\n return undefined;\r\n\r\n const pixelSize = vp.pixelsFromInches(sizeInches);\r\n const scale = vp.viewingSpace.getPixelSizeAtPoint(base) * pixelSize;\r\n const matrix = Matrix3d.createRigidFromColumns(direction, boresite.direction, AxisOrder.XZY);\r\n if (undefined === matrix)\r\n return undefined;\r\n\r\n matrix.scaleColumnsInPlace(scale, scale, scale);\r\n return Transform.createRefs(base.clone(), matrix);\r\n }\r\n\r\n /** Return array of shape points representing a unit arrow in xy plane pointing in positive x direction. */\r\n public static getArrowShape(baseStart: number = 0.0, baseWidth: number = 0.15, tipStart: number = 0.55, tipEnd: number = 1.0, tipWidth: number = 0.3, flangeStart: number = tipStart, flangeWidth: number = baseWidth): Point3d[] {\r\n const shapePts: Point3d[] = [];\r\n shapePts[0] = Point3d.create(tipEnd, 0.0);\r\n shapePts[1] = Point3d.create(flangeStart, tipWidth);\r\n shapePts[2] = Point3d.create(tipStart, flangeWidth);\r\n shapePts[3] = Point3d.create(baseStart, baseWidth);\r\n shapePts[4] = Point3d.create(baseStart, -baseWidth);\r\n shapePts[5] = Point3d.create(tipStart, -flangeWidth);\r\n shapePts[6] = Point3d.create(flangeStart, -tipWidth);\r\n shapePts[7] = shapePts[0].clone();\r\n return shapePts;\r\n }\r\n }\r\n}\r\n"]}
@@ -353,7 +353,7 @@ export class ElementSetTool extends PrimitiveTool {
353
353
  ids.add(id);
354
354
  try {
355
355
  const ecsql = `SELECT ECInstanceId as id, Parent.Id as parentId FROM BisCore.GeometricElement WHERE Parent.Id IN (SELECT Parent.Id as parentId FROM BisCore.GeometricElement WHERE parent.Id != 0 AND ECInstanceId IN (${id}))`;
356
- for await (const row of this.iModel.query(ecsql, undefined, QueryRowFormat.UseJsPropertyNames)) {
356
+ for await (const row of this.iModel.query(ecsql, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames })) {
357
357
  ids.add(row.parentId);
358
358
  ids.add(row.id);
359
359
  }
@@ -708,7 +708,7 @@ export class ElementSetTool extends PrimitiveTool {
708
708
  const hints = new AccuDrawHintBuilder();
709
709
  hints.setOriginAlways = true;
710
710
  hints.setOrigin(this.anchorPoint);
711
- hints.sendHints();
711
+ hints.sendHints(false); // Default activation on start of dynamics...
712
712
  }
713
713
  if (!this.wantProcessAgenda(ev)) {
714
714
  if (this.wantDynamics)