@itwin/core-frontend 3.3.0-dev.4 → 3.3.0-dev.40

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 (218) hide show
  1. package/CHANGELOG.md +49 -1
  2. package/lib/cjs/AccuSnap.d.ts.map +1 -1
  3. package/lib/cjs/AccuSnap.js +56 -49
  4. package/lib/cjs/AccuSnap.js.map +1 -1
  5. package/lib/cjs/DisplayStyleState.d.ts +68 -17
  6. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  7. package/lib/cjs/DisplayStyleState.js +66 -20
  8. package/lib/cjs/DisplayStyleState.js.map +1 -1
  9. package/lib/cjs/IModelApp.d.ts.map +1 -1
  10. package/lib/cjs/IModelApp.js +1 -1
  11. package/lib/cjs/IModelApp.js.map +1 -1
  12. package/lib/cjs/TentativePoint.js +1 -1
  13. package/lib/cjs/TentativePoint.js.map +1 -1
  14. package/lib/cjs/ViewRect.d.ts +5 -3
  15. package/lib/cjs/ViewRect.d.ts.map +1 -1
  16. package/lib/cjs/ViewRect.js +11 -7
  17. package/lib/cjs/ViewRect.js.map +1 -1
  18. package/lib/cjs/Viewport.d.ts +1 -1
  19. package/lib/cjs/Viewport.d.ts.map +1 -1
  20. package/lib/cjs/Viewport.js +2 -2
  21. package/lib/cjs/Viewport.js.map +1 -1
  22. package/lib/cjs/extension/ExtensionAdmin.d.ts +5 -2
  23. package/lib/cjs/extension/ExtensionAdmin.d.ts.map +1 -1
  24. package/lib/cjs/extension/ExtensionAdmin.js +24 -6
  25. package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
  26. package/lib/cjs/extension/ExtensionRuntime.js +165 -158
  27. package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
  28. package/lib/cjs/extension/providers/ExtensionServiceClient.d.ts +8 -6
  29. package/lib/cjs/extension/providers/ExtensionServiceClient.d.ts.map +1 -1
  30. package/lib/cjs/extension/providers/ExtensionServiceClient.js +13 -6
  31. package/lib/cjs/extension/providers/ExtensionServiceClient.js.map +1 -1
  32. package/lib/cjs/extension/providers/RemoteExtensionProvider.d.ts +0 -2
  33. package/lib/cjs/extension/providers/RemoteExtensionProvider.d.ts.map +1 -1
  34. package/lib/cjs/extension/providers/RemoteExtensionProvider.js +9 -22
  35. package/lib/cjs/extension/providers/RemoteExtensionProvider.js.map +1 -1
  36. package/lib/cjs/extension/providers/ServiceExtensionProvider.d.ts +7 -6
  37. package/lib/cjs/extension/providers/ServiceExtensionProvider.d.ts.map +1 -1
  38. package/lib/cjs/extension/providers/ServiceExtensionProvider.js +13 -24
  39. package/lib/cjs/extension/providers/ServiceExtensionProvider.js.map +1 -1
  40. package/lib/cjs/render/RenderSystem.d.ts +5 -0
  41. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  42. package/lib/cjs/render/RenderSystem.js.map +1 -1
  43. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  44. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +3 -1
  45. package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  46. package/lib/cjs/render/webgl/ShaderProgram.js +1 -1
  47. package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
  48. package/lib/cjs/render/webgl/Target.d.ts +1 -1
  49. package/lib/cjs/render/webgl/Target.js +2 -2
  50. package/lib/cjs/render/webgl/Target.js.map +1 -1
  51. package/lib/cjs/render/webgl/UniformHandle.d.ts +2 -1
  52. package/lib/cjs/render/webgl/UniformHandle.d.ts.map +1 -1
  53. package/lib/cjs/render/webgl/UniformHandle.js +15 -3
  54. package/lib/cjs/render/webgl/UniformHandle.js.map +1 -1
  55. package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  56. package/lib/cjs/render/webgl/glsl/RealityMesh.js +5 -2
  57. package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
  58. package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
  59. package/lib/cjs/tile/RealityModelTileTree.js +2 -1
  60. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  61. package/lib/cjs/tile/map/CesiumTerrainProvider.js +6 -2
  62. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  63. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +1 -1
  64. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  65. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +51 -4
  66. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  67. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -1
  68. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  69. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +5 -2
  70. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  71. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.d.ts +1 -1
  72. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  73. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +2 -2
  74. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  75. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -1
  76. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  77. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +5 -2
  78. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  79. package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -2
  80. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  81. package/lib/cjs/tile/map/ImageryTileTree.js +6 -2
  82. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  83. package/lib/cjs/tile/map/MapCartoRectangle.d.ts +1 -0
  84. package/lib/cjs/tile/map/MapCartoRectangle.d.ts.map +1 -1
  85. package/lib/cjs/tile/map/MapCartoRectangle.js +1 -0
  86. package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
  87. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +2 -1
  88. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  89. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  90. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +3 -1
  91. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  92. package/lib/cjs/tile/map/MapLayerImageryProvider.js +24 -10
  93. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  94. package/lib/cjs/tile/map/MapLayerSources.d.ts +14 -9
  95. package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
  96. package/lib/cjs/tile/map/MapLayerSources.js +14 -6
  97. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  98. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  99. package/lib/cjs/tile/map/MapTileTree.js +3 -5
  100. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  101. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts +2 -1
  102. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts.map +1 -1
  103. package/lib/cjs/tile/map/TerrainMeshProvider.js +1 -1
  104. package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
  105. package/lib/cjs/tools/PrimitiveTool.js +4 -4
  106. package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
  107. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  108. package/lib/cjs/tools/ToolAdmin.js +25 -10
  109. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  110. package/lib/esm/AccuSnap.d.ts.map +1 -1
  111. package/lib/esm/AccuSnap.js +56 -49
  112. package/lib/esm/AccuSnap.js.map +1 -1
  113. package/lib/esm/DisplayStyleState.d.ts +68 -17
  114. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  115. package/lib/esm/DisplayStyleState.js +66 -20
  116. package/lib/esm/DisplayStyleState.js.map +1 -1
  117. package/lib/esm/IModelApp.d.ts.map +1 -1
  118. package/lib/esm/IModelApp.js +2 -2
  119. package/lib/esm/IModelApp.js.map +1 -1
  120. package/lib/esm/TentativePoint.js +1 -1
  121. package/lib/esm/TentativePoint.js.map +1 -1
  122. package/lib/esm/ViewRect.d.ts +5 -3
  123. package/lib/esm/ViewRect.d.ts.map +1 -1
  124. package/lib/esm/ViewRect.js +11 -7
  125. package/lib/esm/ViewRect.js.map +1 -1
  126. package/lib/esm/Viewport.d.ts +1 -1
  127. package/lib/esm/Viewport.d.ts.map +1 -1
  128. package/lib/esm/Viewport.js +2 -2
  129. package/lib/esm/Viewport.js.map +1 -1
  130. package/lib/esm/extension/ExtensionAdmin.d.ts +5 -2
  131. package/lib/esm/extension/ExtensionAdmin.d.ts.map +1 -1
  132. package/lib/esm/extension/ExtensionAdmin.js +24 -6
  133. package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
  134. package/lib/esm/extension/ExtensionRuntime.js +168 -161
  135. package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
  136. package/lib/esm/extension/providers/ExtensionServiceClient.d.ts +8 -6
  137. package/lib/esm/extension/providers/ExtensionServiceClient.d.ts.map +1 -1
  138. package/lib/esm/extension/providers/ExtensionServiceClient.js +13 -6
  139. package/lib/esm/extension/providers/ExtensionServiceClient.js.map +1 -1
  140. package/lib/esm/extension/providers/RemoteExtensionProvider.d.ts +0 -2
  141. package/lib/esm/extension/providers/RemoteExtensionProvider.d.ts.map +1 -1
  142. package/lib/esm/extension/providers/RemoteExtensionProvider.js +9 -22
  143. package/lib/esm/extension/providers/RemoteExtensionProvider.js.map +1 -1
  144. package/lib/esm/extension/providers/ServiceExtensionProvider.d.ts +7 -6
  145. package/lib/esm/extension/providers/ServiceExtensionProvider.d.ts.map +1 -1
  146. package/lib/esm/extension/providers/ServiceExtensionProvider.js +13 -24
  147. package/lib/esm/extension/providers/ServiceExtensionProvider.js.map +1 -1
  148. package/lib/esm/render/RenderSystem.d.ts +5 -0
  149. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  150. package/lib/esm/render/RenderSystem.js.map +1 -1
  151. package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
  152. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +3 -1
  153. package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
  154. package/lib/esm/render/webgl/ShaderProgram.js +1 -1
  155. package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
  156. package/lib/esm/render/webgl/Target.d.ts +1 -1
  157. package/lib/esm/render/webgl/Target.js +2 -2
  158. package/lib/esm/render/webgl/Target.js.map +1 -1
  159. package/lib/esm/render/webgl/UniformHandle.d.ts +2 -1
  160. package/lib/esm/render/webgl/UniformHandle.d.ts.map +1 -1
  161. package/lib/esm/render/webgl/UniformHandle.js +15 -3
  162. package/lib/esm/render/webgl/UniformHandle.js.map +1 -1
  163. package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  164. package/lib/esm/render/webgl/glsl/RealityMesh.js +5 -2
  165. package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
  166. package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
  167. package/lib/esm/tile/RealityModelTileTree.js +2 -1
  168. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  169. package/lib/esm/tile/map/CesiumTerrainProvider.js +6 -2
  170. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  171. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +1 -1
  172. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  173. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +51 -4
  174. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  175. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -1
  176. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  177. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +5 -2
  178. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  179. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.d.ts +1 -1
  180. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  181. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +2 -2
  182. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  183. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -1
  184. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  185. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +5 -2
  186. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  187. package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -2
  188. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  189. package/lib/esm/tile/map/ImageryTileTree.js +6 -2
  190. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  191. package/lib/esm/tile/map/MapCartoRectangle.d.ts +1 -0
  192. package/lib/esm/tile/map/MapCartoRectangle.d.ts.map +1 -1
  193. package/lib/esm/tile/map/MapCartoRectangle.js +1 -0
  194. package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
  195. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +2 -1
  196. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  197. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  198. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +3 -1
  199. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  200. package/lib/esm/tile/map/MapLayerImageryProvider.js +25 -11
  201. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  202. package/lib/esm/tile/map/MapLayerSources.d.ts +14 -9
  203. package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
  204. package/lib/esm/tile/map/MapLayerSources.js +14 -6
  205. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  206. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  207. package/lib/esm/tile/map/MapTileTree.js +3 -5
  208. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  209. package/lib/esm/tile/map/TerrainMeshProvider.d.ts +2 -1
  210. package/lib/esm/tile/map/TerrainMeshProvider.d.ts.map +1 -1
  211. package/lib/esm/tile/map/TerrainMeshProvider.js +1 -1
  212. package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
  213. package/lib/esm/tools/PrimitiveTool.js +4 -4
  214. package/lib/esm/tools/PrimitiveTool.js.map +1 -1
  215. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  216. package/lib/esm/tools/ToolAdmin.js +25 -10
  217. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  218. package/package.json +21 -21
@@ -686,7 +686,13 @@ class ToolAdmin {
686
686
  if (undefined === tool)
687
687
  return;
688
688
  const buttonMask = event.ev.buttons;
689
- const cancelDrag = (current.isDragging(Tool_1.BeButton.Data) && !(buttonMask & 1)) || (current.isDragging(Tool_1.BeButton.Reset) && !(buttonMask & 2)) || (current.isDragging(Tool_1.BeButton.Middle) && !(buttonMask & 4));
689
+ let cancelDrag = false;
690
+ current.button.forEach((button, buttonNum) => {
691
+ if (button.isDragging && !(buttonMask & (1 << buttonNum))) {
692
+ button.isDragging = button.isDown = false;
693
+ cancelDrag = true;
694
+ }
695
+ });
690
696
  if (cancelDrag)
691
697
  await tool.onReinitialize();
692
698
  }
@@ -709,7 +715,8 @@ class ToolAdmin {
709
715
  this.fillEventFromLastDataButton(ev);
710
716
  else
711
717
  this.fillEventFromCursorLocation(ev);
712
- if (adjustPoint && undefined !== ev.viewport)
718
+ // NOTE: Do not call adjustPoint when snapped, refer to CurrentInputState.fromButton
719
+ if (adjustPoint && undefined !== ev.viewport && undefined === AccuSnap_1.TentativeOrAccuSnap.getCurrentSnap(false))
713
720
  this.adjustPoint(ev.point, ev.viewport);
714
721
  }
715
722
  if (undefined === ev.viewport)
@@ -833,16 +840,22 @@ class ToolAdmin {
833
840
  current.toEvent(ev, true);
834
841
  ev.movement = movement;
835
842
  IModelApp_1.IModelApp.accuDraw.onMotion(ev);
836
- const tool = this.activeTool;
843
+ let tool = this.activeTool;
837
844
  const isValidLocation = (undefined !== tool ? tool.isValidLocation(ev, false) : true);
838
845
  this.setIncompatibleViewportCursor(isValidLocation);
839
846
  if (forceStartDrag || current.isStartDrag(ev.button)) {
840
847
  current.onStartDrag(ev.button);
841
848
  current.changeButtonToDownPoint(ev);
842
849
  ev.isDragging = true;
843
- if (undefined !== tool && isValidLocation)
844
- tool.receivedDownEvent = true;
845
- await this.onStartDrag(ev, isValidLocation ? tool : undefined);
850
+ if (undefined !== tool) {
851
+ if (!isValidLocation)
852
+ tool = undefined;
853
+ else if (forceStartDrag)
854
+ tool.receivedDownEvent = true;
855
+ else if (!tool.receivedDownEvent)
856
+ tool = undefined;
857
+ }
858
+ await this.onStartDrag(ev, tool);
846
859
  return;
847
860
  }
848
861
  this.updateDynamics(ev);
@@ -987,8 +1000,10 @@ class ToolAdmin {
987
1000
  // Lock tool to target model of this view on first data button
988
1001
  if (tool instanceof PrimitiveTool_1.PrimitiveTool)
989
1002
  tool.autoLockTarget();
1003
+ // Process the active tool's pending hints from onDataButtonDown before calling updateDynamics...
1004
+ IModelApp_1.IModelApp.accuDraw.processHints();
990
1005
  // Update tool dynamics. Use last data button location which was potentially adjusted by onDataButtonDown and not current event
991
- this.updateDynamics(undefined, true);
1006
+ this.updateDynamics(undefined, true, true);
992
1007
  break;
993
1008
  }
994
1009
  case Tool_1.BeButton.Reset: {
@@ -1054,7 +1069,7 @@ class ToolAdmin {
1054
1069
  const changed = activeTool ? await activeTool.onModifierKeyTransition(wentDown, modifier, event) : Tool_1.EventHandled.No;
1055
1070
  if (changed === Tool_1.EventHandled.Yes) {
1056
1071
  IModelApp_1.IModelApp.viewManager.invalidateDecorationsAllViews();
1057
- this.updateDynamics();
1072
+ this.updateDynamics(undefined, undefined, true); // Don't wait for motion to update dynamics...
1058
1073
  }
1059
1074
  }
1060
1075
  static getModifierKey(event) {
@@ -1184,7 +1199,7 @@ class ToolAdmin {
1184
1199
  if (unsuspend)
1185
1200
  await this.onUnsuspendTool();
1186
1201
  IModelApp_1.IModelApp.accuDraw.onInputCollectorExit();
1187
- this.updateDynamics();
1202
+ this.updateDynamics(undefined, undefined, true);
1188
1203
  }
1189
1204
  /** @internal */
1190
1205
  async startInputCollector(newTool) {
@@ -1228,7 +1243,7 @@ class ToolAdmin {
1228
1243
  if (unsuspend)
1229
1244
  await this.onUnsuspendTool();
1230
1245
  IModelApp_1.IModelApp.accuDraw.onViewToolExit();
1231
- this.updateDynamics();
1246
+ this.updateDynamics(undefined, undefined, true);
1232
1247
  }
1233
1248
  /** @internal */
1234
1249
  async startViewTool(newTool) {