@itwin/frontend-devtools 4.0.0-dev.10 → 4.0.0-dev.101

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 (398) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/README.md +1 -1
  3. package/lib/cjs/ClipboardUtilities.d.ts +8 -8
  4. package/lib/cjs/ClipboardUtilities.js +26 -26
  5. package/lib/cjs/ClipboardUtilities.js.map +1 -1
  6. package/lib/cjs/FrontEndDevTools.d.ts +19 -19
  7. package/lib/cjs/FrontEndDevTools.js +221 -221
  8. package/lib/cjs/FrontEndDevTools.js.map +1 -1
  9. package/lib/cjs/effects/Convolution.d.ts +68 -68
  10. package/lib/cjs/effects/Convolution.js +165 -165
  11. package/lib/cjs/effects/Convolution.js.map +1 -1
  12. package/lib/cjs/effects/EffectTools.d.ts +33 -33
  13. package/lib/cjs/effects/EffectTools.js +67 -68
  14. package/lib/cjs/effects/EffectTools.js.map +1 -1
  15. package/lib/cjs/effects/Explosion.d.ts +12 -12
  16. package/lib/cjs/effects/Explosion.js +168 -168
  17. package/lib/cjs/effects/Explosion.js.map +1 -1
  18. package/lib/cjs/effects/FlipImage.d.ts +30 -30
  19. package/lib/cjs/effects/FlipImage.js +99 -99
  20. package/lib/cjs/effects/FlipImage.js.map +1 -1
  21. package/lib/cjs/effects/LensDistortion.d.ts +34 -34
  22. package/lib/cjs/effects/LensDistortion.js +109 -109
  23. package/lib/cjs/effects/LensDistortion.js.map +1 -1
  24. package/lib/cjs/effects/Random.d.ts +24 -24
  25. package/lib/cjs/effects/Random.js +49 -49
  26. package/lib/cjs/effects/Random.js.map +1 -1
  27. package/lib/cjs/effects/Saturation.d.ts +30 -30
  28. package/lib/cjs/effects/Saturation.js +85 -85
  29. package/lib/cjs/effects/Saturation.js.map +1 -1
  30. package/lib/cjs/effects/Snow.d.ts +76 -76
  31. package/lib/cjs/effects/Snow.js +187 -187
  32. package/lib/cjs/effects/Snow.js.map +1 -1
  33. package/lib/cjs/effects/Vignette.d.ts +39 -39
  34. package/lib/cjs/effects/Vignette.js +108 -108
  35. package/lib/cjs/effects/Vignette.js.map +1 -1
  36. package/lib/cjs/frontend-devtools.d.ts +82 -82
  37. package/lib/cjs/frontend-devtools.js +102 -98
  38. package/lib/cjs/frontend-devtools.js.map +1 -1
  39. package/lib/cjs/tools/AnimationIntervalTool.d.ts +15 -15
  40. package/lib/cjs/tools/AnimationIntervalTool.js +30 -30
  41. package/lib/cjs/tools/AnimationIntervalTool.js.map +1 -1
  42. package/lib/cjs/tools/ChangeUnitsTool.d.ts +15 -15
  43. package/lib/cjs/tools/ChangeUnitsTool.js +41 -41
  44. package/lib/cjs/tools/ChangeUnitsTool.js.map +1 -1
  45. package/lib/cjs/tools/ClipTools.d.ts +67 -67
  46. package/lib/cjs/tools/ClipTools.js +161 -164
  47. package/lib/cjs/tools/ClipTools.js.map +1 -1
  48. package/lib/cjs/tools/DisplayStyleTools.d.ts +145 -145
  49. package/lib/cjs/tools/DisplayStyleTools.js +368 -370
  50. package/lib/cjs/tools/DisplayStyleTools.js.map +1 -1
  51. package/lib/cjs/tools/EmphasizeElementsTool.d.ts +60 -60
  52. package/lib/cjs/tools/EmphasizeElementsTool.js +154 -154
  53. package/lib/cjs/tools/EmphasizeElementsTool.js.map +1 -1
  54. package/lib/cjs/tools/FrustumDecoration.d.ts +57 -57
  55. package/lib/cjs/tools/FrustumDecoration.js +374 -374
  56. package/lib/cjs/tools/FrustumDecoration.js.map +1 -1
  57. package/lib/cjs/tools/InspectElementTool.d.ts +42 -42
  58. package/lib/cjs/tools/InspectElementTool.js +198 -198
  59. package/lib/cjs/tools/InspectElementTool.js.map +1 -1
  60. package/lib/cjs/tools/MapLayerTool.d.ts +264 -264
  61. package/lib/cjs/tools/MapLayerTool.d.ts.map +1 -1
  62. package/lib/cjs/tools/MapLayerTool.js +509 -507
  63. package/lib/cjs/tools/MapLayerTool.js.map +1 -1
  64. package/lib/cjs/tools/MeasureTileLoadTime.d.ts +12 -12
  65. package/lib/cjs/tools/MeasureTileLoadTime.js +63 -63
  66. package/lib/cjs/tools/MeasureTileLoadTime.js.map +1 -1
  67. package/lib/cjs/tools/ModelAppearanceTools.d.ts +86 -86
  68. package/lib/cjs/tools/ModelAppearanceTools.js +183 -183
  69. package/lib/cjs/tools/ModelAppearanceTools.js.map +1 -1
  70. package/lib/cjs/tools/PlanProjectionTools.d.ts +40 -40
  71. package/lib/cjs/tools/PlanProjectionTools.js +149 -149
  72. package/lib/cjs/tools/PlanProjectionTools.js.map +1 -1
  73. package/lib/cjs/tools/PlanarMaskTools.d.ts +182 -182
  74. package/lib/cjs/tools/PlanarMaskTools.js +391 -393
  75. package/lib/cjs/tools/PlanarMaskTools.js.map +1 -1
  76. package/lib/cjs/tools/ProjectExtents.d.ts +41 -41
  77. package/lib/cjs/tools/ProjectExtents.js +110 -110
  78. package/lib/cjs/tools/ProjectExtents.js.map +1 -1
  79. package/lib/cjs/tools/RealityModelTools.d.ts +116 -116
  80. package/lib/cjs/tools/RealityModelTools.js +281 -281
  81. package/lib/cjs/tools/RealityModelTools.js.map +1 -1
  82. package/lib/cjs/tools/RealityTransitionTool.d.ts +25 -25
  83. package/lib/cjs/tools/RealityTransitionTool.js +115 -116
  84. package/lib/cjs/tools/RealityTransitionTool.js.map +1 -1
  85. package/lib/cjs/tools/RenderSystemTools.d.ts +38 -38
  86. package/lib/cjs/tools/RenderSystemTools.js +69 -70
  87. package/lib/cjs/tools/RenderSystemTools.js.map +1 -1
  88. package/lib/cjs/tools/RenderTargetTools.d.ts +107 -107
  89. package/lib/cjs/tools/RenderTargetTools.d.ts.map +1 -1
  90. package/lib/cjs/tools/RenderTargetTools.js +174 -174
  91. package/lib/cjs/tools/RenderTargetTools.js.map +1 -1
  92. package/lib/cjs/tools/ReportWebGLCompatibilityTool.d.ts +11 -11
  93. package/lib/cjs/tools/ReportWebGLCompatibilityTool.js +30 -30
  94. package/lib/cjs/tools/ReportWebGLCompatibilityTool.js.map +1 -1
  95. package/lib/cjs/tools/SavedViews.d.ts +46 -46
  96. package/lib/cjs/tools/SavedViews.js +136 -136
  97. package/lib/cjs/tools/SavedViews.js.map +1 -1
  98. package/lib/cjs/tools/ScheduleScriptTools.d.ts +37 -37
  99. package/lib/cjs/tools/ScheduleScriptTools.js +157 -159
  100. package/lib/cjs/tools/ScheduleScriptTools.js.map +1 -1
  101. package/lib/cjs/tools/SelectionTools.d.ts +28 -28
  102. package/lib/cjs/tools/SelectionTools.js +87 -87
  103. package/lib/cjs/tools/SelectionTools.js.map +1 -1
  104. package/lib/cjs/tools/SetGpuMemoryLimitTool.d.ts +15 -15
  105. package/lib/cjs/tools/SetGpuMemoryLimitTool.js +33 -33
  106. package/lib/cjs/tools/SetGpuMemoryLimitTool.js.map +1 -1
  107. package/lib/cjs/tools/SourceAspectIdTools.d.ts +40 -40
  108. package/lib/cjs/tools/SourceAspectIdTools.js +85 -86
  109. package/lib/cjs/tools/SourceAspectIdTools.js.map +1 -1
  110. package/lib/cjs/tools/TileRequestDecoration.d.ts +12 -12
  111. package/lib/cjs/tools/TileRequestDecoration.js +83 -83
  112. package/lib/cjs/tools/TileRequestDecoration.js.map +1 -1
  113. package/lib/cjs/tools/TileTreeBoundsDecoration.d.ts +11 -11
  114. package/lib/cjs/tools/TileTreeBoundsDecoration.js +74 -74
  115. package/lib/cjs/tools/TileTreeBoundsDecoration.js.map +1 -1
  116. package/lib/cjs/tools/ToolTipProvider.d.ts +15 -15
  117. package/lib/cjs/tools/ToolTipProvider.js +66 -66
  118. package/lib/cjs/tools/ToolTipProvider.js.map +1 -1
  119. package/lib/cjs/tools/ViewportTools.d.ts +218 -218
  120. package/lib/cjs/tools/ViewportTools.d.ts.map +1 -1
  121. package/lib/cjs/tools/ViewportTools.js +516 -516
  122. package/lib/cjs/tools/ViewportTools.js.map +1 -1
  123. package/lib/cjs/tools/parseArgs.d.ts +23 -23
  124. package/lib/cjs/tools/parseArgs.js +51 -51
  125. package/lib/cjs/tools/parseArgs.js.map +1 -1
  126. package/lib/cjs/tools/parseBoolean.d.ts +8 -8
  127. package/lib/cjs/tools/parseBoolean.js +26 -26
  128. package/lib/cjs/tools/parseBoolean.js.map +1 -1
  129. package/lib/cjs/tools/parseToggle.d.ts +8 -8
  130. package/lib/cjs/tools/parseToggle.js +25 -25
  131. package/lib/cjs/tools/parseToggle.js.map +1 -1
  132. package/lib/cjs/ui/Button.d.ts +29 -29
  133. package/lib/cjs/ui/Button.d.ts.map +1 -1
  134. package/lib/cjs/ui/Button.js +26 -26
  135. package/lib/cjs/ui/Button.js.map +1 -1
  136. package/lib/cjs/ui/CheckBox.d.ts +23 -23
  137. package/lib/cjs/ui/CheckBox.d.ts.map +1 -1
  138. package/lib/cjs/ui/CheckBox.js +27 -27
  139. package/lib/cjs/ui/CheckBox.js.map +1 -1
  140. package/lib/cjs/ui/ColorInput.d.ts +27 -27
  141. package/lib/cjs/ui/ColorInput.d.ts.map +1 -1
  142. package/lib/cjs/ui/ColorInput.js +53 -53
  143. package/lib/cjs/ui/ColorInput.js.map +1 -1
  144. package/lib/cjs/ui/ComboBox.d.ts +28 -28
  145. package/lib/cjs/ui/ComboBox.d.ts.map +1 -1
  146. package/lib/cjs/ui/ComboBox.js +42 -42
  147. package/lib/cjs/ui/ComboBox.js.map +1 -1
  148. package/lib/cjs/ui/DataList.d.ts +27 -27
  149. package/lib/cjs/ui/DataList.d.ts.map +1 -1
  150. package/lib/cjs/ui/DataList.js +39 -39
  151. package/lib/cjs/ui/DataList.js.map +1 -1
  152. package/lib/cjs/ui/NestedMenu.d.ts +19 -19
  153. package/lib/cjs/ui/NestedMenu.d.ts.map +1 -1
  154. package/lib/cjs/ui/NestedMenu.js +46 -46
  155. package/lib/cjs/ui/NestedMenu.js.map +1 -1
  156. package/lib/cjs/ui/NumericInput.d.ts +35 -35
  157. package/lib/cjs/ui/NumericInput.d.ts.map +1 -1
  158. package/lib/cjs/ui/NumericInput.js +61 -61
  159. package/lib/cjs/ui/NumericInput.js.map +1 -1
  160. package/lib/cjs/ui/RadioBox.d.ts +29 -29
  161. package/lib/cjs/ui/RadioBox.d.ts.map +1 -1
  162. package/lib/cjs/ui/RadioBox.js +76 -76
  163. package/lib/cjs/ui/RadioBox.js.map +1 -1
  164. package/lib/cjs/ui/Slider.d.ts +28 -28
  165. package/lib/cjs/ui/Slider.d.ts.map +1 -1
  166. package/lib/cjs/ui/Slider.js +42 -42
  167. package/lib/cjs/ui/Slider.js.map +1 -1
  168. package/lib/cjs/ui/TextBox.d.ts +32 -32
  169. package/lib/cjs/ui/TextBox.d.ts.map +1 -1
  170. package/lib/cjs/ui/TextBox.js +56 -56
  171. package/lib/cjs/ui/TextBox.js.map +1 -1
  172. package/lib/cjs/widgets/DiagnosticsPanel.d.ts +37 -37
  173. package/lib/cjs/widgets/DiagnosticsPanel.js +81 -81
  174. package/lib/cjs/widgets/DiagnosticsPanel.js.map +1 -1
  175. package/lib/cjs/widgets/FpsTracker.d.ts +19 -19
  176. package/lib/cjs/widgets/FpsTracker.js +56 -56
  177. package/lib/cjs/widgets/FpsTracker.js.map +1 -1
  178. package/lib/cjs/widgets/GpuProfiler.d.ts +16 -16
  179. package/lib/cjs/widgets/GpuProfiler.js +192 -192
  180. package/lib/cjs/widgets/GpuProfiler.js.map +1 -1
  181. package/lib/cjs/widgets/KeyinField.d.ts +61 -61
  182. package/lib/cjs/widgets/KeyinField.js +186 -187
  183. package/lib/cjs/widgets/KeyinField.js.map +1 -1
  184. package/lib/cjs/widgets/MemoryTracker.d.ts +27 -27
  185. package/lib/cjs/widgets/MemoryTracker.js +242 -243
  186. package/lib/cjs/widgets/MemoryTracker.js.map +1 -1
  187. package/lib/cjs/widgets/RenderCommandBreakdown.d.ts +15 -15
  188. package/lib/cjs/widgets/RenderCommandBreakdown.js +67 -68
  189. package/lib/cjs/widgets/RenderCommandBreakdown.js.map +1 -1
  190. package/lib/cjs/widgets/TileMemoryBreakdown.d.ts +30 -30
  191. package/lib/cjs/widgets/TileMemoryBreakdown.js +203 -204
  192. package/lib/cjs/widgets/TileMemoryBreakdown.js.map +1 -1
  193. package/lib/cjs/widgets/TileStatisticsTracker.d.ts +21 -21
  194. package/lib/cjs/widgets/TileStatisticsTracker.d.ts.map +1 -1
  195. package/lib/cjs/widgets/TileStatisticsTracker.js +144 -142
  196. package/lib/cjs/widgets/TileStatisticsTracker.js.map +1 -1
  197. package/lib/cjs/widgets/ToolSettingsTracker.d.ts +9 -9
  198. package/lib/cjs/widgets/ToolSettingsTracker.js +211 -211
  199. package/lib/cjs/widgets/ToolSettingsTracker.js.map +1 -1
  200. package/lib/esm/ClipboardUtilities.d.ts +8 -8
  201. package/lib/esm/ClipboardUtilities.js +22 -22
  202. package/lib/esm/ClipboardUtilities.js.map +1 -1
  203. package/lib/esm/FrontEndDevTools.d.ts +19 -19
  204. package/lib/esm/FrontEndDevTools.js +218 -217
  205. package/lib/esm/FrontEndDevTools.js.map +1 -1
  206. package/lib/esm/effects/Convolution.d.ts +68 -68
  207. package/lib/esm/effects/Convolution.js +161 -155
  208. package/lib/esm/effects/Convolution.js.map +1 -1
  209. package/lib/esm/effects/EffectTools.d.ts +33 -33
  210. package/lib/esm/effects/EffectTools.js +63 -62
  211. package/lib/esm/effects/EffectTools.js.map +1 -1
  212. package/lib/esm/effects/Explosion.d.ts +12 -12
  213. package/lib/esm/effects/Explosion.js +165 -164
  214. package/lib/esm/effects/Explosion.js.map +1 -1
  215. package/lib/esm/effects/FlipImage.d.ts +30 -30
  216. package/lib/esm/effects/FlipImage.js +96 -94
  217. package/lib/esm/effects/FlipImage.js.map +1 -1
  218. package/lib/esm/effects/LensDistortion.d.ts +34 -34
  219. package/lib/esm/effects/LensDistortion.js +106 -104
  220. package/lib/esm/effects/LensDistortion.js.map +1 -1
  221. package/lib/esm/effects/Random.d.ts +24 -24
  222. package/lib/esm/effects/Random.js +41 -41
  223. package/lib/esm/effects/Random.js.map +1 -1
  224. package/lib/esm/effects/Saturation.d.ts +30 -30
  225. package/lib/esm/effects/Saturation.js +82 -80
  226. package/lib/esm/effects/Saturation.js.map +1 -1
  227. package/lib/esm/effects/Snow.d.ts +76 -76
  228. package/lib/esm/effects/Snow.js +184 -182
  229. package/lib/esm/effects/Snow.js.map +1 -1
  230. package/lib/esm/effects/Vignette.d.ts +39 -39
  231. package/lib/esm/effects/Vignette.js +105 -103
  232. package/lib/esm/effects/Vignette.js.map +1 -1
  233. package/lib/esm/frontend-devtools.d.ts +82 -82
  234. package/lib/esm/frontend-devtools.js +86 -86
  235. package/lib/esm/frontend-devtools.js.map +1 -1
  236. package/lib/esm/tools/AnimationIntervalTool.d.ts +15 -15
  237. package/lib/esm/tools/AnimationIntervalTool.js +27 -26
  238. package/lib/esm/tools/AnimationIntervalTool.js.map +1 -1
  239. package/lib/esm/tools/ChangeUnitsTool.d.ts +15 -15
  240. package/lib/esm/tools/ChangeUnitsTool.js +38 -37
  241. package/lib/esm/tools/ChangeUnitsTool.js.map +1 -1
  242. package/lib/esm/tools/ClipTools.d.ts +67 -67
  243. package/lib/esm/tools/ClipTools.js +158 -158
  244. package/lib/esm/tools/ClipTools.js.map +1 -1
  245. package/lib/esm/tools/DisplayStyleTools.d.ts +145 -145
  246. package/lib/esm/tools/DisplayStyleTools.js +364 -356
  247. package/lib/esm/tools/DisplayStyleTools.js.map +1 -1
  248. package/lib/esm/tools/EmphasizeElementsTool.d.ts +60 -60
  249. package/lib/esm/tools/EmphasizeElementsTool.js +150 -145
  250. package/lib/esm/tools/EmphasizeElementsTool.js.map +1 -1
  251. package/lib/esm/tools/FrustumDecoration.d.ts +57 -57
  252. package/lib/esm/tools/FrustumDecoration.js +370 -367
  253. package/lib/esm/tools/FrustumDecoration.js.map +1 -1
  254. package/lib/esm/tools/InspectElementTool.d.ts +42 -42
  255. package/lib/esm/tools/InspectElementTool.js +195 -194
  256. package/lib/esm/tools/InspectElementTool.js.map +1 -1
  257. package/lib/esm/tools/MapLayerTool.d.ts +264 -264
  258. package/lib/esm/tools/MapLayerTool.d.ts.map +1 -1
  259. package/lib/esm/tools/MapLayerTool.js +506 -485
  260. package/lib/esm/tools/MapLayerTool.js.map +1 -1
  261. package/lib/esm/tools/MeasureTileLoadTime.d.ts +12 -12
  262. package/lib/esm/tools/MeasureTileLoadTime.js +60 -59
  263. package/lib/esm/tools/MeasureTileLoadTime.js.map +1 -1
  264. package/lib/esm/tools/ModelAppearanceTools.d.ts +86 -86
  265. package/lib/esm/tools/ModelAppearanceTools.js +180 -172
  266. package/lib/esm/tools/ModelAppearanceTools.js.map +1 -1
  267. package/lib/esm/tools/PlanProjectionTools.d.ts +40 -40
  268. package/lib/esm/tools/PlanProjectionTools.js +146 -143
  269. package/lib/esm/tools/PlanProjectionTools.js.map +1 -1
  270. package/lib/esm/tools/PlanarMaskTools.d.ts +182 -182
  271. package/lib/esm/tools/PlanarMaskTools.js +387 -377
  272. package/lib/esm/tools/PlanarMaskTools.js.map +1 -1
  273. package/lib/esm/tools/ProjectExtents.d.ts +41 -41
  274. package/lib/esm/tools/ProjectExtents.js +105 -104
  275. package/lib/esm/tools/ProjectExtents.js.map +1 -1
  276. package/lib/esm/tools/RealityModelTools.d.ts +116 -116
  277. package/lib/esm/tools/RealityModelTools.js +278 -268
  278. package/lib/esm/tools/RealityModelTools.js.map +1 -1
  279. package/lib/esm/tools/RealityTransitionTool.d.ts +25 -25
  280. package/lib/esm/tools/RealityTransitionTool.js +112 -112
  281. package/lib/esm/tools/RealityTransitionTool.js.map +1 -1
  282. package/lib/esm/tools/RenderSystemTools.d.ts +38 -38
  283. package/lib/esm/tools/RenderSystemTools.js +65 -63
  284. package/lib/esm/tools/RenderSystemTools.js.map +1 -1
  285. package/lib/esm/tools/RenderTargetTools.d.ts +107 -107
  286. package/lib/esm/tools/RenderTargetTools.d.ts.map +1 -1
  287. package/lib/esm/tools/RenderTargetTools.js +169 -159
  288. package/lib/esm/tools/RenderTargetTools.js.map +1 -1
  289. package/lib/esm/tools/ReportWebGLCompatibilityTool.d.ts +11 -11
  290. package/lib/esm/tools/ReportWebGLCompatibilityTool.js +27 -26
  291. package/lib/esm/tools/ReportWebGLCompatibilityTool.js.map +1 -1
  292. package/lib/esm/tools/SavedViews.d.ts +46 -46
  293. package/lib/esm/tools/SavedViews.js +131 -128
  294. package/lib/esm/tools/SavedViews.js.map +1 -1
  295. package/lib/esm/tools/ScheduleScriptTools.d.ts +37 -37
  296. package/lib/esm/tools/ScheduleScriptTools.js +154 -153
  297. package/lib/esm/tools/ScheduleScriptTools.js.map +1 -1
  298. package/lib/esm/tools/SelectionTools.d.ts +28 -28
  299. package/lib/esm/tools/SelectionTools.js +84 -82
  300. package/lib/esm/tools/SelectionTools.js.map +1 -1
  301. package/lib/esm/tools/SetGpuMemoryLimitTool.d.ts +15 -15
  302. package/lib/esm/tools/SetGpuMemoryLimitTool.js +30 -29
  303. package/lib/esm/tools/SetGpuMemoryLimitTool.js.map +1 -1
  304. package/lib/esm/tools/SourceAspectIdTools.d.ts +40 -40
  305. package/lib/esm/tools/SourceAspectIdTools.js +81 -80
  306. package/lib/esm/tools/SourceAspectIdTools.js.map +1 -1
  307. package/lib/esm/tools/TileRequestDecoration.d.ts +12 -12
  308. package/lib/esm/tools/TileRequestDecoration.js +80 -79
  309. package/lib/esm/tools/TileRequestDecoration.js.map +1 -1
  310. package/lib/esm/tools/TileTreeBoundsDecoration.d.ts +11 -11
  311. package/lib/esm/tools/TileTreeBoundsDecoration.js +71 -70
  312. package/lib/esm/tools/TileTreeBoundsDecoration.js.map +1 -1
  313. package/lib/esm/tools/ToolTipProvider.d.ts +15 -15
  314. package/lib/esm/tools/ToolTipProvider.js +63 -62
  315. package/lib/esm/tools/ToolTipProvider.js.map +1 -1
  316. package/lib/esm/tools/ViewportTools.d.ts +218 -218
  317. package/lib/esm/tools/ViewportTools.d.ts.map +1 -1
  318. package/lib/esm/tools/ViewportTools.js +511 -492
  319. package/lib/esm/tools/ViewportTools.js.map +1 -1
  320. package/lib/esm/tools/parseArgs.d.ts +23 -23
  321. package/lib/esm/tools/parseArgs.js +47 -47
  322. package/lib/esm/tools/parseArgs.js.map +1 -1
  323. package/lib/esm/tools/parseBoolean.d.ts +8 -8
  324. package/lib/esm/tools/parseBoolean.js +22 -22
  325. package/lib/esm/tools/parseBoolean.js.map +1 -1
  326. package/lib/esm/tools/parseToggle.d.ts +8 -8
  327. package/lib/esm/tools/parseToggle.js +21 -21
  328. package/lib/esm/tools/parseToggle.js.map +1 -1
  329. package/lib/esm/ui/Button.d.ts +29 -29
  330. package/lib/esm/ui/Button.d.ts.map +1 -1
  331. package/lib/esm/ui/Button.js +22 -22
  332. package/lib/esm/ui/Button.js.map +1 -1
  333. package/lib/esm/ui/CheckBox.d.ts +23 -23
  334. package/lib/esm/ui/CheckBox.d.ts.map +1 -1
  335. package/lib/esm/ui/CheckBox.js +23 -23
  336. package/lib/esm/ui/CheckBox.js.map +1 -1
  337. package/lib/esm/ui/ColorInput.d.ts +27 -27
  338. package/lib/esm/ui/ColorInput.d.ts.map +1 -1
  339. package/lib/esm/ui/ColorInput.js +48 -48
  340. package/lib/esm/ui/ColorInput.js.map +1 -1
  341. package/lib/esm/ui/ComboBox.d.ts +28 -28
  342. package/lib/esm/ui/ComboBox.d.ts.map +1 -1
  343. package/lib/esm/ui/ComboBox.js +38 -38
  344. package/lib/esm/ui/ComboBox.js.map +1 -1
  345. package/lib/esm/ui/DataList.d.ts +27 -27
  346. package/lib/esm/ui/DataList.d.ts.map +1 -1
  347. package/lib/esm/ui/DataList.js +34 -34
  348. package/lib/esm/ui/DataList.js.map +1 -1
  349. package/lib/esm/ui/NestedMenu.d.ts +19 -19
  350. package/lib/esm/ui/NestedMenu.d.ts.map +1 -1
  351. package/lib/esm/ui/NestedMenu.js +42 -42
  352. package/lib/esm/ui/NestedMenu.js.map +1 -1
  353. package/lib/esm/ui/NumericInput.d.ts +35 -35
  354. package/lib/esm/ui/NumericInput.d.ts.map +1 -1
  355. package/lib/esm/ui/NumericInput.js +56 -56
  356. package/lib/esm/ui/NumericInput.js.map +1 -1
  357. package/lib/esm/ui/RadioBox.d.ts +29 -29
  358. package/lib/esm/ui/RadioBox.d.ts.map +1 -1
  359. package/lib/esm/ui/RadioBox.js +72 -72
  360. package/lib/esm/ui/RadioBox.js.map +1 -1
  361. package/lib/esm/ui/Slider.d.ts +28 -28
  362. package/lib/esm/ui/Slider.d.ts.map +1 -1
  363. package/lib/esm/ui/Slider.js +38 -38
  364. package/lib/esm/ui/Slider.js.map +1 -1
  365. package/lib/esm/ui/TextBox.d.ts +32 -32
  366. package/lib/esm/ui/TextBox.d.ts.map +1 -1
  367. package/lib/esm/ui/TextBox.js +52 -52
  368. package/lib/esm/ui/TextBox.js.map +1 -1
  369. package/lib/esm/widgets/DiagnosticsPanel.d.ts +37 -37
  370. package/lib/esm/widgets/DiagnosticsPanel.js +77 -77
  371. package/lib/esm/widgets/DiagnosticsPanel.js.map +1 -1
  372. package/lib/esm/widgets/FpsTracker.d.ts +19 -19
  373. package/lib/esm/widgets/FpsTracker.js +52 -52
  374. package/lib/esm/widgets/FpsTracker.js.map +1 -1
  375. package/lib/esm/widgets/GpuProfiler.d.ts +16 -16
  376. package/lib/esm/widgets/GpuProfiler.js +188 -188
  377. package/lib/esm/widgets/GpuProfiler.js.map +1 -1
  378. package/lib/esm/widgets/KeyinField.d.ts +61 -61
  379. package/lib/esm/widgets/KeyinField.js +182 -183
  380. package/lib/esm/widgets/KeyinField.js.map +1 -1
  381. package/lib/esm/widgets/MemoryTracker.d.ts +27 -27
  382. package/lib/esm/widgets/MemoryTracker.js +237 -238
  383. package/lib/esm/widgets/MemoryTracker.js.map +1 -1
  384. package/lib/esm/widgets/RenderCommandBreakdown.d.ts +15 -15
  385. package/lib/esm/widgets/RenderCommandBreakdown.js +63 -64
  386. package/lib/esm/widgets/RenderCommandBreakdown.js.map +1 -1
  387. package/lib/esm/widgets/TileMemoryBreakdown.d.ts +30 -30
  388. package/lib/esm/widgets/TileMemoryBreakdown.js +199 -200
  389. package/lib/esm/widgets/TileMemoryBreakdown.js.map +1 -1
  390. package/lib/esm/widgets/TileStatisticsTracker.d.ts +21 -21
  391. package/lib/esm/widgets/TileStatisticsTracker.d.ts.map +1 -1
  392. package/lib/esm/widgets/TileStatisticsTracker.js +140 -138
  393. package/lib/esm/widgets/TileStatisticsTracker.js.map +1 -1
  394. package/lib/esm/widgets/ToolSettingsTracker.d.ts +9 -9
  395. package/lib/esm/widgets/ToolSettingsTracker.js +208 -207
  396. package/lib/esm/widgets/ToolSettingsTracker.js.map +1 -1
  397. package/lib/public/locales/en/FrontendDevTools.json +484 -484
  398. package/package.json +15 -16
@@ -1,371 +1,369 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.ChangeBackgroundColorTool = exports.ToggleWiremeshTool = exports.WoWIgnoreBackgroundTool = exports.OverrideSubCategoryTool = exports.ApplyRenderingStyleTool = exports.SaveRenderingStyleTool = exports.SkyCubeTool = exports.SkySphereTool = exports.ToggleSkyboxTool = exports.ChangeViewFlagsTool = exports.DisplayStyleTool = void 0;
8
- /** @packageDocumentation
9
- * @module Tools
10
- */
11
- const core_common_1 = require("@itwin/core-common");
12
- const core_frontend_1 = require("@itwin/core-frontend");
13
- const ClipboardUtilities_1 = require("../ClipboardUtilities");
14
- const parseArgs_1 = require("./parseArgs");
15
- const parseToggle_1 = require("./parseToggle");
16
- // Compiler has the info to construct this array for us, but we have no access to it...
17
- const booleanFlagNames = [
18
- "dimensions", "patterns", "weights", "styles", "transparency", "fill", "textures", "materials", "acsTriad", "grid", "visibleEdges",
19
- "hiddenEdges", "lighting", "shadows", "clipVolume", "constructions", "monochrome", "backgroundMap", "ambientOcclusion", "forceSurfaceDiscard",
20
- "wiremesh",
21
- ];
22
- const lowercaseBooleanFlagNames = booleanFlagNames.map((name) => name.toLowerCase());
23
- /** Modifies the selected viewport's DisplayStyleState.
24
- * @beta
25
- */
26
- class DisplayStyleTool extends core_frontend_1.Tool {
27
- get require3d() { return false; }
28
- async run() {
29
- const vp = core_frontend_1.IModelApp.viewManager.selectedView;
30
- if (undefined !== vp && (!this.require3d || vp.view.is3d()) && await this.execute(vp))
31
- vp.displayStyle = vp.view.displayStyle;
32
- return true;
33
- }
34
- async parseAndRun(...args) {
35
- const vp = core_frontend_1.IModelApp.viewManager.selectedView;
36
- if (undefined !== vp && (!this.require3d || vp.view.is3d()) && await this.parse(args, vp))
37
- return this.run();
38
- else
39
- return false;
40
- }
41
- }
42
- exports.DisplayStyleTool = DisplayStyleTool;
43
- /** Modifies the selected viewport's ViewFlags.
44
- * The keyin syntax is as follows:
45
- * fdt change viewflags flag=value
46
- * Where 'flag' is one of the BooleanFlagName values, or "renderMode"; and value is an integer.
47
- * For boolean flags, value is 0 for false or 1 for true. For renderMode, value is one of the RenderMode enum values.
48
- * Flag names are case-insensitive.
49
- * @beta
50
- */
51
- class ChangeViewFlagsTool extends core_frontend_1.Tool {
52
- static get maxArgs() { return undefined; }
53
- static get minArgs() { return 1; }
54
- async run(vf, vp) {
55
- if (undefined !== vf && undefined !== vp)
56
- vp.viewFlags = vf;
57
- return true;
58
- }
59
- async parseAndRun(...args) {
60
- const vp = core_frontend_1.IModelApp.viewManager.selectedView;
61
- if (undefined === vp || 0 === args.length)
62
- return true;
63
- const vf = { ...vp.viewFlags };
64
- for (const arg of args) {
65
- const parts = arg.split("=");
66
- if (2 !== parts.length)
67
- continue;
68
- const value = parseInt(parts[1], 10);
69
- if (Number.isNaN(value))
70
- continue;
71
- const name = parts[0].toLowerCase();
72
- if (name === "rendermode") {
73
- switch (value) {
74
- case core_common_1.RenderMode.SmoothShade:
75
- case core_common_1.RenderMode.Wireframe:
76
- case core_common_1.RenderMode.HiddenLine:
77
- case core_common_1.RenderMode.SolidFill:
78
- vf.renderMode = value;
79
- vp.invalidateRenderPlan();
80
- break;
81
- }
82
- continue;
83
- }
84
- if (0 !== value && 1 !== value)
85
- continue;
86
- const index = lowercaseBooleanFlagNames.indexOf(name);
87
- if (-1 !== index) {
88
- const propName = booleanFlagNames[index];
89
- vf[propName] = 0 !== value;
90
- vp.invalidateRenderPlan();
91
- }
92
- }
93
- return this.run(new core_common_1.ViewFlags(vf), vp);
94
- }
95
- }
96
- exports.ChangeViewFlagsTool = ChangeViewFlagsTool;
97
- ChangeViewFlagsTool.toolId = "ChangeViewFlags";
98
- /** Toggles the skybox.
99
- * @beta
100
- */
101
- class ToggleSkyboxTool extends DisplayStyleTool {
102
- get require3d() { return true; }
103
- async parse(_args) { return true; } // no arguments
104
- async execute(vp) {
105
- const style = vp.view.displayStyle;
106
- style.environment = style.environment.withDisplay({ sky: !style.environment.displaySky });
107
- return true;
108
- }
109
- }
110
- exports.ToggleSkyboxTool = ToggleSkyboxTool;
111
- ToggleSkyboxTool.toolId = "ToggleSkybox";
112
- /** Defines a [SkySphere]($common) to apply to the current view.
113
- * @beta
114
- */
115
- class SkySphereTool extends DisplayStyleTool {
116
- static get minArgs() { return 1; }
117
- static get maxArgs() { return 1; }
118
- get require3d() { return true; }
119
- async parse(args) {
120
- this._image = args[0];
121
- return true;
122
- }
123
- async execute(vp) {
124
- if (this._image && vp.view.is3d()) {
125
- vp.view.displayStyle.environment = vp.view.displayStyle.environment.clone({
126
- displaySky: true,
127
- sky: new core_common_1.SkySphere(this._image),
128
- });
129
- }
130
- return true;
131
- }
132
- }
133
- exports.SkySphereTool = SkySphereTool;
134
- SkySphereTool.toolId = "SetSkySphere";
135
- /** Defines a [SkyCube]($common) to apply to the current view.
136
- * @beta
137
- */
138
- class SkyCubeTool extends DisplayStyleTool {
139
- constructor() {
140
- super(...arguments);
141
- this._images = [];
142
- }
143
- static get minArgs() { return 1; }
144
- static get maxArgs() { return 6; }
145
- get require3d() { return true; }
146
- async parse(args) {
147
- this._images = [...args];
148
- return true;
149
- }
150
- async execute(vp) {
151
- const imgs = this._images;
152
- if (imgs.length === 0 || !vp.view.is3d())
153
- return true;
154
- let top, bottom, left, right, front, back;
155
- switch (imgs.length) {
156
- case 1:
157
- top = bottom = left = right = front = back = imgs[0];
158
- break;
159
- case 2:
160
- top = bottom = imgs[0];
161
- left = right = front = back = imgs[1];
162
- break;
163
- case 3:
164
- top = bottom = imgs[0];
165
- left = right = imgs[1];
166
- front = back = imgs[2];
167
- break;
168
- case 4:
169
- top = imgs[0];
170
- bottom = imgs[1];
171
- left = right = imgs[2];
172
- front = back = imgs[3];
173
- break;
174
- case 5:
175
- top = bottom = imgs[0];
176
- left = imgs[1];
177
- right = imgs[2];
178
- front = imgs[3];
179
- back = imgs[4];
180
- break;
181
- default:
182
- top = imgs[0];
183
- bottom = imgs[1];
184
- left = imgs[2];
185
- right = imgs[3];
186
- front = imgs[4];
187
- back = imgs[5];
188
- break;
189
- }
190
- vp.view.displayStyle.environment = vp.view.displayStyle.environment.clone({
191
- displaySky: true,
192
- sky: new core_common_1.SkyCube({ top, bottom, left, right, front, back }),
193
- });
194
- return true;
195
- }
196
- }
197
- exports.SkyCubeTool = SkyCubeTool;
198
- SkyCubeTool.toolId = "SetSkyCube";
199
- /** Outputs (and optionally copies to the clipboard) a "rendering style" as a partial DisplayStyle3dSettingsProps JSON object based
200
- * on the current view's display style settings.
201
- * All arguments are optional, of the form "name=value" where `value` is 0 for false or 1 for true. All arguments default to `false` if omitted.
202
- * @see [DisplayStyleSettings.toOverrides]($common) for details.
203
- * Arguments:
204
- * * `all`: include all settings.
205
- * * `imodel`: include iModel-specific settings.
206
- * * `project`: include iTwin-specific (formerly known as project) settings.
207
- * * `map`: include background map settings.
208
- * * `drawingaids`: include drawing aid decoration settings.
209
- * * `copy`: copy result to system clipboard.
210
- * * `quote`: format the JSON so it can be parsed directly by [ApplyRenderingStyleTool].
211
- * @beta
212
- */
213
- class SaveRenderingStyleTool extends DisplayStyleTool {
214
- constructor() {
215
- super(...arguments);
216
- this._options = {};
217
- this._copyToClipboard = false;
218
- this._quote = false;
219
- }
220
- static get minArgs() { return 0; }
221
- static get maxArgs() { return 7; }
222
- async parse(inputArgs) {
223
- const args = (0, parseArgs_1.parseArgs)(inputArgs);
224
- function getArg(name) {
225
- return args.getBoolean(name) ? true : undefined;
226
- }
227
- this._options.includeAll = getArg("a");
228
- this._options.includeIModelSpecific = getArg("i");
229
- this._options.includeITwinSpecific = getArg("p"); // "p" for backwards compatibility with old "project" terminology
230
- this._options.includeBackgroundMap = getArg("m");
231
- this._options.includeDrawingAids = getArg("d");
232
- this._copyToClipboard = true === getArg("c");
233
- this._quote = true === getArg("q");
234
- return true;
235
- }
236
- async execute(vp) {
237
- let json = JSON.stringify(vp.displayStyle.settings.toOverrides(this._options));
238
- if (this._quote)
239
- json = `"${json.replace(/"/g, '""')}"`;
240
- core_frontend_1.IModelApp.notifications.outputMessage(new core_frontend_1.NotifyMessageDetails(core_frontend_1.OutputMessagePriority.Info, "Rendering style saved", json));
241
- if (this._copyToClipboard)
242
- (0, ClipboardUtilities_1.copyStringToClipboard)(json);
243
- return false;
244
- }
245
- }
246
- exports.SaveRenderingStyleTool = SaveRenderingStyleTool;
247
- SaveRenderingStyleTool.toolId = "SaveRenderingStyle";
248
- /** Given a "rendering style" as a partial DisplayStyle3dSettingsProperties JSON string, apply it to the selected viewport's display style.
249
- * @see [DisplayStyleSettings.applyOverrides]($common) for details.
250
- * @beta
251
- */
252
- class ApplyRenderingStyleTool extends DisplayStyleTool {
253
- static get minArgs() { return 1; }
254
- static get maxArgs() { return 1; }
255
- async parse(args) {
256
- try {
257
- this._overrides = JSON.parse(args[0]);
258
- return true;
259
- }
260
- catch {
261
- core_frontend_1.IModelApp.notifications.outputMessage(new core_frontend_1.NotifyMessageDetails(core_frontend_1.OutputMessagePriority.Error, "Invalid JSON"));
262
- return false;
263
- }
264
- }
265
- async execute(vp) {
266
- if (this._overrides)
267
- vp.overrideDisplayStyle(this._overrides);
268
- return false;
269
- }
270
- }
271
- exports.ApplyRenderingStyleTool = ApplyRenderingStyleTool;
272
- ApplyRenderingStyleTool.toolId = "ApplyRenderingStyle";
273
- /** Apply appearance overrides to one or more subcategories in the active viewport.
274
- * @beta
275
- */
276
- class OverrideSubCategoryTool extends DisplayStyleTool {
277
- constructor() {
278
- super(...arguments);
279
- this._overrideProps = {};
280
- this._subcategoryIds = [];
281
- }
282
- static get minArgs() { return 1; }
283
- static get maxArgs() { return 7; }
284
- async parse(inArgs) {
285
- const args = (0, parseArgs_1.parseArgs)(inArgs);
286
- const ids = args.get("i");
287
- if (ids)
288
- this._subcategoryIds = ids.split(",");
289
- const props = this._overrideProps;
290
- props.color = args.getInteger("c");
291
- props.weight = args.getInteger("w");
292
- props.priority = args.getInteger("p");
293
- props.transp = args.getFloat("t");
294
- props.material = args.get("m");
295
- const visible = args.getBoolean("v");
296
- props.invisible = typeof visible === "boolean" ? !visible : undefined;
297
- return true;
298
- }
299
- async execute(vp) {
300
- const ovr = core_common_1.SubCategoryOverride.fromJSON(this._overrideProps);
301
- for (const id of this._subcategoryIds)
302
- vp.displayStyle.overrideSubCategory(id, ovr);
303
- return true;
304
- }
305
- }
306
- exports.OverrideSubCategoryTool = OverrideSubCategoryTool;
307
- OverrideSubCategoryTool.toolId = "OverrideSubCategory";
308
- /** Set whether background color is ignored when applying white-on-white reversal.
309
- * @beta
310
- */
311
- class WoWIgnoreBackgroundTool extends DisplayStyleTool {
312
- static get minArgs() { return 0; }
313
- static get maxArgs() { return 1; }
314
- async parse(args) {
315
- const ignore = (0, parseToggle_1.parseToggle)(args[0]);
316
- if (typeof ignore === "string")
317
- return false;
318
- this._ignore = ignore;
319
- return true;
320
- }
321
- async execute(vp) {
322
- var _a;
323
- const ignoreBackgroundColor = (_a = this._ignore) !== null && _a !== void 0 ? _a : !vp.displayStyle.settings.whiteOnWhiteReversal.ignoreBackgroundColor;
324
- vp.displayStyle.settings.whiteOnWhiteReversal = core_common_1.WhiteOnWhiteReversalSettings.fromJSON({ ignoreBackgroundColor });
325
- return true;
326
- }
327
- }
328
- exports.WoWIgnoreBackgroundTool = WoWIgnoreBackgroundTool;
329
- WoWIgnoreBackgroundTool.toolId = "WoWIgnoreBackground";
330
- /** Toggle whether surfaces display with overlaid wiremesh in the active viewport.
331
- * @see [ViewFlags.wiremesh]($common).
332
- * @beta
333
- */
334
- class ToggleWiremeshTool extends DisplayStyleTool {
335
- static get minArgs() { return 0; }
336
- static get maxArgs() { return 1; }
337
- async parse(args) {
338
- const enable = (0, parseToggle_1.parseToggle)(args[0]);
339
- if (typeof enable === "string")
340
- return false;
341
- this._enable = enable;
342
- return true;
343
- }
344
- async execute(vp) {
345
- var _a;
346
- vp.viewFlags = vp.viewFlags.with("wiremesh", (_a = this._enable) !== null && _a !== void 0 ? _a : !vp.viewFlags.wiremesh);
347
- return true;
348
- }
349
- }
350
- exports.ToggleWiremeshTool = ToggleWiremeshTool;
351
- ToggleWiremeshTool.toolId = "ToggleWiremesh";
352
- /** Change the background color of the active viewport and optionally its transparency.
353
- * @beta
354
- */
355
- class ChangeBackgroundColorTool extends DisplayStyleTool {
356
- static get minArgs() { return 1; }
357
- static get maxArgs() { return 1; }
358
- async parse(args) {
359
- this._color = core_common_1.ColorDef.fromString(args[0]);
360
- return true;
361
- }
362
- async execute(vp) {
363
- if (!this._color)
364
- return false;
365
- vp.displayStyle.backgroundColor = this._color;
366
- return true;
367
- }
368
- }
369
- exports.ChangeBackgroundColorTool = ChangeBackgroundColorTool;
370
- ChangeBackgroundColorTool.toolId = "ChangeBackgroundColor";
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ChangeBackgroundColorTool = exports.ToggleWiremeshTool = exports.WoWIgnoreBackgroundTool = exports.OverrideSubCategoryTool = exports.ApplyRenderingStyleTool = exports.SaveRenderingStyleTool = exports.SkyCubeTool = exports.SkySphereTool = exports.ToggleSkyboxTool = exports.ChangeViewFlagsTool = exports.DisplayStyleTool = void 0;
8
+ /** @packageDocumentation
9
+ * @module Tools
10
+ */
11
+ const core_common_1 = require("@itwin/core-common");
12
+ const core_frontend_1 = require("@itwin/core-frontend");
13
+ const ClipboardUtilities_1 = require("../ClipboardUtilities");
14
+ const parseArgs_1 = require("./parseArgs");
15
+ const parseToggle_1 = require("./parseToggle");
16
+ // Compiler has the info to construct this array for us, but we have no access to it...
17
+ const booleanFlagNames = [
18
+ "dimensions", "patterns", "weights", "styles", "transparency", "fill", "textures", "materials", "acsTriad", "grid", "visibleEdges",
19
+ "hiddenEdges", "lighting", "shadows", "clipVolume", "constructions", "monochrome", "backgroundMap", "ambientOcclusion", "forceSurfaceDiscard",
20
+ "wiremesh",
21
+ ];
22
+ const lowercaseBooleanFlagNames = booleanFlagNames.map((name) => name.toLowerCase());
23
+ /** Modifies the selected viewport's DisplayStyleState.
24
+ * @beta
25
+ */
26
+ class DisplayStyleTool extends core_frontend_1.Tool {
27
+ get require3d() { return false; }
28
+ async run() {
29
+ const vp = core_frontend_1.IModelApp.viewManager.selectedView;
30
+ if (undefined !== vp && (!this.require3d || vp.view.is3d()) && await this.execute(vp))
31
+ vp.displayStyle = vp.view.displayStyle;
32
+ return true;
33
+ }
34
+ async parseAndRun(...args) {
35
+ const vp = core_frontend_1.IModelApp.viewManager.selectedView;
36
+ if (undefined !== vp && (!this.require3d || vp.view.is3d()) && await this.parse(args, vp))
37
+ return this.run();
38
+ else
39
+ return false;
40
+ }
41
+ }
42
+ exports.DisplayStyleTool = DisplayStyleTool;
43
+ /** Modifies the selected viewport's ViewFlags.
44
+ * The keyin syntax is as follows:
45
+ * fdt change viewflags flag=value
46
+ * Where 'flag' is one of the BooleanFlagName values, or "renderMode"; and value is an integer.
47
+ * For boolean flags, value is 0 for false or 1 for true. For renderMode, value is one of the RenderMode enum values.
48
+ * Flag names are case-insensitive.
49
+ * @beta
50
+ */
51
+ class ChangeViewFlagsTool extends core_frontend_1.Tool {
52
+ static get maxArgs() { return undefined; }
53
+ static get minArgs() { return 1; }
54
+ async run(vf, vp) {
55
+ if (undefined !== vf && undefined !== vp)
56
+ vp.viewFlags = vf;
57
+ return true;
58
+ }
59
+ async parseAndRun(...args) {
60
+ const vp = core_frontend_1.IModelApp.viewManager.selectedView;
61
+ if (undefined === vp || 0 === args.length)
62
+ return true;
63
+ const vf = { ...vp.viewFlags };
64
+ for (const arg of args) {
65
+ const parts = arg.split("=");
66
+ if (2 !== parts.length)
67
+ continue;
68
+ const value = parseInt(parts[1], 10);
69
+ if (Number.isNaN(value))
70
+ continue;
71
+ const name = parts[0].toLowerCase();
72
+ if (name === "rendermode") {
73
+ switch (value) {
74
+ case core_common_1.RenderMode.SmoothShade:
75
+ case core_common_1.RenderMode.Wireframe:
76
+ case core_common_1.RenderMode.HiddenLine:
77
+ case core_common_1.RenderMode.SolidFill:
78
+ vf.renderMode = value;
79
+ vp.invalidateRenderPlan();
80
+ break;
81
+ }
82
+ continue;
83
+ }
84
+ if (0 !== value && 1 !== value)
85
+ continue;
86
+ const index = lowercaseBooleanFlagNames.indexOf(name);
87
+ if (-1 !== index) {
88
+ const propName = booleanFlagNames[index];
89
+ vf[propName] = 0 !== value;
90
+ vp.invalidateRenderPlan();
91
+ }
92
+ }
93
+ return this.run(new core_common_1.ViewFlags(vf), vp);
94
+ }
95
+ }
96
+ ChangeViewFlagsTool.toolId = "ChangeViewFlags";
97
+ exports.ChangeViewFlagsTool = ChangeViewFlagsTool;
98
+ /** Toggles the skybox.
99
+ * @beta
100
+ */
101
+ class ToggleSkyboxTool extends DisplayStyleTool {
102
+ get require3d() { return true; }
103
+ async parse(_args) { return true; } // no arguments
104
+ async execute(vp) {
105
+ const style = vp.view.displayStyle;
106
+ style.environment = style.environment.withDisplay({ sky: !style.environment.displaySky });
107
+ return true;
108
+ }
109
+ }
110
+ ToggleSkyboxTool.toolId = "ToggleSkybox";
111
+ exports.ToggleSkyboxTool = ToggleSkyboxTool;
112
+ /** Defines a [SkySphere]($common) to apply to the current view.
113
+ * @beta
114
+ */
115
+ class SkySphereTool extends DisplayStyleTool {
116
+ static get minArgs() { return 1; }
117
+ static get maxArgs() { return 1; }
118
+ get require3d() { return true; }
119
+ async parse(args) {
120
+ this._image = args[0];
121
+ return true;
122
+ }
123
+ async execute(vp) {
124
+ if (this._image && vp.view.is3d()) {
125
+ vp.view.displayStyle.environment = vp.view.displayStyle.environment.clone({
126
+ displaySky: true,
127
+ sky: new core_common_1.SkySphere(this._image),
128
+ });
129
+ }
130
+ return true;
131
+ }
132
+ }
133
+ SkySphereTool.toolId = "SetSkySphere";
134
+ exports.SkySphereTool = SkySphereTool;
135
+ /** Defines a [SkyCube]($common) to apply to the current view.
136
+ * @beta
137
+ */
138
+ class SkyCubeTool extends DisplayStyleTool {
139
+ constructor() {
140
+ super(...arguments);
141
+ this._images = [];
142
+ }
143
+ static get minArgs() { return 1; }
144
+ static get maxArgs() { return 6; }
145
+ get require3d() { return true; }
146
+ async parse(args) {
147
+ this._images = [...args];
148
+ return true;
149
+ }
150
+ async execute(vp) {
151
+ const imgs = this._images;
152
+ if (imgs.length === 0 || !vp.view.is3d())
153
+ return true;
154
+ let top, bottom, left, right, front, back;
155
+ switch (imgs.length) {
156
+ case 1:
157
+ top = bottom = left = right = front = back = imgs[0];
158
+ break;
159
+ case 2:
160
+ top = bottom = imgs[0];
161
+ left = right = front = back = imgs[1];
162
+ break;
163
+ case 3:
164
+ top = bottom = imgs[0];
165
+ left = right = imgs[1];
166
+ front = back = imgs[2];
167
+ break;
168
+ case 4:
169
+ top = imgs[0];
170
+ bottom = imgs[1];
171
+ left = right = imgs[2];
172
+ front = back = imgs[3];
173
+ break;
174
+ case 5:
175
+ top = bottom = imgs[0];
176
+ left = imgs[1];
177
+ right = imgs[2];
178
+ front = imgs[3];
179
+ back = imgs[4];
180
+ break;
181
+ default:
182
+ top = imgs[0];
183
+ bottom = imgs[1];
184
+ left = imgs[2];
185
+ right = imgs[3];
186
+ front = imgs[4];
187
+ back = imgs[5];
188
+ break;
189
+ }
190
+ vp.view.displayStyle.environment = vp.view.displayStyle.environment.clone({
191
+ displaySky: true,
192
+ sky: new core_common_1.SkyCube({ top, bottom, left, right, front, back }),
193
+ });
194
+ return true;
195
+ }
196
+ }
197
+ SkyCubeTool.toolId = "SetSkyCube";
198
+ exports.SkyCubeTool = SkyCubeTool;
199
+ /** Outputs (and optionally copies to the clipboard) a "rendering style" as a partial DisplayStyle3dSettingsProps JSON object based
200
+ * on the current view's display style settings.
201
+ * All arguments are optional, of the form "name=value" where `value` is 0 for false or 1 for true. All arguments default to `false` if omitted.
202
+ * @see [DisplayStyleSettings.toOverrides]($common) for details.
203
+ * Arguments:
204
+ * * `all`: include all settings.
205
+ * * `imodel`: include iModel-specific settings.
206
+ * * `project`: include iTwin-specific (formerly known as project) settings.
207
+ * * `map`: include background map settings.
208
+ * * `drawingaids`: include drawing aid decoration settings.
209
+ * * `copy`: copy result to system clipboard.
210
+ * * `quote`: format the JSON so it can be parsed directly by [ApplyRenderingStyleTool].
211
+ * @beta
212
+ */
213
+ class SaveRenderingStyleTool extends DisplayStyleTool {
214
+ constructor() {
215
+ super(...arguments);
216
+ this._options = {};
217
+ this._copyToClipboard = false;
218
+ this._quote = false;
219
+ }
220
+ static get minArgs() { return 0; }
221
+ static get maxArgs() { return 7; }
222
+ async parse(inputArgs) {
223
+ const args = (0, parseArgs_1.parseArgs)(inputArgs);
224
+ function getArg(name) {
225
+ return args.getBoolean(name) ? true : undefined;
226
+ }
227
+ this._options.includeAll = getArg("a");
228
+ this._options.includeIModelSpecific = getArg("i");
229
+ this._options.includeITwinSpecific = getArg("p"); // "p" for backwards compatibility with old "project" terminology
230
+ this._options.includeBackgroundMap = getArg("m");
231
+ this._options.includeDrawingAids = getArg("d");
232
+ this._copyToClipboard = true === getArg("c");
233
+ this._quote = true === getArg("q");
234
+ return true;
235
+ }
236
+ async execute(vp) {
237
+ let json = JSON.stringify(vp.displayStyle.settings.toOverrides(this._options));
238
+ if (this._quote)
239
+ json = `"${json.replace(/"/g, '""')}"`;
240
+ core_frontend_1.IModelApp.notifications.outputMessage(new core_frontend_1.NotifyMessageDetails(core_frontend_1.OutputMessagePriority.Info, "Rendering style saved", json));
241
+ if (this._copyToClipboard)
242
+ (0, ClipboardUtilities_1.copyStringToClipboard)(json);
243
+ return false;
244
+ }
245
+ }
246
+ SaveRenderingStyleTool.toolId = "SaveRenderingStyle";
247
+ exports.SaveRenderingStyleTool = SaveRenderingStyleTool;
248
+ /** Given a "rendering style" as a partial DisplayStyle3dSettingsProperties JSON string, apply it to the selected viewport's display style.
249
+ * @see [DisplayStyleSettings.applyOverrides]($common) for details.
250
+ * @beta
251
+ */
252
+ class ApplyRenderingStyleTool extends DisplayStyleTool {
253
+ static get minArgs() { return 1; }
254
+ static get maxArgs() { return 1; }
255
+ async parse(args) {
256
+ try {
257
+ this._overrides = JSON.parse(args[0]);
258
+ return true;
259
+ }
260
+ catch {
261
+ core_frontend_1.IModelApp.notifications.outputMessage(new core_frontend_1.NotifyMessageDetails(core_frontend_1.OutputMessagePriority.Error, "Invalid JSON"));
262
+ return false;
263
+ }
264
+ }
265
+ async execute(vp) {
266
+ if (this._overrides)
267
+ vp.overrideDisplayStyle(this._overrides);
268
+ return false;
269
+ }
270
+ }
271
+ ApplyRenderingStyleTool.toolId = "ApplyRenderingStyle";
272
+ exports.ApplyRenderingStyleTool = ApplyRenderingStyleTool;
273
+ /** Apply appearance overrides to one or more subcategories in the active viewport.
274
+ * @beta
275
+ */
276
+ class OverrideSubCategoryTool extends DisplayStyleTool {
277
+ constructor() {
278
+ super(...arguments);
279
+ this._overrideProps = {};
280
+ this._subcategoryIds = [];
281
+ }
282
+ static get minArgs() { return 1; }
283
+ static get maxArgs() { return 7; }
284
+ async parse(inArgs) {
285
+ const args = (0, parseArgs_1.parseArgs)(inArgs);
286
+ const ids = args.get("i");
287
+ if (ids)
288
+ this._subcategoryIds = ids.split(",");
289
+ const props = this._overrideProps;
290
+ props.color = args.getInteger("c");
291
+ props.weight = args.getInteger("w");
292
+ props.priority = args.getInteger("p");
293
+ props.transp = args.getFloat("t");
294
+ props.material = args.get("m");
295
+ const visible = args.getBoolean("v");
296
+ props.invisible = typeof visible === "boolean" ? !visible : undefined;
297
+ return true;
298
+ }
299
+ async execute(vp) {
300
+ const ovr = core_common_1.SubCategoryOverride.fromJSON(this._overrideProps);
301
+ for (const id of this._subcategoryIds)
302
+ vp.displayStyle.overrideSubCategory(id, ovr);
303
+ return true;
304
+ }
305
+ }
306
+ OverrideSubCategoryTool.toolId = "OverrideSubCategory";
307
+ exports.OverrideSubCategoryTool = OverrideSubCategoryTool;
308
+ /** Set whether background color is ignored when applying white-on-white reversal.
309
+ * @beta
310
+ */
311
+ class WoWIgnoreBackgroundTool extends DisplayStyleTool {
312
+ static get minArgs() { return 0; }
313
+ static get maxArgs() { return 1; }
314
+ async parse(args) {
315
+ const ignore = (0, parseToggle_1.parseToggle)(args[0]);
316
+ if (typeof ignore === "string")
317
+ return false;
318
+ this._ignore = ignore;
319
+ return true;
320
+ }
321
+ async execute(vp) {
322
+ const ignoreBackgroundColor = this._ignore ?? !vp.displayStyle.settings.whiteOnWhiteReversal.ignoreBackgroundColor;
323
+ vp.displayStyle.settings.whiteOnWhiteReversal = core_common_1.WhiteOnWhiteReversalSettings.fromJSON({ ignoreBackgroundColor });
324
+ return true;
325
+ }
326
+ }
327
+ WoWIgnoreBackgroundTool.toolId = "WoWIgnoreBackground";
328
+ exports.WoWIgnoreBackgroundTool = WoWIgnoreBackgroundTool;
329
+ /** Toggle whether surfaces display with overlaid wiremesh in the active viewport.
330
+ * @see [ViewFlags.wiremesh]($common).
331
+ * @beta
332
+ */
333
+ class ToggleWiremeshTool extends DisplayStyleTool {
334
+ static get minArgs() { return 0; }
335
+ static get maxArgs() { return 1; }
336
+ async parse(args) {
337
+ const enable = (0, parseToggle_1.parseToggle)(args[0]);
338
+ if (typeof enable === "string")
339
+ return false;
340
+ this._enable = enable;
341
+ return true;
342
+ }
343
+ async execute(vp) {
344
+ vp.viewFlags = vp.viewFlags.with("wiremesh", this._enable ?? !vp.viewFlags.wiremesh);
345
+ return true;
346
+ }
347
+ }
348
+ ToggleWiremeshTool.toolId = "ToggleWiremesh";
349
+ exports.ToggleWiremeshTool = ToggleWiremeshTool;
350
+ /** Change the background color of the active viewport and optionally its transparency.
351
+ * @beta
352
+ */
353
+ class ChangeBackgroundColorTool extends DisplayStyleTool {
354
+ static get minArgs() { return 1; }
355
+ static get maxArgs() { return 1; }
356
+ async parse(args) {
357
+ this._color = core_common_1.ColorDef.fromString(args[0]);
358
+ return true;
359
+ }
360
+ async execute(vp) {
361
+ if (!this._color)
362
+ return false;
363
+ vp.displayStyle.backgroundColor = this._color;
364
+ return true;
365
+ }
366
+ }
367
+ ChangeBackgroundColorTool.toolId = "ChangeBackgroundColor";
368
+ exports.ChangeBackgroundColorTool = ChangeBackgroundColorTool;
371
369
  //# sourceMappingURL=DisplayStyleTools.js.map