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

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 (1426) 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/BriefcaseConnection.d.ts.map +1 -1
  15. package/lib/cjs/BriefcaseConnection.js +6 -5
  16. package/lib/cjs/BriefcaseConnection.js.map +1 -1
  17. package/lib/cjs/CheckpointConnection.js +1 -1
  18. package/lib/cjs/CheckpointConnection.js.map +1 -1
  19. package/lib/cjs/ContextRealityModelState.js +1 -1
  20. package/lib/cjs/ContextRealityModelState.js.map +1 -1
  21. package/lib/cjs/DisplayStyleState.d.ts +11 -163
  22. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  23. package/lib/cjs/DisplayStyleState.js +69 -350
  24. package/lib/cjs/DisplayStyleState.js.map +1 -1
  25. package/lib/cjs/DrawingViewState.d.ts +2 -2
  26. package/lib/cjs/DrawingViewState.d.ts.map +1 -1
  27. package/lib/cjs/DrawingViewState.js +6 -6
  28. package/lib/cjs/DrawingViewState.js.map +1 -1
  29. package/lib/cjs/ElementLocateManager.d.ts +5 -0
  30. package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
  31. package/lib/cjs/ElementLocateManager.js +12 -2
  32. package/lib/cjs/ElementLocateManager.js.map +1 -1
  33. package/lib/cjs/EmphasizeElements.d.ts.map +1 -1
  34. package/lib/cjs/EmphasizeElements.js +14 -4
  35. package/lib/cjs/EmphasizeElements.js.map +1 -1
  36. package/lib/cjs/EnvironmentDecorations.d.ts +39 -0
  37. package/lib/cjs/EnvironmentDecorations.d.ts.map +1 -0
  38. package/lib/cjs/EnvironmentDecorations.js +200 -0
  39. package/lib/cjs/EnvironmentDecorations.js.map +1 -0
  40. package/lib/cjs/FrontendHubAccess.d.ts +11 -7
  41. package/lib/cjs/FrontendHubAccess.d.ts.map +1 -1
  42. package/lib/cjs/FrontendHubAccess.js.map +1 -1
  43. package/lib/cjs/FrontendLoggerCategory.d.ts +2 -8
  44. package/lib/cjs/FrontendLoggerCategory.d.ts.map +1 -1
  45. package/lib/cjs/FrontendLoggerCategory.js +2 -8
  46. package/lib/cjs/FrontendLoggerCategory.js.map +1 -1
  47. package/lib/cjs/HitDetail.js +7 -7
  48. package/lib/cjs/HitDetail.js.map +1 -1
  49. package/lib/cjs/IModelApp.d.ts +31 -24
  50. package/lib/cjs/IModelApp.d.ts.map +1 -1
  51. package/lib/cjs/IModelApp.js +35 -36
  52. package/lib/cjs/IModelApp.js.map +1 -1
  53. package/lib/cjs/IModelConnection.d.ts +4 -6
  54. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  55. package/lib/cjs/IModelConnection.js +6 -11
  56. package/lib/cjs/IModelConnection.js.map +1 -1
  57. package/lib/cjs/IModeljs-css.d.ts.map +1 -1
  58. package/lib/cjs/IModeljs-css.js +8 -6
  59. package/lib/cjs/IModeljs-css.js.map +1 -1
  60. package/lib/cjs/ImageUtil.d.ts +3 -3
  61. package/lib/cjs/ImageUtil.d.ts.map +1 -1
  62. package/lib/cjs/ImageUtil.js +7 -4
  63. package/lib/cjs/ImageUtil.js.map +1 -1
  64. package/lib/cjs/LocalhostIpcApp.d.ts +2 -1
  65. package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
  66. package/lib/cjs/LocalhostIpcApp.js +21 -7
  67. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  68. package/lib/cjs/Marker.d.ts +9 -2
  69. package/lib/cjs/Marker.d.ts.map +1 -1
  70. package/lib/cjs/Marker.js +33 -5
  71. package/lib/cjs/Marker.js.map +1 -1
  72. package/lib/cjs/ModelState.js +1 -1
  73. package/lib/cjs/ModelState.js.map +1 -1
  74. package/lib/cjs/NativeApp.d.ts +3 -38
  75. package/lib/cjs/NativeApp.d.ts.map +1 -1
  76. package/lib/cjs/NativeApp.js +4 -73
  77. package/lib/cjs/NativeApp.js.map +1 -1
  78. package/lib/cjs/NoRenderApp.d.ts +0 -1
  79. package/lib/cjs/NoRenderApp.d.ts.map +1 -1
  80. package/lib/cjs/NoRenderApp.js +0 -1
  81. package/lib/cjs/NoRenderApp.js.map +1 -1
  82. package/lib/cjs/NotificationManager.d.ts +3 -1
  83. package/lib/cjs/NotificationManager.d.ts.map +1 -1
  84. package/lib/cjs/NotificationManager.js +2 -0
  85. package/lib/cjs/NotificationManager.js.map +1 -1
  86. package/lib/cjs/RealityDataSource.d.ts +59 -29
  87. package/lib/cjs/RealityDataSource.d.ts.map +1 -1
  88. package/lib/cjs/RealityDataSource.js +247 -94
  89. package/lib/cjs/RealityDataSource.js.map +1 -1
  90. package/lib/cjs/RenderScheduleState.d.ts +2 -0
  91. package/lib/cjs/RenderScheduleState.d.ts.map +1 -1
  92. package/lib/cjs/RenderScheduleState.js +10 -5
  93. package/lib/cjs/RenderScheduleState.js.map +1 -1
  94. package/lib/cjs/SheetViewState.d.ts +2 -2
  95. package/lib/cjs/SheetViewState.d.ts.map +1 -1
  96. package/lib/cjs/SheetViewState.js +11 -12
  97. package/lib/cjs/SheetViewState.js.map +1 -1
  98. package/lib/cjs/SpatialViewState.d.ts +10 -2
  99. package/lib/cjs/SpatialViewState.d.ts.map +1 -1
  100. package/lib/cjs/SpatialViewState.js +12 -2
  101. package/lib/cjs/SpatialViewState.js.map +1 -1
  102. package/lib/cjs/SubCategoriesCache.js +1 -1
  103. package/lib/cjs/SubCategoriesCache.js.map +1 -1
  104. package/lib/cjs/Tiles.d.ts +11 -1
  105. package/lib/cjs/Tiles.d.ts.map +1 -1
  106. package/lib/cjs/Tiles.js +7 -0
  107. package/lib/cjs/Tiles.js.map +1 -1
  108. package/lib/cjs/TwoWayViewportSync.d.ts +35 -6
  109. package/lib/cjs/TwoWayViewportSync.d.ts.map +1 -1
  110. package/lib/cjs/TwoWayViewportSync.js +51 -11
  111. package/lib/cjs/TwoWayViewportSync.js.map +1 -1
  112. package/lib/cjs/UserPreferences.d.ts +72 -0
  113. package/lib/cjs/UserPreferences.d.ts.map +1 -0
  114. package/lib/cjs/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
  115. package/lib/cjs/UserPreferences.js.map +1 -0
  116. package/lib/cjs/ViewContext.d.ts +3 -1
  117. package/lib/cjs/ViewContext.d.ts.map +1 -1
  118. package/lib/cjs/ViewContext.js +4 -0
  119. package/lib/cjs/ViewContext.js.map +1 -1
  120. package/lib/cjs/ViewCreator2d.js +3 -3
  121. package/lib/cjs/ViewCreator2d.js.map +1 -1
  122. package/lib/cjs/ViewCreator3d.d.ts +1 -1
  123. package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
  124. package/lib/cjs/ViewCreator3d.js +4 -5
  125. package/lib/cjs/ViewCreator3d.js.map +1 -1
  126. package/lib/cjs/ViewManager.d.ts +6 -6
  127. package/lib/cjs/ViewManager.d.ts.map +1 -1
  128. package/lib/cjs/ViewManager.js +13 -13
  129. package/lib/cjs/ViewManager.js.map +1 -1
  130. package/lib/cjs/ViewState.d.ts +11 -5
  131. package/lib/cjs/ViewState.d.ts.map +1 -1
  132. package/lib/cjs/ViewState.js +18 -63
  133. package/lib/cjs/ViewState.js.map +1 -1
  134. package/lib/cjs/ViewingSpace.js +1 -1
  135. package/lib/cjs/ViewingSpace.js.map +1 -1
  136. package/lib/cjs/Viewport.d.ts +63 -14
  137. package/lib/cjs/Viewport.d.ts.map +1 -1
  138. package/lib/cjs/Viewport.js +71 -40
  139. package/lib/cjs/Viewport.js.map +1 -1
  140. package/lib/cjs/core-frontend.d.ts +17 -31
  141. package/lib/cjs/core-frontend.d.ts.map +1 -1
  142. package/lib/cjs/core-frontend.js +17 -31
  143. package/lib/cjs/core-frontend.js.map +1 -1
  144. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
  145. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
  146. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
  147. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  148. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
  149. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  150. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +20 -5
  151. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  152. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts +26 -3
  153. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  154. package/lib/cjs/quantity-formatting/QuantityFormatter.js +46 -7
  155. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  156. package/lib/cjs/render/FeatureSymbology.d.ts.map +1 -1
  157. package/lib/cjs/render/FeatureSymbology.js +3 -3
  158. package/lib/cjs/render/FeatureSymbology.js.map +1 -1
  159. package/lib/cjs/render/GraphicBranch.d.ts +18 -2
  160. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  161. package/lib/cjs/render/GraphicBranch.js +9 -1
  162. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  163. package/lib/cjs/render/GraphicBuilder.d.ts +7 -1
  164. package/lib/cjs/render/GraphicBuilder.d.ts.map +1 -1
  165. package/lib/cjs/render/GraphicBuilder.js.map +1 -1
  166. package/lib/cjs/render/MockRender.d.ts +3 -1
  167. package/lib/cjs/render/MockRender.d.ts.map +1 -1
  168. package/lib/cjs/render/MockRender.js.map +1 -1
  169. package/lib/cjs/render/RenderMaterial.d.ts +61 -0
  170. package/lib/cjs/render/RenderMaterial.d.ts.map +1 -0
  171. package/lib/cjs/render/RenderMaterial.js +10 -0
  172. package/lib/cjs/render/RenderMaterial.js.map +1 -0
  173. package/lib/cjs/render/RenderMemory.d.ts +21 -15
  174. package/lib/cjs/render/RenderMemory.d.ts.map +1 -1
  175. package/lib/cjs/render/RenderMemory.js +21 -15
  176. package/lib/cjs/render/RenderMemory.js.map +1 -1
  177. package/lib/cjs/render/RenderSystem.d.ts +48 -10
  178. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  179. package/lib/cjs/render/RenderSystem.js +35 -12
  180. package/lib/cjs/render/RenderSystem.js.map +1 -1
  181. package/lib/cjs/render/RenderTarget.d.ts +10 -2
  182. package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
  183. package/lib/cjs/render/RenderTarget.js +2 -1
  184. package/lib/cjs/render/RenderTarget.js.map +1 -1
  185. package/lib/cjs/render/RenderTexture.d.ts +2 -17
  186. package/lib/cjs/render/RenderTexture.d.ts.map +1 -1
  187. package/lib/cjs/render/RenderTexture.js +0 -17
  188. package/lib/cjs/render/RenderTexture.js.map +1 -1
  189. package/lib/cjs/render/primitives/EdgeParams.d.ts +84 -0
  190. package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -0
  191. package/lib/cjs/render/primitives/EdgeParams.js +220 -0
  192. package/lib/cjs/render/primitives/EdgeParams.js.map +1 -0
  193. package/lib/cjs/render/primitives/PointStringParams.d.ts +16 -0
  194. package/lib/cjs/render/primitives/PointStringParams.d.ts.map +1 -0
  195. package/lib/cjs/render/primitives/PointStringParams.js +43 -0
  196. package/lib/cjs/render/primitives/PointStringParams.js.map +1 -0
  197. package/lib/cjs/render/primitives/PolylineParams.d.ts +44 -0
  198. package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -0
  199. package/lib/cjs/render/primitives/PolylineParams.js +205 -0
  200. package/lib/cjs/render/primitives/PolylineParams.js.map +1 -0
  201. package/lib/cjs/render/primitives/Primitives.d.ts +1 -1
  202. package/lib/cjs/render/primitives/Primitives.d.ts.map +1 -1
  203. package/lib/cjs/render/primitives/Primitives.js.map +1 -1
  204. package/lib/cjs/render/primitives/SurfaceParams.d.ts +46 -0
  205. package/lib/cjs/render/primitives/SurfaceParams.d.ts.map +1 -0
  206. package/lib/cjs/render/primitives/SurfaceParams.js +42 -0
  207. package/lib/cjs/render/primitives/SurfaceParams.js.map +1 -0
  208. package/lib/cjs/render/primitives/VertexTable.d.ts +4 -123
  209. package/lib/cjs/render/primitives/VertexTable.d.ts.map +1 -1
  210. package/lib/cjs/render/primitives/VertexTable.js +16 -352
  211. package/lib/cjs/render/primitives/VertexTable.js.map +1 -1
  212. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
  213. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  214. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js +2 -1
  215. package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  216. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  217. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +1 -0
  218. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  219. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
  220. package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  221. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +3 -3
  222. package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  223. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts +2 -0
  224. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  225. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  226. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  227. package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
  228. package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
  229. package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
  230. package/lib/cjs/render/webgl/AttributeMap.js +5 -5
  231. package/lib/cjs/render/webgl/BackgroundMapDrape.js +1 -1
  232. package/lib/cjs/render/webgl/BackgroundMapDrape.js.map +1 -1
  233. package/lib/cjs/render/webgl/BranchUniforms.d.ts.map +1 -1
  234. package/lib/cjs/render/webgl/BranchUniforms.js +8 -5
  235. package/lib/cjs/render/webgl/BranchUniforms.js.map +1 -1
  236. package/lib/cjs/render/webgl/CachedGeometry.d.ts +16 -11
  237. package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
  238. package/lib/cjs/render/webgl/CachedGeometry.js +26 -23
  239. package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
  240. package/lib/cjs/render/webgl/DrawCommand.d.ts +2 -3
  241. package/lib/cjs/render/webgl/DrawCommand.d.ts.map +1 -1
  242. package/lib/cjs/render/webgl/DrawCommand.js +6 -4
  243. package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
  244. package/lib/cjs/render/webgl/EdgeGeometry.d.ts +73 -0
  245. package/lib/cjs/render/webgl/EdgeGeometry.d.ts.map +1 -0
  246. package/lib/cjs/render/webgl/EdgeGeometry.js +141 -0
  247. package/lib/cjs/render/webgl/EdgeGeometry.js.map +1 -0
  248. package/lib/cjs/render/webgl/FeatureOverrides.d.ts +2 -0
  249. package/lib/cjs/render/webgl/FeatureOverrides.d.ts.map +1 -1
  250. package/lib/cjs/render/webgl/FeatureOverrides.js +11 -3
  251. package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
  252. package/lib/cjs/render/webgl/FloatRGBA.d.ts.map +1 -1
  253. package/lib/cjs/render/webgl/FloatRGBA.js +13 -11
  254. package/lib/cjs/render/webgl/FloatRGBA.js.map +1 -1
  255. package/lib/cjs/render/webgl/Graphic.d.ts +13 -0
  256. package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
  257. package/lib/cjs/render/webgl/Graphic.js +41 -3
  258. package/lib/cjs/render/webgl/Graphic.js.map +1 -1
  259. package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
  260. package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
  261. package/lib/cjs/render/webgl/IndexedEdgeGeometry.js +90 -0
  262. package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -0
  263. package/lib/cjs/render/webgl/InstancedGeometry.d.ts +6 -5
  264. package/lib/cjs/render/webgl/InstancedGeometry.d.ts.map +1 -1
  265. package/lib/cjs/render/webgl/InstancedGeometry.js +2 -1
  266. package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
  267. package/lib/cjs/render/webgl/LightingUniforms.d.ts +1 -0
  268. package/lib/cjs/render/webgl/LightingUniforms.d.ts.map +1 -1
  269. package/lib/cjs/render/webgl/LightingUniforms.js +4 -1
  270. package/lib/cjs/render/webgl/LightingUniforms.js.map +1 -1
  271. package/lib/cjs/render/webgl/Material.d.ts +1 -1
  272. package/lib/cjs/render/webgl/Material.d.ts.map +1 -1
  273. package/lib/cjs/render/webgl/Material.js +2 -0
  274. package/lib/cjs/render/webgl/Material.js.map +1 -1
  275. package/lib/cjs/render/webgl/Mesh.d.ts +8 -162
  276. package/lib/cjs/render/webgl/Mesh.d.ts.map +1 -1
  277. package/lib/cjs/render/webgl/Mesh.js +18 -458
  278. package/lib/cjs/render/webgl/Mesh.js.map +1 -1
  279. package/lib/cjs/render/webgl/MeshData.d.ts +38 -0
  280. package/lib/cjs/render/webgl/MeshData.d.ts.map +1 -0
  281. package/lib/cjs/render/webgl/MeshData.js +66 -0
  282. package/lib/cjs/render/webgl/MeshData.js.map +1 -0
  283. package/lib/cjs/render/webgl/MeshGeometry.d.ts +38 -0
  284. package/lib/cjs/render/webgl/MeshGeometry.d.ts.map +1 -0
  285. package/lib/cjs/render/webgl/MeshGeometry.js +59 -0
  286. package/lib/cjs/render/webgl/MeshGeometry.js.map +1 -0
  287. package/lib/cjs/render/webgl/PlanarClassifier.d.ts.map +1 -1
  288. package/lib/cjs/render/webgl/PlanarClassifier.js +8 -4
  289. package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
  290. package/lib/cjs/render/webgl/PlanarGrid.d.ts +2 -3
  291. package/lib/cjs/render/webgl/PlanarGrid.d.ts.map +1 -1
  292. package/lib/cjs/render/webgl/PlanarGrid.js +3 -3
  293. package/lib/cjs/render/webgl/PlanarGrid.js.map +1 -1
  294. package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  295. package/lib/cjs/render/webgl/PlanarTextureProjection.js +1 -0
  296. package/lib/cjs/render/webgl/PlanarTextureProjection.js.map +1 -1
  297. package/lib/cjs/render/webgl/PointCloud.d.ts +2 -2
  298. package/lib/cjs/render/webgl/PointCloud.d.ts.map +1 -1
  299. package/lib/cjs/render/webgl/PointCloud.js +2 -2
  300. package/lib/cjs/render/webgl/PointCloud.js.map +1 -1
  301. package/lib/cjs/render/webgl/PointString.d.ts +3 -3
  302. package/lib/cjs/render/webgl/PointString.d.ts.map +1 -1
  303. package/lib/cjs/render/webgl/PointString.js +1 -1
  304. package/lib/cjs/render/webgl/PointString.js.map +1 -1
  305. package/lib/cjs/render/webgl/Polyline.d.ts +3 -3
  306. package/lib/cjs/render/webgl/Polyline.d.ts.map +1 -1
  307. package/lib/cjs/render/webgl/Polyline.js +6 -6
  308. package/lib/cjs/render/webgl/Polyline.js.map +1 -1
  309. package/lib/cjs/render/webgl/Primitive.d.ts +2 -2
  310. package/lib/cjs/render/webgl/Primitive.d.ts.map +1 -1
  311. package/lib/cjs/render/webgl/Primitive.js +5 -5
  312. package/lib/cjs/render/webgl/Primitive.js.map +1 -1
  313. package/lib/cjs/render/webgl/RealityMesh.d.ts +3 -2
  314. package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
  315. package/lib/cjs/render/webgl/RealityMesh.js +10 -9
  316. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  317. package/lib/cjs/render/webgl/RenderCommands.d.ts +6 -2
  318. package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
  319. package/lib/cjs/render/webgl/RenderCommands.js +81 -48
  320. package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
  321. package/lib/cjs/render/webgl/RenderFlags.d.ts +48 -1
  322. package/lib/cjs/render/webgl/RenderFlags.d.ts.map +1 -1
  323. package/lib/cjs/render/webgl/RenderFlags.js +64 -2
  324. package/lib/cjs/render/webgl/RenderFlags.js.map +1 -1
  325. package/lib/cjs/render/webgl/SceneCompositor.js +10 -9
  326. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  327. package/lib/cjs/render/webgl/ScreenSpaceEffect.js +1 -1
  328. package/lib/cjs/render/webgl/ShaderBuilder.d.ts +23 -20
  329. package/lib/cjs/render/webgl/ShaderBuilder.d.ts.map +1 -1
  330. package/lib/cjs/render/webgl/ShaderBuilder.js +38 -32
  331. package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
  332. package/lib/cjs/render/webgl/ShaderProgram.d.ts +1 -1
  333. package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
  334. package/lib/cjs/render/webgl/ShaderProgram.js +4 -4
  335. package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
  336. package/lib/cjs/render/webgl/SolarShadowMap.d.ts.map +1 -1
  337. package/lib/cjs/render/webgl/SolarShadowMap.js +4 -3
  338. package/lib/cjs/render/webgl/SolarShadowMap.js.map +1 -1
  339. package/lib/cjs/render/webgl/SurfaceGeometry.d.ts +54 -0
  340. package/lib/cjs/render/webgl/SurfaceGeometry.d.ts.map +1 -0
  341. package/lib/cjs/render/webgl/SurfaceGeometry.js +248 -0
  342. package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -0
  343. package/lib/cjs/render/webgl/System.d.ts +13 -10
  344. package/lib/cjs/render/webgl/System.d.ts.map +1 -1
  345. package/lib/cjs/render/webgl/System.js +75 -21
  346. package/lib/cjs/render/webgl/System.js.map +1 -1
  347. package/lib/cjs/render/webgl/Target.d.ts +13 -1
  348. package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
  349. package/lib/cjs/render/webgl/Target.js +88 -2
  350. package/lib/cjs/render/webgl/Target.js.map +1 -1
  351. package/lib/cjs/render/webgl/Technique.d.ts.map +1 -1
  352. package/lib/cjs/render/webgl/Technique.js +112 -119
  353. package/lib/cjs/render/webgl/Technique.js.map +1 -1
  354. package/lib/cjs/render/webgl/TechniqueFlags.d.ts +7 -1
  355. package/lib/cjs/render/webgl/TechniqueFlags.d.ts.map +1 -1
  356. package/lib/cjs/render/webgl/TechniqueFlags.js +10 -1
  357. package/lib/cjs/render/webgl/TechniqueFlags.js.map +1 -1
  358. package/lib/cjs/render/webgl/TechniqueId.d.ts +29 -28
  359. package/lib/cjs/render/webgl/TechniqueId.d.ts.map +1 -1
  360. package/lib/cjs/render/webgl/TechniqueId.js +7 -7
  361. package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
  362. package/lib/cjs/render/webgl/Texture.d.ts +15 -12
  363. package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
  364. package/lib/cjs/render/webgl/Texture.js +28 -25
  365. package/lib/cjs/render/webgl/Texture.js.map +1 -1
  366. package/lib/cjs/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
  367. package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js +83 -18
  368. package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  369. package/lib/cjs/render/webgl/glsl/Animation.js +1 -1
  370. package/lib/cjs/render/webgl/glsl/Blur.js +1 -1
  371. package/lib/cjs/render/webgl/glsl/ClearPickAndColor.js +2 -2
  372. package/lib/cjs/render/webgl/glsl/ClearTranslucent.js +2 -2
  373. package/lib/cjs/render/webgl/glsl/Color.js +1 -1
  374. package/lib/cjs/render/webgl/glsl/Combine3Textures.js +1 -1
  375. package/lib/cjs/render/webgl/glsl/CombineTextures.js +1 -1
  376. package/lib/cjs/render/webgl/glsl/Composite.js +1 -1
  377. package/lib/cjs/render/webgl/glsl/CopyColor.d.ts.map +1 -1
  378. package/lib/cjs/render/webgl/glsl/CopyColor.js +17 -2
  379. package/lib/cjs/render/webgl/glsl/CopyColor.js.map +1 -1
  380. package/lib/cjs/render/webgl/glsl/CopyPickBuffers.js +2 -2
  381. package/lib/cjs/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
  382. package/lib/cjs/render/webgl/glsl/CopyStencil.js +10 -13
  383. package/lib/cjs/render/webgl/glsl/CopyStencil.js.map +1 -1
  384. package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js +2 -2
  385. package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  386. package/lib/cjs/render/webgl/glsl/Edge.d.ts +2 -1
  387. package/lib/cjs/render/webgl/glsl/Edge.d.ts.map +1 -1
  388. package/lib/cjs/render/webgl/glsl/Edge.js +132 -14
  389. package/lib/cjs/render/webgl/glsl/Edge.js.map +1 -1
  390. package/lib/cjs/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
  391. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js +43 -21
  392. package/lib/cjs/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  393. package/lib/cjs/render/webgl/glsl/Fragment.d.ts.map +1 -1
  394. package/lib/cjs/render/webgl/glsl/Fragment.js +19 -11
  395. package/lib/cjs/render/webgl/glsl/Fragment.js.map +1 -1
  396. package/lib/cjs/render/webgl/glsl/Lighting.d.ts.map +1 -1
  397. package/lib/cjs/render/webgl/glsl/Lighting.js +16 -2
  398. package/lib/cjs/render/webgl/glsl/Lighting.js.map +1 -1
  399. package/lib/cjs/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
  400. package/lib/cjs/render/webgl/glsl/LookupTable.d.ts +4 -2
  401. package/lib/cjs/render/webgl/glsl/LookupTable.d.ts.map +1 -1
  402. package/lib/cjs/render/webgl/glsl/LookupTable.js +7 -3
  403. package/lib/cjs/render/webgl/glsl/LookupTable.js.map +1 -1
  404. package/lib/cjs/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
  405. package/lib/cjs/render/webgl/glsl/PlanarClassification.js +13 -4
  406. package/lib/cjs/render/webgl/glsl/PlanarClassification.js.map +1 -1
  407. package/lib/cjs/render/webgl/glsl/PlanarGrid.js +2 -2
  408. package/lib/cjs/render/webgl/glsl/PlanarGrid.js.map +1 -1
  409. package/lib/cjs/render/webgl/glsl/PointCloud.js +2 -2
  410. package/lib/cjs/render/webgl/glsl/PointCloud.js.map +1 -1
  411. package/lib/cjs/render/webgl/glsl/PointString.js +1 -1
  412. package/lib/cjs/render/webgl/glsl/PointString.js.map +1 -1
  413. package/lib/cjs/render/webgl/glsl/Polyline.js +1 -1
  414. package/lib/cjs/render/webgl/glsl/Polyline.js.map +1 -1
  415. package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  416. package/lib/cjs/render/webgl/glsl/RealityMesh.js +9 -6
  417. package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
  418. package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
  419. package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  420. package/lib/cjs/render/webgl/glsl/SkyBox.js +2 -2
  421. package/lib/cjs/render/webgl/glsl/SkyBox.js.map +1 -1
  422. package/lib/cjs/render/webgl/glsl/SkySphere.js +2 -2
  423. package/lib/cjs/render/webgl/glsl/Surface.d.ts.map +1 -1
  424. package/lib/cjs/render/webgl/glsl/Surface.js +41 -16
  425. package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
  426. package/lib/cjs/render/webgl/glsl/Translucency.js +2 -2
  427. package/lib/cjs/render/webgl/glsl/Vertex.js +2 -2
  428. package/lib/cjs/render/webgl/glsl/Vertex.js.map +1 -1
  429. package/lib/cjs/render/webgl/glsl/ViewportQuad.js +1 -1
  430. package/lib/cjs/render/webgl/glsl/ViewportQuad.js.map +1 -1
  431. package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts +9 -0
  432. package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
  433. package/lib/cjs/render/webgl/glsl/Wiremesh.js +40 -0
  434. package/lib/cjs/render/webgl/glsl/Wiremesh.js.map +1 -0
  435. package/lib/cjs/render-primitives.d.ts +5 -1
  436. package/lib/cjs/render-primitives.d.ts.map +1 -1
  437. package/lib/cjs/render-primitives.js +5 -1
  438. package/lib/cjs/render-primitives.js.map +1 -1
  439. package/lib/cjs/request/Request.d.ts +167 -0
  440. package/lib/cjs/request/Request.d.ts.map +1 -0
  441. package/lib/cjs/request/Request.js +315 -0
  442. package/lib/cjs/request/Request.js.map +1 -0
  443. package/lib/cjs/tile/B3dmReader.d.ts +2 -1
  444. package/lib/cjs/tile/B3dmReader.d.ts.map +1 -1
  445. package/lib/cjs/tile/B3dmReader.js +11 -7
  446. package/lib/cjs/tile/B3dmReader.js.map +1 -1
  447. package/lib/cjs/tile/CesiumAssetProvider.d.ts +14 -0
  448. package/lib/cjs/tile/CesiumAssetProvider.d.ts.map +1 -0
  449. package/lib/cjs/tile/CesiumAssetProvider.js +35 -0
  450. package/lib/cjs/tile/CesiumAssetProvider.js.map +1 -0
  451. package/lib/cjs/tile/ContextShareProvider.d.ts +22 -0
  452. package/lib/cjs/tile/ContextShareProvider.d.ts.map +1 -0
  453. package/lib/cjs/tile/ContextShareProvider.js +129 -0
  454. package/lib/cjs/tile/ContextShareProvider.js.map +1 -0
  455. package/lib/cjs/tile/DynamicIModelTile.d.ts.map +1 -1
  456. package/lib/cjs/tile/DynamicIModelTile.js +10 -4
  457. package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
  458. package/lib/cjs/tile/GltfReader.d.ts +600 -56
  459. package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
  460. package/lib/cjs/tile/GltfReader.js +790 -276
  461. package/lib/cjs/tile/GltfReader.js.map +1 -1
  462. package/lib/cjs/tile/I3dmReader.d.ts +2 -1
  463. package/lib/cjs/tile/I3dmReader.d.ts.map +1 -1
  464. package/lib/cjs/tile/I3dmReader.js +10 -6
  465. package/lib/cjs/tile/I3dmReader.js.map +1 -1
  466. package/lib/cjs/tile/IModelTile.d.ts.map +1 -1
  467. package/lib/cjs/tile/IModelTile.js +14 -7
  468. package/lib/cjs/tile/IModelTile.js.map +1 -1
  469. package/lib/cjs/tile/IModelTileTree.d.ts +8 -0
  470. package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
  471. package/lib/cjs/tile/IModelTileTree.js +36 -1
  472. package/lib/cjs/tile/IModelTileTree.js.map +1 -1
  473. package/lib/cjs/tile/ImdlReader.d.ts +365 -10
  474. package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
  475. package/lib/cjs/tile/ImdlReader.js +202 -68
  476. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  477. package/lib/cjs/tile/LRUTileList.d.ts +29 -29
  478. package/lib/cjs/tile/LRUTileList.d.ts.map +1 -1
  479. package/lib/cjs/tile/LRUTileList.js +50 -50
  480. package/lib/cjs/tile/LRUTileList.js.map +1 -1
  481. package/lib/cjs/tile/OrbitGtTileTree.d.ts +0 -9
  482. package/lib/cjs/tile/OrbitGtTileTree.d.ts.map +1 -1
  483. package/lib/cjs/tile/OrbitGtTileTree.js +11 -21
  484. package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
  485. package/lib/cjs/tile/PrimaryTileTree.d.ts +14 -5
  486. package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
  487. package/lib/cjs/tile/PrimaryTileTree.js +69 -14
  488. package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
  489. package/lib/cjs/tile/RealityModelTileTree.d.ts +22 -39
  490. package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
  491. package/lib/cjs/tile/RealityModelTileTree.js +84 -219
  492. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  493. package/lib/cjs/tile/RealityTile.d.ts +17 -3
  494. package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
  495. package/lib/cjs/tile/RealityTile.js +34 -2
  496. package/lib/cjs/tile/RealityTile.js.map +1 -1
  497. package/lib/cjs/tile/RealityTileLoader.d.ts +9 -5
  498. package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
  499. package/lib/cjs/tile/RealityTileLoader.js +23 -8
  500. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  501. package/lib/cjs/tile/RealityTileTree.d.ts +3 -1
  502. package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
  503. package/lib/cjs/tile/RealityTileTree.js +5 -1
  504. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  505. package/lib/cjs/tile/Tile.d.ts +5 -4
  506. package/lib/cjs/tile/Tile.d.ts.map +1 -1
  507. package/lib/cjs/tile/Tile.js +8 -3
  508. package/lib/cjs/tile/Tile.js.map +1 -1
  509. package/lib/cjs/tile/TileAdmin.d.ts +79 -48
  510. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  511. package/lib/cjs/tile/TileAdmin.js +122 -111
  512. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  513. package/lib/cjs/tile/TileDrawArgs.d.ts +11 -0
  514. package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
  515. package/lib/cjs/tile/TileDrawArgs.js +6 -1
  516. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  517. package/lib/cjs/tile/TileGeometryCollector.d.ts +80 -0
  518. package/lib/cjs/tile/TileGeometryCollector.d.ts.map +1 -0
  519. package/lib/cjs/tile/TileGeometryCollector.js +71 -0
  520. package/lib/cjs/tile/TileGeometryCollector.js.map +1 -0
  521. package/lib/cjs/tile/TileRequest.d.ts +12 -9
  522. package/lib/cjs/tile/TileRequest.d.ts.map +1 -1
  523. package/lib/cjs/tile/TileRequest.js +19 -11
  524. package/lib/cjs/tile/TileRequest.js.map +1 -1
  525. package/lib/cjs/tile/TileRequestChannel.js +3 -3
  526. package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
  527. package/lib/cjs/tile/TileTree.d.ts +7 -1
  528. package/lib/cjs/tile/TileTree.d.ts.map +1 -1
  529. package/lib/cjs/tile/TileTree.js +8 -1
  530. package/lib/cjs/tile/TileTree.js.map +1 -1
  531. package/lib/cjs/tile/TileTreeReference.d.ts +25 -2
  532. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  533. package/lib/cjs/tile/TileTreeReference.js +42 -1
  534. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  535. package/lib/cjs/tile/TileUsageMarker.d.ts +9 -9
  536. package/lib/cjs/tile/TileUsageMarker.d.ts.map +1 -1
  537. package/lib/cjs/tile/TileUsageMarker.js +9 -9
  538. package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
  539. package/lib/cjs/tile/TileUser.d.ts +33 -0
  540. package/lib/cjs/tile/TileUser.d.ts.map +1 -0
  541. package/lib/cjs/tile/TileUser.js +28 -0
  542. package/lib/cjs/tile/TileUser.js.map +1 -0
  543. package/lib/cjs/tile/TileUserSet.d.ts +28 -0
  544. package/lib/cjs/tile/TileUserSet.d.ts.map +1 -0
  545. package/lib/cjs/tile/TileUserSet.js +123 -0
  546. package/lib/cjs/tile/TileUserSet.js.map +1 -0
  547. package/lib/cjs/tile/internal.d.ts +7 -1
  548. package/lib/cjs/tile/internal.d.ts.map +1 -1
  549. package/lib/cjs/tile/internal.js +7 -1
  550. package/lib/cjs/tile/internal.js.map +1 -1
  551. package/lib/cjs/tile/map/ArcGISTileMap.d.ts +22 -0
  552. package/lib/cjs/tile/map/ArcGISTileMap.d.ts.map +1 -0
  553. package/lib/cjs/tile/map/ArcGISTileMap.js +177 -0
  554. package/lib/cjs/tile/map/ArcGISTileMap.js.map +1 -0
  555. package/lib/cjs/tile/map/ArcGisTokenGenerator.js +3 -3
  556. package/lib/cjs/tile/map/ArcGisTokenGenerator.js.map +1 -1
  557. package/lib/cjs/tile/map/ArcGisUtilities.d.ts +1 -1
  558. package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
  559. package/lib/cjs/tile/map/ArcGisUtilities.js +18 -10
  560. package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
  561. package/lib/cjs/tile/map/BingElevation.js +4 -4
  562. package/lib/cjs/tile/map/BingElevation.js.map +1 -1
  563. package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  564. package/lib/cjs/tile/map/CesiumTerrainProvider.js +27 -15
  565. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  566. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +3 -4
  567. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  568. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +24 -45
  569. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  570. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -2
  571. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  572. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +1 -1
  573. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  574. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +4 -4
  575. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  576. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -2
  577. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  578. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
  579. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  580. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
  581. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  582. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
  583. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  584. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
  585. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  586. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
  587. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  588. package/lib/cjs/tile/map/ImageryTileTree.d.ts +6 -6
  589. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  590. package/lib/cjs/tile/map/ImageryTileTree.js +21 -25
  591. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  592. package/lib/cjs/tile/map/MapCartoRectangle.js +1 -1
  593. package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
  594. package/lib/cjs/tile/map/MapLayerAuthentication.d.ts +20 -0
  595. package/lib/cjs/tile/map/MapLayerAuthentication.d.ts.map +1 -0
  596. package/lib/cjs/tile/map/MapLayerAuthentication.js +18 -0
  597. package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -0
  598. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +6 -3
  599. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  600. package/lib/cjs/tile/map/MapLayerFormatRegistry.js +3 -1
  601. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  602. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts +2 -2
  603. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  604. package/lib/cjs/tile/map/MapLayerImageryFormats.js +21 -8
  605. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  606. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +18 -6
  607. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  608. package/lib/cjs/tile/map/MapLayerImageryProvider.js +47 -14
  609. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  610. package/lib/cjs/tile/map/MapLayerSources.d.ts +3 -11
  611. package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
  612. package/lib/cjs/tile/map/MapLayerSources.js +5 -34
  613. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  614. package/lib/cjs/tile/map/MapTile.d.ts +7 -6
  615. package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
  616. package/lib/cjs/tile/map/MapTile.js +51 -37
  617. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  618. package/lib/cjs/tile/map/MapTileLoader.d.ts +2 -1
  619. package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
  620. package/lib/cjs/tile/map/MapTileLoader.js +6 -3
  621. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  622. package/lib/cjs/tile/map/MapTileTree.d.ts +9 -6
  623. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  624. package/lib/cjs/tile/map/MapTileTree.js +55 -28
  625. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  626. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
  627. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  628. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +4 -6
  629. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  630. package/lib/cjs/tile/map/MapTilingScheme.d.ts +7 -2
  631. package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
  632. package/lib/cjs/tile/map/MapTilingScheme.js +21 -8
  633. package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
  634. package/lib/cjs/tile/map/QuadId.d.ts +1 -0
  635. package/lib/cjs/tile/map/QuadId.d.ts.map +1 -1
  636. package/lib/cjs/tile/map/QuadId.js +2 -1
  637. package/lib/cjs/tile/map/QuadId.js.map +1 -1
  638. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts +1 -1
  639. package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
  640. package/lib/cjs/tile/map/WmsCapabilities.d.ts +8 -1
  641. package/lib/cjs/tile/map/WmsCapabilities.d.ts.map +1 -1
  642. package/lib/cjs/tile/map/WmsCapabilities.js +39 -5
  643. package/lib/cjs/tile/map/WmsCapabilities.js.map +1 -1
  644. package/lib/cjs/tile/map/WmtsCapabilities.d.ts +11 -1
  645. package/lib/cjs/tile/map/WmtsCapabilities.d.ts.map +1 -1
  646. package/lib/cjs/tile/map/WmtsCapabilities.js +23 -9
  647. package/lib/cjs/tile/map/WmtsCapabilities.js.map +1 -1
  648. package/lib/cjs/tools/EditManipulator.d.ts.map +1 -1
  649. package/lib/cjs/tools/EditManipulator.js +1 -1
  650. package/lib/cjs/tools/EditManipulator.js.map +1 -1
  651. package/lib/cjs/tools/ElementSetTool.js +2 -2
  652. package/lib/cjs/tools/ElementSetTool.js.map +1 -1
  653. package/lib/cjs/tools/PrimitiveTool.d.ts +4 -4
  654. package/lib/cjs/tools/PrimitiveTool.d.ts.map +1 -1
  655. package/lib/cjs/tools/PrimitiveTool.js +2 -2
  656. package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
  657. package/lib/cjs/tools/Tool.d.ts +29 -1
  658. package/lib/cjs/tools/Tool.d.ts.map +1 -1
  659. package/lib/cjs/tools/Tool.js +66 -0
  660. package/lib/cjs/tools/Tool.js.map +1 -1
  661. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  662. package/lib/cjs/tools/ToolAdmin.js +20 -10
  663. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  664. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  665. package/lib/cjs/tools/ViewTool.js +3 -11
  666. package/lib/cjs/tools/ViewTool.js.map +1 -1
  667. package/lib/cjs/webgl.d.ts +5 -0
  668. package/lib/cjs/webgl.d.ts.map +1 -1
  669. package/lib/cjs/webgl.js +5 -0
  670. package/lib/cjs/webgl.js.map +1 -1
  671. package/lib/esm/AccuSnap.js +3 -3
  672. package/lib/esm/AccuSnap.js.map +1 -1
  673. package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
  674. package/lib/esm/ApproximateTerrainHeights.js +10 -5
  675. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  676. package/lib/esm/BackgroundMapGeometry.d.ts +1 -1
  677. package/lib/esm/BackgroundMapGeometry.d.ts.map +1 -1
  678. package/lib/esm/BackgroundMapGeometry.js +2 -2
  679. package/lib/esm/BackgroundMapGeometry.js.map +1 -1
  680. package/lib/esm/BingLocation.js +1 -1
  681. package/lib/esm/BingLocation.js.map +1 -1
  682. package/lib/esm/BriefcaseConnection.d.ts.map +1 -1
  683. package/lib/esm/BriefcaseConnection.js +6 -5
  684. package/lib/esm/BriefcaseConnection.js.map +1 -1
  685. package/lib/esm/CheckpointConnection.js +1 -1
  686. package/lib/esm/CheckpointConnection.js.map +1 -1
  687. package/lib/esm/ContextRealityModelState.js +1 -1
  688. package/lib/esm/ContextRealityModelState.js.map +1 -1
  689. package/lib/esm/DisplayStyleState.d.ts +11 -163
  690. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  691. package/lib/esm/DisplayStyleState.js +70 -346
  692. package/lib/esm/DisplayStyleState.js.map +1 -1
  693. package/lib/esm/DrawingViewState.d.ts +2 -2
  694. package/lib/esm/DrawingViewState.d.ts.map +1 -1
  695. package/lib/esm/DrawingViewState.js +6 -6
  696. package/lib/esm/DrawingViewState.js.map +1 -1
  697. package/lib/esm/ElementLocateManager.d.ts +5 -0
  698. package/lib/esm/ElementLocateManager.d.ts.map +1 -1
  699. package/lib/esm/ElementLocateManager.js +12 -2
  700. package/lib/esm/ElementLocateManager.js.map +1 -1
  701. package/lib/esm/EmphasizeElements.d.ts.map +1 -1
  702. package/lib/esm/EmphasizeElements.js +14 -4
  703. package/lib/esm/EmphasizeElements.js.map +1 -1
  704. package/lib/esm/EnvironmentDecorations.d.ts +39 -0
  705. package/lib/esm/EnvironmentDecorations.d.ts.map +1 -0
  706. package/lib/esm/EnvironmentDecorations.js +196 -0
  707. package/lib/esm/EnvironmentDecorations.js.map +1 -0
  708. package/lib/esm/FrontendHubAccess.d.ts +11 -7
  709. package/lib/esm/FrontendHubAccess.d.ts.map +1 -1
  710. package/lib/esm/FrontendHubAccess.js.map +1 -1
  711. package/lib/esm/FrontendLoggerCategory.d.ts +2 -8
  712. package/lib/esm/FrontendLoggerCategory.d.ts.map +1 -1
  713. package/lib/esm/FrontendLoggerCategory.js +2 -8
  714. package/lib/esm/FrontendLoggerCategory.js.map +1 -1
  715. package/lib/esm/HitDetail.js +7 -7
  716. package/lib/esm/HitDetail.js.map +1 -1
  717. package/lib/esm/IModelApp.d.ts +31 -24
  718. package/lib/esm/IModelApp.d.ts.map +1 -1
  719. package/lib/esm/IModelApp.js +34 -35
  720. package/lib/esm/IModelApp.js.map +1 -1
  721. package/lib/esm/IModelConnection.d.ts +4 -6
  722. package/lib/esm/IModelConnection.d.ts.map +1 -1
  723. package/lib/esm/IModelConnection.js +6 -11
  724. package/lib/esm/IModelConnection.js.map +1 -1
  725. package/lib/esm/IModeljs-css.d.ts.map +1 -1
  726. package/lib/esm/IModeljs-css.js +8 -6
  727. package/lib/esm/IModeljs-css.js.map +1 -1
  728. package/lib/esm/ImageUtil.d.ts +3 -3
  729. package/lib/esm/ImageUtil.d.ts.map +1 -1
  730. package/lib/esm/ImageUtil.js +7 -4
  731. package/lib/esm/ImageUtil.js.map +1 -1
  732. package/lib/esm/LocalhostIpcApp.d.ts +2 -1
  733. package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
  734. package/lib/esm/LocalhostIpcApp.js +22 -8
  735. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  736. package/lib/esm/Marker.d.ts +9 -2
  737. package/lib/esm/Marker.d.ts.map +1 -1
  738. package/lib/esm/Marker.js +34 -6
  739. package/lib/esm/Marker.js.map +1 -1
  740. package/lib/esm/ModelState.js +1 -1
  741. package/lib/esm/ModelState.js.map +1 -1
  742. package/lib/esm/NativeApp.d.ts +3 -38
  743. package/lib/esm/NativeApp.d.ts.map +1 -1
  744. package/lib/esm/NativeApp.js +1 -69
  745. package/lib/esm/NativeApp.js.map +1 -1
  746. package/lib/esm/NoRenderApp.d.ts +0 -1
  747. package/lib/esm/NoRenderApp.d.ts.map +1 -1
  748. package/lib/esm/NoRenderApp.js +0 -1
  749. package/lib/esm/NoRenderApp.js.map +1 -1
  750. package/lib/esm/NotificationManager.d.ts +3 -1
  751. package/lib/esm/NotificationManager.d.ts.map +1 -1
  752. package/lib/esm/NotificationManager.js +2 -0
  753. package/lib/esm/NotificationManager.js.map +1 -1
  754. package/lib/esm/RealityDataSource.d.ts +59 -29
  755. package/lib/esm/RealityDataSource.d.ts.map +1 -1
  756. package/lib/esm/RealityDataSource.js +247 -92
  757. package/lib/esm/RealityDataSource.js.map +1 -1
  758. package/lib/esm/RenderScheduleState.d.ts +2 -0
  759. package/lib/esm/RenderScheduleState.d.ts.map +1 -1
  760. package/lib/esm/RenderScheduleState.js +8 -4
  761. package/lib/esm/RenderScheduleState.js.map +1 -1
  762. package/lib/esm/SheetViewState.d.ts +2 -2
  763. package/lib/esm/SheetViewState.d.ts.map +1 -1
  764. package/lib/esm/SheetViewState.js +11 -12
  765. package/lib/esm/SheetViewState.js.map +1 -1
  766. package/lib/esm/SpatialViewState.d.ts +10 -2
  767. package/lib/esm/SpatialViewState.d.ts.map +1 -1
  768. package/lib/esm/SpatialViewState.js +12 -2
  769. package/lib/esm/SpatialViewState.js.map +1 -1
  770. package/lib/esm/SubCategoriesCache.js +1 -1
  771. package/lib/esm/SubCategoriesCache.js.map +1 -1
  772. package/lib/esm/Tiles.d.ts +11 -1
  773. package/lib/esm/Tiles.d.ts.map +1 -1
  774. package/lib/esm/Tiles.js +7 -0
  775. package/lib/esm/Tiles.js.map +1 -1
  776. package/lib/esm/TwoWayViewportSync.d.ts +35 -6
  777. package/lib/esm/TwoWayViewportSync.d.ts.map +1 -1
  778. package/lib/esm/TwoWayViewportSync.js +49 -10
  779. package/lib/esm/TwoWayViewportSync.js.map +1 -1
  780. package/lib/esm/UserPreferences.d.ts +72 -0
  781. package/lib/esm/UserPreferences.d.ts.map +1 -0
  782. package/lib/esm/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
  783. package/lib/esm/UserPreferences.js.map +1 -0
  784. package/lib/esm/ViewContext.d.ts +3 -1
  785. package/lib/esm/ViewContext.d.ts.map +1 -1
  786. package/lib/esm/ViewContext.js +4 -0
  787. package/lib/esm/ViewContext.js.map +1 -1
  788. package/lib/esm/ViewCreator2d.js +3 -3
  789. package/lib/esm/ViewCreator2d.js.map +1 -1
  790. package/lib/esm/ViewCreator3d.d.ts +1 -1
  791. package/lib/esm/ViewCreator3d.d.ts.map +1 -1
  792. package/lib/esm/ViewCreator3d.js +5 -6
  793. package/lib/esm/ViewCreator3d.js.map +1 -1
  794. package/lib/esm/ViewManager.d.ts +6 -6
  795. package/lib/esm/ViewManager.d.ts.map +1 -1
  796. package/lib/esm/ViewManager.js +13 -13
  797. package/lib/esm/ViewManager.js.map +1 -1
  798. package/lib/esm/ViewState.d.ts +11 -5
  799. package/lib/esm/ViewState.d.ts.map +1 -1
  800. package/lib/esm/ViewState.js +21 -66
  801. package/lib/esm/ViewState.js.map +1 -1
  802. package/lib/esm/ViewingSpace.js +1 -1
  803. package/lib/esm/ViewingSpace.js.map +1 -1
  804. package/lib/esm/Viewport.d.ts +63 -14
  805. package/lib/esm/Viewport.d.ts.map +1 -1
  806. package/lib/esm/Viewport.js +73 -42
  807. package/lib/esm/Viewport.js.map +1 -1
  808. package/lib/esm/core-frontend.d.ts +17 -31
  809. package/lib/esm/core-frontend.d.ts.map +1 -1
  810. package/lib/esm/core-frontend.js +17 -31
  811. package/lib/esm/core-frontend.js.map +1 -1
  812. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
  813. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
  814. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
  815. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  816. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
  817. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  818. package/lib/esm/quantity-formatting/BasicUnitsProvider.js +18 -4
  819. package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  820. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts +26 -3
  821. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  822. package/lib/esm/quantity-formatting/QuantityFormatter.js +45 -7
  823. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  824. package/lib/esm/render/FeatureSymbology.d.ts.map +1 -1
  825. package/lib/esm/render/FeatureSymbology.js +3 -3
  826. package/lib/esm/render/FeatureSymbology.js.map +1 -1
  827. package/lib/esm/render/GraphicBranch.d.ts +18 -2
  828. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  829. package/lib/esm/render/GraphicBranch.js +8 -0
  830. package/lib/esm/render/GraphicBranch.js.map +1 -1
  831. package/lib/esm/render/GraphicBuilder.d.ts +7 -1
  832. package/lib/esm/render/GraphicBuilder.d.ts.map +1 -1
  833. package/lib/esm/render/GraphicBuilder.js.map +1 -1
  834. package/lib/esm/render/MockRender.d.ts +3 -1
  835. package/lib/esm/render/MockRender.d.ts.map +1 -1
  836. package/lib/esm/render/MockRender.js.map +1 -1
  837. package/lib/esm/render/RenderMaterial.d.ts +61 -0
  838. package/lib/esm/render/RenderMaterial.d.ts.map +1 -0
  839. package/lib/esm/render/RenderMaterial.js +9 -0
  840. package/lib/esm/render/RenderMaterial.js.map +1 -0
  841. package/lib/esm/render/RenderMemory.d.ts +21 -15
  842. package/lib/esm/render/RenderMemory.d.ts.map +1 -1
  843. package/lib/esm/render/RenderMemory.js +21 -15
  844. package/lib/esm/render/RenderMemory.js.map +1 -1
  845. package/lib/esm/render/RenderSystem.d.ts +48 -10
  846. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  847. package/lib/esm/render/RenderSystem.js +33 -10
  848. package/lib/esm/render/RenderSystem.js.map +1 -1
  849. package/lib/esm/render/RenderTarget.d.ts +10 -2
  850. package/lib/esm/render/RenderTarget.d.ts.map +1 -1
  851. package/lib/esm/render/RenderTarget.js +2 -1
  852. package/lib/esm/render/RenderTarget.js.map +1 -1
  853. package/lib/esm/render/RenderTexture.d.ts +2 -17
  854. package/lib/esm/render/RenderTexture.d.ts.map +1 -1
  855. package/lib/esm/render/RenderTexture.js +1 -16
  856. package/lib/esm/render/RenderTexture.js.map +1 -1
  857. package/lib/esm/render/primitives/EdgeParams.d.ts +84 -0
  858. package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -0
  859. package/lib/esm/render/primitives/EdgeParams.js +217 -0
  860. package/lib/esm/render/primitives/EdgeParams.js.map +1 -0
  861. package/lib/esm/render/primitives/PointStringParams.d.ts +16 -0
  862. package/lib/esm/render/primitives/PointStringParams.d.ts.map +1 -0
  863. package/lib/esm/render/primitives/PointStringParams.js +39 -0
  864. package/lib/esm/render/primitives/PointStringParams.js.map +1 -0
  865. package/lib/esm/render/primitives/PolylineParams.d.ts +44 -0
  866. package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -0
  867. package/lib/esm/render/primitives/PolylineParams.js +199 -0
  868. package/lib/esm/render/primitives/PolylineParams.js.map +1 -0
  869. package/lib/esm/render/primitives/Primitives.d.ts +1 -1
  870. package/lib/esm/render/primitives/Primitives.d.ts.map +1 -1
  871. package/lib/esm/render/primitives/Primitives.js.map +1 -1
  872. package/lib/esm/render/primitives/SurfaceParams.d.ts +46 -0
  873. package/lib/esm/render/primitives/SurfaceParams.d.ts.map +1 -0
  874. package/lib/esm/render/primitives/SurfaceParams.js +37 -0
  875. package/lib/esm/render/primitives/SurfaceParams.js.map +1 -0
  876. package/lib/esm/render/primitives/VertexTable.d.ts +4 -123
  877. package/lib/esm/render/primitives/VertexTable.d.ts.map +1 -1
  878. package/lib/esm/render/primitives/VertexTable.js +11 -342
  879. package/lib/esm/render/primitives/VertexTable.js.map +1 -1
  880. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
  881. package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
  882. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js +2 -1
  883. package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
  884. package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  885. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +1 -0
  886. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  887. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
  888. package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
  889. package/lib/esm/render/primitives/mesh/MeshPrimitives.js +3 -3
  890. package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
  891. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts +2 -0
  892. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  893. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  894. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  895. package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
  896. package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
  897. package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
  898. package/lib/esm/render/webgl/AttributeMap.js +5 -5
  899. package/lib/esm/render/webgl/BackgroundMapDrape.js +2 -2
  900. package/lib/esm/render/webgl/BackgroundMapDrape.js.map +1 -1
  901. package/lib/esm/render/webgl/BranchUniforms.d.ts.map +1 -1
  902. package/lib/esm/render/webgl/BranchUniforms.js +8 -5
  903. package/lib/esm/render/webgl/BranchUniforms.js.map +1 -1
  904. package/lib/esm/render/webgl/CachedGeometry.d.ts +16 -11
  905. package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
  906. package/lib/esm/render/webgl/CachedGeometry.js +26 -23
  907. package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
  908. package/lib/esm/render/webgl/DrawCommand.d.ts +2 -3
  909. package/lib/esm/render/webgl/DrawCommand.d.ts.map +1 -1
  910. package/lib/esm/render/webgl/DrawCommand.js +6 -4
  911. package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
  912. package/lib/esm/render/webgl/EdgeGeometry.d.ts +73 -0
  913. package/lib/esm/render/webgl/EdgeGeometry.d.ts.map +1 -0
  914. package/lib/esm/render/webgl/EdgeGeometry.js +135 -0
  915. package/lib/esm/render/webgl/EdgeGeometry.js.map +1 -0
  916. package/lib/esm/render/webgl/FeatureOverrides.d.ts +2 -0
  917. package/lib/esm/render/webgl/FeatureOverrides.d.ts.map +1 -1
  918. package/lib/esm/render/webgl/FeatureOverrides.js +11 -3
  919. package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
  920. package/lib/esm/render/webgl/FloatRGBA.d.ts.map +1 -1
  921. package/lib/esm/render/webgl/FloatRGBA.js +13 -11
  922. package/lib/esm/render/webgl/FloatRGBA.js.map +1 -1
  923. package/lib/esm/render/webgl/Graphic.d.ts +13 -0
  924. package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
  925. package/lib/esm/render/webgl/Graphic.js +39 -2
  926. package/lib/esm/render/webgl/Graphic.js.map +1 -1
  927. package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
  928. package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
  929. package/lib/esm/render/webgl/IndexedEdgeGeometry.js +85 -0
  930. package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -0
  931. package/lib/esm/render/webgl/InstancedGeometry.d.ts +6 -5
  932. package/lib/esm/render/webgl/InstancedGeometry.d.ts.map +1 -1
  933. package/lib/esm/render/webgl/InstancedGeometry.js +2 -1
  934. package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
  935. package/lib/esm/render/webgl/LightingUniforms.d.ts +1 -0
  936. package/lib/esm/render/webgl/LightingUniforms.d.ts.map +1 -1
  937. package/lib/esm/render/webgl/LightingUniforms.js +4 -1
  938. package/lib/esm/render/webgl/LightingUniforms.js.map +1 -1
  939. package/lib/esm/render/webgl/Material.d.ts +1 -1
  940. package/lib/esm/render/webgl/Material.d.ts.map +1 -1
  941. package/lib/esm/render/webgl/Material.js +2 -0
  942. package/lib/esm/render/webgl/Material.js.map +1 -1
  943. package/lib/esm/render/webgl/Mesh.d.ts +8 -162
  944. package/lib/esm/render/webgl/Mesh.d.ts.map +1 -1
  945. package/lib/esm/render/webgl/Mesh.js +12 -445
  946. package/lib/esm/render/webgl/Mesh.js.map +1 -1
  947. package/lib/esm/render/webgl/MeshData.d.ts +38 -0
  948. package/lib/esm/render/webgl/MeshData.d.ts.map +1 -0
  949. package/lib/esm/render/webgl/MeshData.js +62 -0
  950. package/lib/esm/render/webgl/MeshData.js.map +1 -0
  951. package/lib/esm/render/webgl/MeshGeometry.d.ts +38 -0
  952. package/lib/esm/render/webgl/MeshGeometry.d.ts.map +1 -0
  953. package/lib/esm/render/webgl/MeshGeometry.js +55 -0
  954. package/lib/esm/render/webgl/MeshGeometry.js.map +1 -0
  955. package/lib/esm/render/webgl/PlanarClassifier.d.ts.map +1 -1
  956. package/lib/esm/render/webgl/PlanarClassifier.js +9 -5
  957. package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
  958. package/lib/esm/render/webgl/PlanarGrid.d.ts +2 -3
  959. package/lib/esm/render/webgl/PlanarGrid.d.ts.map +1 -1
  960. package/lib/esm/render/webgl/PlanarGrid.js +3 -3
  961. package/lib/esm/render/webgl/PlanarGrid.js.map +1 -1
  962. package/lib/esm/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  963. package/lib/esm/render/webgl/PlanarTextureProjection.js +1 -0
  964. package/lib/esm/render/webgl/PlanarTextureProjection.js.map +1 -1
  965. package/lib/esm/render/webgl/PointCloud.d.ts +2 -2
  966. package/lib/esm/render/webgl/PointCloud.d.ts.map +1 -1
  967. package/lib/esm/render/webgl/PointCloud.js +2 -2
  968. package/lib/esm/render/webgl/PointCloud.js.map +1 -1
  969. package/lib/esm/render/webgl/PointString.d.ts +3 -3
  970. package/lib/esm/render/webgl/PointString.d.ts.map +1 -1
  971. package/lib/esm/render/webgl/PointString.js +1 -1
  972. package/lib/esm/render/webgl/PointString.js.map +1 -1
  973. package/lib/esm/render/webgl/Polyline.d.ts +3 -3
  974. package/lib/esm/render/webgl/Polyline.d.ts.map +1 -1
  975. package/lib/esm/render/webgl/Polyline.js +6 -6
  976. package/lib/esm/render/webgl/Polyline.js.map +1 -1
  977. package/lib/esm/render/webgl/Primitive.d.ts +2 -2
  978. package/lib/esm/render/webgl/Primitive.d.ts.map +1 -1
  979. package/lib/esm/render/webgl/Primitive.js +5 -5
  980. package/lib/esm/render/webgl/Primitive.js.map +1 -1
  981. package/lib/esm/render/webgl/RealityMesh.d.ts +3 -2
  982. package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
  983. package/lib/esm/render/webgl/RealityMesh.js +10 -9
  984. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  985. package/lib/esm/render/webgl/RenderCommands.d.ts +6 -2
  986. package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
  987. package/lib/esm/render/webgl/RenderCommands.js +78 -45
  988. package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
  989. package/lib/esm/render/webgl/RenderFlags.d.ts +48 -1
  990. package/lib/esm/render/webgl/RenderFlags.d.ts.map +1 -1
  991. package/lib/esm/render/webgl/RenderFlags.js +63 -1
  992. package/lib/esm/render/webgl/RenderFlags.js.map +1 -1
  993. package/lib/esm/render/webgl/SceneCompositor.js +10 -9
  994. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  995. package/lib/esm/render/webgl/ScreenSpaceEffect.js +1 -1
  996. package/lib/esm/render/webgl/ShaderBuilder.d.ts +23 -20
  997. package/lib/esm/render/webgl/ShaderBuilder.d.ts.map +1 -1
  998. package/lib/esm/render/webgl/ShaderBuilder.js +38 -32
  999. package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
  1000. package/lib/esm/render/webgl/ShaderProgram.d.ts +1 -1
  1001. package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
  1002. package/lib/esm/render/webgl/ShaderProgram.js +4 -4
  1003. package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
  1004. package/lib/esm/render/webgl/SolarShadowMap.d.ts.map +1 -1
  1005. package/lib/esm/render/webgl/SolarShadowMap.js +5 -4
  1006. package/lib/esm/render/webgl/SolarShadowMap.js.map +1 -1
  1007. package/lib/esm/render/webgl/SurfaceGeometry.d.ts +54 -0
  1008. package/lib/esm/render/webgl/SurfaceGeometry.d.ts.map +1 -0
  1009. package/lib/esm/render/webgl/SurfaceGeometry.js +243 -0
  1010. package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -0
  1011. package/lib/esm/render/webgl/System.d.ts +13 -10
  1012. package/lib/esm/render/webgl/System.d.ts.map +1 -1
  1013. package/lib/esm/render/webgl/System.js +77 -23
  1014. package/lib/esm/render/webgl/System.js.map +1 -1
  1015. package/lib/esm/render/webgl/Target.d.ts +13 -1
  1016. package/lib/esm/render/webgl/Target.d.ts.map +1 -1
  1017. package/lib/esm/render/webgl/Target.js +88 -2
  1018. package/lib/esm/render/webgl/Target.js.map +1 -1
  1019. package/lib/esm/render/webgl/Technique.d.ts.map +1 -1
  1020. package/lib/esm/render/webgl/Technique.js +112 -119
  1021. package/lib/esm/render/webgl/Technique.js.map +1 -1
  1022. package/lib/esm/render/webgl/TechniqueFlags.d.ts +7 -1
  1023. package/lib/esm/render/webgl/TechniqueFlags.d.ts.map +1 -1
  1024. package/lib/esm/render/webgl/TechniqueFlags.js +10 -1
  1025. package/lib/esm/render/webgl/TechniqueFlags.js.map +1 -1
  1026. package/lib/esm/render/webgl/TechniqueId.d.ts +29 -28
  1027. package/lib/esm/render/webgl/TechniqueId.d.ts.map +1 -1
  1028. package/lib/esm/render/webgl/TechniqueId.js +7 -7
  1029. package/lib/esm/render/webgl/TechniqueId.js.map +1 -1
  1030. package/lib/esm/render/webgl/Texture.d.ts +15 -12
  1031. package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
  1032. package/lib/esm/render/webgl/Texture.js +29 -26
  1033. package/lib/esm/render/webgl/Texture.js.map +1 -1
  1034. package/lib/esm/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
  1035. package/lib/esm/render/webgl/glsl/AmbientOcclusion.js +84 -19
  1036. package/lib/esm/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  1037. package/lib/esm/render/webgl/glsl/Animation.js +1 -1
  1038. package/lib/esm/render/webgl/glsl/Blur.js +1 -1
  1039. package/lib/esm/render/webgl/glsl/ClearPickAndColor.js +2 -2
  1040. package/lib/esm/render/webgl/glsl/ClearTranslucent.js +2 -2
  1041. package/lib/esm/render/webgl/glsl/Color.js +1 -1
  1042. package/lib/esm/render/webgl/glsl/Combine3Textures.js +1 -1
  1043. package/lib/esm/render/webgl/glsl/CombineTextures.js +1 -1
  1044. package/lib/esm/render/webgl/glsl/Composite.js +1 -1
  1045. package/lib/esm/render/webgl/glsl/CopyColor.d.ts.map +1 -1
  1046. package/lib/esm/render/webgl/glsl/CopyColor.js +17 -2
  1047. package/lib/esm/render/webgl/glsl/CopyColor.js.map +1 -1
  1048. package/lib/esm/render/webgl/glsl/CopyPickBuffers.js +2 -2
  1049. package/lib/esm/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
  1050. package/lib/esm/render/webgl/glsl/CopyStencil.js +10 -13
  1051. package/lib/esm/render/webgl/glsl/CopyStencil.js.map +1 -1
  1052. package/lib/esm/render/webgl/glsl/EVSMFromDepth.js +2 -2
  1053. package/lib/esm/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  1054. package/lib/esm/render/webgl/glsl/Edge.d.ts +2 -1
  1055. package/lib/esm/render/webgl/glsl/Edge.d.ts.map +1 -1
  1056. package/lib/esm/render/webgl/glsl/Edge.js +132 -14
  1057. package/lib/esm/render/webgl/glsl/Edge.js.map +1 -1
  1058. package/lib/esm/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
  1059. package/lib/esm/render/webgl/glsl/FeatureSymbology.js +44 -22
  1060. package/lib/esm/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  1061. package/lib/esm/render/webgl/glsl/Fragment.d.ts.map +1 -1
  1062. package/lib/esm/render/webgl/glsl/Fragment.js +19 -11
  1063. package/lib/esm/render/webgl/glsl/Fragment.js.map +1 -1
  1064. package/lib/esm/render/webgl/glsl/Lighting.d.ts.map +1 -1
  1065. package/lib/esm/render/webgl/glsl/Lighting.js +16 -2
  1066. package/lib/esm/render/webgl/glsl/Lighting.js.map +1 -1
  1067. package/lib/esm/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
  1068. package/lib/esm/render/webgl/glsl/LookupTable.d.ts +4 -2
  1069. package/lib/esm/render/webgl/glsl/LookupTable.d.ts.map +1 -1
  1070. package/lib/esm/render/webgl/glsl/LookupTable.js +7 -3
  1071. package/lib/esm/render/webgl/glsl/LookupTable.js.map +1 -1
  1072. package/lib/esm/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
  1073. package/lib/esm/render/webgl/glsl/PlanarClassification.js +13 -4
  1074. package/lib/esm/render/webgl/glsl/PlanarClassification.js.map +1 -1
  1075. package/lib/esm/render/webgl/glsl/PlanarGrid.js +2 -2
  1076. package/lib/esm/render/webgl/glsl/PlanarGrid.js.map +1 -1
  1077. package/lib/esm/render/webgl/glsl/PointCloud.js +2 -2
  1078. package/lib/esm/render/webgl/glsl/PointCloud.js.map +1 -1
  1079. package/lib/esm/render/webgl/glsl/PointString.js +1 -1
  1080. package/lib/esm/render/webgl/glsl/PointString.js.map +1 -1
  1081. package/lib/esm/render/webgl/glsl/Polyline.js +1 -1
  1082. package/lib/esm/render/webgl/glsl/Polyline.js.map +1 -1
  1083. package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  1084. package/lib/esm/render/webgl/glsl/RealityMesh.js +9 -6
  1085. package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
  1086. package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
  1087. package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  1088. package/lib/esm/render/webgl/glsl/SkyBox.js +2 -2
  1089. package/lib/esm/render/webgl/glsl/SkyBox.js.map +1 -1
  1090. package/lib/esm/render/webgl/glsl/SkySphere.js +2 -2
  1091. package/lib/esm/render/webgl/glsl/Surface.d.ts.map +1 -1
  1092. package/lib/esm/render/webgl/glsl/Surface.js +41 -16
  1093. package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
  1094. package/lib/esm/render/webgl/glsl/Translucency.js +2 -2
  1095. package/lib/esm/render/webgl/glsl/Vertex.js +3 -3
  1096. package/lib/esm/render/webgl/glsl/Vertex.js.map +1 -1
  1097. package/lib/esm/render/webgl/glsl/ViewportQuad.js +1 -1
  1098. package/lib/esm/render/webgl/glsl/ViewportQuad.js.map +1 -1
  1099. package/lib/esm/render/webgl/glsl/Wiremesh.d.ts +9 -0
  1100. package/lib/esm/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
  1101. package/lib/esm/render/webgl/glsl/Wiremesh.js +36 -0
  1102. package/lib/esm/render/webgl/glsl/Wiremesh.js.map +1 -0
  1103. package/lib/esm/render-primitives.d.ts +5 -1
  1104. package/lib/esm/render-primitives.d.ts.map +1 -1
  1105. package/lib/esm/render-primitives.js +5 -1
  1106. package/lib/esm/render-primitives.js.map +1 -1
  1107. package/lib/esm/request/Request.d.ts +167 -0
  1108. package/lib/esm/request/Request.d.ts.map +1 -0
  1109. package/lib/esm/request/Request.js +289 -0
  1110. package/lib/esm/request/Request.js.map +1 -0
  1111. package/lib/esm/tile/B3dmReader.d.ts +2 -1
  1112. package/lib/esm/tile/B3dmReader.d.ts.map +1 -1
  1113. package/lib/esm/tile/B3dmReader.js +12 -8
  1114. package/lib/esm/tile/B3dmReader.js.map +1 -1
  1115. package/lib/esm/tile/CesiumAssetProvider.d.ts +14 -0
  1116. package/lib/esm/tile/CesiumAssetProvider.d.ts.map +1 -0
  1117. package/lib/esm/tile/CesiumAssetProvider.js +31 -0
  1118. package/lib/esm/tile/CesiumAssetProvider.js.map +1 -0
  1119. package/lib/esm/tile/ContextShareProvider.d.ts +22 -0
  1120. package/lib/esm/tile/ContextShareProvider.d.ts.map +1 -0
  1121. package/lib/esm/tile/ContextShareProvider.js +125 -0
  1122. package/lib/esm/tile/ContextShareProvider.js.map +1 -0
  1123. package/lib/esm/tile/DynamicIModelTile.d.ts.map +1 -1
  1124. package/lib/esm/tile/DynamicIModelTile.js +10 -4
  1125. package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
  1126. package/lib/esm/tile/GltfReader.d.ts +600 -56
  1127. package/lib/esm/tile/GltfReader.d.ts.map +1 -1
  1128. package/lib/esm/tile/GltfReader.js +765 -254
  1129. package/lib/esm/tile/GltfReader.js.map +1 -1
  1130. package/lib/esm/tile/I3dmReader.d.ts +2 -1
  1131. package/lib/esm/tile/I3dmReader.d.ts.map +1 -1
  1132. package/lib/esm/tile/I3dmReader.js +11 -7
  1133. package/lib/esm/tile/I3dmReader.js.map +1 -1
  1134. package/lib/esm/tile/IModelTile.d.ts.map +1 -1
  1135. package/lib/esm/tile/IModelTile.js +14 -7
  1136. package/lib/esm/tile/IModelTile.js.map +1 -1
  1137. package/lib/esm/tile/IModelTileTree.d.ts +8 -0
  1138. package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
  1139. package/lib/esm/tile/IModelTileTree.js +36 -1
  1140. package/lib/esm/tile/IModelTileTree.js.map +1 -1
  1141. package/lib/esm/tile/ImdlReader.d.ts +365 -10
  1142. package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
  1143. package/lib/esm/tile/ImdlReader.js +199 -66
  1144. package/lib/esm/tile/ImdlReader.js.map +1 -1
  1145. package/lib/esm/tile/LRUTileList.d.ts +29 -29
  1146. package/lib/esm/tile/LRUTileList.d.ts.map +1 -1
  1147. package/lib/esm/tile/LRUTileList.js +47 -47
  1148. package/lib/esm/tile/LRUTileList.js.map +1 -1
  1149. package/lib/esm/tile/OrbitGtTileTree.d.ts +0 -9
  1150. package/lib/esm/tile/OrbitGtTileTree.d.ts.map +1 -1
  1151. package/lib/esm/tile/OrbitGtTileTree.js +11 -21
  1152. package/lib/esm/tile/OrbitGtTileTree.js.map +1 -1
  1153. package/lib/esm/tile/PrimaryTileTree.d.ts +14 -5
  1154. package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
  1155. package/lib/esm/tile/PrimaryTileTree.js +70 -15
  1156. package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
  1157. package/lib/esm/tile/RealityModelTileTree.d.ts +22 -39
  1158. package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
  1159. package/lib/esm/tile/RealityModelTileTree.js +83 -218
  1160. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  1161. package/lib/esm/tile/RealityTile.d.ts +17 -3
  1162. package/lib/esm/tile/RealityTile.d.ts.map +1 -1
  1163. package/lib/esm/tile/RealityTile.js +34 -2
  1164. package/lib/esm/tile/RealityTile.js.map +1 -1
  1165. package/lib/esm/tile/RealityTileLoader.d.ts +9 -5
  1166. package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
  1167. package/lib/esm/tile/RealityTileLoader.js +23 -8
  1168. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  1169. package/lib/esm/tile/RealityTileTree.d.ts +3 -1
  1170. package/lib/esm/tile/RealityTileTree.d.ts.map +1 -1
  1171. package/lib/esm/tile/RealityTileTree.js +7 -3
  1172. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  1173. package/lib/esm/tile/Tile.d.ts +5 -4
  1174. package/lib/esm/tile/Tile.d.ts.map +1 -1
  1175. package/lib/esm/tile/Tile.js +8 -3
  1176. package/lib/esm/tile/Tile.js.map +1 -1
  1177. package/lib/esm/tile/TileAdmin.d.ts +79 -48
  1178. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  1179. package/lib/esm/tile/TileAdmin.js +124 -113
  1180. package/lib/esm/tile/TileAdmin.js.map +1 -1
  1181. package/lib/esm/tile/TileDrawArgs.d.ts +11 -0
  1182. package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
  1183. package/lib/esm/tile/TileDrawArgs.js +6 -1
  1184. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  1185. package/lib/esm/tile/TileGeometryCollector.d.ts +80 -0
  1186. package/lib/esm/tile/TileGeometryCollector.d.ts.map +1 -0
  1187. package/lib/esm/tile/TileGeometryCollector.js +67 -0
  1188. package/lib/esm/tile/TileGeometryCollector.js.map +1 -0
  1189. package/lib/esm/tile/TileRequest.d.ts +12 -9
  1190. package/lib/esm/tile/TileRequest.d.ts.map +1 -1
  1191. package/lib/esm/tile/TileRequest.js +19 -11
  1192. package/lib/esm/tile/TileRequest.js.map +1 -1
  1193. package/lib/esm/tile/TileRequestChannel.js +3 -3
  1194. package/lib/esm/tile/TileRequestChannel.js.map +1 -1
  1195. package/lib/esm/tile/TileTree.d.ts +7 -1
  1196. package/lib/esm/tile/TileTree.d.ts.map +1 -1
  1197. package/lib/esm/tile/TileTree.js +8 -1
  1198. package/lib/esm/tile/TileTree.js.map +1 -1
  1199. package/lib/esm/tile/TileTreeReference.d.ts +25 -2
  1200. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  1201. package/lib/esm/tile/TileTreeReference.js +44 -3
  1202. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  1203. package/lib/esm/tile/TileUsageMarker.d.ts +9 -9
  1204. package/lib/esm/tile/TileUsageMarker.d.ts.map +1 -1
  1205. package/lib/esm/tile/TileUsageMarker.js +9 -9
  1206. package/lib/esm/tile/TileUsageMarker.js.map +1 -1
  1207. package/lib/esm/tile/TileUser.d.ts +33 -0
  1208. package/lib/esm/tile/TileUser.d.ts.map +1 -0
  1209. package/lib/esm/tile/TileUser.js +25 -0
  1210. package/lib/esm/tile/TileUser.js.map +1 -0
  1211. package/lib/esm/tile/TileUserSet.d.ts +28 -0
  1212. package/lib/esm/tile/TileUserSet.d.ts.map +1 -0
  1213. package/lib/esm/tile/TileUserSet.js +118 -0
  1214. package/lib/esm/tile/TileUserSet.js.map +1 -0
  1215. package/lib/esm/tile/internal.d.ts +7 -1
  1216. package/lib/esm/tile/internal.d.ts.map +1 -1
  1217. package/lib/esm/tile/internal.js +7 -1
  1218. package/lib/esm/tile/internal.js.map +1 -1
  1219. package/lib/esm/tile/map/ArcGISTileMap.d.ts +22 -0
  1220. package/lib/esm/tile/map/ArcGISTileMap.d.ts.map +1 -0
  1221. package/lib/esm/tile/map/ArcGISTileMap.js +173 -0
  1222. package/lib/esm/tile/map/ArcGISTileMap.js.map +1 -0
  1223. package/lib/esm/tile/map/ArcGisTokenGenerator.js +1 -1
  1224. package/lib/esm/tile/map/ArcGisTokenGenerator.js.map +1 -1
  1225. package/lib/esm/tile/map/ArcGisUtilities.d.ts +1 -1
  1226. package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
  1227. package/lib/esm/tile/map/ArcGisUtilities.js +14 -6
  1228. package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
  1229. package/lib/esm/tile/map/BingElevation.js +1 -1
  1230. package/lib/esm/tile/map/BingElevation.js.map +1 -1
  1231. package/lib/esm/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  1232. package/lib/esm/tile/map/CesiumTerrainProvider.js +25 -13
  1233. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  1234. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +3 -4
  1235. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  1236. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +22 -43
  1237. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  1238. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -2
  1239. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  1240. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +1 -1
  1241. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  1242. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +3 -3
  1243. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  1244. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -2
  1245. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  1246. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
  1247. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  1248. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
  1249. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  1250. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
  1251. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  1252. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
  1253. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  1254. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
  1255. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  1256. package/lib/esm/tile/map/ImageryTileTree.d.ts +6 -6
  1257. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  1258. package/lib/esm/tile/map/ImageryTileTree.js +22 -26
  1259. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  1260. package/lib/esm/tile/map/MapCartoRectangle.js +1 -1
  1261. package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
  1262. package/lib/esm/tile/map/MapLayerAuthentication.d.ts +20 -0
  1263. package/lib/esm/tile/map/MapLayerAuthentication.d.ts.map +1 -0
  1264. package/lib/esm/tile/map/MapLayerAuthentication.js +15 -0
  1265. package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -0
  1266. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +6 -3
  1267. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  1268. package/lib/esm/tile/map/MapLayerFormatRegistry.js +3 -1
  1269. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  1270. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts +2 -2
  1271. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  1272. package/lib/esm/tile/map/MapLayerImageryFormats.js +22 -9
  1273. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  1274. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +18 -6
  1275. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  1276. package/lib/esm/tile/map/MapLayerImageryProvider.js +44 -11
  1277. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  1278. package/lib/esm/tile/map/MapLayerSources.d.ts +3 -11
  1279. package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
  1280. package/lib/esm/tile/map/MapLayerSources.js +7 -36
  1281. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  1282. package/lib/esm/tile/map/MapTile.d.ts +7 -6
  1283. package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
  1284. package/lib/esm/tile/map/MapTile.js +51 -37
  1285. package/lib/esm/tile/map/MapTile.js.map +1 -1
  1286. package/lib/esm/tile/map/MapTileLoader.d.ts +2 -1
  1287. package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
  1288. package/lib/esm/tile/map/MapTileLoader.js +5 -2
  1289. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  1290. package/lib/esm/tile/map/MapTileTree.d.ts +9 -6
  1291. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  1292. package/lib/esm/tile/map/MapTileTree.js +56 -29
  1293. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  1294. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
  1295. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  1296. package/lib/esm/tile/map/MapTiledGraphicsProvider.js +4 -6
  1297. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  1298. package/lib/esm/tile/map/MapTilingScheme.d.ts +7 -2
  1299. package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
  1300. package/lib/esm/tile/map/MapTilingScheme.js +22 -9
  1301. package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
  1302. package/lib/esm/tile/map/QuadId.d.ts +1 -0
  1303. package/lib/esm/tile/map/QuadId.d.ts.map +1 -1
  1304. package/lib/esm/tile/map/QuadId.js +2 -1
  1305. package/lib/esm/tile/map/QuadId.js.map +1 -1
  1306. package/lib/esm/tile/map/TerrainMeshProvider.d.ts +1 -1
  1307. package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
  1308. package/lib/esm/tile/map/WmsCapabilities.d.ts +8 -1
  1309. package/lib/esm/tile/map/WmsCapabilities.d.ts.map +1 -1
  1310. package/lib/esm/tile/map/WmsCapabilities.js +37 -3
  1311. package/lib/esm/tile/map/WmsCapabilities.js.map +1 -1
  1312. package/lib/esm/tile/map/WmtsCapabilities.d.ts +11 -1
  1313. package/lib/esm/tile/map/WmtsCapabilities.d.ts.map +1 -1
  1314. package/lib/esm/tile/map/WmtsCapabilities.js +20 -6
  1315. package/lib/esm/tile/map/WmtsCapabilities.js.map +1 -1
  1316. package/lib/esm/tools/EditManipulator.d.ts.map +1 -1
  1317. package/lib/esm/tools/EditManipulator.js +1 -1
  1318. package/lib/esm/tools/EditManipulator.js.map +1 -1
  1319. package/lib/esm/tools/ElementSetTool.js +2 -2
  1320. package/lib/esm/tools/ElementSetTool.js.map +1 -1
  1321. package/lib/esm/tools/PrimitiveTool.d.ts +4 -4
  1322. package/lib/esm/tools/PrimitiveTool.d.ts.map +1 -1
  1323. package/lib/esm/tools/PrimitiveTool.js +2 -2
  1324. package/lib/esm/tools/PrimitiveTool.js.map +1 -1
  1325. package/lib/esm/tools/Tool.d.ts +29 -1
  1326. package/lib/esm/tools/Tool.d.ts.map +1 -1
  1327. package/lib/esm/tools/Tool.js +66 -0
  1328. package/lib/esm/tools/Tool.js.map +1 -1
  1329. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  1330. package/lib/esm/tools/ToolAdmin.js +20 -10
  1331. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  1332. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  1333. package/lib/esm/tools/ViewTool.js +3 -11
  1334. package/lib/esm/tools/ViewTool.js.map +1 -1
  1335. package/lib/esm/webgl.d.ts +5 -0
  1336. package/lib/esm/webgl.d.ts.map +1 -1
  1337. package/lib/esm/webgl.js +5 -0
  1338. package/lib/esm/webgl.js.map +1 -1
  1339. package/lib/public/locales/en/iModelJs.json +3 -1
  1340. package/package.json +33 -28
  1341. package/lib/cjs/RealityDataAccessProps.d.ts +0 -44
  1342. package/lib/cjs/RealityDataAccessProps.d.ts.map +0 -1
  1343. package/lib/cjs/RealityDataAccessProps.js +0 -23
  1344. package/lib/cjs/RealityDataAccessProps.js.map +0 -1
  1345. package/lib/cjs/RealityDataConnection.d.ts +0 -31
  1346. package/lib/cjs/RealityDataConnection.d.ts.map +0 -1
  1347. package/lib/cjs/RealityDataConnection.js +0 -101
  1348. package/lib/cjs/RealityDataConnection.js.map +0 -1
  1349. package/lib/cjs/ViewportSet.d.ts +0 -28
  1350. package/lib/cjs/ViewportSet.d.ts.map +0 -1
  1351. package/lib/cjs/ViewportSet.js +0 -126
  1352. package/lib/cjs/ViewportSet.js.map +0 -1
  1353. package/lib/cjs/extension/Extension.d.ts +0 -39
  1354. package/lib/cjs/extension/Extension.d.ts.map +0 -1
  1355. package/lib/cjs/extension/Extension.js +0 -39
  1356. package/lib/cjs/extension/Extension.js.map +0 -1
  1357. package/lib/cjs/extension/ExtensionAdmin.d.ts +0 -70
  1358. package/lib/cjs/extension/ExtensionAdmin.d.ts.map +0 -1
  1359. package/lib/cjs/extension/ExtensionAdmin.js +0 -105
  1360. package/lib/cjs/extension/ExtensionAdmin.js.map +0 -1
  1361. package/lib/cjs/extension/ExtensionHost.d.ts +0 -20
  1362. package/lib/cjs/extension/ExtensionHost.d.ts.map +0 -1
  1363. package/lib/cjs/extension/ExtensionHost.js +0 -19
  1364. package/lib/cjs/extension/ExtensionHost.js.map +0 -1
  1365. package/lib/cjs/extension/ExtensionImpl.d.ts +0 -16
  1366. package/lib/cjs/extension/ExtensionImpl.d.ts.map +0 -1
  1367. package/lib/cjs/extension/ExtensionImpl.js +0 -40
  1368. package/lib/cjs/extension/ExtensionImpl.js.map +0 -1
  1369. package/lib/cjs/extension/ExtensionLoader.d.ts +0 -20
  1370. package/lib/cjs/extension/ExtensionLoader.d.ts.map +0 -1
  1371. package/lib/cjs/extension/ExtensionLoader.js.map +0 -1
  1372. package/lib/cjs/extension/ExtensionRuntime.d.ts +0 -2
  1373. package/lib/cjs/extension/ExtensionRuntime.d.ts.map +0 -1
  1374. package/lib/cjs/extension/ExtensionRuntime.js +0 -60
  1375. package/lib/cjs/extension/ExtensionRuntime.js.map +0 -1
  1376. package/lib/cjs/extension/extensions.d.ts +0 -18
  1377. package/lib/cjs/extension/extensions.d.ts.map +0 -1
  1378. package/lib/cjs/extension/extensions.js +0 -35
  1379. package/lib/cjs/extension/extensions.js.map +0 -1
  1380. package/lib/cjs/tile/map/MapLayerSettingsService.d.ts +0 -39
  1381. package/lib/cjs/tile/map/MapLayerSettingsService.d.ts.map +0 -1
  1382. package/lib/cjs/tile/map/MapLayerSettingsService.js +0 -190
  1383. package/lib/cjs/tile/map/MapLayerSettingsService.js.map +0 -1
  1384. package/lib/esm/RealityDataAccessProps.d.ts +0 -44
  1385. package/lib/esm/RealityDataAccessProps.d.ts.map +0 -1
  1386. package/lib/esm/RealityDataAccessProps.js +0 -20
  1387. package/lib/esm/RealityDataAccessProps.js.map +0 -1
  1388. package/lib/esm/RealityDataConnection.d.ts +0 -31
  1389. package/lib/esm/RealityDataConnection.d.ts.map +0 -1
  1390. package/lib/esm/RealityDataConnection.js +0 -98
  1391. package/lib/esm/RealityDataConnection.js.map +0 -1
  1392. package/lib/esm/ViewportSet.d.ts +0 -28
  1393. package/lib/esm/ViewportSet.d.ts.map +0 -1
  1394. package/lib/esm/ViewportSet.js +0 -121
  1395. package/lib/esm/ViewportSet.js.map +0 -1
  1396. package/lib/esm/extension/Extension.d.ts +0 -39
  1397. package/lib/esm/extension/Extension.d.ts.map +0 -1
  1398. package/lib/esm/extension/Extension.js +0 -38
  1399. package/lib/esm/extension/Extension.js.map +0 -1
  1400. package/lib/esm/extension/ExtensionAdmin.d.ts +0 -70
  1401. package/lib/esm/extension/ExtensionAdmin.d.ts.map +0 -1
  1402. package/lib/esm/extension/ExtensionAdmin.js +0 -101
  1403. package/lib/esm/extension/ExtensionAdmin.js.map +0 -1
  1404. package/lib/esm/extension/ExtensionHost.d.ts +0 -20
  1405. package/lib/esm/extension/ExtensionHost.d.ts.map +0 -1
  1406. package/lib/esm/extension/ExtensionHost.js +0 -15
  1407. package/lib/esm/extension/ExtensionHost.js.map +0 -1
  1408. package/lib/esm/extension/ExtensionImpl.d.ts +0 -16
  1409. package/lib/esm/extension/ExtensionImpl.d.ts.map +0 -1
  1410. package/lib/esm/extension/ExtensionImpl.js +0 -35
  1411. package/lib/esm/extension/ExtensionImpl.js.map +0 -1
  1412. package/lib/esm/extension/ExtensionLoader.d.ts +0 -20
  1413. package/lib/esm/extension/ExtensionLoader.d.ts.map +0 -1
  1414. package/lib/esm/extension/ExtensionLoader.js.map +0 -1
  1415. package/lib/esm/extension/ExtensionRuntime.d.ts +0 -2
  1416. package/lib/esm/extension/ExtensionRuntime.d.ts.map +0 -1
  1417. package/lib/esm/extension/ExtensionRuntime.js +0 -58
  1418. package/lib/esm/extension/ExtensionRuntime.js.map +0 -1
  1419. package/lib/esm/extension/extensions.d.ts +0 -18
  1420. package/lib/esm/extension/extensions.d.ts.map +0 -1
  1421. package/lib/esm/extension/extensions.js +0 -23
  1422. package/lib/esm/extension/extensions.js.map +0 -1
  1423. package/lib/esm/tile/map/MapLayerSettingsService.d.ts +0 -39
  1424. package/lib/esm/tile/map/MapLayerSettingsService.d.ts.map +0 -1
  1425. package/lib/esm/tile/map/MapLayerSettingsService.js +0 -186
  1426. package/lib/esm/tile/map/MapLayerSettingsService.js.map +0 -1
@@ -2,7 +2,6 @@
2
2
  * @module Tiles
3
3
  */
4
4
  import { Cartographic, ImageSource, MapLayerSettings } from "@itwin/core-common";
5
- import { ScreenViewport } from "../../../Viewport";
6
5
  import { ImageryMapTile, ImageryMapTileTree, MapLayerImageryProvider, QuadId } from "../../internal";
7
6
  /** @internal */
8
7
  export declare class ArcGISMapLayerImageryProvider extends MapLayerImageryProvider {
@@ -11,7 +10,7 @@ export declare class ArcGISMapLayerImageryProvider extends MapLayerImageryProvid
11
10
  private _copyrightText;
12
11
  private _querySupported;
13
12
  private _tileMapSupported;
14
- private _availabilityMap;
13
+ private _tileMap;
15
14
  serviceJson: any;
16
15
  constructor(settings: MapLayerSettings);
17
16
  protected get _filterByCartoRange(): boolean;
@@ -23,10 +22,10 @@ export declare class ArcGISMapLayerImageryProvider extends MapLayerImageryProvid
23
22
  };
24
23
  private fetchTile;
25
24
  loadTile(row: number, column: number, zoomLevel: number): Promise<ImageSource | undefined>;
26
- protected _testChildAvailability(tile: ImageryMapTile, resolveChildren: () => void): void;
25
+ protected _generateChildIds(tile: ImageryMapTile, resolveChildren: (childIds: QuadId[]) => void): void;
27
26
  private isEpsg3857Compatible;
28
27
  initialize(): Promise<void>;
29
- getLogo(_vp: ScreenViewport): HTMLTableRowElement;
28
+ getLogo(): HTMLTableRowElement;
30
29
  getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void>;
31
30
  protected getLayerString(prefix?: string): string;
32
31
  constructUrl(row: number, column: number, zoomLevel: number): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"ArcGISMapLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAe,MAAM,oBAAoB,CAAC;AAI9F,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EACwE,cAAc,EAAE,kBAAkB,EAC/G,uBAAuB,EAAiC,MAAM,EAC/D,MAAM,gBAAgB,CAAC;AAMxB,gBAAgB;AAChB,qBAAa,6BAA8B,SAAQ,uBAAuB;IACxE,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,gBAAgB,CAAmF;IACpG,WAAW,EAAE,GAAG,CAAC;gBACZ,QAAQ,EAAE,gBAAgB;IAItC,cAAuB,mBAAmB,YAAoB;IAE9D,IAAoB,gBAAgB,WAAsE;IAC1G,IAAoB,gBAAgB,WAAyF;IAEtH,YAAY,CAAC,SAAS,EAAE,GAAG;;;;YAKpB,SAAS;IAUD,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;cAsD7F,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,IAAI;IA8C3F,OAAO,CAAC,oBAAoB;IAQN,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsCjC,OAAO,CAAC,GAAG,EAAE,cAAc;IAIrB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkDjI,SAAS,CAAC,cAAc,CAAC,MAAM,SAAS,GAAG,MAAM;IAMpC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAY5E,mBAAmB;CAgBlC"}
1
+ {"version":3,"file":"ArcGISMapLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,WAAW,EAAgB,gBAAgB,EAAe,MAAM,oBAAoB,CAAC;AAI5G,OAAO,EACuF,cAAc,EAAE,kBAAkB,EAC9H,uBAAuB,EAAiC,MAAM,EAC/D,MAAM,gBAAgB,CAAC;AAKxB,gBAAgB;AAChB,qBAAa,6BAA8B,SAAQ,uBAAuB;IACxE,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,QAAQ,CAA0B;IACnC,WAAW,EAAE,GAAG,CAAC;gBACZ,QAAQ,EAAE,gBAAgB;IAItC,cAAuB,mBAAmB,YAAoB;IAE9D,IAAoB,gBAAgB,WAAsE;IAC1G,IAAoB,gBAAgB,WAAyF;IAEtH,YAAY,CAAC,SAAS,EAAE,GAAG;;;;YAKpB,SAAS;IAUD,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;cAqD7F,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI;IAoBxG,OAAO,CAAC,oBAAoB;IAQN,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA6CjC,OAAO;IAID,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkDjI,SAAS,CAAC,cAAc,CAAC,MAAM,SAAS,GAAG,MAAM;IAMpC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAY5E,mBAAmB;CAgBlC"}
@@ -8,15 +8,13 @@
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.ArcGISMapLayerImageryProvider = void 0;
11
- const core_bentley_1 = require("@itwin/core-bentley");
12
11
  const core_common_1 = require("@itwin/core-common");
13
- const itwin_client_1 = require("@bentley/itwin-client");
12
+ const Request_1 = require("../../../request/Request");
14
13
  const IModelApp_1 = require("../../../IModelApp");
15
14
  const NotificationManager_1 = require("../../../NotificationManager");
16
15
  const internal_1 = require("../../internal");
17
16
  // eslint-disable-next-line prefer-const
18
17
  let doToolTips = true;
19
- const scratchQuadId = new internal_1.QuadId(0, 0, 0);
20
18
  /** @internal */
21
19
  class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
22
20
  constructor(settings) {
@@ -26,7 +24,6 @@ class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
26
24
  this._copyrightText = "Copyright";
27
25
  this._querySupported = false;
28
26
  this._tileMapSupported = false;
29
- this._availabilityMap = new core_bentley_1.Dictionary((lhs, rhs) => lhs.compare(rhs));
30
27
  }
31
28
  get _filterByCartoRange() { return false; } // Can't trust footprint ranges (USGS Hydro)
32
29
  get minimumZoomLevel() { return Math.max(super.minimumZoomLevel, this._minDepthFromLod); }
@@ -40,7 +37,7 @@ class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
40
37
  const tileUrl = await this.constructUrl(row, column, zoomLevel);
41
38
  if (tileUrl.length === 0)
42
39
  return undefined;
43
- return (0, itwin_client_1.request)(tileUrl, tileRequestOptions);
40
+ return (0, Request_1.request)(tileUrl, tileRequestOptions);
44
41
  }
45
42
  async loadTile(row, column, zoomLevel) {
46
43
  if ((this.status === internal_1.MapLayerImageryProviderStatus.RequireAuth)) {
@@ -88,45 +85,22 @@ class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
88
85
  return undefined;
89
86
  }
90
87
  }
91
- _testChildAvailability(tile, resolveChildren) {
92
- if (!this._tileMapSupported || tile.quadId.level < Math.max(4, this.minimumZoomLevel)) {
93
- resolveChildren();
88
+ _generateChildIds(tile, resolveChildren) {
89
+ const childIds = this.getPotentialChildIds(tile);
90
+ if (!this._tileMap || tile.quadId.level < Math.max(4, this.minimumZoomLevel - 1)) {
91
+ resolveChildren(childIds);
94
92
  return;
95
93
  }
96
- const quadId = tile.quadId;
97
- let availability;
98
- if (undefined !== (availability = this._availabilityMap.get(tile.quadId))) {
99
- if (availability)
100
- resolveChildren();
101
- return;
94
+ if (this._tileMap) {
95
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
96
+ this._tileMap.getChildrenAvailability(childIds).then((availability) => {
97
+ const availableChildIds = new Array();
98
+ for (let i = 0; i < availability.length; i++)
99
+ if (availability[i])
100
+ availableChildIds.push(childIds[i]);
101
+ resolveChildren(availableChildIds);
102
+ });
102
103
  }
103
- const row = quadId.row * 2;
104
- const column = quadId.column * 2;
105
- const level = quadId.level + 1;
106
- const queryDim = Math.min(1 << level, 32), queryDimHalf = queryDim / 2;
107
- const queryRow = Math.max(0, row - queryDimHalf);
108
- const queryColumn = Math.max(0, column - queryDimHalf);
109
- (0, itwin_client_1.getJson)(`${this._settings.url}/tilemap/${level}/${queryRow}/${queryColumn}/${queryDim}/${queryDim}?f=json`).then((json) => {
110
- availability = true;
111
- if (Array.isArray(json.data)) {
112
- let index = 0;
113
- const data = json.data;
114
- for (let iCol = 0; iCol < queryDim; iCol++) {
115
- for (let iRow = 0; iRow < queryDim; iRow++) {
116
- scratchQuadId.level = quadId.level;
117
- scratchQuadId.column = (queryColumn + iCol) / 2;
118
- scratchQuadId.row = (queryRow + iRow) / 2;
119
- if (0 === quadId.compare(scratchQuadId))
120
- availability = data[index];
121
- this._availabilityMap.set(scratchQuadId, data[index++]);
122
- }
123
- }
124
- }
125
- if (availability)
126
- resolveChildren();
127
- }).catch((_error) => {
128
- resolveChildren();
129
- });
130
104
  }
131
105
  isEpsg3857Compatible(tileInfo) {
132
106
  var _a;
@@ -136,9 +110,10 @@ class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
136
110
  return zeroLod.level === 0 && Math.abs(zeroLod.resolution - 156543.03392800014) < .001;
137
111
  }
138
112
  async initialize() {
113
+ var _a, _b;
139
114
  const json = await internal_1.ArcGisUtilities.getServiceJson(this._settings.url, this.getRequestAuthorization());
140
115
  if (json === undefined)
141
- throw new core_common_1.ServerError(core_bentley_1.IModelStatus.ValidationFailed, "");
116
+ throw new core_common_1.ServerError(core_common_1.IModelStatus.ValidationFailed, "");
142
117
  if (json !== undefined) {
143
118
  this.serviceJson = json;
144
119
  if (json.capabilities) {
@@ -153,6 +128,10 @@ class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
153
128
  ;
154
129
  }
155
130
  }
131
+ // Create tile map object only if we are going to request tiles from this server and it support tilemap requests.
132
+ if (this._usesCachedTiles && this._tileMapSupported) {
133
+ this._tileMap = new internal_1.ArcGISTileMap(this._settings.url, (_b = (_a = json.tileInfo) === null || _a === void 0 ? void 0 : _a.lods) === null || _b === void 0 ? void 0 : _b.length);
134
+ }
156
135
  const footprintJson = await internal_1.ArcGisUtilities.getFootprintJson(this._settings.url, this.getRequestAuthorization());
157
136
  if (undefined !== footprintJson && undefined !== footprintJson.featureCollection && Array.isArray(footprintJson.featureCollection.layers)) {
158
137
  for (const layer of footprintJson.featureCollection.layers) {
@@ -171,7 +150,7 @@ class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
171
150
  }
172
151
  }
173
152
  }
174
- getLogo(_vp) {
153
+ getLogo() {
175
154
  return IModelApp_1.IModelApp.makeLogoCard({ heading: "ArcGIS", notice: this._copyrightText });
176
155
  }
177
156
  async getToolTip(strings, quadId, carto, tree) {
@@ -187,12 +166,12 @@ class ArcGISMapLayerImageryProvider extends internal_1.MapLayerImageryProvider {
187
166
  const y = this.getEPSG3857Y(carto.latitudeDegrees);
188
167
  const tmpUrl = `${this._settings.url}/identify?f=json&tolerance=1&returnGeometry=false&sr=3857&imageDisplay=${this.tileSize},${this.tileSize},96&layers=${this.getLayerString("visible")}&geometry=${x},${y}&geometryType=esriGeometryPoint&mapExtent=${bboxString}`;
189
168
  const url = await this.appendSecurityToken(tmpUrl);
190
- let json = await (0, itwin_client_1.getJson)(url);
169
+ let json = await (0, Request_1.getJson)(url);
191
170
  if (((_a = json === null || json === void 0 ? void 0 : json.error) === null || _a === void 0 ? void 0 : _a.code) === internal_1.ArcGisErrorCode.TokenRequired || ((_b = json === null || json === void 0 ? void 0 : json.error) === null || _b === void 0 ? void 0 : _b.code) === internal_1.ArcGisErrorCode.InvalidToken) {
192
171
  // Token might have expired, make a second attempt by forcing new token.
193
172
  if (this._settings.userName && this._settings.userName.length > 0) {
194
173
  internal_1.ArcGisTokenManager.invalidateToken(this._settings.url, this._settings.userName);
195
- json = await (0, itwin_client_1.getJson)(url);
174
+ json = await (0, Request_1.getJson)(url);
196
175
  }
197
176
  // OK at this point, if response still contain a token error, we assume end-user will
198
177
  // have to provide credentials again. Change the layer status so we
@@ -1 +1 @@
1
- {"version":3,"file":"ArcGISMapLayerImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.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 Tiles\r\n */\r\n\r\nimport { Dictionary, IModelStatus } from \"@itwin/core-bentley\";\r\nimport { Cartographic, ImageSource, MapLayerSettings, ServerError } from \"@itwin/core-common\";\r\nimport { getJson, request, RequestOptions, Response } from \"@bentley/itwin-client\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { NotifyMessageDetails, OutputMessagePriority } from \"../../../NotificationManager\";\r\nimport { ScreenViewport } from \"../../../Viewport\";\r\nimport {\r\n ArcGisErrorCode, ArcGisTokenClientType, ArcGisTokenManager, ArcGisUtilities, ImageryMapTile, ImageryMapTileTree, MapCartoRectangle,\r\n MapLayerImageryProvider, MapLayerImageryProviderStatus, QuadId,\r\n} from \"../../internal\";\r\n\r\n// eslint-disable-next-line prefer-const\r\nlet doToolTips = true;\r\nconst scratchQuadId = new QuadId(0, 0, 0);\r\n\r\n/** @internal */\r\nexport class ArcGISMapLayerImageryProvider extends MapLayerImageryProvider {\r\n private _maxDepthFromLod = 0;\r\n private _minDepthFromLod = 0;\r\n private _copyrightText = \"Copyright\";\r\n private _querySupported = false;\r\n private _tileMapSupported = false;\r\n private _availabilityMap = new Dictionary<QuadId, boolean>((lhs: QuadId, rhs: QuadId) => lhs.compare(rhs));\r\n public serviceJson: any;\r\n constructor(settings: MapLayerSettings) {\r\n super(settings, false);\r\n }\r\n\r\n protected override get _filterByCartoRange() { return false; } // Can't trust footprint ranges (USGS Hydro)\r\n\r\n public override get minimumZoomLevel() { return Math.max(super.minimumZoomLevel, this._minDepthFromLod); }\r\n public override get maximumZoomLevel() { return this._maxDepthFromLod > 0 ? this._maxDepthFromLod : super.maximumZoomLevel; }\r\n\r\n public uintToString(uintArray: any) {\r\n return Buffer.from(uintArray).toJSON();\r\n\r\n }\r\n\r\n private async fetchTile(row: number, column: number, zoomLevel: number): Promise<Response | undefined> {\r\n const tileRequestOptions: RequestOptions = { method: \"GET\", responseType: \"arraybuffer\" };\r\n tileRequestOptions.auth = this.getRequestAuthorization();\r\n const tileUrl: string = await this.constructUrl(row, column, zoomLevel);\r\n if (tileUrl.length === 0)\r\n return undefined;\r\n\r\n return request(tileUrl, tileRequestOptions);\r\n }\r\n\r\n public override async loadTile(row: number, column: number, zoomLevel: number): Promise<ImageSource | undefined> {\r\n\r\n if ((this.status === MapLayerImageryProviderStatus.RequireAuth)) {\r\n return undefined;\r\n }\r\n\r\n try {\r\n let tileResponse = await this.fetchTile(row, column, zoomLevel);\r\n if (tileResponse === undefined)\r\n return undefined;\r\n\r\n // Check the content type from the response, it might contain an authentication error that need to be reported.\r\n // Skip if the layer state was already invalid\r\n if (ArcGisUtilities.hasTokenError(tileResponse)) {\r\n\r\n // Token might have expired, make a second attempt by forcing new token.\r\n if (this._settings.userName && this._settings.userName.length > 0) {\r\n ArcGisTokenManager.invalidateToken(this._settings.url, this._settings.userName);\r\n tileResponse = await this.fetchTile(row, column, zoomLevel);\r\n if (tileResponse === undefined)\r\n return undefined;\r\n }\r\n\r\n // OK at this point, if response still contain a token error, we assume end-user will\r\n // have to provide credentials again. Change the layer status so we\r\n // don't make additional invalid requests..\r\n if (tileResponse && ArcGisUtilities.hasTokenError(tileResponse)) {\r\n // Check again layer status, it might have change during await.\r\n if (this.status === MapLayerImageryProviderStatus.Valid) {\r\n this.status = MapLayerImageryProviderStatus.RequireAuth;\r\n this.onStatusChanged.raiseEvent(this);\r\n\r\n // Only report error to end-user if we were previously able to fetch tiles\r\n // and then encountered an error, otherwise I assume an error was already reported\r\n // through the source validation process.\r\n if (this._hasSuccessfullyFetchedTile) {\r\n const msg = IModelApp.localization.getLocalizedString(\"iModelJs:MapLayers.Messages.LoadTileTokenError\", { layerName: this._settings.name });\r\n IModelApp.notifications.outputMessage(new NotifyMessageDetails(OutputMessagePriority.Warning, msg));\r\n }\r\n\r\n }\r\n\r\n return undefined;\r\n }\r\n }\r\n\r\n if (!this._hasSuccessfullyFetchedTile) {\r\n this._hasSuccessfullyFetchedTile = true;\r\n }\r\n return this.getImageFromTileResponse(tileResponse, zoomLevel);\r\n } catch (error) {\r\n return undefined;\r\n }\r\n }\r\n protected override _testChildAvailability(tile: ImageryMapTile, resolveChildren: () => void) {\r\n if (!this._tileMapSupported || tile.quadId.level < Math.max(4, this.minimumZoomLevel)) {\r\n resolveChildren();\r\n return;\r\n }\r\n\r\n const quadId = tile.quadId;\r\n let availability;\r\n if (undefined !== (availability = this._availabilityMap.get(tile.quadId))) {\r\n if (availability)\r\n resolveChildren();\r\n\r\n return;\r\n }\r\n\r\n const row = quadId.row * 2;\r\n const column = quadId.column * 2;\r\n const level = quadId.level + 1;\r\n const queryDim = Math.min(1 << level, 32), queryDimHalf = queryDim / 2;\r\n const queryRow = Math.max(0, row - queryDimHalf);\r\n const queryColumn = Math.max(0, column - queryDimHalf);\r\n\r\n getJson(`${this._settings.url}/tilemap/${level}/${queryRow}/${queryColumn}/${queryDim}/${queryDim}?f=json`).then((json) => {\r\n availability = true;\r\n if (Array.isArray(json.data)) {\r\n let index = 0;\r\n const data = json.data;\r\n for (let iCol = 0; iCol < queryDim; iCol++) {\r\n for (let iRow = 0; iRow < queryDim; iRow++) {\r\n scratchQuadId.level = quadId.level;\r\n scratchQuadId.column = (queryColumn + iCol) / 2;\r\n scratchQuadId.row = (queryRow + iRow) / 2;\r\n if (0 === quadId.compare(scratchQuadId))\r\n availability = data[index];\r\n this._availabilityMap.set(scratchQuadId, data[index++]);\r\n }\r\n }\r\n }\r\n if (availability)\r\n resolveChildren();\r\n\r\n }).catch((_error) => {\r\n resolveChildren();\r\n });\r\n }\r\n\r\n private isEpsg3857Compatible(tileInfo: any) {\r\n if (tileInfo.spatialReference?.latestWkid !== 3857 || !Array.isArray(tileInfo.lods))\r\n return false;\r\n\r\n const zeroLod = tileInfo.lods[0];\r\n return zeroLod.level === 0 && Math.abs(zeroLod.resolution - 156543.03392800014) < .001;\r\n }\r\n\r\n public override async initialize(): Promise<void> {\r\n const json = await ArcGisUtilities.getServiceJson(this._settings.url, this.getRequestAuthorization());\r\n if (json === undefined)\r\n throw new ServerError(IModelStatus.ValidationFailed, \"\");\r\n\r\n if (json !== undefined) {\r\n this.serviceJson = json;\r\n if (json.capabilities) {\r\n this._querySupported = json.capabilities.indexOf(\"Query\") >= 0;\r\n this._tileMapSupported = json.capabilities.indexOf(\"Tilemap\") >= 0;\r\n }\r\n if (json.copyrightText) this._copyrightText = json.copyrightText;\r\n if (false !== (this._usesCachedTiles = json.tileInfo !== undefined && this.isEpsg3857Compatible(json.tileInfo))) {\r\n if (json.maxScale !== undefined && json.maxScale !== 0 && Array.isArray(json.tileInfo.lods)) {\r\n for (; this._maxDepthFromLod < json.tileInfo.lods.length && json.tileInfo.lods[this._maxDepthFromLod].scale > json.maxScale; this._maxDepthFromLod++)\r\n ;\r\n }\r\n }\r\n const footprintJson = await ArcGisUtilities.getFootprintJson(this._settings.url, this.getRequestAuthorization());\r\n if (undefined !== footprintJson && undefined !== footprintJson.featureCollection && Array.isArray(footprintJson.featureCollection.layers)) {\r\n for (const layer of footprintJson.featureCollection.layers) {\r\n if (layer.layerDefinition && layer.layerDefinition.extent) {\r\n this.cartoRange = MapCartoRectangle.createFromDegrees(layer.layerDefinition.extent.xmin, layer.layerDefinition.extent.ymin, layer.layerDefinition.extent.xmax, layer.layerDefinition.extent.ymax);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // Read minLOD if available\r\n if (json.minLOD !== undefined) {\r\n const minLod = parseInt(json.minLOD, 10);\r\n if (!Number.isNaN(minLod)) {\r\n this._minDepthFromLod = minLod;\r\n }\r\n }\r\n }\r\n }\r\n\r\n public override getLogo(_vp: ScreenViewport) {\r\n return IModelApp.makeLogoCard({ heading: \"ArcGIS\", notice: this._copyrightText });\r\n }\r\n\r\n public override async getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void> {\r\n await super.getToolTip(strings, quadId, carto, tree);\r\n if (!doToolTips)\r\n return;\r\n\r\n if (!this._querySupported)\r\n return;\r\n\r\n const stringSet = new Set<string>();\r\n const bboxString = this.getEPSG3857ExtentString(quadId.row, quadId.column, quadId.level);\r\n const x = this.getEPSG3857X(carto.longitudeDegrees);\r\n const y = this.getEPSG3857Y(carto.latitudeDegrees);\r\n const tmpUrl = `${this._settings.url}/identify?f=json&tolerance=1&returnGeometry=false&sr=3857&imageDisplay=${this.tileSize},${this.tileSize},96&layers=${this.getLayerString(\"visible\")}&geometry=${x},${y}&geometryType=esriGeometryPoint&mapExtent=${bboxString}`;\r\n const url = await this.appendSecurityToken(tmpUrl);\r\n\r\n let json = await getJson(url);\r\n if (json?.error?.code === ArcGisErrorCode.TokenRequired || json?.error?.code === ArcGisErrorCode.InvalidToken) {\r\n // Token might have expired, make a second attempt by forcing new token.\r\n if (this._settings.userName && this._settings.userName.length > 0) {\r\n ArcGisTokenManager.invalidateToken(this._settings.url, this._settings.userName);\r\n json = await getJson(url);\r\n }\r\n\r\n // OK at this point, if response still contain a token error, we assume end-user will\r\n // have to provide credentials again. Change the layer status so we\r\n // don't make additional invalid requests..\r\n if (json?.error?.code === ArcGisErrorCode.TokenRequired || json?.error?.code === ArcGisErrorCode.InvalidToken) {\r\n // Check again layer status, it might have change during await.\r\n if (this.status === MapLayerImageryProviderStatus.Valid) {\r\n this.status = MapLayerImageryProviderStatus.RequireAuth;\r\n const msg = IModelApp.localization.getLocalizedString(\"iModelJs:MapLayers.Messages.FetchTooltipTokenError\", { layerName: this._settings.name });\r\n IModelApp.notifications.outputMessage(new NotifyMessageDetails(OutputMessagePriority.Warning, msg));\r\n }\r\n\r\n return;\r\n }\r\n }\r\n\r\n if (json && Array.isArray(json.results)) {\r\n for (const result of json.results) {\r\n if (result.attributes !== undefined && result.attributes[result.displayFieldName] !== undefined) {\r\n const thisString = `${result.displayFieldName}: ${result.attributes[result.displayFieldName]}`;\r\n if (!stringSet.has(thisString)) {\r\n strings.push(thisString);\r\n stringSet.add(thisString);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n protected getLayerString(prefix = \"show\"): string {\r\n const layers = new Array<string>();\r\n this._settings.subLayers.forEach((subLayer) => { if (this._settings.isSubLayerVisible(subLayer)) layers.push(subLayer.idString); });\r\n return `${prefix}: ${layers.join(\",\")} `;\r\n }\r\n // construct the Url from the desired Tile\r\n public async constructUrl(row: number, column: number, zoomLevel: number): Promise<string> {\r\n let tmpUrl;\r\n if (this._usesCachedTiles) {\r\n tmpUrl = `${this._settings.url}/tile/${zoomLevel}/${row}/${column} `;\r\n } else {\r\n const bboxString = `${this.getEPSG3857ExtentString(row, column, zoomLevel)}&bboxSR=3857`;\r\n tmpUrl = `${this._settings.url}/export?bbox=${bboxString}&size=${this.tileSize},${this.tileSize}&layers=${this.getLayerString()}&format=png&transparent=${this.transparentBackgroundString}&f=image&sr=3857&imagesr=3857`;\r\n }\r\n return this.appendSecurityToken(tmpUrl);\r\n }\r\n\r\n // construct the Url from the desired Tile\r\n private async appendSecurityToken(url: string): Promise<string> {\r\n // Append security token if required\r\n let tokenParam = \"\";\r\n if (this._settings.userName && this._settings.password) {\r\n try {\r\n const token = await ArcGisTokenManager.getToken(this._settings.url, this._settings.userName, this._settings.password,\r\n {\r\n client: ArcGisTokenClientType.referer,\r\n });\r\n if (token?.token)\r\n tokenParam = `&token=${token.token}`;\r\n } catch {\r\n }\r\n }\r\n return `${url}${tokenParam}`;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"ArcGISMapLayerImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.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 Tiles\r\n */\r\n\r\nimport { Cartographic, ImageSource, IModelStatus, MapLayerSettings, ServerError } from \"@itwin/core-common\";\r\nimport { getJson, request, RequestOptions, Response } from \"../../../request/Request\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { NotifyMessageDetails, OutputMessagePriority } from \"../../../NotificationManager\";\r\nimport {\r\n ArcGisErrorCode, ArcGISTileMap, ArcGisTokenClientType, ArcGisTokenManager, ArcGisUtilities, ImageryMapTile, ImageryMapTileTree, MapCartoRectangle,\r\n MapLayerImageryProvider, MapLayerImageryProviderStatus, QuadId,\r\n} from \"../../internal\";\r\n\r\n// eslint-disable-next-line prefer-const\r\nlet doToolTips = true;\r\n\r\n/** @internal */\r\nexport class ArcGISMapLayerImageryProvider extends MapLayerImageryProvider {\r\n private _maxDepthFromLod = 0;\r\n private _minDepthFromLod = 0;\r\n private _copyrightText = \"Copyright\";\r\n private _querySupported = false;\r\n private _tileMapSupported = false;\r\n private _tileMap: ArcGISTileMap|undefined;\r\n public serviceJson: any;\r\n constructor(settings: MapLayerSettings) {\r\n super(settings, false);\r\n }\r\n\r\n protected override get _filterByCartoRange() { return false; } // Can't trust footprint ranges (USGS Hydro)\r\n\r\n public override get minimumZoomLevel() { return Math.max(super.minimumZoomLevel, this._minDepthFromLod); }\r\n public override get maximumZoomLevel() { return this._maxDepthFromLod > 0 ? this._maxDepthFromLod : super.maximumZoomLevel; }\r\n\r\n public uintToString(uintArray: any) {\r\n return Buffer.from(uintArray).toJSON();\r\n\r\n }\r\n\r\n private async fetchTile(row: number, column: number, zoomLevel: number): Promise<Response | undefined> {\r\n const tileRequestOptions: RequestOptions = { method: \"GET\", responseType: \"arraybuffer\" };\r\n tileRequestOptions.auth = this.getRequestAuthorization();\r\n const tileUrl: string = await this.constructUrl(row, column, zoomLevel);\r\n if (tileUrl.length === 0)\r\n return undefined;\r\n\r\n return request(tileUrl, tileRequestOptions);\r\n }\r\n\r\n public override async loadTile(row: number, column: number, zoomLevel: number): Promise<ImageSource | undefined> {\r\n\r\n if ((this.status === MapLayerImageryProviderStatus.RequireAuth)) {\r\n return undefined;\r\n }\r\n\r\n try {\r\n let tileResponse = await this.fetchTile(row, column, zoomLevel);\r\n if (tileResponse === undefined)\r\n return undefined;\r\n\r\n // Check the content type from the response, it might contain an authentication error that need to be reported.\r\n // Skip if the layer state was already invalid\r\n if (ArcGisUtilities.hasTokenError(tileResponse)) {\r\n\r\n // Token might have expired, make a second attempt by forcing new token.\r\n if (this._settings.userName && this._settings.userName.length > 0) {\r\n ArcGisTokenManager.invalidateToken(this._settings.url, this._settings.userName);\r\n tileResponse = await this.fetchTile(row, column, zoomLevel);\r\n if (tileResponse === undefined)\r\n return undefined;\r\n }\r\n\r\n // OK at this point, if response still contain a token error, we assume end-user will\r\n // have to provide credentials again. Change the layer status so we\r\n // don't make additional invalid requests..\r\n if (tileResponse && ArcGisUtilities.hasTokenError(tileResponse)) {\r\n // Check again layer status, it might have change during await.\r\n if (this.status === MapLayerImageryProviderStatus.Valid) {\r\n this.status = MapLayerImageryProviderStatus.RequireAuth;\r\n this.onStatusChanged.raiseEvent(this);\r\n\r\n // Only report error to end-user if we were previously able to fetch tiles\r\n // and then encountered an error, otherwise I assume an error was already reported\r\n // through the source validation process.\r\n if (this._hasSuccessfullyFetchedTile) {\r\n const msg = IModelApp.localization.getLocalizedString(\"iModelJs:MapLayers.Messages.LoadTileTokenError\", { layerName: this._settings.name });\r\n IModelApp.notifications.outputMessage(new NotifyMessageDetails(OutputMessagePriority.Warning, msg));\r\n }\r\n }\r\n\r\n return undefined;\r\n }\r\n }\r\n\r\n if (!this._hasSuccessfullyFetchedTile) {\r\n this._hasSuccessfullyFetchedTile = true;\r\n }\r\n return this.getImageFromTileResponse(tileResponse, zoomLevel);\r\n } catch (error) {\r\n return undefined;\r\n }\r\n }\r\n protected override _generateChildIds(tile: ImageryMapTile, resolveChildren: (childIds: QuadId[]) => void) {\r\n const childIds = this.getPotentialChildIds(tile);\r\n if (!this._tileMap || tile.quadId.level < Math.max(4, this.minimumZoomLevel-1)) {\r\n resolveChildren(childIds);\r\n return;\r\n }\r\n\r\n if (this._tileMap) {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this._tileMap.getChildrenAvailability(childIds).then((availability) => {\r\n const availableChildIds = new Array<QuadId>();\r\n for (let i = 0; i < availability.length; i++)\r\n if (availability[i])\r\n availableChildIds.push(childIds[i]);\r\n\r\n resolveChildren (availableChildIds);\r\n });\r\n }\r\n }\r\n\r\n private isEpsg3857Compatible(tileInfo: any) {\r\n if (tileInfo.spatialReference?.latestWkid !== 3857 || !Array.isArray(tileInfo.lods))\r\n return false;\r\n\r\n const zeroLod = tileInfo.lods[0];\r\n return zeroLod.level === 0 && Math.abs(zeroLod.resolution - 156543.03392800014) < .001;\r\n }\r\n\r\n public override async initialize(): Promise<void> {\r\n const json = await ArcGisUtilities.getServiceJson(this._settings.url, this.getRequestAuthorization());\r\n if (json === undefined)\r\n throw new ServerError(IModelStatus.ValidationFailed, \"\");\r\n\r\n if (json !== undefined) {\r\n this.serviceJson = json;\r\n if (json.capabilities) {\r\n\r\n this._querySupported = json.capabilities.indexOf(\"Query\") >= 0;\r\n this._tileMapSupported = json.capabilities.indexOf(\"Tilemap\") >= 0;\r\n }\r\n if (json.copyrightText) this._copyrightText = json.copyrightText;\r\n if (false !== (this._usesCachedTiles = json.tileInfo !== undefined && this.isEpsg3857Compatible(json.tileInfo))) {\r\n if (json.maxScale !== undefined && json.maxScale !== 0 && Array.isArray(json.tileInfo.lods)) {\r\n for (; this._maxDepthFromLod < json.tileInfo.lods.length && json.tileInfo.lods[this._maxDepthFromLod].scale > json.maxScale; this._maxDepthFromLod++)\r\n ;\r\n }\r\n }\r\n\r\n // Create tile map object only if we are going to request tiles from this server and it support tilemap requests.\r\n if (this._usesCachedTiles && this._tileMapSupported) {\r\n this._tileMap = new ArcGISTileMap(this._settings.url, json.tileInfo?.lods?.length);\r\n }\r\n\r\n const footprintJson = await ArcGisUtilities.getFootprintJson(this._settings.url, this.getRequestAuthorization());\r\n if (undefined !== footprintJson && undefined !== footprintJson.featureCollection && Array.isArray(footprintJson.featureCollection.layers)) {\r\n for (const layer of footprintJson.featureCollection.layers) {\r\n if (layer.layerDefinition && layer.layerDefinition.extent) {\r\n this.cartoRange = MapCartoRectangle.createFromDegrees(layer.layerDefinition.extent.xmin, layer.layerDefinition.extent.ymin, layer.layerDefinition.extent.xmax, layer.layerDefinition.extent.ymax);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // Read minLOD if available\r\n if (json.minLOD !== undefined) {\r\n const minLod = parseInt(json.minLOD, 10);\r\n if (!Number.isNaN(minLod)) {\r\n this._minDepthFromLod = minLod;\r\n }\r\n }\r\n }\r\n }\r\n\r\n public override getLogo() {\r\n return IModelApp.makeLogoCard({ heading: \"ArcGIS\", notice: this._copyrightText });\r\n }\r\n\r\n public override async getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void> {\r\n await super.getToolTip(strings, quadId, carto, tree);\r\n if (!doToolTips)\r\n return;\r\n\r\n if (!this._querySupported)\r\n return;\r\n\r\n const stringSet = new Set<string>();\r\n const bboxString = this.getEPSG3857ExtentString(quadId.row, quadId.column, quadId.level);\r\n const x = this.getEPSG3857X(carto.longitudeDegrees);\r\n const y = this.getEPSG3857Y(carto.latitudeDegrees);\r\n const tmpUrl = `${this._settings.url}/identify?f=json&tolerance=1&returnGeometry=false&sr=3857&imageDisplay=${this.tileSize},${this.tileSize},96&layers=${this.getLayerString(\"visible\")}&geometry=${x},${y}&geometryType=esriGeometryPoint&mapExtent=${bboxString}`;\r\n const url = await this.appendSecurityToken(tmpUrl);\r\n\r\n let json = await getJson(url);\r\n if (json?.error?.code === ArcGisErrorCode.TokenRequired || json?.error?.code === ArcGisErrorCode.InvalidToken) {\r\n // Token might have expired, make a second attempt by forcing new token.\r\n if (this._settings.userName && this._settings.userName.length > 0) {\r\n ArcGisTokenManager.invalidateToken(this._settings.url, this._settings.userName);\r\n json = await getJson(url);\r\n }\r\n\r\n // OK at this point, if response still contain a token error, we assume end-user will\r\n // have to provide credentials again. Change the layer status so we\r\n // don't make additional invalid requests..\r\n if (json?.error?.code === ArcGisErrorCode.TokenRequired || json?.error?.code === ArcGisErrorCode.InvalidToken) {\r\n // Check again layer status, it might have change during await.\r\n if (this.status === MapLayerImageryProviderStatus.Valid) {\r\n this.status = MapLayerImageryProviderStatus.RequireAuth;\r\n const msg = IModelApp.localization.getLocalizedString(\"iModelJs:MapLayers.Messages.FetchTooltipTokenError\", { layerName: this._settings.name });\r\n IModelApp.notifications.outputMessage(new NotifyMessageDetails(OutputMessagePriority.Warning, msg));\r\n }\r\n\r\n return;\r\n }\r\n }\r\n\r\n if (json && Array.isArray(json.results)) {\r\n for (const result of json.results) {\r\n if (result.attributes !== undefined && result.attributes[result.displayFieldName] !== undefined) {\r\n const thisString = `${result.displayFieldName}: ${result.attributes[result.displayFieldName]}`;\r\n if (!stringSet.has(thisString)) {\r\n strings.push(thisString);\r\n stringSet.add(thisString);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n protected getLayerString(prefix = \"show\"): string {\r\n const layers = new Array<string>();\r\n this._settings.subLayers.forEach((subLayer) => { if (this._settings.isSubLayerVisible(subLayer)) layers.push(subLayer.idString); });\r\n return `${prefix}: ${layers.join(\",\")} `;\r\n }\r\n // construct the Url from the desired Tile\r\n public async constructUrl(row: number, column: number, zoomLevel: number): Promise<string> {\r\n let tmpUrl;\r\n if (this._usesCachedTiles) {\r\n tmpUrl = `${this._settings.url}/tile/${zoomLevel}/${row}/${column} `;\r\n } else {\r\n const bboxString = `${this.getEPSG3857ExtentString(row, column, zoomLevel)}&bboxSR=3857`;\r\n tmpUrl = `${this._settings.url}/export?bbox=${bboxString}&size=${this.tileSize},${this.tileSize}&layers=${this.getLayerString()}&format=png&transparent=${this.transparentBackgroundString}&f=image&sr=3857&imagesr=3857`;\r\n }\r\n return this.appendSecurityToken(tmpUrl);\r\n }\r\n\r\n // construct the Url from the desired Tile\r\n private async appendSecurityToken(url: string): Promise<string> {\r\n // Append security token if required\r\n let tokenParam = \"\";\r\n if (this._settings.userName && this._settings.password) {\r\n try {\r\n const token = await ArcGisTokenManager.getToken(this._settings.url, this._settings.userName, this._settings.password,\r\n {\r\n client: ArcGisTokenClientType.referer,\r\n });\r\n if (token?.token)\r\n tokenParam = `&token=${token.token}`;\r\n } catch {\r\n }\r\n }\r\n return `${url}${tokenParam}`;\r\n }\r\n}\r\n"]}
@@ -2,12 +2,11 @@
2
2
  * @module Tiles
3
3
  */
4
4
  import { MapLayerSettings } from "@itwin/core-common";
5
- import { ScreenViewport } from "../../../Viewport";
6
5
  import { MapLayerImageryProvider } from "../../internal";
7
6
  /** @internal */
8
7
  export declare class AzureMapsLayerImageryProvider extends MapLayerImageryProvider {
9
8
  constructor(settings: MapLayerSettings);
10
9
  constructUrl(y: number, x: number, zoom: number): Promise<string>;
11
- getLogo(_vp: ScreenViewport): HTMLTableRowElement;
10
+ getLogo(): HTMLTableRowElement;
12
11
  }
13
12
  //# sourceMappingURL=AzureMapsLayerImageryProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AzureMapsLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,gBAAgB;AAChB,qBAAa,6BAA8B,SAAQ,uBAAuB;gBAC5D,QAAQ,EAAE,gBAAgB;IAGzB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAM9D,OAAO,CAAC,GAAG,EAAE,cAAc;CAG5C"}
1
+ {"version":3,"file":"AzureMapsLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,gBAAgB;AAChB,qBAAa,6BAA8B,SAAQ,uBAAuB;gBAC5D,QAAQ,EAAE,gBAAgB;IAGzB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAM9D,OAAO;CAGxB"}
@@ -19,7 +19,7 @@ class AzureMapsLayerImageryProvider extends internal_1.MapLayerImageryProvider {
19
19
  return "";
20
20
  return `${this._settings.url}&${this._settings.accessKey.key}=${this._settings.accessKey.value}&api-version=2.0&zoom=${zoom}&x=${x}&y=${y}`;
21
21
  }
22
- getLogo(_vp) {
22
+ getLogo() {
23
23
  return IModelApp_1.IModelApp.makeLogoCard({ heading: "Azure Maps", notice: IModelApp_1.IModelApp.localization.getLocalizedString("iModelJs:BackgroundMap.AzureMapsCopyright") });
24
24
  }
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AzureMapsLayerImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,kDAA+C;AAE/C,6CAAyD;AAEzD,gBAAgB;AAChB,MAAa,6BAA8B,SAAQ,kCAAuB;IACxE,YAAY,QAA0B,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAElE,0CAA0C;IACnC,KAAK,CAAC,YAAY,CAAC,CAAS,EAAE,CAAS,EAAE,IAAY;QAC1D,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS;YAC3B,OAAO,EAAE,CAAC;QACZ,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,yBAAyB,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9I,CAAC;IAEe,OAAO,CAAC,GAAmB;QACzC,OAAO,qBAAS,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,qBAAS,CAAC,YAAY,CAAC,kBAAkB,CAAC,2CAA2C,CAAC,EAAE,CAAC,CAAC;IAC3J,CAAC;CACF;AAbD,sEAaC","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 Tiles\r\n */\r\n\r\nimport { MapLayerSettings } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { ScreenViewport } from \"../../../Viewport\";\r\nimport { MapLayerImageryProvider } from \"../../internal\";\r\n\r\n/** @internal */\r\nexport class AzureMapsLayerImageryProvider extends MapLayerImageryProvider {\r\n constructor(settings: MapLayerSettings) { super(settings, true); }\r\n\r\n // construct the Url from the desired Tile\r\n public async constructUrl(y: number, x: number, zoom: number): Promise<string> {\r\n if (!this._settings.accessKey)\r\n return \"\";\r\n return `${this._settings.url}&${this._settings.accessKey.key}=${this._settings.accessKey.value}&api-version=2.0&zoom=${zoom}&x=${x}&y=${y}`;\r\n }\r\n\r\n public override getLogo(_vp: ScreenViewport) {\r\n return IModelApp.makeLogoCard({ heading: \"Azure Maps\", notice: IModelApp.localization.getLocalizedString(\"iModelJs:BackgroundMap.AzureMapsCopyright\") });\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"AzureMapsLayerImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,kDAA+C;AAC/C,6CAAyD;AAEzD,gBAAgB;AAChB,MAAa,6BAA8B,SAAQ,kCAAuB;IACxE,YAAY,QAA0B,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAElE,0CAA0C;IACnC,KAAK,CAAC,YAAY,CAAC,CAAS,EAAE,CAAS,EAAE,IAAY;QAC1D,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS;YAC3B,OAAO,EAAE,CAAC;QACZ,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,yBAAyB,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9I,CAAC;IAEe,OAAO;QACrB,OAAO,qBAAS,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,qBAAS,CAAC,YAAY,CAAC,kBAAkB,CAAC,2CAA2C,CAAC,EAAE,CAAC,CAAC;IAC3J,CAAC;CACF;AAbD,sEAaC","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 Tiles\r\n */\r\n\r\nimport { MapLayerSettings } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { MapLayerImageryProvider } from \"../../internal\";\r\n\r\n/** @internal */\r\nexport class AzureMapsLayerImageryProvider extends MapLayerImageryProvider {\r\n constructor(settings: MapLayerSettings) { super(settings, true); }\r\n\r\n // construct the Url from the desired Tile\r\n public async constructUrl(y: number, x: number, zoom: number): Promise<string> {\r\n if (!this._settings.accessKey)\r\n return \"\";\r\n return `${this._settings.url}&${this._settings.accessKey.key}=${this._settings.accessKey.value}&api-version=2.0&zoom=${zoom}&x=${x}&y=${y}`;\r\n }\r\n\r\n public override getLogo() {\r\n return IModelApp.makeLogoCard({ heading: \"Azure Maps\", notice: IModelApp.localization.getLocalizedString(\"iModelJs:BackgroundMap.AzureMapsCopyright\") });\r\n }\r\n}\r\n"]}
@@ -9,7 +9,7 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.BingMapsImageryLayerProvider = void 0;
11
11
  const core_bentley_1 = require("@itwin/core-bentley");
12
- const itwin_client_1 = require("@bentley/itwin-client");
12
+ const Request_1 = require("../../../request/Request");
13
13
  const IModelApp_1 = require("../../../IModelApp");
14
14
  const internal_1 = require("../../internal");
15
15
  /** Represents one range of geography and tile zoom levels for a bing data provider
@@ -124,7 +124,7 @@ class BingMapsImageryLayerProvider extends internal_1.MapLayerImageryProvider {
124
124
  }
125
125
  getLogo(vp) {
126
126
  var _a;
127
- const tiles = (_a = IModelApp_1.IModelApp.tileAdmin.getTilesForViewport(vp)) === null || _a === void 0 ? void 0 : _a.selected;
127
+ const tiles = (_a = IModelApp_1.IModelApp.tileAdmin.getTilesForUser(vp)) === null || _a === void 0 ? void 0 : _a.selected;
128
128
  const matchingAttributions = this.getMatchingAttributions(tiles);
129
129
  const copyrights = [];
130
130
  for (const match of matchingAttributions)
@@ -135,7 +135,7 @@ class BingMapsImageryLayerProvider extends internal_1.MapLayerImageryProvider {
135
135
  copyrightMsg += "<br>";
136
136
  copyrightMsg += copyrights[i];
137
137
  }
138
- return IModelApp_1.IModelApp.makeLogoCard({ iconSrc: "images/bing.svg", heading: "Microsoft Bing", notice: copyrightMsg });
138
+ return IModelApp_1.IModelApp.makeLogoCard({ iconSrc: `${IModelApp_1.IModelApp.publicPath}images/bing.svg`, heading: "Microsoft Bing", notice: copyrightMsg });
139
139
  }
140
140
  // initializes the BingImageryProvider by reading the templateUrl, logo image, and attribution list.
141
141
  async initialize() {
@@ -143,7 +143,7 @@ class BingMapsImageryLayerProvider extends internal_1.MapLayerImageryProvider {
143
143
  const bingRequestUrl = this._urlBase.replace("{bingKey}", this._settings.accessKey ? this._settings.accessKey.value : "");
144
144
  const requestOptions = { method: "GET" };
145
145
  try {
146
- const response = await (0, itwin_client_1.request)(bingRequestUrl, requestOptions);
146
+ const response = await (0, Request_1.request)(bingRequestUrl, requestOptions);
147
147
  const bingResponseProps = response.body;
148
148
  const thisResourceSetProps = bingResponseProps.resourceSets[0];
149
149
  const thisResourceProps = thisResourceSetProps.resources[0];
@@ -1 +1 @@
1
- {"version":3,"file":"BingImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/BingImageryProvider.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 Tiles\r\n */\r\n\r\nimport { assert, BentleyError, IModelStatus } from \"@itwin/core-bentley\";\r\nimport { Range2d } from \"@itwin/core-geometry\";\r\nimport { ImageSource, MapLayerSettings } from \"@itwin/core-common\";\r\nimport { request, RequestOptions, Response } from \"@bentley/itwin-client\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { ScreenViewport } from \"../../../Viewport\";\r\nimport {\r\n MapLayerImageryProvider, MapTile, MapTilingScheme, QuadId,\r\n Tile, WebMercatorTilingScheme,\r\n} from \"../../internal\";\r\n\r\n/** Represents one range of geography and tile zoom levels for a bing data provider\r\n * @internal\r\n */\r\nclass Coverage {\r\n constructor(private _lowerLeftLatitude: number,\r\n private _lowerLeftLongitude: number,\r\n private _upperRightLatitude: number,\r\n private _upperRightLongitude: number,\r\n private _minimumZoomLevel: number,\r\n private _maximumZoomLevel: number) { }\r\n\r\n public overlaps(quadId: QuadId, tilingScheme: MapTilingScheme): boolean {\r\n const range: Range2d = quadId.getLatLongRange(tilingScheme);\r\n if (quadId.level < this._minimumZoomLevel)\r\n return false;\r\n if (quadId.level > this._maximumZoomLevel)\r\n return false;\r\n if (range.low.x > this._upperRightLongitude)\r\n return false;\r\n if (range.low.y > this._upperRightLatitude)\r\n return false;\r\n if (range.high.x < this._lowerLeftLongitude)\r\n return false;\r\n if (range.high.y < this._lowerLeftLatitude)\r\n return false;\r\n\r\n return true;\r\n }\r\n}\r\n\r\n/** Represents the copyright message and an array of coverage data for one of bing's data providers (HERE for example).\r\n * @internal\r\n */\r\nclass BingAttribution {\r\n constructor(public copyrightMessage: string, private _coverages: Coverage[]) { }\r\n\r\n public matchesTile(tile: Tile, tilingScheme: MapTilingScheme): boolean {\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n for (const coverage of this._coverages) {\r\n if (coverage.overlaps(quadId, tilingScheme))\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n\r\n// in deployed applications, we can only make https requests, but the Bing Maps metadata request returns templates with \"http:\".\r\n// This function fixes those.\r\nfunction replaceHttpWithHttps(originalUrl: string) {\r\n return originalUrl.startsWith(\"http:\") ? \"https:\".concat(originalUrl.slice(5)) : originalUrl;\r\n}\r\n\r\n/** @internal */\r\nexport class BingMapsImageryLayerProvider extends MapLayerImageryProvider {\r\n private _urlTemplate?: string;\r\n private _urlSubdomains?: string[];\r\n private _zoomMax: number;\r\n private _tileHeight: number;\r\n private _tileWidth: number;\r\n private _attributions?: BingAttribution[]; // array of Bing's data providers.\r\n private _mapTilingScheme: MapTilingScheme;\r\n private _urlBase: string;\r\n\r\n constructor(settings: MapLayerSettings) {\r\n super(settings, true);\r\n this._urlBase = settings.url;\r\n this._zoomMax = 0;\r\n this._tileHeight = this._tileWidth = 0;\r\n this._mapTilingScheme = new WebMercatorTilingScheme();\r\n }\r\n\r\n public get tileWidth(): number { return this._tileWidth; }\r\n public get tileHeight(): number { return this._tileHeight; }\r\n\r\n private tileXYToQuadKey(tileX: number, tileY: number, zoomLevel: number) {\r\n // from C# example in bing documentation https://msdn.microsoft.com/en-us/library/bb259689.aspx\r\n let quadKey: string = \"\";\r\n\r\n // Root tile is not displayable. Returns 0 for _GetMaximumSize(). Should not end up here.\r\n assert(0 !== zoomLevel);\r\n\r\n for (let i: number = zoomLevel; i > 0; i--) {\r\n let digit: number = 0x30; // '0'\r\n const mask: number = 1 << (i - 1);\r\n if ((tileX & mask) !== 0) {\r\n digit++;\r\n }\r\n if ((tileY & mask) !== 0) {\r\n digit++;\r\n digit++;\r\n }\r\n quadKey = quadKey.concat(String.fromCharCode(digit));\r\n }\r\n return quadKey;\r\n }\r\n\r\n // construct the Url from the desired Tile\r\n public async constructUrl(row: number, column: number, zoomLevel: number): Promise<string> {\r\n // From the tile, get a \"quadKey\" the Microsoft way.\r\n const quadKey: string = this.tileXYToQuadKey(column, row, zoomLevel);\r\n const subdomain: string = this._urlSubdomains![(row + column) % this._urlSubdomains!.length];\r\n\r\n // from the template url, construct the tile url.\r\n let url: string = this._urlTemplate!.replace(\"{subdomain}\", subdomain);\r\n url = url.replace(\"{quadkey}\", quadKey);\r\n\r\n return url;\r\n }\r\n\r\n // gets the attributions that match the tile set.\r\n private getMatchingAttributions(tiles: Set<Tile> | undefined): BingAttribution[] {\r\n const matchingAttributions: BingAttribution[] = new Array<BingAttribution>();\r\n if (!this._attributions || !tiles)\r\n return matchingAttributions;\r\n\r\n const unmatchedSet: BingAttribution[] = this._attributions.slice();\r\n for (const tile of tiles) {\r\n if (tile instanceof MapTile)\r\n // compare to the set of Bing attributions that we have not yet matched.\r\n for (let iAttr = 0; iAttr < unmatchedSet.length; iAttr++) {\r\n const attribution = unmatchedSet[iAttr];\r\n if (attribution && attribution.matchesTile(tile, this._mapTilingScheme)) {\r\n matchingAttributions.push(attribution);\r\n delete unmatchedSet[iAttr];\r\n }\r\n }\r\n }\r\n return matchingAttributions;\r\n }\r\n\r\n public override getLogo(vp: ScreenViewport): HTMLTableRowElement | undefined {\r\n const tiles = IModelApp.tileAdmin.getTilesForViewport(vp)?.selected;\r\n const matchingAttributions = this.getMatchingAttributions(tiles);\r\n const copyrights: string[] = [];\r\n for (const match of matchingAttributions)\r\n copyrights.push(match.copyrightMessage);\r\n\r\n let copyrightMsg = \"\";\r\n for (let i = 0; i < copyrights.length; ++i) {\r\n if (i > 0)\r\n copyrightMsg += \"<br>\";\r\n copyrightMsg += copyrights[i];\r\n }\r\n return IModelApp.makeLogoCard({ iconSrc: \"images/bing.svg\", heading: \"Microsoft Bing\", notice: copyrightMsg });\r\n }\r\n\r\n // initializes the BingImageryProvider by reading the templateUrl, logo image, and attribution list.\r\n public override async initialize(): Promise<void> {\r\n // get the template url\r\n const bingRequestUrl = this._urlBase.replace(\"{bingKey}\", this._settings.accessKey ? this._settings.accessKey.value : \"\");\r\n const requestOptions: RequestOptions = { method: \"GET\" };\r\n\r\n try {\r\n const response: Response = await request(bingRequestUrl, requestOptions);\r\n const bingResponseProps: any = response.body;\r\n\r\n const thisResourceSetProps = bingResponseProps.resourceSets[0];\r\n const thisResourceProps = thisResourceSetProps.resources[0];\r\n this._zoomMax = thisResourceProps.zoomMax;\r\n this._tileHeight = thisResourceProps.imageHeight;\r\n this._tileWidth = thisResourceProps.imageWidth;\r\n this._urlTemplate = replaceHttpWithHttps(thisResourceProps.imageUrl.replace(\"{culture}\", \"en-US\")); // NEEDSWORK - get locale from somewhere.\r\n this._urlSubdomains = thisResourceProps.imageUrlSubdomains;\r\n // read the list of Bing's data suppliers and the range of data they provide. Used in calculation of copyright message.\r\n this.readAttributions(thisResourceProps.imageryProviders);\r\n\r\n // Bing sometimes provides tiles that have nothing but a camera icon in the middle of them when you ask\r\n // for tiles at zoom levels where they don't have data. Their application stops you from zooming in when that's the\r\n // case, but we can't stop - the user might want to look at design data a closer zoom. So we intentionally load such\r\n // a tile, and then compare other tiles to it, rejecting them if they match.\r\n this.loadTile(0, 0, this._zoomMax - 1).then((tileData: ImageSource | undefined) => { // eslint-disable-line @typescript-eslint/no-floating-promises\r\n if (tileData !== undefined) this._missingTileData = tileData.data as Uint8Array;\r\n });\r\n } catch (error) {\r\n throw new BentleyError(IModelStatus.BadModel, \"Error in Bing Server communications\");\r\n }\r\n }\r\n\r\n // reads the list of Bing data providers and the map range for which they each provide data.\r\n private readAttributions(attributionProps: any) {\r\n for (const thisAttributionProps of attributionProps) {\r\n const copyrightMessage: string = thisAttributionProps.attribution;\r\n const coverages: Coverage[] = new Array<Coverage>();\r\n for (const thisCoverageProps of thisAttributionProps.coverageAreas) {\r\n const thisCoverage = new Coverage(thisCoverageProps.bbox[0], thisCoverageProps.bbox[1], thisCoverageProps.bbox[2], thisCoverageProps.bbox[3],\r\n thisCoverageProps.zoomMin, thisCoverageProps.zoomMax);\r\n coverages.push(thisCoverage);\r\n }\r\n const thisAttribution: BingAttribution = new BingAttribution(copyrightMessage, coverages);\r\n if (!this._attributions)\r\n this._attributions = new Array<BingAttribution>();\r\n this._attributions.push(thisAttribution);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"BingImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/BingImageryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAyE;AAGzE,sDAA6E;AAC7E,kDAA+C;AAE/C,6CAGwB;AAExB;;GAEG;AACH,MAAM,QAAQ;IACZ,YAAoB,kBAA0B,EACpC,mBAA2B,EAC3B,mBAA2B,EAC3B,oBAA4B,EAC5B,iBAAyB,EACzB,iBAAyB;QALf,uBAAkB,GAAlB,kBAAkB,CAAQ;QACpC,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,yBAAoB,GAApB,oBAAoB,CAAQ;QAC5B,sBAAiB,GAAjB,iBAAiB,CAAQ;QACzB,sBAAiB,GAAjB,iBAAiB,CAAQ;IAAI,CAAC;IAEjC,QAAQ,CAAC,MAAc,EAAE,YAA6B;QAC3D,MAAM,KAAK,GAAY,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAC5D,IAAI,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,iBAAiB;YACvC,OAAO,KAAK,CAAC;QACf,IAAI,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,iBAAiB;YACvC,OAAO,KAAK,CAAC;QACf,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,oBAAoB;YACzC,OAAO,KAAK,CAAC;QACf,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB;YACxC,OAAO,KAAK,CAAC;QACf,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB;YACzC,OAAO,KAAK,CAAC;QACf,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,kBAAkB;YACxC,OAAO,KAAK,CAAC;QAEf,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED;;GAEG;AACH,MAAM,eAAe;IACnB,YAAmB,gBAAwB,EAAU,UAAsB;QAAxD,qBAAgB,GAAhB,gBAAgB,CAAQ;QAAU,eAAU,GAAV,UAAU,CAAY;IAAI,CAAC;IAEzE,WAAW,CAAC,IAAU,EAAE,YAA6B;QAC1D,MAAM,MAAM,GAAG,iBAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1D,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE;YACtC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;gBACzC,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAED,gIAAgI;AAChI,6BAA6B;AAC7B,SAAS,oBAAoB,CAAC,WAAmB;IAC/C,OAAO,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;AAC/F,CAAC;AAED,gBAAgB;AAChB,MAAa,4BAA6B,SAAQ,kCAAuB;IAUvE,YAAY,QAA0B;QACpC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,gBAAgB,GAAG,IAAI,kCAAuB,EAAE,CAAC;IACxD,CAAC;IAED,IAAW,SAAS,KAAa,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1D,IAAW,UAAU,KAAa,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAEpD,eAAe,CAAC,KAAa,EAAE,KAAa,EAAE,SAAiB;QACrE,+FAA+F;QAC/F,IAAI,OAAO,GAAW,EAAE,CAAC;QAEzB,yFAAyF;QACzF,IAAA,qBAAM,EAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAExB,KAAK,IAAI,CAAC,GAAW,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,KAAK,GAAW,IAAI,CAAC,CAAC,MAAM;YAChC,MAAM,IAAI,GAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxB,KAAK,EAAE,CAAC;aACT;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxB,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,CAAC;aACT;YACD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;SACtD;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,0CAA0C;IACnC,KAAK,CAAC,YAAY,CAAC,GAAW,EAAE,MAAc,EAAE,SAAiB;QACtE,oDAAoD;QACpD,MAAM,OAAO,GAAW,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,SAAS,GAAW,IAAI,CAAC,cAAe,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,cAAe,CAAC,MAAM,CAAC,CAAC;QAE7F,iDAAiD;QACjD,IAAI,GAAG,GAAW,IAAI,CAAC,YAAa,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACvE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAExC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,iDAAiD;IACzC,uBAAuB,CAAC,KAA4B;QAC1D,MAAM,oBAAoB,GAAsB,IAAI,KAAK,EAAmB,CAAC;QAC7E,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK;YAC/B,OAAO,oBAAoB,CAAC;QAE9B,MAAM,YAAY,GAAsB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACnE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,IAAI,YAAY,kBAAO;gBACzB,wEAAwE;gBACxE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;oBACxD,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;oBACxC,IAAI,WAAW,IAAI,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE;wBACvE,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBACvC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;qBAC5B;iBACF;SACJ;QACD,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAEe,OAAO,CAAC,EAAkB;;QACxC,MAAM,KAAK,GAAG,MAAA,qBAAS,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,0CAAE,QAAQ,CAAC;QAChE,MAAM,oBAAoB,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACjE,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,MAAM,KAAK,IAAI,oBAAoB;YACtC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAE1C,IAAI,YAAY,GAAG,EAAE,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YAC1C,IAAI,CAAC,GAAG,CAAC;gBACP,YAAY,IAAI,MAAM,CAAC;YACzB,YAAY,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;SAC/B;QACD,OAAO,qBAAS,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,qBAAS,CAAC,UAAU,iBAAiB,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IACxI,CAAC;IAED,oGAAoG;IACpF,KAAK,CAAC,UAAU;QAC9B,uBAAuB;QACvB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1H,MAAM,cAAc,GAAmB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAEzD,IAAI;YACF,MAAM,QAAQ,GAAa,MAAM,IAAA,iBAAO,EAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YACzE,MAAM,iBAAiB,GAAQ,QAAQ,CAAC,IAAI,CAAC;YAE7C,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/D,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC;YAC1C,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC;YACjD,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,UAAU,CAAC;YAC/C,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,yCAAyC;YAC7I,IAAI,CAAC,cAAc,GAAG,iBAAiB,CAAC,kBAAkB,CAAC;YAC3D,uHAAuH;YACvH,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;YAE1D,uGAAuG;YACvG,mHAAmH;YACnH,oHAAoH;YACpH,4EAA4E;YAC5E,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAiC,EAAE,EAAE;gBAChF,IAAI,QAAQ,KAAK,SAAS;oBAAE,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,IAAkB,CAAC;YAClF,CAAC,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,2BAAY,CAAC,2BAAY,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAC;SACtF;IACH,CAAC;IAED,4FAA4F;IACpF,gBAAgB,CAAC,gBAAqB;QAC5C,KAAK,MAAM,oBAAoB,IAAI,gBAAgB,EAAE;YACnD,MAAM,gBAAgB,GAAW,oBAAoB,CAAC,WAAW,CAAC;YAClE,MAAM,SAAS,GAAe,IAAI,KAAK,EAAY,CAAC;YACpD,KAAK,MAAM,iBAAiB,IAAI,oBAAoB,CAAC,aAAa,EAAE;gBAClE,MAAM,YAAY,GAAG,IAAI,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAC1I,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBACxD,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAC9B;YACD,MAAM,eAAe,GAAoB,IAAI,eAAe,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;YAC1F,IAAI,CAAC,IAAI,CAAC,aAAa;gBACrB,IAAI,CAAC,aAAa,GAAG,IAAI,KAAK,EAAmB,CAAC;YACpD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SAC1C;IACH,CAAC;CACF;AA7ID,oEA6IC","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 Tiles\r\n */\r\n\r\nimport { assert, BentleyError, IModelStatus } from \"@itwin/core-bentley\";\r\nimport { Range2d } from \"@itwin/core-geometry\";\r\nimport { ImageSource, MapLayerSettings } from \"@itwin/core-common\";\r\nimport { request, RequestOptions, Response } from \"../../../request/Request\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { ScreenViewport } from \"../../../Viewport\";\r\nimport {\r\n MapLayerImageryProvider, MapTile, MapTilingScheme, QuadId,\r\n Tile, WebMercatorTilingScheme,\r\n} from \"../../internal\";\r\n\r\n/** Represents one range of geography and tile zoom levels for a bing data provider\r\n * @internal\r\n */\r\nclass Coverage {\r\n constructor(private _lowerLeftLatitude: number,\r\n private _lowerLeftLongitude: number,\r\n private _upperRightLatitude: number,\r\n private _upperRightLongitude: number,\r\n private _minimumZoomLevel: number,\r\n private _maximumZoomLevel: number) { }\r\n\r\n public overlaps(quadId: QuadId, tilingScheme: MapTilingScheme): boolean {\r\n const range: Range2d = quadId.getLatLongRange(tilingScheme);\r\n if (quadId.level < this._minimumZoomLevel)\r\n return false;\r\n if (quadId.level > this._maximumZoomLevel)\r\n return false;\r\n if (range.low.x > this._upperRightLongitude)\r\n return false;\r\n if (range.low.y > this._upperRightLatitude)\r\n return false;\r\n if (range.high.x < this._lowerLeftLongitude)\r\n return false;\r\n if (range.high.y < this._lowerLeftLatitude)\r\n return false;\r\n\r\n return true;\r\n }\r\n}\r\n\r\n/** Represents the copyright message and an array of coverage data for one of bing's data providers (HERE for example).\r\n * @internal\r\n */\r\nclass BingAttribution {\r\n constructor(public copyrightMessage: string, private _coverages: Coverage[]) { }\r\n\r\n public matchesTile(tile: Tile, tilingScheme: MapTilingScheme): boolean {\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n for (const coverage of this._coverages) {\r\n if (coverage.overlaps(quadId, tilingScheme))\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n\r\n// in deployed applications, we can only make https requests, but the Bing Maps metadata request returns templates with \"http:\".\r\n// This function fixes those.\r\nfunction replaceHttpWithHttps(originalUrl: string) {\r\n return originalUrl.startsWith(\"http:\") ? \"https:\".concat(originalUrl.slice(5)) : originalUrl;\r\n}\r\n\r\n/** @internal */\r\nexport class BingMapsImageryLayerProvider extends MapLayerImageryProvider {\r\n private _urlTemplate?: string;\r\n private _urlSubdomains?: string[];\r\n private _zoomMax: number;\r\n private _tileHeight: number;\r\n private _tileWidth: number;\r\n private _attributions?: BingAttribution[]; // array of Bing's data providers.\r\n private _mapTilingScheme: MapTilingScheme;\r\n private _urlBase: string;\r\n\r\n constructor(settings: MapLayerSettings) {\r\n super(settings, true);\r\n this._urlBase = settings.url;\r\n this._zoomMax = 0;\r\n this._tileHeight = this._tileWidth = 0;\r\n this._mapTilingScheme = new WebMercatorTilingScheme();\r\n }\r\n\r\n public get tileWidth(): number { return this._tileWidth; }\r\n public get tileHeight(): number { return this._tileHeight; }\r\n\r\n private tileXYToQuadKey(tileX: number, tileY: number, zoomLevel: number) {\r\n // from C# example in bing documentation https://msdn.microsoft.com/en-us/library/bb259689.aspx\r\n let quadKey: string = \"\";\r\n\r\n // Root tile is not displayable. Returns 0 for _GetMaximumSize(). Should not end up here.\r\n assert(0 !== zoomLevel);\r\n\r\n for (let i: number = zoomLevel; i > 0; i--) {\r\n let digit: number = 0x30; // '0'\r\n const mask: number = 1 << (i - 1);\r\n if ((tileX & mask) !== 0) {\r\n digit++;\r\n }\r\n if ((tileY & mask) !== 0) {\r\n digit++;\r\n digit++;\r\n }\r\n quadKey = quadKey.concat(String.fromCharCode(digit));\r\n }\r\n return quadKey;\r\n }\r\n\r\n // construct the Url from the desired Tile\r\n public async constructUrl(row: number, column: number, zoomLevel: number): Promise<string> {\r\n // From the tile, get a \"quadKey\" the Microsoft way.\r\n const quadKey: string = this.tileXYToQuadKey(column, row, zoomLevel);\r\n const subdomain: string = this._urlSubdomains![(row + column) % this._urlSubdomains!.length];\r\n\r\n // from the template url, construct the tile url.\r\n let url: string = this._urlTemplate!.replace(\"{subdomain}\", subdomain);\r\n url = url.replace(\"{quadkey}\", quadKey);\r\n\r\n return url;\r\n }\r\n\r\n // gets the attributions that match the tile set.\r\n private getMatchingAttributions(tiles: Set<Tile> | undefined): BingAttribution[] {\r\n const matchingAttributions: BingAttribution[] = new Array<BingAttribution>();\r\n if (!this._attributions || !tiles)\r\n return matchingAttributions;\r\n\r\n const unmatchedSet: BingAttribution[] = this._attributions.slice();\r\n for (const tile of tiles) {\r\n if (tile instanceof MapTile)\r\n // compare to the set of Bing attributions that we have not yet matched.\r\n for (let iAttr = 0; iAttr < unmatchedSet.length; iAttr++) {\r\n const attribution = unmatchedSet[iAttr];\r\n if (attribution && attribution.matchesTile(tile, this._mapTilingScheme)) {\r\n matchingAttributions.push(attribution);\r\n delete unmatchedSet[iAttr];\r\n }\r\n }\r\n }\r\n return matchingAttributions;\r\n }\r\n\r\n public override getLogo(vp: ScreenViewport): HTMLTableRowElement | undefined {\r\n const tiles = IModelApp.tileAdmin.getTilesForUser(vp)?.selected;\r\n const matchingAttributions = this.getMatchingAttributions(tiles);\r\n const copyrights: string[] = [];\r\n for (const match of matchingAttributions)\r\n copyrights.push(match.copyrightMessage);\r\n\r\n let copyrightMsg = \"\";\r\n for (let i = 0; i < copyrights.length; ++i) {\r\n if (i > 0)\r\n copyrightMsg += \"<br>\";\r\n copyrightMsg += copyrights[i];\r\n }\r\n return IModelApp.makeLogoCard({ iconSrc: `${IModelApp.publicPath}images/bing.svg`, heading: \"Microsoft Bing\", notice: copyrightMsg });\r\n }\r\n\r\n // initializes the BingImageryProvider by reading the templateUrl, logo image, and attribution list.\r\n public override async initialize(): Promise<void> {\r\n // get the template url\r\n const bingRequestUrl = this._urlBase.replace(\"{bingKey}\", this._settings.accessKey ? this._settings.accessKey.value : \"\");\r\n const requestOptions: RequestOptions = { method: \"GET\" };\r\n\r\n try {\r\n const response: Response = await request(bingRequestUrl, requestOptions);\r\n const bingResponseProps: any = response.body;\r\n\r\n const thisResourceSetProps = bingResponseProps.resourceSets[0];\r\n const thisResourceProps = thisResourceSetProps.resources[0];\r\n this._zoomMax = thisResourceProps.zoomMax;\r\n this._tileHeight = thisResourceProps.imageHeight;\r\n this._tileWidth = thisResourceProps.imageWidth;\r\n this._urlTemplate = replaceHttpWithHttps(thisResourceProps.imageUrl.replace(\"{culture}\", \"en-US\")); // NEEDSWORK - get locale from somewhere.\r\n this._urlSubdomains = thisResourceProps.imageUrlSubdomains;\r\n // read the list of Bing's data suppliers and the range of data they provide. Used in calculation of copyright message.\r\n this.readAttributions(thisResourceProps.imageryProviders);\r\n\r\n // Bing sometimes provides tiles that have nothing but a camera icon in the middle of them when you ask\r\n // for tiles at zoom levels where they don't have data. Their application stops you from zooming in when that's the\r\n // case, but we can't stop - the user might want to look at design data a closer zoom. So we intentionally load such\r\n // a tile, and then compare other tiles to it, rejecting them if they match.\r\n this.loadTile(0, 0, this._zoomMax - 1).then((tileData: ImageSource | undefined) => { // eslint-disable-line @typescript-eslint/no-floating-promises\r\n if (tileData !== undefined) this._missingTileData = tileData.data as Uint8Array;\r\n });\r\n } catch (error) {\r\n throw new BentleyError(IModelStatus.BadModel, \"Error in Bing Server communications\");\r\n }\r\n }\r\n\r\n // reads the list of Bing data providers and the map range for which they each provide data.\r\n private readAttributions(attributionProps: any) {\r\n for (const thisAttributionProps of attributionProps) {\r\n const copyrightMessage: string = thisAttributionProps.attribution;\r\n const coverages: Coverage[] = new Array<Coverage>();\r\n for (const thisCoverageProps of thisAttributionProps.coverageAreas) {\r\n const thisCoverage = new Coverage(thisCoverageProps.bbox[0], thisCoverageProps.bbox[1], thisCoverageProps.bbox[2], thisCoverageProps.bbox[3],\r\n thisCoverageProps.zoomMin, thisCoverageProps.zoomMax);\r\n coverages.push(thisCoverage);\r\n }\r\n const thisAttribution: BingAttribution = new BingAttribution(copyrightMessage, coverages);\r\n if (!this._attributions)\r\n this._attributions = new Array<BingAttribution>();\r\n this._attributions.push(thisAttribution);\r\n }\r\n }\r\n}\r\n"]}
@@ -2,7 +2,6 @@
2
2
  * @module Tiles
3
3
  */
4
4
  import { MapLayerSettings } from "@itwin/core-common";
5
- import { ScreenViewport } from "../../../Viewport";
6
5
  import { MapLayerImageryProvider } from "../../internal";
7
6
  /** Base class imagery map layer formats. Subclasses should override formatId and [[MapLayerFormat.createImageryProvider]].
8
7
  * @internal
@@ -17,7 +16,7 @@ export declare class MapBoxLayerImageryProvider extends MapLayerImageryProvider
17
16
  get minimumZoomLevel(): number;
18
17
  get maximumZoomLevel(): number;
19
18
  constructUrl(row: number, column: number, zoomLevel: number): Promise<string>;
20
- getLogo(_vp: ScreenViewport): HTMLTableRowElement | undefined;
19
+ getLogo(): HTMLTableRowElement | undefined;
21
20
  initialize(): Promise<void>;
22
21
  }
23
22
  //# sourceMappingURL=MapBoxLayerImageryProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MapBoxLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/MapBoxLayerImageryProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,uBAAuB;IACrE,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,gBAAgB;IAMtC,IAAW,SAAS,IAAI,MAAM,CAAgB;IAC9C,IAAW,UAAU,IAAI,MAAM,CAAgB;IAC/C,IAAoB,gBAAgB,IAAI,MAAM,CAA0B;IACxE,IAAoB,gBAAgB,IAAI,MAAM,CAA0B;IAG3D,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAa1E,OAAO,CAAC,GAAG,EAAE,cAAc,GAAG,mBAAmB,GAAG,SAAS;IAKvD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAClD"}
1
+ {"version":3,"file":"MapBoxLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/MapBoxLayerImageryProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,uBAAuB;IACrE,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,gBAAgB;IAMtC,IAAW,SAAS,IAAI,MAAM,CAAgB;IAC9C,IAAW,UAAU,IAAI,MAAM,CAAgB;IAC/C,IAAoB,gBAAgB,IAAI,MAAM,CAA0B;IACxE,IAAoB,gBAAgB,IAAI,MAAM,CAA0B;IAG3D,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAa1E,OAAO,IAAI,mBAAmB,GAAG,SAAS;IAKpC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAClD"}
@@ -35,7 +35,7 @@ class MapBoxLayerImageryProvider extends internal_1.MapLayerImageryProvider {
35
35
  url = url.concat(`.jpg80?${this._settings.accessKey.key}=${this._settings.accessKey.value}`);
36
36
  return url;
37
37
  }
38
- getLogo(_vp) {
38
+ getLogo() {
39
39
  return IModelApp_1.IModelApp.makeLogoCard({ heading: "Mapbox", notice: IModelApp_1.IModelApp.localization.getLocalizedString("iModelJs:BackgroundMap.MapBoxCopyright") });
40
40
  }
41
41
  // no initialization needed for MapBoxImageryProvider.
@@ -1 +1 @@
1
- {"version":3,"file":"MapBoxLayerImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/MapBoxLayerImageryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,kDAA+C;AAE/C,6CAAyD;AAEzD;;GAEG;AACH,MAAa,0BAA2B,SAAQ,kCAAuB;IAKrE,YAAY,QAA0B;QACpC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACxC,CAAC;IAED,IAAW,SAAS,KAAa,OAAO,GAAG,CAAC,CAAC,CAAC;IAC9C,IAAW,UAAU,KAAa,OAAO,GAAG,CAAC,CAAC,CAAC;IAC/C,IAAoB,gBAAgB,KAAa,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxE,IAAoB,gBAAgB,KAAa,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAExE,0CAA0C;IACnC,KAAK,CAAC,YAAY,CAAC,GAAW,EAAE,MAAc,EAAE,SAAiB;QACtE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;YAC7B,OAAO,EAAE,CAAC;SACX;QAED,iDAAiD;QACjD,IAAI,GAAG,GAAW,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7D,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnF,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAE7F,OAAO,GAAG,CAAC;IACb,CAAC;IAEe,OAAO,CAAC,GAAmB;QACzC,OAAO,qBAAS,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAS,CAAC,YAAY,CAAC,kBAAkB,CAAC,wCAAwC,CAAC,EAAE,CAAC,CAAC;IACpJ,CAAC;IAED,sDAAsD;IACtC,KAAK,CAAC,UAAU,KAAoB,CAAC;CACtD;AApCD,gEAoCC","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 Tiles\r\n */\r\n\r\nimport { MapLayerSettings } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { ScreenViewport } from \"../../../Viewport\";\r\nimport { MapLayerImageryProvider } from \"../../internal\";\r\n\r\n/** Base class imagery map layer formats. Subclasses should override formatId and [[MapLayerFormat.createImageryProvider]].\r\n * @internal\r\n */\r\nexport class MapBoxLayerImageryProvider extends MapLayerImageryProvider {\r\n private _zoomMin: number;\r\n private _zoomMax: number;\r\n private _baseUrl: string;\r\n\r\n constructor(settings: MapLayerSettings) {\r\n super(settings, true);\r\n this._baseUrl = settings.url;\r\n this._zoomMin = 1; this._zoomMax = 20;\r\n }\r\n\r\n public get tileWidth(): number { return 256; }\r\n public get tileHeight(): number { return 256; }\r\n public override get minimumZoomLevel(): number { return this._zoomMin; }\r\n public override get maximumZoomLevel(): number { return this._zoomMax; }\r\n\r\n // construct the Url from the desired Tile\r\n public async constructUrl(row: number, column: number, zoomLevel: number): Promise<string> {\r\n if (!this._settings.accessKey) {\r\n return \"\";\r\n }\r\n\r\n // from the template url, construct the tile url.\r\n let url: string = this._baseUrl.concat(zoomLevel.toString());\r\n url = url.concat(\"/\").concat(column.toString()).concat(\"/\").concat(row.toString());\r\n url = url.concat(`.jpg80?${this._settings.accessKey.key}=${this._settings.accessKey.value}`);\r\n\r\n return url;\r\n }\r\n\r\n public override getLogo(_vp: ScreenViewport): HTMLTableRowElement | undefined {\r\n return IModelApp.makeLogoCard({ heading: \"Mapbox\", notice: IModelApp.localization.getLocalizedString(\"iModelJs:BackgroundMap.MapBoxCopyright\") });\r\n }\r\n\r\n // no initialization needed for MapBoxImageryProvider.\r\n public override async initialize(): Promise<void> { }\r\n}\r\n"]}
1
+ {"version":3,"file":"MapBoxLayerImageryProvider.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/MapBoxLayerImageryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,kDAA+C;AAC/C,6CAAyD;AAEzD;;GAEG;AACH,MAAa,0BAA2B,SAAQ,kCAAuB;IAKrE,YAAY,QAA0B;QACpC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACxC,CAAC;IAED,IAAW,SAAS,KAAa,OAAO,GAAG,CAAC,CAAC,CAAC;IAC9C,IAAW,UAAU,KAAa,OAAO,GAAG,CAAC,CAAC,CAAC;IAC/C,IAAoB,gBAAgB,KAAa,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxE,IAAoB,gBAAgB,KAAa,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAExE,0CAA0C;IACnC,KAAK,CAAC,YAAY,CAAC,GAAW,EAAE,MAAc,EAAE,SAAiB;QACtE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;YAC7B,OAAO,EAAE,CAAC;SACX;QAED,iDAAiD;QACjD,IAAI,GAAG,GAAW,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7D,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnF,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAE7F,OAAO,GAAG,CAAC;IACb,CAAC;IAEe,OAAO;QACrB,OAAO,qBAAS,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAS,CAAC,YAAY,CAAC,kBAAkB,CAAC,wCAAwC,CAAC,EAAE,CAAC,CAAC;IACpJ,CAAC;IAED,sDAAsD;IACtC,KAAK,CAAC,UAAU,KAAoB,CAAC;CACtD;AApCD,gEAoCC","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 Tiles\r\n */\r\n\r\nimport { MapLayerSettings } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../../../IModelApp\";\r\nimport { MapLayerImageryProvider } from \"../../internal\";\r\n\r\n/** Base class imagery map layer formats. Subclasses should override formatId and [[MapLayerFormat.createImageryProvider]].\r\n * @internal\r\n */\r\nexport class MapBoxLayerImageryProvider extends MapLayerImageryProvider {\r\n private _zoomMin: number;\r\n private _zoomMax: number;\r\n private _baseUrl: string;\r\n\r\n constructor(settings: MapLayerSettings) {\r\n super(settings, true);\r\n this._baseUrl = settings.url;\r\n this._zoomMin = 1; this._zoomMax = 20;\r\n }\r\n\r\n public get tileWidth(): number { return 256; }\r\n public get tileHeight(): number { return 256; }\r\n public override get minimumZoomLevel(): number { return this._zoomMin; }\r\n public override get maximumZoomLevel(): number { return this._zoomMax; }\r\n\r\n // construct the Url from the desired Tile\r\n public async constructUrl(row: number, column: number, zoomLevel: number): Promise<string> {\r\n if (!this._settings.accessKey) {\r\n return \"\";\r\n }\r\n\r\n // from the template url, construct the tile url.\r\n let url: string = this._baseUrl.concat(zoomLevel.toString());\r\n url = url.concat(\"/\").concat(column.toString()).concat(\"/\").concat(row.toString());\r\n url = url.concat(`.jpg80?${this._settings.accessKey.key}=${this._settings.accessKey.value}`);\r\n\r\n return url;\r\n }\r\n\r\n public override getLogo(): HTMLTableRowElement | undefined {\r\n return IModelApp.makeLogoCard({ heading: \"Mapbox\", notice: IModelApp.localization.getLocalizedString(\"iModelJs:BackgroundMap.MapBoxCopyright\") });\r\n }\r\n\r\n // no initialization needed for MapBoxImageryProvider.\r\n public override async initialize(): Promise<void> { }\r\n}\r\n"]}
@@ -1,18 +1,26 @@
1
1
  import { Cartographic, MapLayerSettings } from "@itwin/core-common";
2
2
  import { ImageryMapTileTree, MapLayerImageryProvider, QuadId } from "../../internal";
3
3
  /** @internal */
4
+ export interface WmsCrsSupport {
5
+ support3857: boolean;
6
+ support4326: boolean;
7
+ }
8
+ /** @internal */
4
9
  export declare class WmsMapLayerImageryProvider extends MapLayerImageryProvider {
5
10
  private _capabilities?;
6
11
  private _allLayersRange?;
7
12
  private _subLayerRanges;
8
13
  private _baseUrl;
9
14
  private _isVersion1_1;
15
+ private _crsSupport;
10
16
  constructor(settings: MapLayerSettings);
11
17
  initialize(): Promise<void>;
12
18
  private getVisibleLayerString;
13
19
  private getVisibleLayers;
20
+ private getVisibleLayersSrs;
14
21
  private getQueryableLayers;
15
22
  private getVisibleQueryableLayersString;
23
+ getCrsSupport(): WmsCrsSupport;
16
24
  constructUrl(row: number, column: number, zoomLevel: number): Promise<string>;
17
25
  getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void>;
18
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WmsMapLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/WmsMapLayerImageryProvider.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAe,MAAM,oBAAoB,CAAC;AAEjF,OAAO,EACL,kBAAkB,EAAqB,uBAAuB,EAAiC,MAAM,EAEtG,MAAM,gBAAgB,CAAC;AAOxB,gBAAgB;AAChB,qBAAa,0BAA2B,SAAQ,uBAAuB;IACrE,OAAO,CAAC,aAAa,CAAC,CAAkB;IACxC,OAAO,CAAC,eAAe,CAAC,CAAoB;IAC5C,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,aAAa,CAAS;gBAClB,QAAQ,EAAE,gBAAgB;IAKhB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAyCjD,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,+BAA+B;IAS1B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;CAoBlI"}
1
+ {"version":3,"file":"WmsMapLayerImageryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/WmsMapLayerImageryProvider.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAoC,MAAM,oBAAoB,CAAC;AAEtG,OAAO,EACL,kBAAkB,EAAqB,uBAAuB,EAAiC,MAAM,EAEtG,MAAM,gBAAgB,CAAC;AAOxB,gBAAgB;AAChB,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,gBAAgB;AAChB,qBAAa,0BAA2B,SAAQ,uBAAuB;IACrE,OAAO,CAAC,aAAa,CAAC,CAAkB;IACxC,OAAO,CAAC,eAAe,CAAC,CAAoB;IAC5C,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,WAAW,CAA0B;gBAEjC,QAAQ,EAAE,gBAAgB;IAKhB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CjD,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,+BAA+B;IAQhC,aAAa,IAAI,aAAa;IAyBxB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAwBpE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;CAoBlI"}