@itwin/core-frontend 5.0.0-dev.99 → 5.1.0-dev.1

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 (295) hide show
  1. package/CHANGELOG.md +6 -1
  2. package/lib/cjs/AccuDraw.d.ts.map +1 -1
  3. package/lib/cjs/AccuDraw.js +20 -41
  4. package/lib/cjs/AccuDraw.js.map +1 -1
  5. package/lib/cjs/AccuSnap.d.ts +1 -0
  6. package/lib/cjs/AccuSnap.d.ts.map +1 -1
  7. package/lib/cjs/AccuSnap.js +69 -1
  8. package/lib/cjs/AccuSnap.js.map +1 -1
  9. package/lib/cjs/BriefcaseConnection.d.ts +1 -1
  10. package/lib/cjs/BriefcaseConnection.d.ts.map +1 -1
  11. package/lib/cjs/BriefcaseConnection.js.map +1 -1
  12. package/lib/cjs/CatalogConnection.d.ts +71 -0
  13. package/lib/cjs/CatalogConnection.d.ts.map +1 -0
  14. package/lib/cjs/CatalogConnection.js +95 -0
  15. package/lib/cjs/CatalogConnection.js.map +1 -0
  16. package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
  17. package/lib/cjs/ElementLocateManager.js +5 -2
  18. package/lib/cjs/ElementLocateManager.js.map +1 -1
  19. package/lib/cjs/HitDetail.d.ts +29 -2
  20. package/lib/cjs/HitDetail.d.ts.map +1 -1
  21. package/lib/cjs/HitDetail.js +14 -0
  22. package/lib/cjs/HitDetail.js.map +1 -1
  23. package/lib/cjs/IpcApp.d.ts +1 -1
  24. package/lib/cjs/IpcApp.d.ts.map +1 -1
  25. package/lib/cjs/IpcApp.js.map +1 -1
  26. package/lib/cjs/ModelState.d.ts.map +1 -1
  27. package/lib/cjs/ModelState.js +7 -5
  28. package/lib/cjs/ModelState.js.map +1 -1
  29. package/lib/cjs/NativeApp.d.ts +2 -1
  30. package/lib/cjs/NativeApp.d.ts.map +1 -1
  31. package/lib/cjs/NativeApp.js +1 -0
  32. package/lib/cjs/NativeApp.js.map +1 -1
  33. package/lib/cjs/Viewport.d.ts.map +1 -1
  34. package/lib/cjs/Viewport.js +1 -0
  35. package/lib/cjs/Viewport.js.map +1 -1
  36. package/lib/cjs/core-frontend.d.ts +1 -0
  37. package/lib/cjs/core-frontend.d.ts.map +1 -1
  38. package/lib/cjs/core-frontend.js +1 -0
  39. package/lib/cjs/core-frontend.js.map +1 -1
  40. package/lib/cjs/internal/cross-package.d.ts +1 -1
  41. package/lib/cjs/internal/cross-package.d.ts.map +1 -1
  42. package/lib/cjs/internal/cross-package.js +3 -1
  43. package/lib/cjs/internal/cross-package.js.map +1 -1
  44. package/lib/cjs/internal/render/webgl/FrustumUniforms.d.ts +2 -0
  45. package/lib/cjs/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
  46. package/lib/cjs/internal/render/webgl/FrustumUniforms.js +7 -0
  47. package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
  48. package/lib/cjs/internal/render/webgl/MapLayerParams.d.ts +0 -1
  49. package/lib/cjs/internal/render/webgl/MapLayerParams.d.ts.map +1 -1
  50. package/lib/cjs/internal/render/webgl/MapLayerParams.js +11 -20
  51. package/lib/cjs/internal/render/webgl/MapLayerParams.js.map +1 -1
  52. package/lib/cjs/internal/render/webgl/SceneCompositor.d.ts +9 -0
  53. package/lib/cjs/internal/render/webgl/SceneCompositor.d.ts.map +1 -1
  54. package/lib/cjs/internal/render/webgl/SceneCompositor.js +86 -11
  55. package/lib/cjs/internal/render/webgl/SceneCompositor.js.map +1 -1
  56. package/lib/cjs/internal/render/webgl/ShaderBuilder.d.ts +4 -3
  57. package/lib/cjs/internal/render/webgl/ShaderBuilder.d.ts.map +1 -1
  58. package/lib/cjs/internal/render/webgl/ShaderBuilder.js +3 -3
  59. package/lib/cjs/internal/render/webgl/ShaderBuilder.js.map +1 -1
  60. package/lib/cjs/internal/render/webgl/SolarShadowMap.js +2 -2
  61. package/lib/cjs/internal/render/webgl/SolarShadowMap.js.map +1 -1
  62. package/lib/cjs/internal/render/webgl/SurfaceGeometry.d.ts.map +1 -1
  63. package/lib/cjs/internal/render/webgl/SurfaceGeometry.js +20 -8
  64. package/lib/cjs/internal/render/webgl/SurfaceGeometry.js.map +1 -1
  65. package/lib/cjs/internal/render/webgl/glsl/Atmosphere.js +1 -1
  66. package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.d.ts.map +1 -1
  67. package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js +2 -1
  68. package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
  69. package/lib/cjs/internal/render/webgl/glsl/Contours.d.ts.map +1 -1
  70. package/lib/cjs/internal/render/webgl/glsl/Contours.js +31 -1
  71. package/lib/cjs/internal/render/webgl/glsl/Contours.js.map +1 -1
  72. package/lib/cjs/internal/render/webgl/glsl/Fragment.d.ts.map +1 -1
  73. package/lib/cjs/internal/render/webgl/glsl/Fragment.js +7 -2
  74. package/lib/cjs/internal/render/webgl/glsl/Fragment.js.map +1 -1
  75. package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js +1 -1
  76. package/lib/cjs/internal/render/webgl/glsl/Surface.js +1 -1
  77. package/lib/cjs/internal/tile/GraphicsCollector.d.ts +1 -0
  78. package/lib/cjs/internal/tile/GraphicsCollector.d.ts.map +1 -1
  79. package/lib/cjs/internal/tile/GraphicsCollector.js +1 -0
  80. package/lib/cjs/internal/tile/GraphicsCollector.js.map +1 -1
  81. package/lib/cjs/internal/tile/IModelTile.d.ts.map +1 -1
  82. package/lib/cjs/internal/tile/IModelTile.js +5 -0
  83. package/lib/cjs/internal/tile/IModelTile.js.map +1 -1
  84. package/lib/cjs/internal/tile/IModelTileTree.d.ts +4 -1
  85. package/lib/cjs/internal/tile/IModelTileTree.d.ts.map +1 -1
  86. package/lib/cjs/internal/tile/IModelTileTree.js +5 -0
  87. package/lib/cjs/internal/tile/IModelTileTree.js.map +1 -1
  88. package/lib/cjs/internal/tile/ImdlDecoder.d.ts +2 -0
  89. package/lib/cjs/internal/tile/ImdlDecoder.d.ts.map +1 -1
  90. package/lib/cjs/internal/tile/ImdlDecoder.js.map +1 -1
  91. package/lib/cjs/internal/tile/ImdlGraphicsCreator.d.ts +2 -2
  92. package/lib/cjs/internal/tile/ImdlGraphicsCreator.d.ts.map +1 -1
  93. package/lib/cjs/internal/tile/ImdlGraphicsCreator.js +2 -1
  94. package/lib/cjs/internal/tile/ImdlGraphicsCreator.js.map +1 -1
  95. package/lib/cjs/{tile → internal/tile}/LayerTileTreeHandler.d.ts +3 -3
  96. package/lib/cjs/internal/tile/LayerTileTreeHandler.d.ts.map +1 -0
  97. package/lib/cjs/{tile → internal/tile}/LayerTileTreeHandler.js +3 -2
  98. package/lib/cjs/internal/tile/LayerTileTreeHandler.js.map +1 -0
  99. package/lib/cjs/{tile → internal/tile}/LayerTileTreeReferenceHandler.d.ts +7 -5
  100. package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.d.ts.map +1 -0
  101. package/lib/cjs/{tile → internal/tile}/LayerTileTreeReferenceHandler.js +29 -4
  102. package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -0
  103. package/lib/cjs/internal/tile/PrimaryTileTree.d.ts +9 -4
  104. package/lib/cjs/internal/tile/PrimaryTileTree.d.ts.map +1 -1
  105. package/lib/cjs/internal/tile/PrimaryTileTree.js +30 -8
  106. package/lib/cjs/internal/tile/PrimaryTileTree.js.map +1 -1
  107. package/lib/cjs/internal/tile/RealityModelTileTree.d.ts +0 -2
  108. package/lib/cjs/internal/tile/RealityModelTileTree.d.ts.map +1 -1
  109. package/lib/cjs/internal/tile/RealityModelTileTree.js +2 -21
  110. package/lib/cjs/internal/tile/RealityModelTileTree.js.map +1 -1
  111. package/lib/cjs/render/Pixel.d.ts +13 -2
  112. package/lib/cjs/render/Pixel.d.ts.map +1 -1
  113. package/lib/cjs/render/Pixel.js +20 -8
  114. package/lib/cjs/render/Pixel.js.map +1 -1
  115. package/lib/cjs/tile/ImdlReader.d.ts +3 -2
  116. package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
  117. package/lib/cjs/tile/ImdlReader.js +1 -0
  118. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  119. package/lib/cjs/tile/internal.d.ts +3 -2
  120. package/lib/cjs/tile/internal.d.ts.map +1 -1
  121. package/lib/cjs/tile/internal.js +3 -2
  122. package/lib/cjs/tile/internal.js.map +1 -1
  123. package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts +1 -1
  124. package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  125. package/lib/cjs/tile/map/CesiumTerrainProvider.js +2 -3
  126. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  127. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  128. package/lib/cjs/tile/map/MapTileTree.js +2 -4
  129. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  130. package/lib/cjs/tools/AccuDrawTool.d.ts +0 -12
  131. package/lib/cjs/tools/AccuDrawTool.d.ts.map +1 -1
  132. package/lib/cjs/tools/AccuDrawTool.js +2 -60
  133. package/lib/cjs/tools/AccuDrawTool.js.map +1 -1
  134. package/lib/cjs/tools/AccuDrawViewportUI.d.ts +0 -1
  135. package/lib/cjs/tools/AccuDrawViewportUI.d.ts.map +1 -1
  136. package/lib/cjs/tools/AccuDrawViewportUI.js +15 -19
  137. package/lib/cjs/tools/AccuDrawViewportUI.js.map +1 -1
  138. package/lib/cjs/tools/ViewTool.d.ts +25 -16
  139. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  140. package/lib/cjs/tools/ViewTool.js +29 -40
  141. package/lib/cjs/tools/ViewTool.js.map +1 -1
  142. package/lib/esm/AccuDraw.d.ts.map +1 -1
  143. package/lib/esm/AccuDraw.js +21 -42
  144. package/lib/esm/AccuDraw.js.map +1 -1
  145. package/lib/esm/AccuSnap.d.ts +1 -0
  146. package/lib/esm/AccuSnap.d.ts.map +1 -1
  147. package/lib/esm/AccuSnap.js +69 -1
  148. package/lib/esm/AccuSnap.js.map +1 -1
  149. package/lib/esm/BriefcaseConnection.d.ts +1 -1
  150. package/lib/esm/BriefcaseConnection.d.ts.map +1 -1
  151. package/lib/esm/BriefcaseConnection.js.map +1 -1
  152. package/lib/esm/CatalogConnection.d.ts +71 -0
  153. package/lib/esm/CatalogConnection.d.ts.map +1 -0
  154. package/lib/esm/CatalogConnection.js +92 -0
  155. package/lib/esm/CatalogConnection.js.map +1 -0
  156. package/lib/esm/ElementLocateManager.d.ts.map +1 -1
  157. package/lib/esm/ElementLocateManager.js +5 -2
  158. package/lib/esm/ElementLocateManager.js.map +1 -1
  159. package/lib/esm/HitDetail.d.ts +29 -2
  160. package/lib/esm/HitDetail.d.ts.map +1 -1
  161. package/lib/esm/HitDetail.js +14 -0
  162. package/lib/esm/HitDetail.js.map +1 -1
  163. package/lib/esm/IpcApp.d.ts +1 -1
  164. package/lib/esm/IpcApp.d.ts.map +1 -1
  165. package/lib/esm/IpcApp.js.map +1 -1
  166. package/lib/esm/ModelState.d.ts.map +1 -1
  167. package/lib/esm/ModelState.js +7 -5
  168. package/lib/esm/ModelState.js.map +1 -1
  169. package/lib/esm/NativeApp.d.ts +2 -1
  170. package/lib/esm/NativeApp.d.ts.map +1 -1
  171. package/lib/esm/NativeApp.js +1 -0
  172. package/lib/esm/NativeApp.js.map +1 -1
  173. package/lib/esm/Viewport.d.ts.map +1 -1
  174. package/lib/esm/Viewport.js +1 -0
  175. package/lib/esm/Viewport.js.map +1 -1
  176. package/lib/esm/core-frontend.d.ts +1 -0
  177. package/lib/esm/core-frontend.d.ts.map +1 -1
  178. package/lib/esm/core-frontend.js +1 -0
  179. package/lib/esm/core-frontend.js.map +1 -1
  180. package/lib/esm/internal/cross-package.d.ts +1 -1
  181. package/lib/esm/internal/cross-package.d.ts.map +1 -1
  182. package/lib/esm/internal/cross-package.js +1 -1
  183. package/lib/esm/internal/cross-package.js.map +1 -1
  184. package/lib/esm/internal/render/webgl/FrustumUniforms.d.ts +2 -0
  185. package/lib/esm/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
  186. package/lib/esm/internal/render/webgl/FrustumUniforms.js +8 -1
  187. package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
  188. package/lib/esm/internal/render/webgl/MapLayerParams.d.ts +0 -1
  189. package/lib/esm/internal/render/webgl/MapLayerParams.d.ts.map +1 -1
  190. package/lib/esm/internal/render/webgl/MapLayerParams.js +11 -20
  191. package/lib/esm/internal/render/webgl/MapLayerParams.js.map +1 -1
  192. package/lib/esm/internal/render/webgl/SceneCompositor.d.ts +9 -0
  193. package/lib/esm/internal/render/webgl/SceneCompositor.d.ts.map +1 -1
  194. package/lib/esm/internal/render/webgl/SceneCompositor.js +86 -11
  195. package/lib/esm/internal/render/webgl/SceneCompositor.js.map +1 -1
  196. package/lib/esm/internal/render/webgl/ShaderBuilder.d.ts +4 -3
  197. package/lib/esm/internal/render/webgl/ShaderBuilder.d.ts.map +1 -1
  198. package/lib/esm/internal/render/webgl/ShaderBuilder.js +3 -3
  199. package/lib/esm/internal/render/webgl/ShaderBuilder.js.map +1 -1
  200. package/lib/esm/internal/render/webgl/SolarShadowMap.js +2 -2
  201. package/lib/esm/internal/render/webgl/SolarShadowMap.js.map +1 -1
  202. package/lib/esm/internal/render/webgl/SurfaceGeometry.d.ts.map +1 -1
  203. package/lib/esm/internal/render/webgl/SurfaceGeometry.js +20 -8
  204. package/lib/esm/internal/render/webgl/SurfaceGeometry.js.map +1 -1
  205. package/lib/esm/internal/render/webgl/glsl/Atmosphere.js +1 -1
  206. package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.d.ts.map +1 -1
  207. package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js +2 -1
  208. package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
  209. package/lib/esm/internal/render/webgl/glsl/Contours.d.ts.map +1 -1
  210. package/lib/esm/internal/render/webgl/glsl/Contours.js +31 -1
  211. package/lib/esm/internal/render/webgl/glsl/Contours.js.map +1 -1
  212. package/lib/esm/internal/render/webgl/glsl/Fragment.d.ts.map +1 -1
  213. package/lib/esm/internal/render/webgl/glsl/Fragment.js +7 -2
  214. package/lib/esm/internal/render/webgl/glsl/Fragment.js.map +1 -1
  215. package/lib/esm/internal/render/webgl/glsl/RealityMesh.js +1 -1
  216. package/lib/esm/internal/render/webgl/glsl/Surface.js +1 -1
  217. package/lib/esm/internal/tile/GraphicsCollector.d.ts +1 -0
  218. package/lib/esm/internal/tile/GraphicsCollector.d.ts.map +1 -1
  219. package/lib/esm/internal/tile/GraphicsCollector.js +1 -0
  220. package/lib/esm/internal/tile/GraphicsCollector.js.map +1 -1
  221. package/lib/esm/internal/tile/IModelTile.d.ts.map +1 -1
  222. package/lib/esm/internal/tile/IModelTile.js +6 -1
  223. package/lib/esm/internal/tile/IModelTile.js.map +1 -1
  224. package/lib/esm/internal/tile/IModelTileTree.d.ts +4 -1
  225. package/lib/esm/internal/tile/IModelTileTree.d.ts.map +1 -1
  226. package/lib/esm/internal/tile/IModelTileTree.js +6 -1
  227. package/lib/esm/internal/tile/IModelTileTree.js.map +1 -1
  228. package/lib/esm/internal/tile/ImdlDecoder.d.ts +2 -0
  229. package/lib/esm/internal/tile/ImdlDecoder.d.ts.map +1 -1
  230. package/lib/esm/internal/tile/ImdlDecoder.js.map +1 -1
  231. package/lib/esm/internal/tile/ImdlGraphicsCreator.d.ts +2 -2
  232. package/lib/esm/internal/tile/ImdlGraphicsCreator.d.ts.map +1 -1
  233. package/lib/esm/internal/tile/ImdlGraphicsCreator.js +2 -1
  234. package/lib/esm/internal/tile/ImdlGraphicsCreator.js.map +1 -1
  235. package/lib/esm/{tile → internal/tile}/LayerTileTreeHandler.d.ts +3 -3
  236. package/lib/esm/internal/tile/LayerTileTreeHandler.d.ts.map +1 -0
  237. package/lib/esm/{tile → internal/tile}/LayerTileTreeHandler.js +3 -2
  238. package/lib/esm/internal/tile/LayerTileTreeHandler.js.map +1 -0
  239. package/lib/esm/{tile → internal/tile}/LayerTileTreeReferenceHandler.d.ts +7 -5
  240. package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.d.ts.map +1 -0
  241. package/lib/esm/{tile → internal/tile}/LayerTileTreeReferenceHandler.js +29 -4
  242. package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -0
  243. package/lib/esm/internal/tile/PrimaryTileTree.d.ts +9 -4
  244. package/lib/esm/internal/tile/PrimaryTileTree.d.ts.map +1 -1
  245. package/lib/esm/internal/tile/PrimaryTileTree.js +32 -10
  246. package/lib/esm/internal/tile/PrimaryTileTree.js.map +1 -1
  247. package/lib/esm/internal/tile/RealityModelTileTree.d.ts +0 -2
  248. package/lib/esm/internal/tile/RealityModelTileTree.d.ts.map +1 -1
  249. package/lib/esm/internal/tile/RealityModelTileTree.js +2 -21
  250. package/lib/esm/internal/tile/RealityModelTileTree.js.map +1 -1
  251. package/lib/esm/render/Pixel.d.ts +13 -2
  252. package/lib/esm/render/Pixel.d.ts.map +1 -1
  253. package/lib/esm/render/Pixel.js +20 -8
  254. package/lib/esm/render/Pixel.js.map +1 -1
  255. package/lib/esm/tile/ImdlReader.d.ts +3 -2
  256. package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
  257. package/lib/esm/tile/ImdlReader.js +1 -0
  258. package/lib/esm/tile/ImdlReader.js.map +1 -1
  259. package/lib/esm/tile/internal.d.ts +3 -2
  260. package/lib/esm/tile/internal.d.ts.map +1 -1
  261. package/lib/esm/tile/internal.js +3 -2
  262. package/lib/esm/tile/internal.js.map +1 -1
  263. package/lib/esm/tile/map/CesiumTerrainProvider.d.ts +1 -1
  264. package/lib/esm/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  265. package/lib/esm/tile/map/CesiumTerrainProvider.js +3 -4
  266. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  267. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  268. package/lib/esm/tile/map/MapTileTree.js +2 -4
  269. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  270. package/lib/esm/tools/AccuDrawTool.d.ts +0 -12
  271. package/lib/esm/tools/AccuDrawTool.d.ts.map +1 -1
  272. package/lib/esm/tools/AccuDrawTool.js +3 -60
  273. package/lib/esm/tools/AccuDrawTool.js.map +1 -1
  274. package/lib/esm/tools/AccuDrawViewportUI.d.ts +0 -1
  275. package/lib/esm/tools/AccuDrawViewportUI.d.ts.map +1 -1
  276. package/lib/esm/tools/AccuDrawViewportUI.js +16 -20
  277. package/lib/esm/tools/AccuDrawViewportUI.js.map +1 -1
  278. package/lib/esm/tools/ViewTool.d.ts +25 -16
  279. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  280. package/lib/esm/tools/ViewTool.js +29 -40
  281. package/lib/esm/tools/ViewTool.js.map +1 -1
  282. package/lib/public/locales/en/CoreTools.json +0 -5
  283. package/lib/public/scripts/parse-imdl-worker.js +1 -1
  284. package/lib/public/sprites/SnapPerpendicularPoint.png +0 -0
  285. package/lib/public/sprites/SnapTangentPoint.png +0 -0
  286. package/lib/workers/webpack/parse-imdl-worker.js +1 -1
  287. package/package.json +16 -16
  288. package/lib/cjs/tile/LayerTileTreeHandler.d.ts.map +0 -1
  289. package/lib/cjs/tile/LayerTileTreeHandler.js.map +0 -1
  290. package/lib/cjs/tile/LayerTileTreeReferenceHandler.d.ts.map +0 -1
  291. package/lib/cjs/tile/LayerTileTreeReferenceHandler.js.map +0 -1
  292. package/lib/esm/tile/LayerTileTreeHandler.d.ts.map +0 -1
  293. package/lib/esm/tile/LayerTileTreeHandler.js.map +0 -1
  294. package/lib/esm/tile/LayerTileTreeReferenceHandler.d.ts.map +0 -1
  295. package/lib/esm/tile/LayerTileTreeReferenceHandler.js.map +0 -1
@@ -351,7 +351,15 @@ export class ViewManip extends ViewTool {
351
351
  this._depthPreview = { testPoint: ev.rawPoint, pickRadius: pickRadiusPixels, plane: result.plane, source: result.source, isDefaultDepth: !isValidDepth, sourceId: result.sourceId };
352
352
  return (isValidDepth || isPreview ? result.plane.getOriginRef() : undefined);
353
353
  }
354
+ /** In addition to the onReinitialize calls after a tool installs or restarts, it is also
355
+ * called from the mouseover event to cancel a drag operation if the up event occurred outside the view.
356
+ * When operating in one shot mode and also requiring dragging, the tool should exit and not restart in ths situation.
357
+ * A tool must opt in to allowing [[ViewTool.exitTool]] to be called from [[ViewManip.onReinitialize]] by
358
+ * overriding this method to return true.
359
+ */
360
+ get isExitAllowedOnReinitialize() { return false; }
354
361
  async onReinitialize() {
362
+ const shouldExit = (this.oneShot && this.isDraggingRequired && this.isDragging && 0 !== this.nPts);
355
363
  if (undefined !== this.viewport) {
356
364
  this.viewport.synchWithView(); // make sure we store any changes in view undo buffer.
357
365
  this.viewHandles.setFocus(-1);
@@ -361,6 +369,9 @@ export class ViewManip extends ViewTool {
361
369
  this.inDynamicUpdate = false;
362
370
  this._startPose = undefined;
363
371
  this.viewHandles.onReinitialize();
372
+ if (shouldExit && this.isExitAllowedOnReinitialize)
373
+ return this.exitTool();
374
+ this.provideInitialToolAssistance();
364
375
  }
365
376
  async onDataButtonDown(ev) {
366
377
  // Tool was started in "drag required" mode, don't advance tool state and wait to see if we get the start drag event.
@@ -498,7 +509,6 @@ export class ViewManip extends ViewTool {
498
509
  await super.onPostInstall();
499
510
  await this.onReinitialize(); // Call onReinitialize now that tool is installed.
500
511
  }
501
- /** @beta */
502
512
  provideToolAssistance(mainInstrKey, additionalInstr) {
503
513
  const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate(mainInstrKey));
504
514
  const mouseInstructions = [];
@@ -523,6 +533,8 @@ export class ViewManip extends ViewTool {
523
533
  const instructions = ToolAssistance.createInstructions(mainInstruction, sections);
524
534
  IModelApp.notifications.setToolAssistance(instructions);
525
535
  }
536
+ /** Called from [[ViewManip.onReinitialize]] to allow tools to establish the tool assistance for the first point. */
537
+ provideInitialToolAssistance() { }
526
538
  async onCleanup() {
527
539
  let restorePrevious = false;
528
540
  if (this.inDynamicUpdate) {
@@ -2463,10 +2475,8 @@ export class PanViewTool extends ViewManip {
2463
2475
  constructor(vp, oneShot = false, isDraggingRequired = false) {
2464
2476
  super(vp, ViewHandleType.Pan, oneShot, isDraggingRequired);
2465
2477
  }
2466
- async onReinitialize() {
2467
- await super.onReinitialize();
2468
- this.provideToolAssistance("Pan.Prompts.FirstPoint");
2469
- }
2478
+ get isExitAllowedOnReinitialize() { return true; }
2479
+ provideInitialToolAssistance() { this.provideToolAssistance("Pan.Prompts.FirstPoint"); }
2470
2480
  }
2471
2481
  /** A tool that performs a Rotate view operation
2472
2482
  * @public
@@ -2477,10 +2487,8 @@ export class RotateViewTool extends ViewManip {
2477
2487
  constructor(vp, oneShot = false, isDraggingRequired = false) {
2478
2488
  super(vp, ViewHandleType.Rotate | ViewHandleType.Pan | ViewHandleType.TargetCenter, oneShot, isDraggingRequired);
2479
2489
  }
2480
- async onReinitialize() {
2481
- await super.onReinitialize();
2482
- this.provideToolAssistance("Rotate.Prompts.FirstPoint");
2483
- }
2490
+ get isExitAllowedOnReinitialize() { return true; }
2491
+ provideInitialToolAssistance() { this.provideToolAssistance("Rotate.Prompts.FirstPoint"); }
2484
2492
  }
2485
2493
  /** A tool that performs the look operation
2486
2494
  * @public
@@ -2491,10 +2499,8 @@ export class LookViewTool extends ViewManip {
2491
2499
  constructor(vp, oneShot = false, isDraggingRequired = false) {
2492
2500
  super(vp, ViewHandleType.Look | ViewHandleType.Pan, oneShot, isDraggingRequired);
2493
2501
  }
2494
- async onReinitialize() {
2495
- await super.onReinitialize();
2496
- this.provideToolAssistance("Look.Prompts.FirstPoint");
2497
- }
2502
+ get isExitAllowedOnReinitialize() { return true; }
2503
+ provideInitialToolAssistance() { this.provideToolAssistance("Look.Prompts.FirstPoint"); }
2498
2504
  }
2499
2505
  /** A tool that performs the scroll operation
2500
2506
  * @public
@@ -2505,10 +2511,8 @@ export class ScrollViewTool extends ViewManip {
2505
2511
  constructor(vp, oneShot = false, isDraggingRequired = false) {
2506
2512
  super(vp, ViewHandleType.Scroll, oneShot, isDraggingRequired);
2507
2513
  }
2508
- async onReinitialize() {
2509
- await super.onReinitialize();
2510
- this.provideToolAssistance("Scroll.Prompts.FirstPoint");
2511
- }
2514
+ get isExitAllowedOnReinitialize() { return true; }
2515
+ provideInitialToolAssistance() { this.provideToolAssistance("Scroll.Prompts.FirstPoint"); }
2512
2516
  }
2513
2517
  /** A tool that performs the zoom operation
2514
2518
  * @public
@@ -2519,10 +2523,8 @@ export class ZoomViewTool extends ViewManip {
2519
2523
  constructor(vp, oneShot = false, isDraggingRequired = false) {
2520
2524
  super(vp, ViewHandleType.Zoom | ViewHandleType.Pan, oneShot, isDraggingRequired);
2521
2525
  }
2522
- async onReinitialize() {
2523
- await super.onReinitialize();
2524
- this.provideToolAssistance("Zoom.Prompts.FirstPoint");
2525
- }
2526
+ get isExitAllowedOnReinitialize() { return true; }
2527
+ provideInitialToolAssistance() { this.provideToolAssistance("Zoom.Prompts.FirstPoint"); }
2526
2528
  }
2527
2529
  /** A tool that performs the walk operation using mouse+keyboard or touch controls.
2528
2530
  * Keyboard and mouse controls are similar to those used by many video games:
@@ -2539,11 +2541,8 @@ export class LookAndMoveTool extends ViewManip {
2539
2541
  const viewport = (undefined === vp ? IModelApp.viewManager.selectedView : vp); // Need vp to enable camera/check lens in onReinitialize...
2540
2542
  super(viewport, ViewHandleType.LookAndMove | ViewHandleType.Pan, oneShot, isDraggingRequired);
2541
2543
  }
2542
- async onReinitialize() {
2543
- await super.onReinitialize();
2544
- this.provideToolAssistance("LookAndMove.Prompts.FirstPoint");
2545
- }
2546
- /** @beta */
2544
+ get isExitAllowedOnReinitialize() { return true; }
2545
+ provideInitialToolAssistance() { this.provideToolAssistance("LookAndMove.Prompts.FirstPoint"); }
2547
2546
  provideToolAssistance(mainInstrKey) {
2548
2547
  const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate(mainInstrKey));
2549
2548
  const mouseInstructions = [];
@@ -2582,11 +2581,8 @@ export class WalkViewTool extends ViewManip {
2582
2581
  const viewport = (undefined === vp ? IModelApp.viewManager.selectedView : vp); // Need vp to enable camera/check lens in onReinitialize...
2583
2582
  super(viewport, ViewHandleType.Walk | ViewHandleType.Pan, oneShot, isDraggingRequired);
2584
2583
  }
2585
- async onReinitialize() {
2586
- await super.onReinitialize();
2587
- this.provideToolAssistance("Walk.Prompts.FirstPoint");
2588
- }
2589
- /** @beta */
2584
+ get isExitAllowedOnReinitialize() { return true; }
2585
+ provideInitialToolAssistance() { this.provideToolAssistance("Walk.Prompts.FirstPoint"); }
2590
2586
  provideToolAssistance(mainInstrKey) {
2591
2587
  const walkInstructions = [];
2592
2588
  walkInstructions.push(ToolAssistance.createModifierKeyInstruction(ToolAssistance.shiftKey, ToolAssistanceImage.LeftClickDrag, ViewTool.translate("Pan.flyover"), false, ToolAssistanceInputMethod.Mouse));
@@ -2603,11 +2599,8 @@ export class FlyViewTool extends ViewManip {
2603
2599
  constructor(vp, oneShot = false, isDraggingRequired = false) {
2604
2600
  super(vp, ViewHandleType.Fly | ViewHandleType.Pan, oneShot, isDraggingRequired);
2605
2601
  }
2606
- async onReinitialize() {
2607
- await super.onReinitialize();
2608
- this.provideToolAssistance("Fly.Prompts.FirstPoint");
2609
- }
2610
- /** @beta */
2602
+ get isExitAllowedOnReinitialize() { return true; }
2603
+ provideInitialToolAssistance() { this.provideToolAssistance("Fly.Prompts.FirstPoint"); }
2611
2604
  provideToolAssistance(mainInstrKey) {
2612
2605
  const flyInstructions = [];
2613
2606
  flyInstructions.push(ToolAssistance.createModifierKeyInstruction(ToolAssistance.shiftKey, ToolAssistanceImage.LeftClickDrag, ViewTool.translate("Pan.flyover"), false, ToolAssistanceInputMethod.Mouse));
@@ -2631,7 +2624,6 @@ export class FitViewTool extends ViewTool {
2631
2624
  this.doAnimate = doAnimate;
2632
2625
  this.isolatedOnly = isolatedOnly;
2633
2626
  }
2634
- /** @beta */
2635
2627
  provideToolAssistance() {
2636
2628
  const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate("Fit.Prompts.FirstPoint"));
2637
2629
  const mouseInstructions = [];
@@ -2943,7 +2935,6 @@ export class WindowAreaTool extends ViewTool {
2943
2935
  }
2944
2936
  return super.onResetButtonUp(ev);
2945
2937
  }
2946
- /** @beta */
2947
2938
  provideToolAssistance() {
2948
2939
  const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate(this._haveFirstPoint ? "WindowArea.Prompts.NextPoint" : "WindowArea.Prompts.FirstPoint"));
2949
2940
  const mouseInstructions = [];
@@ -3446,7 +3437,6 @@ export class SetupCameraTool extends PrimitiveTool {
3446
3437
  await this.exitTool();
3447
3438
  return EventHandled.Yes;
3448
3439
  }
3449
- /** @beta */
3450
3440
  provideToolAssistance() {
3451
3441
  const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate(this._haveEyePt ? "SetupCamera.Prompts.NextPoint" : "SetupCamera.Prompts.FirstPoint"));
3452
3442
  const mouseInstructions = [];
@@ -3706,7 +3696,6 @@ export class SetupWalkCameraTool extends PrimitiveTool {
3706
3696
  await this.exitTool();
3707
3697
  return EventHandled.Yes;
3708
3698
  }
3709
- /** @beta */
3710
3699
  provideToolAssistance() {
3711
3700
  const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate(this._haveEyePt ? "SetupWalkCamera.Prompts.NextPoint" : "SetupWalkCamera.Prompts.FirstPoint"));
3712
3701
  const mouseInstructions = [];