@itwin/frontend-devtools 3.4.0-dev.9 → 3.5.0-dev.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/CHANGELOG.md +24 -1
  2. package/lib/cjs/tools/FrustumDecoration.d.ts.map +1 -1
  3. package/lib/cjs/tools/FrustumDecoration.js +4 -1
  4. package/lib/cjs/tools/FrustumDecoration.js.map +1 -1
  5. package/lib/cjs/tools/MeasureTileLoadTime.d.ts.map +1 -1
  6. package/lib/cjs/tools/MeasureTileLoadTime.js +4 -1
  7. package/lib/cjs/tools/MeasureTileLoadTime.js.map +1 -1
  8. package/lib/cjs/tools/PlanarMaskTools.d.ts.map +1 -1
  9. package/lib/cjs/tools/PlanarMaskTools.js +4 -1
  10. package/lib/cjs/tools/PlanarMaskTools.js.map +1 -1
  11. package/lib/cjs/tools/SelectionTools.d.ts.map +1 -1
  12. package/lib/cjs/tools/SelectionTools.js.map +1 -1
  13. package/lib/cjs/ui/Button.d.ts.map +1 -1
  14. package/lib/cjs/ui/Button.js.map +1 -1
  15. package/lib/cjs/ui/ColorInput.d.ts.map +1 -1
  16. package/lib/cjs/ui/ColorInput.js.map +1 -1
  17. package/lib/cjs/ui/NestedMenu.d.ts.map +1 -1
  18. package/lib/cjs/ui/NestedMenu.js.map +1 -1
  19. package/lib/cjs/ui/NumericInput.d.ts +1 -0
  20. package/lib/cjs/ui/NumericInput.d.ts.map +1 -1
  21. package/lib/cjs/ui/NumericInput.js +2 -0
  22. package/lib/cjs/ui/NumericInput.js.map +1 -1
  23. package/lib/cjs/ui/RadioBox.d.ts +1 -0
  24. package/lib/cjs/ui/RadioBox.d.ts.map +1 -1
  25. package/lib/cjs/ui/RadioBox.js +1 -1
  26. package/lib/cjs/ui/RadioBox.js.map +1 -1
  27. package/lib/cjs/ui/Slider.d.ts +2 -0
  28. package/lib/cjs/ui/Slider.d.ts.map +1 -1
  29. package/lib/cjs/ui/Slider.js +4 -2
  30. package/lib/cjs/ui/Slider.js.map +1 -1
  31. package/lib/cjs/widgets/ToolSettingsTracker.d.ts.map +1 -1
  32. package/lib/cjs/widgets/ToolSettingsTracker.js +47 -17
  33. package/lib/cjs/widgets/ToolSettingsTracker.js.map +1 -1
  34. package/lib/esm/tools/FrustumDecoration.d.ts.map +1 -1
  35. package/lib/esm/tools/FrustumDecoration.js +4 -1
  36. package/lib/esm/tools/FrustumDecoration.js.map +1 -1
  37. package/lib/esm/tools/MeasureTileLoadTime.d.ts.map +1 -1
  38. package/lib/esm/tools/MeasureTileLoadTime.js +4 -1
  39. package/lib/esm/tools/MeasureTileLoadTime.js.map +1 -1
  40. package/lib/esm/tools/PlanarMaskTools.d.ts.map +1 -1
  41. package/lib/esm/tools/PlanarMaskTools.js +4 -1
  42. package/lib/esm/tools/PlanarMaskTools.js.map +1 -1
  43. package/lib/esm/tools/SelectionTools.d.ts.map +1 -1
  44. package/lib/esm/tools/SelectionTools.js.map +1 -1
  45. package/lib/esm/ui/Button.d.ts.map +1 -1
  46. package/lib/esm/ui/Button.js.map +1 -1
  47. package/lib/esm/ui/ColorInput.d.ts.map +1 -1
  48. package/lib/esm/ui/ColorInput.js.map +1 -1
  49. package/lib/esm/ui/NestedMenu.d.ts.map +1 -1
  50. package/lib/esm/ui/NestedMenu.js.map +1 -1
  51. package/lib/esm/ui/NumericInput.d.ts +1 -0
  52. package/lib/esm/ui/NumericInput.d.ts.map +1 -1
  53. package/lib/esm/ui/NumericInput.js +2 -0
  54. package/lib/esm/ui/NumericInput.js.map +1 -1
  55. package/lib/esm/ui/RadioBox.d.ts +1 -0
  56. package/lib/esm/ui/RadioBox.d.ts.map +1 -1
  57. package/lib/esm/ui/RadioBox.js +1 -1
  58. package/lib/esm/ui/RadioBox.js.map +1 -1
  59. package/lib/esm/ui/Slider.d.ts +2 -0
  60. package/lib/esm/ui/Slider.d.ts.map +1 -1
  61. package/lib/esm/ui/Slider.js +4 -2
  62. package/lib/esm/ui/Slider.js.map +1 -1
  63. package/lib/esm/widgets/ToolSettingsTracker.d.ts.map +1 -1
  64. package/lib/esm/widgets/ToolSettingsTracker.js +47 -17
  65. package/lib/esm/widgets/ToolSettingsTracker.js.map +1 -1
  66. package/package.json +8 -8
@@ -31,8 +31,11 @@ export class ToolSettingsTracker {
31
31
  name: "Preserve World Up When Rotating",
32
32
  id: "ts_preserveWorldUp",
33
33
  isChecked: ToolSettings.preserveWorldUp,
34
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
35
- handler: (_cb) => { ToolSettings.preserveWorldUp = !ToolSettings.preserveWorldUp; IModelApp.toolAdmin.exitViewTool(); },
34
+ handler: (_cb) => {
35
+ ToolSettings.preserveWorldUp = !ToolSettings.preserveWorldUp;
36
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
37
+ IModelApp.toolAdmin.exitViewTool();
38
+ },
36
39
  });
37
40
  div.style.textAlign = "left";
38
41
  // We use a static so the expand/collapse state persists after closing and reopening the drop-down.
@@ -48,8 +51,11 @@ export class ToolSettingsTracker {
48
51
  min: 0,
49
52
  step: 1,
50
53
  value: ScreenViewport.animation.time.normal.milliseconds,
51
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
52
- handler: (value, _input) => { ScreenViewport.animation.time.normal = BeDuration.fromMilliseconds(value); IModelApp.toolAdmin.exitViewTool(); },
54
+ handler: (value, _input) => {
55
+ ScreenViewport.animation.time.normal = BeDuration.fromMilliseconds(value);
56
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
57
+ IModelApp.toolAdmin.exitViewTool();
58
+ },
53
59
  });
54
60
  div.style.display = "block";
55
61
  div.style.textAlign = "left";
@@ -65,8 +71,11 @@ export class ToolSettingsTracker {
65
71
  min: 0,
66
72
  step: 0.01,
67
73
  value: ToolSettings.viewToolPickRadiusInches,
68
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
69
- handler: (value, _input) => { ToolSettings.viewToolPickRadiusInches = value; IModelApp.toolAdmin.exitViewTool(); },
74
+ handler: (value, _input) => {
75
+ ToolSettings.viewToolPickRadiusInches = value;
76
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
77
+ IModelApp.toolAdmin.exitViewTool();
78
+ },
70
79
  parseAsFloat: true,
71
80
  }, true);
72
81
  div.style.display = "block";
@@ -77,8 +86,11 @@ export class ToolSettingsTracker {
77
86
  name: "Walk Enforce Z Up",
78
87
  id: "ts_walkEnforceZUp",
79
88
  isChecked: ToolSettings.walkEnforceZUp,
80
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
81
- handler: (_cb) => { ToolSettings.walkEnforceZUp = !ToolSettings.walkEnforceZUp; IModelApp.toolAdmin.exitViewTool(); },
89
+ handler: (_cb) => {
90
+ ToolSettings.walkEnforceZUp = !ToolSettings.walkEnforceZUp;
91
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
92
+ IModelApp.toolAdmin.exitViewTool();
93
+ },
82
94
  });
83
95
  div.style.display = "block";
84
96
  div.style.textAlign = "left";
@@ -93,8 +105,11 @@ export class ToolSettingsTracker {
93
105
  min: 0,
94
106
  step: 0.1,
95
107
  value: ToolSettings.walkCameraAngle.degrees,
96
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
97
- handler: (value, _input) => { ToolSettings.walkCameraAngle.setDegrees(value); IModelApp.toolAdmin.exitViewTool(); },
108
+ handler: (value, _input) => {
109
+ ToolSettings.walkCameraAngle.setDegrees(value);
110
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
111
+ IModelApp.toolAdmin.exitViewTool();
112
+ },
98
113
  parseAsFloat: true,
99
114
  }, true);
100
115
  div.style.display = "block";
@@ -110,8 +125,11 @@ export class ToolSettingsTracker {
110
125
  min: 0,
111
126
  step: 0.1,
112
127
  value: ToolSettings.walkVelocity,
113
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
114
- handler: (value, _input) => { ToolSettings.walkVelocity = value; IModelApp.toolAdmin.exitViewTool(); },
128
+ handler: (value, _input) => {
129
+ ToolSettings.walkVelocity = value;
130
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
131
+ IModelApp.toolAdmin.exitViewTool();
132
+ },
115
133
  parseAsFloat: true,
116
134
  }, true);
117
135
  div.style.display = "block";
@@ -127,8 +145,11 @@ export class ToolSettingsTracker {
127
145
  min: 0,
128
146
  step: 0.025,
129
147
  value: ToolSettings.wheelZoomBumpDistance,
130
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
131
- handler: (value, _input) => { ToolSettings.wheelZoomBumpDistance = value; IModelApp.toolAdmin.exitViewTool(); },
148
+ handler: (value, _input) => {
149
+ ToolSettings.wheelZoomBumpDistance = value;
150
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
151
+ IModelApp.toolAdmin.exitViewTool();
152
+ },
132
153
  parseAsFloat: true,
133
154
  }, true);
134
155
  div.style.display = "block";
@@ -144,7 +165,10 @@ export class ToolSettingsTracker {
144
165
  min: 1.0,
145
166
  step: 0.025,
146
167
  value: ToolSettings.wheelZoomRatio,
147
- handler: async (value, _input) => { ToolSettings.wheelZoomRatio = value; return IModelApp.toolAdmin.exitViewTool(); },
168
+ handler: async (value, _input) => {
169
+ ToolSettings.wheelZoomRatio = value;
170
+ return IModelApp.toolAdmin.exitViewTool();
171
+ },
148
172
  parseAsFloat: true,
149
173
  }, true);
150
174
  div.style.display = "block";
@@ -153,7 +177,10 @@ export class ToolSettingsTracker {
153
177
  id: "num_inertiaDamping",
154
178
  parent: settingsDiv,
155
179
  value: ToolSettings.viewingInertia.damping,
156
- handler: async (value, _) => { ToolSettings.viewingInertia.damping = value; return IModelApp.toolAdmin.exitViewTool(); },
180
+ handler: async (value, _) => {
181
+ ToolSettings.viewingInertia.damping = value;
182
+ return IModelApp.toolAdmin.exitViewTool();
183
+ },
157
184
  min: 0,
158
185
  max: 1,
159
186
  step: 0.05,
@@ -164,7 +191,10 @@ export class ToolSettingsTracker {
164
191
  id: "num_inertiaDuration",
165
192
  parent: settingsDiv,
166
193
  value: ToolSettings.viewingInertia.duration.milliseconds / 1000,
167
- handler: async (value, _) => { ToolSettings.viewingInertia.duration = BeDuration.fromMilliseconds(value * 1000); return IModelApp.toolAdmin.exitViewTool(); },
194
+ handler: async (value, _) => {
195
+ ToolSettings.viewingInertia.duration = BeDuration.fromMilliseconds(value * 1000);
196
+ return IModelApp.toolAdmin.exitViewTool();
197
+ },
168
198
  min: 0,
169
199
  max: 10,
170
200
  step: 0.5,
@@ -1 +1 @@
1
- {"version":3,"file":"ToolSettingsTracker.js","sourceRoot":"","sources":["../../../src/widgets/ToolSettingsTracker.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module Widgets\r\n */\r\n\r\nimport { BeDuration } from \"@itwin/core-bentley\";\r\nimport { IModelApp, ScreenViewport, ToolSettings, Viewport } from \"@itwin/core-frontend\";\r\nimport { createCheckBox } from \"../ui/CheckBox\";\r\nimport { createNestedMenu } from \"../ui/NestedMenu\";\r\nimport { createLabeledNumericInput, createNumericInput } from \"../ui/NumericInput\";\r\n\r\n/** Allows the global settings controlling the behavior of viewing tools to be customized.\r\n * @alpha\r\n */\r\nexport class ToolSettingsTracker {\r\n private static _expandToolSettings = false;\r\n\r\n public constructor(parent: HTMLElement, _vp: Viewport) {\r\n const settingsDiv = document.createElement(\"div\");\r\n settingsDiv.style.display = \"block\";\r\n settingsDiv.style.textAlign = \"left\";\r\n\r\n createNestedMenu({\r\n label: \"Tool Settings\",\r\n parent,\r\n expand: ToolSettingsTracker._expandToolSettings,\r\n handler: (expanded) => ToolSettingsTracker._expandToolSettings = expanded,\r\n body: settingsDiv,\r\n });\r\n\r\n let div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n createCheckBox({\r\n parent: div,\r\n name: \"Preserve World Up When Rotating\",\r\n id: \"ts_preserveWorldUp\",\r\n isChecked: ToolSettings.preserveWorldUp,\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n handler: (_cb) => { ToolSettings.preserveWorldUp = !ToolSettings.preserveWorldUp; IModelApp.toolAdmin.exitViewTool(); },\r\n });\r\n div.style.textAlign = \"left\";\r\n\r\n // We use a static so the expand/collapse state persists after closing and reopening the drop-down.\r\n settingsDiv.style.display = ToolSettingsTracker._expandToolSettings ? \"block\" : \"none\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n let label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Animation Duration (ms): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_animationTime\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_animationTime\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 1,\r\n value: ScreenViewport.animation.time.normal.milliseconds,\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n handler: (value, _input) => { ScreenViewport.animation.time.normal = BeDuration.fromMilliseconds(value); IModelApp.toolAdmin.exitViewTool(); },\r\n });\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Pick Radius (inches): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_viewToolPickRadiusInches\";\r\n label.innerText = \"Pick Radius (inches): \";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_viewToolPickRadiusInches\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.01,\r\n value: ToolSettings.viewToolPickRadiusInches,\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n handler: (value, _input) => { ToolSettings.viewToolPickRadiusInches = value; IModelApp.toolAdmin.exitViewTool(); },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n createCheckBox({\r\n parent: div,\r\n name: \"Walk Enforce Z Up\",\r\n id: \"ts_walkEnforceZUp\",\r\n isChecked: ToolSettings.walkEnforceZUp,\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n handler: (_cb) => { ToolSettings.walkEnforceZUp = !ToolSettings.walkEnforceZUp; IModelApp.toolAdmin.exitViewTool(); },\r\n });\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Walk Camera Angle (degrees): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_walkCameraAngle\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_walkCameraAngle\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.1,\r\n value: ToolSettings.walkCameraAngle.degrees,\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n handler: (value, _input) => { ToolSettings.walkCameraAngle.setDegrees(value); IModelApp.toolAdmin.exitViewTool(); },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Walk Velocity (meters per second): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_walkVelocity\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_walkVelocity\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.1,\r\n value: ToolSettings.walkVelocity,\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n handler: (value, _input) => { ToolSettings.walkVelocity = value; IModelApp.toolAdmin.exitViewTool(); },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Wheel Zoom Bump Distance (meters): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_wheelZoomBumpDistance\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_wheelZoomBumpDistance\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.025,\r\n value: ToolSettings.wheelZoomBumpDistance,\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n handler: (value, _input) => { ToolSettings.wheelZoomBumpDistance = value; IModelApp.toolAdmin.exitViewTool(); },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Wheel Zoom Ratio: \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_wheelZoomRatio\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_wheelZoomRatio\",\r\n display: \"inline\",\r\n min: 1.0,\r\n step: 0.025,\r\n value: ToolSettings.wheelZoomRatio,\r\n handler: async (value, _input) => { ToolSettings.wheelZoomRatio = value; return IModelApp.toolAdmin.exitViewTool(); },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n createLabeledNumericInput({\r\n id: \"num_inertiaDamping\",\r\n parent: settingsDiv,\r\n value: ToolSettings.viewingInertia.damping,\r\n handler: async (value, _) => { ToolSettings.viewingInertia.damping = value; return IModelApp.toolAdmin.exitViewTool(); },\r\n min: 0,\r\n max: 1,\r\n step: 0.05,\r\n parseAsFloat: true,\r\n name: \"Inertial damping: \",\r\n });\r\n createLabeledNumericInput({\r\n id: \"num_inertiaDuration\",\r\n parent: settingsDiv,\r\n value: ToolSettings.viewingInertia.duration.milliseconds / 1000,\r\n handler: async (value, _) => { ToolSettings.viewingInertia.duration = BeDuration.fromMilliseconds(value * 1000); return IModelApp.toolAdmin.exitViewTool(); },\r\n min: 0,\r\n max: 10,\r\n step: 0.5,\r\n parseAsFloat: true,\r\n name: \"Inertial duration (seconds): \",\r\n });\r\n }\r\n\r\n public dispose(): void { }\r\n}\r\n"]}
1
+ {"version":3,"file":"ToolSettingsTracker.js","sourceRoot":"","sources":["../../../src/widgets/ToolSettingsTracker.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module Widgets\r\n */\r\n\r\nimport { BeDuration } from \"@itwin/core-bentley\";\r\nimport { IModelApp, ScreenViewport, ToolSettings, Viewport } from \"@itwin/core-frontend\";\r\nimport { createCheckBox } from \"../ui/CheckBox\";\r\nimport { createNestedMenu } from \"../ui/NestedMenu\";\r\nimport { createLabeledNumericInput, createNumericInput } from \"../ui/NumericInput\";\r\n\r\n/** Allows the global settings controlling the behavior of viewing tools to be customized.\r\n * @alpha\r\n */\r\nexport class ToolSettingsTracker {\r\n private static _expandToolSettings = false;\r\n\r\n public constructor(parent: HTMLElement, _vp: Viewport) {\r\n const settingsDiv = document.createElement(\"div\");\r\n settingsDiv.style.display = \"block\";\r\n settingsDiv.style.textAlign = \"left\";\r\n\r\n createNestedMenu({\r\n label: \"Tool Settings\",\r\n parent,\r\n expand: ToolSettingsTracker._expandToolSettings,\r\n handler: (expanded) => ToolSettingsTracker._expandToolSettings = expanded,\r\n body: settingsDiv,\r\n });\r\n\r\n let div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n createCheckBox({\r\n parent: div,\r\n name: \"Preserve World Up When Rotating\",\r\n id: \"ts_preserveWorldUp\",\r\n isChecked: ToolSettings.preserveWorldUp,\r\n handler: (_cb) => {\r\n ToolSettings.preserveWorldUp = !ToolSettings.preserveWorldUp;\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n IModelApp.toolAdmin.exitViewTool();\r\n },\r\n });\r\n div.style.textAlign = \"left\";\r\n\r\n // We use a static so the expand/collapse state persists after closing and reopening the drop-down.\r\n settingsDiv.style.display = ToolSettingsTracker._expandToolSettings ? \"block\" : \"none\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n let label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Animation Duration (ms): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_animationTime\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_animationTime\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 1,\r\n value: ScreenViewport.animation.time.normal.milliseconds,\r\n handler: (value, _input) => {\r\n ScreenViewport.animation.time.normal = BeDuration.fromMilliseconds(value);\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n IModelApp.toolAdmin.exitViewTool();\r\n },\r\n });\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Pick Radius (inches): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_viewToolPickRadiusInches\";\r\n label.innerText = \"Pick Radius (inches): \";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_viewToolPickRadiusInches\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.01,\r\n value: ToolSettings.viewToolPickRadiusInches,\r\n handler: (value, _input) => {\r\n ToolSettings.viewToolPickRadiusInches = value;\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n IModelApp.toolAdmin.exitViewTool();\r\n },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n createCheckBox({\r\n parent: div,\r\n name: \"Walk Enforce Z Up\",\r\n id: \"ts_walkEnforceZUp\",\r\n isChecked: ToolSettings.walkEnforceZUp,\r\n handler: (_cb) => {\r\n ToolSettings.walkEnforceZUp = !ToolSettings.walkEnforceZUp;\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n IModelApp.toolAdmin.exitViewTool();\r\n },\r\n });\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Walk Camera Angle (degrees): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_walkCameraAngle\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_walkCameraAngle\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.1,\r\n value: ToolSettings.walkCameraAngle.degrees,\r\n handler: (value, _input) => {\r\n ToolSettings.walkCameraAngle.setDegrees(value);\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n IModelApp.toolAdmin.exitViewTool();\r\n },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Walk Velocity (meters per second): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_walkVelocity\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_walkVelocity\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.1,\r\n value: ToolSettings.walkVelocity,\r\n handler: (value, _input) => {\r\n ToolSettings.walkVelocity = value;\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n IModelApp.toolAdmin.exitViewTool();\r\n },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Wheel Zoom Bump Distance (meters): \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_wheelZoomBumpDistance\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_wheelZoomBumpDistance\",\r\n display: \"inline\",\r\n min: 0,\r\n step: 0.025,\r\n value: ToolSettings.wheelZoomBumpDistance,\r\n handler: (value, _input) => {\r\n ToolSettings.wheelZoomBumpDistance = value;\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n IModelApp.toolAdmin.exitViewTool();\r\n },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n div = IModelApp.makeHTMLElement(\"div\", { parent: settingsDiv });\r\n label = IModelApp.makeHTMLElement(\"label\", { innerText: \"Wheel Zoom Ratio: \", parent: div });\r\n label.style.display = \"inline\";\r\n label.htmlFor = \"ts_wheelZoomRatio\";\r\n createNumericInput({\r\n parent: div,\r\n id: \"ts_wheelZoomRatio\",\r\n display: \"inline\",\r\n min: 1.0,\r\n step: 0.025,\r\n value: ToolSettings.wheelZoomRatio,\r\n handler: async (value, _input) => {\r\n ToolSettings.wheelZoomRatio = value;\r\n return IModelApp.toolAdmin.exitViewTool();\r\n },\r\n parseAsFloat: true,\r\n }, true);\r\n div.style.display = \"block\";\r\n div.style.textAlign = \"left\";\r\n\r\n createLabeledNumericInput({\r\n id: \"num_inertiaDamping\",\r\n parent: settingsDiv,\r\n value: ToolSettings.viewingInertia.damping,\r\n handler: async (value, _) => {\r\n ToolSettings.viewingInertia.damping = value;\r\n return IModelApp.toolAdmin.exitViewTool();\r\n },\r\n min: 0,\r\n max: 1,\r\n step: 0.05,\r\n parseAsFloat: true,\r\n name: \"Inertial damping: \",\r\n });\r\n createLabeledNumericInput({\r\n id: \"num_inertiaDuration\",\r\n parent: settingsDiv,\r\n value: ToolSettings.viewingInertia.duration.milliseconds / 1000,\r\n handler: async (value, _) => {\r\n ToolSettings.viewingInertia.duration = BeDuration.fromMilliseconds(value * 1000);\r\n return IModelApp.toolAdmin.exitViewTool();\r\n },\r\n min: 0,\r\n max: 10,\r\n step: 0.5,\r\n parseAsFloat: true,\r\n name: \"Inertial duration (seconds): \",\r\n });\r\n }\r\n\r\n public dispose(): void { }\r\n}\r\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itwin/frontend-devtools",
3
- "version": "3.4.0-dev.9",
3
+ "version": "3.5.0-dev.5",
4
4
  "description": "Debug menu and supporting UI widgets",
5
5
  "main": "lib/cjs/frontend-devtools.js",
6
6
  "module": "lib/esm/frontend-devtools.js",
@@ -22,17 +22,17 @@
22
22
  "url": "http://www.bentley.com"
23
23
  },
24
24
  "dependencies": {
25
- "@itwin/core-bentley": "3.4.0-dev.9",
26
- "@itwin/core-common": "3.4.0-dev.9",
27
- "@itwin/core-frontend": "3.4.0-dev.9",
28
- "@itwin/core-geometry": "3.4.0-dev.9",
25
+ "@itwin/core-bentley": "3.5.0-dev.5",
26
+ "@itwin/core-common": "3.5.0-dev.5",
27
+ "@itwin/core-frontend": "3.5.0-dev.5",
28
+ "@itwin/core-geometry": "3.5.0-dev.5",
29
29
  "file-saver": "^2.0.2"
30
30
  },
31
31
  "devDependencies": {
32
- "@itwin/build-tools": "3.4.0-dev.9",
33
- "@itwin/eslint-plugin": "3.4.0-dev.9",
32
+ "@itwin/build-tools": "3.5.0-dev.5",
33
+ "@itwin/eslint-plugin": "3.5.0-dev.5",
34
34
  "@types/file-saver": "^2.0.1",
35
- "@types/node": "16.11.7",
35
+ "@types/node": "16.11.59",
36
36
  "cpx2": "^3.0.0",
37
37
  "eslint": "^7.11.0",
38
38
  "rimraf": "^3.0.2",