@itwin/frontend-devtools 3.3.0-dev.5 → 3.3.0-dev.52

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 (70) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/README.md +8 -0
  3. package/lib/cjs/FrontEndDevTools.d.ts +1 -0
  4. package/lib/cjs/FrontEndDevTools.d.ts.map +1 -1
  5. package/lib/cjs/FrontEndDevTools.js +10 -1
  6. package/lib/cjs/FrontEndDevTools.js.map +1 -1
  7. package/lib/cjs/frontend-devtools.d.ts +1 -0
  8. package/lib/cjs/frontend-devtools.d.ts.map +1 -1
  9. package/lib/cjs/frontend-devtools.js +1 -0
  10. package/lib/cjs/frontend-devtools.js.map +1 -1
  11. package/lib/cjs/tools/DisplayStyleTools.d.ts +3 -15
  12. package/lib/cjs/tools/DisplayStyleTools.d.ts.map +1 -1
  13. package/lib/cjs/tools/DisplayStyleTools.js +1 -76
  14. package/lib/cjs/tools/DisplayStyleTools.js.map +1 -1
  15. package/lib/cjs/tools/MapLayerTool.d.ts.map +1 -1
  16. package/lib/cjs/tools/MapLayerTool.js +11 -5
  17. package/lib/cjs/tools/MapLayerTool.js.map +1 -1
  18. package/lib/cjs/tools/ProjectExtents.d.ts +1 -0
  19. package/lib/cjs/tools/ProjectExtents.d.ts.map +1 -1
  20. package/lib/cjs/tools/ProjectExtents.js +3 -0
  21. package/lib/cjs/tools/ProjectExtents.js.map +1 -1
  22. package/lib/cjs/tools/RealityModelTools.d.ts.map +1 -1
  23. package/lib/cjs/tools/RealityModelTools.js +7 -2
  24. package/lib/cjs/tools/RealityModelTools.js.map +1 -1
  25. package/lib/cjs/tools/RealityTransitionTool.d.ts.map +1 -1
  26. package/lib/cjs/tools/RealityTransitionTool.js +1 -1
  27. package/lib/cjs/tools/RealityTransitionTool.js.map +1 -1
  28. package/lib/cjs/tools/ScheduleScriptTools.d.ts +38 -0
  29. package/lib/cjs/tools/ScheduleScriptTools.d.ts.map +1 -0
  30. package/lib/cjs/tools/ScheduleScriptTools.js +160 -0
  31. package/lib/cjs/tools/ScheduleScriptTools.js.map +1 -0
  32. package/lib/cjs/tools/SelectionTools.d.ts +12 -0
  33. package/lib/cjs/tools/SelectionTools.d.ts.map +1 -1
  34. package/lib/cjs/tools/SelectionTools.js +61 -1
  35. package/lib/cjs/tools/SelectionTools.js.map +1 -1
  36. package/lib/esm/FrontEndDevTools.d.ts +1 -0
  37. package/lib/esm/FrontEndDevTools.d.ts.map +1 -1
  38. package/lib/esm/FrontEndDevTools.js +11 -2
  39. package/lib/esm/FrontEndDevTools.js.map +1 -1
  40. package/lib/esm/frontend-devtools.d.ts +1 -0
  41. package/lib/esm/frontend-devtools.d.ts.map +1 -1
  42. package/lib/esm/frontend-devtools.js +1 -0
  43. package/lib/esm/frontend-devtools.js.map +1 -1
  44. package/lib/esm/tools/DisplayStyleTools.d.ts +3 -15
  45. package/lib/esm/tools/DisplayStyleTools.d.ts.map +1 -1
  46. package/lib/esm/tools/DisplayStyleTools.js +0 -74
  47. package/lib/esm/tools/DisplayStyleTools.js.map +1 -1
  48. package/lib/esm/tools/MapLayerTool.d.ts.map +1 -1
  49. package/lib/esm/tools/MapLayerTool.js +11 -5
  50. package/lib/esm/tools/MapLayerTool.js.map +1 -1
  51. package/lib/esm/tools/ProjectExtents.d.ts +1 -0
  52. package/lib/esm/tools/ProjectExtents.d.ts.map +1 -1
  53. package/lib/esm/tools/ProjectExtents.js +3 -0
  54. package/lib/esm/tools/ProjectExtents.js.map +1 -1
  55. package/lib/esm/tools/RealityModelTools.d.ts.map +1 -1
  56. package/lib/esm/tools/RealityModelTools.js +8 -3
  57. package/lib/esm/tools/RealityModelTools.js.map +1 -1
  58. package/lib/esm/tools/RealityTransitionTool.d.ts.map +1 -1
  59. package/lib/esm/tools/RealityTransitionTool.js +2 -2
  60. package/lib/esm/tools/RealityTransitionTool.js.map +1 -1
  61. package/lib/esm/tools/ScheduleScriptTools.d.ts +38 -0
  62. package/lib/esm/tools/ScheduleScriptTools.d.ts.map +1 -0
  63. package/lib/esm/tools/ScheduleScriptTools.js +154 -0
  64. package/lib/esm/tools/ScheduleScriptTools.js.map +1 -0
  65. package/lib/esm/tools/SelectionTools.d.ts +12 -0
  66. package/lib/esm/tools/SelectionTools.d.ts.map +1 -1
  67. package/lib/esm/tools/SelectionTools.js +60 -1
  68. package/lib/esm/tools/SelectionTools.js.map +1 -1
  69. package/lib/public/locales/en/FrontendDevTools.json +10 -1
  70. package/package.json +8 -8
@@ -0,0 +1,160 @@
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.SetScheduleScriptTool = exports.ReverseScheduleScriptTool = exports.QueryScheduleScriptTool = void 0;
8
+ /** @packageDocumentation
9
+ * @module Tools
10
+ */
11
+ const core_bentley_1 = require("@itwin/core-bentley");
12
+ const core_common_1 = require("@itwin/core-common");
13
+ const ClipboardUtilities_1 = require("../ClipboardUtilities");
14
+ const parseArgs_1 = require("./parseArgs");
15
+ const DisplayStyleTools_1 = require("./DisplayStyleTools");
16
+ /** Query the schedule script JSON from an element.
17
+ * @beta
18
+ */
19
+ class QueryScheduleScriptTool extends DisplayStyleTools_1.DisplayStyleTool {
20
+ constructor() {
21
+ super(...arguments);
22
+ this._action = "copy";
23
+ this._includeElementIds = false;
24
+ this._countElementIds = false;
25
+ this._expandElementIds = false;
26
+ }
27
+ static get minArgs() { return 0; }
28
+ static get maxArgs() { return 3; }
29
+ async parse(input, vp) {
30
+ var _a, _b, _c;
31
+ const args = (0, parseArgs_1.parseArgs)(input);
32
+ // eslint-disable-next-line deprecation/deprecation
33
+ this._sourceId = (_a = args.get("i")) !== null && _a !== void 0 ? _a : (_b = vp.displayStyle.scheduleScriptReference) === null || _b === void 0 ? void 0 : _b.sourceId;
34
+ if (!this._sourceId)
35
+ return false;
36
+ const action = (_c = args.get("a")) !== null && _c !== void 0 ? _c : "";
37
+ this._action = action.length > 0 && "b" === action[0].toLowerCase() ? "break" : "copy";
38
+ this._includeElementIds = this._countElementIds = this._expandElementIds = false;
39
+ const ids = args.get("e");
40
+ if (ids && ids.length > 0) {
41
+ switch (ids[0].toLowerCase()) {
42
+ case "i":
43
+ this._includeElementIds = true;
44
+ break;
45
+ case "c":
46
+ this._includeElementIds = this._countElementIds = true;
47
+ break;
48
+ case "e":
49
+ this._includeElementIds = this._expandElementIds = true;
50
+ break;
51
+ }
52
+ }
53
+ return true;
54
+ }
55
+ async execute(vp) {
56
+ var _a, _b;
57
+ if (!this._sourceId || !this._action)
58
+ return false;
59
+ const opts = {
60
+ displayStyle: { omitScheduleScriptElementIds: !this._includeElementIds },
61
+ renderTimeline: { omitScriptElementIds: !this._includeElementIds },
62
+ };
63
+ let script;
64
+ const props = await vp.iModel.elements.loadProps(this._sourceId, opts);
65
+ if (props.script)
66
+ script = JSON.parse(props.script.script);
67
+ else if ((_b = (_a = props.jsonProperties) === null || _a === void 0 ? void 0 : _a.styles) === null || _b === void 0 ? void 0 : _b.scheduleScript)
68
+ script = props.jsonProperties.styles.scheduleScript;
69
+ if (!script)
70
+ return false;
71
+ if (this._countElementIds || this._expandElementIds) {
72
+ for (const model of script) {
73
+ for (const elem of model.elementTimelines) {
74
+ const elemIds = typeof elem.elementIds === "string" ? core_bentley_1.CompressedId64Set.decompressArray(elem.elementIds) : elem.elementIds;
75
+ if (this._countElementIds)
76
+ elem.elementIds = elemIds.length;
77
+ else
78
+ elem.elementIds = elemIds;
79
+ }
80
+ }
81
+ }
82
+ if (this._action === "break")
83
+ debugger; // eslint-disable-line no-debugger
84
+ else
85
+ (0, ClipboardUtilities_1.copyStringToClipboard)(JSON.stringify(script, null, 2));
86
+ return true;
87
+ }
88
+ }
89
+ exports.QueryScheduleScriptTool = QueryScheduleScriptTool;
90
+ QueryScheduleScriptTool.toolId = "QueryScheduleScript";
91
+ function reverseTimeline(timeline, accept) {
92
+ if (!timeline)
93
+ return;
94
+ const len = timeline.length;
95
+ for (let i = 0; i < len; i++) {
96
+ const timeEntry = timeline.getEntry(i);
97
+ const valueEntry = timeline.getEntry(len - i - 1);
98
+ (0, core_bentley_1.assert)(undefined !== timeEntry);
99
+ (0, core_bentley_1.assert)(undefined !== valueEntry);
100
+ accept(timeEntry.time, valueEntry);
101
+ }
102
+ }
103
+ /** A tool that modifies the [RenderSchedule.Script]($common), if any, associated with the selected [Viewport]($frontend) such that the entries in each
104
+ * of its [RenderSchedule.ElementTimeline]($common)s are reversed.
105
+ * @beta
106
+ */
107
+ class ReverseScheduleScriptTool extends DisplayStyleTools_1.DisplayStyleTool {
108
+ async execute(vp) {
109
+ const script = vp === null || vp === void 0 ? void 0 : vp.displayStyle.scheduleScript;
110
+ if (!script || script.modelTimelines.some((x) => x.omitsElementIds))
111
+ return false;
112
+ const builder = new core_common_1.RenderSchedule.ScriptBuilder();
113
+ for (const modelTimeline of script.modelTimelines) {
114
+ const modelBuilder = builder.addModelTimeline(modelTimeline.modelId);
115
+ for (const elemTimeline of modelTimeline.elementTimelines) {
116
+ const elemBuilder = modelBuilder.addElementTimeline(elemTimeline.elementIds);
117
+ reverseTimeline(elemTimeline.visibility, (time, entry) => elemBuilder.addVisibility(time, entry.value, entry.interpolation));
118
+ reverseTimeline(elemTimeline.color, (time, entry) => elemBuilder.addColor(time, entry.value, entry.interpolation));
119
+ reverseTimeline(elemTimeline.transform, (time, entry) => elemBuilder.addTransform(time, entry.value, entry.components, entry.interpolation));
120
+ reverseTimeline(elemTimeline.cuttingPlane, (time, entry) => elemBuilder.addCuttingPlane(time, entry.value, entry.interpolation));
121
+ }
122
+ }
123
+ const scriptProps = builder.finish();
124
+ const newScript = core_common_1.RenderSchedule.Script.fromJSON(scriptProps);
125
+ (0, core_bentley_1.assert)(undefined !== newScript);
126
+ vp.displayStyle.scheduleScript = newScript;
127
+ return true;
128
+ }
129
+ async parse() {
130
+ return true;
131
+ }
132
+ }
133
+ exports.ReverseScheduleScriptTool = ReverseScheduleScriptTool;
134
+ ReverseScheduleScriptTool.toolId = "ReverseScheduleScript";
135
+ /** A tool that changes or removes the [RenderSchedule.Script]($common) associated with the selected [Viewport]($frontend).
136
+ * @beta
137
+ */
138
+ class SetScheduleScriptTool extends DisplayStyleTools_1.DisplayStyleTool {
139
+ static get minArgs() { return 0; }
140
+ static get maxArgs() { return 1; }
141
+ async parse(args) {
142
+ if (args.length === 0)
143
+ return true; // clear schedule script.
144
+ try {
145
+ this._script = core_common_1.RenderSchedule.Script.fromJSON(JSON.parse(args[0]));
146
+ }
147
+ catch (ex) {
148
+ if (ex instanceof Error)
149
+ alert(ex.toString());
150
+ }
151
+ return undefined !== this._script;
152
+ }
153
+ async execute(vp) {
154
+ vp.displayStyle.scheduleScript = this._script;
155
+ return true;
156
+ }
157
+ }
158
+ exports.SetScheduleScriptTool = SetScheduleScriptTool;
159
+ SetScheduleScriptTool.toolId = "SetScheduleScript";
160
+ //# sourceMappingURL=ScheduleScriptTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScheduleScriptTools.js","sourceRoot":"","sources":["../../../src/tools/ScheduleScriptTools.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 Tools\r\n */\r\n\r\nimport { assert, CompressedId64Set } from \"@itwin/core-bentley\";\r\nimport {\r\n ElementLoadOptions, RenderSchedule, RenderTimelineProps,\r\n} from \"@itwin/core-common\";\r\nimport { Viewport } from \"@itwin/core-frontend\";\r\nimport { copyStringToClipboard } from \"../ClipboardUtilities\";\r\nimport { parseArgs } from \"./parseArgs\";\r\nimport { DisplayStyleTool } from \"./DisplayStyleTools\";\r\n\r\n/** Query the schedule script JSON from an element.\r\n * @beta\r\n */\r\nexport class QueryScheduleScriptTool extends DisplayStyleTool {\r\n private _sourceId?: string;\r\n private _action: \"copy\" | \"break\" = \"copy\";\r\n private _includeElementIds = false;\r\n private _countElementIds = false;\r\n private _expandElementIds = false;\r\n\r\n public static override toolId = \"QueryScheduleScript\";\r\n public static override get minArgs() { return 0; }\r\n public static override get maxArgs() { return 3; }\r\n\r\n public async parse(input: string[], vp: Viewport) {\r\n const args = parseArgs(input);\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n this._sourceId = args.get(\"i\") ?? vp.displayStyle.scheduleScriptReference?.sourceId;\r\n if (!this._sourceId)\r\n return false;\r\n\r\n const action = args.get(\"a\") ?? \"\";\r\n this._action = action.length > 0 && \"b\" === action[0].toLowerCase() ? \"break\" : \"copy\";\r\n\r\n this._includeElementIds = this._countElementIds = this._expandElementIds = false;\r\n const ids = args.get(\"e\");\r\n if (ids && ids.length > 0) {\r\n switch (ids[0].toLowerCase()) {\r\n case \"i\":\r\n this._includeElementIds = true;\r\n break;\r\n case \"c\":\r\n this._includeElementIds = this._countElementIds = true;\r\n break;\r\n case \"e\":\r\n this._includeElementIds = this._expandElementIds = true;\r\n break;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public async execute(vp: Viewport) {\r\n if (!this._sourceId || !this._action)\r\n return false;\r\n\r\n const opts: ElementLoadOptions = {\r\n displayStyle: { omitScheduleScriptElementIds: !this._includeElementIds },\r\n renderTimeline: { omitScriptElementIds: !this._includeElementIds },\r\n };\r\n\r\n let script;\r\n const props = await vp.iModel.elements.loadProps(this._sourceId, opts) as any;\r\n if (props.script)\r\n script = JSON.parse((props.script as RenderTimelineProps).script) as RenderSchedule.ScriptProps;\r\n else if (props.jsonProperties?.styles?.scheduleScript)\r\n script = props.jsonProperties.styles.scheduleScript as RenderSchedule.ScriptProps;\r\n\r\n if (!script)\r\n return false;\r\n\r\n if (this._countElementIds || this._expandElementIds) {\r\n for (const model of script) {\r\n for (const elem of model.elementTimelines) {\r\n const elemIds = typeof elem.elementIds === \"string\" ? CompressedId64Set.decompressArray(elem.elementIds) : elem.elementIds;\r\n if (this._countElementIds)\r\n elem.elementIds = elemIds.length as any;\r\n else\r\n elem.elementIds = elemIds;\r\n }\r\n }\r\n }\r\n\r\n if (this._action === \"break\")\r\n debugger; // eslint-disable-line no-debugger\r\n else\r\n copyStringToClipboard(JSON.stringify(script, null, 2));\r\n\r\n return true;\r\n }\r\n}\r\n\r\ninterface Timeline<Entry extends RenderSchedule.TimelineEntry> {\r\n readonly length: number;\r\n getEntry(index: number): Entry | undefined;\r\n}\r\n\r\nfunction reverseTimeline<Entry extends RenderSchedule.TimelineEntry>(timeline: Timeline<Entry> | undefined, accept: (time: number, entry: Entry) => void): void {\r\n if (!timeline)\r\n return;\r\n\r\n const len = timeline.length;\r\n for (let i = 0; i < len; i++) {\r\n const timeEntry = timeline.getEntry(i);\r\n const valueEntry = timeline.getEntry(len - i - 1);\r\n assert(undefined !== timeEntry);\r\n assert(undefined !== valueEntry);\r\n accept(timeEntry.time, valueEntry);\r\n }\r\n}\r\n\r\n/** A tool that modifies the [RenderSchedule.Script]($common), if any, associated with the selected [Viewport]($frontend) such that the entries in each\r\n * of its [RenderSchedule.ElementTimeline]($common)s are reversed.\r\n * @beta\r\n */\r\nexport class ReverseScheduleScriptTool extends DisplayStyleTool {\r\n public static override toolId = \"ReverseScheduleScript\";\r\n\r\n public override async execute(vp: Viewport): Promise<boolean> {\r\n const script = vp?.displayStyle.scheduleScript;\r\n if (!script || script.modelTimelines.some((x) => x.omitsElementIds))\r\n return false;\r\n\r\n const builder = new RenderSchedule.ScriptBuilder();\r\n for (const modelTimeline of script.modelTimelines) {\r\n const modelBuilder = builder.addModelTimeline(modelTimeline.modelId);\r\n for (const elemTimeline of modelTimeline.elementTimelines) {\r\n const elemBuilder = modelBuilder.addElementTimeline(elemTimeline.elementIds);\r\n reverseTimeline(elemTimeline.visibility, (time, entry) => elemBuilder.addVisibility(time, entry.value, entry.interpolation));\r\n reverseTimeline(elemTimeline.color, (time, entry) => elemBuilder.addColor(time, entry.value, entry.interpolation));\r\n reverseTimeline(elemTimeline.transform, (time, entry) => elemBuilder.addTransform(time, entry.value, entry.components, entry.interpolation));\r\n reverseTimeline(elemTimeline.cuttingPlane, (time, entry) => elemBuilder.addCuttingPlane(time, entry.value, entry.interpolation));\r\n }\r\n }\r\n\r\n const scriptProps = builder.finish();\r\n const newScript = RenderSchedule.Script.fromJSON(scriptProps);\r\n assert(undefined !== newScript);\r\n\r\n vp.displayStyle.scheduleScript = newScript;\r\n return true;\r\n }\r\n\r\n public async parse() {\r\n return true;\r\n }\r\n}\r\n\r\n/** A tool that changes or removes the [RenderSchedule.Script]($common) associated with the selected [Viewport]($frontend).\r\n * @beta\r\n */\r\nexport class SetScheduleScriptTool extends DisplayStyleTool {\r\n public static override toolId = \"SetScheduleScript\";\r\n public static override get minArgs() { return 0; }\r\n public static override get maxArgs() { return 1; }\r\n\r\n private _script?: RenderSchedule.Script;\r\n\r\n public override async parse(args: string[]): Promise<boolean> {\r\n if (args.length === 0)\r\n return true; // clear schedule script.\r\n\r\n try {\r\n this._script = RenderSchedule.Script.fromJSON(JSON.parse(args[0]));\r\n } catch (ex) {\r\n if (ex instanceof Error)\r\n alert(ex.toString());\r\n }\r\n\r\n return undefined !== this._script;\r\n }\r\n\r\n public override async execute(vp: Viewport): Promise<boolean> {\r\n vp.displayStyle.scheduleScript = this._script;\r\n return true;\r\n }\r\n}\r\n"]}
@@ -14,4 +14,16 @@ export declare class SelectElementsByIdTool extends Tool {
14
14
  run(ids?: Id64Arg): Promise<boolean>;
15
15
  parseAndRun(...args: string[]): Promise<boolean>;
16
16
  }
17
+ /** A tool that outputs the Ids of the elements in the [SelectionSet]($frontend) of the [IModelConnection]($frontend) associated with the selected [Viewport]($frontend).
18
+ * @beta
19
+ */
20
+ export declare class DumpSelectionSetTool extends Tool {
21
+ static toolId: string;
22
+ static get minArgs(): number;
23
+ static get maxArgs(): number;
24
+ private _format;
25
+ private _copy?;
26
+ run(): Promise<boolean>;
27
+ parseAndRun(...input: string[]): Promise<boolean>;
28
+ }
17
29
  //# sourceMappingURL=SelectionTools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectionTools.d.ts","sourceRoot":"","sources":["../../../src/tools/SelectionTools.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAa,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,IAAI;IAC9C,OAAuB,MAAM,SAAwB;IACrD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,cAAwB;IAEpC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAQpC,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAGvE"}
1
+ {"version":3,"file":"SelectionTools.d.ts","sourceRoot":"","sources":["../../../src/tools/SelectionTools.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAqB,OAAO,EAAuB,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAA0D,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAIpG;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,IAAI;IAC9C,OAAuB,MAAM,SAAwB;IACrD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,cAAwB;IAEpC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAQpC,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAGvE;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,IAAI;IAC5C,OAAuB,MAAM,SAAsB;IACnD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,WAAgB;IAElD,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,KAAK,CAAC,CAAU;IAEF,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;IAwBvB,WAAW,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAaxE"}
@@ -4,8 +4,14 @@
4
4
  * See LICENSE.md in the project root for license terms and full copyright notice.
5
5
  *--------------------------------------------------------------------------------------------*/
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.SelectElementsByIdTool = void 0;
7
+ exports.DumpSelectionSetTool = exports.SelectElementsByIdTool = void 0;
8
+ /** @packageDocumentation
9
+ * @module Tools
10
+ */
11
+ const core_bentley_1 = require("@itwin/core-bentley");
8
12
  const core_frontend_1 = require("@itwin/core-frontend");
13
+ const ClipboardUtilities_1 = require("../ClipboardUtilities");
14
+ const parseArgs_1 = require("./parseArgs");
9
15
  /** Replaces the contents of the selection set with the set of element Ids specified.
10
16
  * Element Ids are separated by whitespace.
11
17
  * @beta
@@ -25,4 +31,58 @@ class SelectElementsByIdTool extends core_frontend_1.Tool {
25
31
  }
26
32
  exports.SelectElementsByIdTool = SelectElementsByIdTool;
27
33
  SelectElementsByIdTool.toolId = "SelectElementsById";
34
+ /** A tool that outputs the Ids of the elements in the [SelectionSet]($frontend) of the [IModelConnection]($frontend) associated with the selected [Viewport]($frontend).
35
+ * @beta
36
+ */
37
+ class DumpSelectionSetTool extends core_frontend_1.Tool {
38
+ constructor() {
39
+ super(...arguments);
40
+ this._format = "list";
41
+ }
42
+ static get minArgs() { return 0; }
43
+ static get maxArgs() { return 2; }
44
+ async run() {
45
+ const vp = core_frontend_1.IModelApp.viewManager.selectedView;
46
+ if (!vp)
47
+ return false;
48
+ const elems = Array.from(vp.iModel.selectionSet.elements);
49
+ core_bentley_1.OrderedId64Iterable.sortArray(elems);
50
+ let output;
51
+ switch (this._format) {
52
+ case "compressed":
53
+ output = core_bentley_1.CompressedId64Set.compressArray(elems);
54
+ break;
55
+ case "json":
56
+ output = JSON.stringify(elems);
57
+ break;
58
+ default:
59
+ output = elems.join(" ");
60
+ break;
61
+ }
62
+ if (this._copy)
63
+ (0, ClipboardUtilities_1.copyStringToClipboard)(output);
64
+ const brief = `Selection set dumped${this._copy ? " to clipboard" : ""}.`;
65
+ const details = new core_frontend_1.NotifyMessageDetails(core_frontend_1.OutputMessagePriority.Info, brief, output);
66
+ core_frontend_1.IModelApp.notifications.outputMessage(details);
67
+ return true;
68
+ }
69
+ async parseAndRun(...input) {
70
+ const args = (0, parseArgs_1.parseArgs)(input);
71
+ this._copy = args.getBoolean("c");
72
+ const formatArg = args.get("f");
73
+ if (formatArg) {
74
+ switch (formatArg[0].toLowerCase()) {
75
+ case "j":
76
+ this._format = "json";
77
+ break;
78
+ case "c":
79
+ this._format = "compressed";
80
+ break;
81
+ }
82
+ }
83
+ return this.run();
84
+ }
85
+ }
86
+ exports.DumpSelectionSetTool = DumpSelectionSetTool;
87
+ DumpSelectionSetTool.toolId = "DumpSelectionSet";
28
88
  //# sourceMappingURL=SelectionTools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectionTools.js","sourceRoot":"","sources":["../../../src/tools/SelectionTools.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAO/F,wDAAuD;AAEvD;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,oBAAI;IAEvC,MAAM,KAAc,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,KAAc,OAAO,KAAK,OAAO,SAAS,CAAC,CAAC,CAAC;IAE1C,KAAK,CAAC,GAAG,CAAC,GAAa;QACrC,MAAM,EAAE,GAAG,yBAAS,CAAC,WAAW,CAAC,YAAY,CAAC;QAC9C,IAAI,SAAS,KAAK,EAAE,IAAI,SAAS,KAAK,GAAG;YACvC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEtC,OAAO,IAAI,CAAC;IACd,CAAC;IAEe,KAAK,CAAC,WAAW,CAAC,GAAG,IAAc;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;;AAfH,wDAgBC;AAfwB,6BAAM,GAAG,oBAAoB,CAAC","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 Tools\r\n */\r\n\r\nimport { Id64Arg } from \"@itwin/core-bentley\";\r\nimport { IModelApp, Tool } from \"@itwin/core-frontend\";\r\n\r\n/** Replaces the contents of the selection set with the set of element Ids specified.\r\n * Element Ids are separated by whitespace.\r\n * @beta\r\n */\r\nexport class SelectElementsByIdTool extends Tool {\r\n public static override toolId = \"SelectElementsById\";\r\n public static override get minArgs() { return 1; }\r\n public static override get maxArgs() { return undefined; }\r\n\r\n public override async run(ids?: Id64Arg): Promise<boolean> {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (undefined !== vp && undefined !== ids)\r\n vp.iModel.selectionSet.replace(ids);\r\n\r\n return true;\r\n }\r\n\r\n public override async parseAndRun(...args: string[]): Promise<boolean> {\r\n return this.run(args);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"SelectionTools.js","sourceRoot":"","sources":["../../../src/tools/SelectionTools.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F;;GAEG;AAEH,sDAAsF;AACtF,wDAAoG;AACpG,8DAA8D;AAC9D,2CAAwC;AAExC;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,oBAAI;IAEvC,MAAM,KAAc,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,KAAc,OAAO,KAAK,OAAO,SAAS,CAAC,CAAC,CAAC;IAE1C,KAAK,CAAC,GAAG,CAAC,GAAa;QACrC,MAAM,EAAE,GAAG,yBAAS,CAAC,WAAW,CAAC,YAAY,CAAC;QAC9C,IAAI,SAAS,KAAK,EAAE,IAAI,SAAS,KAAK,GAAG;YACvC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEtC,OAAO,IAAI,CAAC;IACd,CAAC;IAEe,KAAK,CAAC,WAAW,CAAC,GAAG,IAAc;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;;AAfH,wDAgBC;AAfwB,6BAAM,GAAG,oBAAoB,CAAC;AAiBvD;;GAEG;AACH,MAAa,oBAAqB,SAAQ,oBAAI;IAA9C;;QAKU,YAAO,GAAmC,MAAM,CAAC;IAwC3D,CAAC;IA3CQ,MAAM,KAAc,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,KAAc,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAKlC,KAAK,CAAC,GAAG;QACvB,MAAM,EAAE,GAAG,yBAAS,CAAC,WAAW,CAAC,YAAY,CAAC;QAC9C,IAAI,CAAC,EAAE;YACL,OAAO,KAAK,CAAC;QAEf,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1D,kCAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAErC,IAAI,MAAM,CAAC;QACX,QAAQ,IAAI,CAAC,OAAO,EAAE;YACpB,KAAK,YAAY;gBAAE,MAAM,GAAG,gCAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAAC,MAAM;YAC1E,KAAK,MAAM;gBAAE,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAAC,MAAM;YACnD;gBAAS,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAAC,MAAM;SAC1C;QAED,IAAI,IAAI,CAAC,KAAK;YACZ,IAAA,0CAAqB,EAAC,MAAM,CAAC,CAAC;QAEhC,MAAM,KAAK,GAAG,uBAAuB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;QAC1E,MAAM,OAAO,GAAG,IAAI,oCAAoB,CAAC,qCAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACpF,yBAAS,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAEe,KAAK,CAAC,WAAW,CAAC,GAAG,KAAe;QAClD,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,SAAS,EAAE;YACb,QAAQ,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE;gBAClC,KAAK,GAAG;oBAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;oBAAC,MAAM;gBACvC,KAAK,GAAG;oBAAE,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;oBAAC,MAAM;aAC9C;SACF;QAED,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;IACpB,CAAC;;AA5CH,oDA6CC;AA5CwB,2BAAM,GAAG,kBAAkB,CAAC","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 Tools\r\n */\r\n\r\nimport { CompressedId64Set, Id64Arg, OrderedId64Iterable } from \"@itwin/core-bentley\";\r\nimport { IModelApp, NotifyMessageDetails, OutputMessagePriority, Tool } from \"@itwin/core-frontend\";\r\nimport { copyStringToClipboard } from \"../ClipboardUtilities\";\r\nimport { parseArgs } from \"./parseArgs\";\r\n\r\n/** Replaces the contents of the selection set with the set of element Ids specified.\r\n * Element Ids are separated by whitespace.\r\n * @beta\r\n */\r\nexport class SelectElementsByIdTool extends Tool {\r\n public static override toolId = \"SelectElementsById\";\r\n public static override get minArgs() { return 1; }\r\n public static override get maxArgs() { return undefined; }\r\n\r\n public override async run(ids?: Id64Arg): Promise<boolean> {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (undefined !== vp && undefined !== ids)\r\n vp.iModel.selectionSet.replace(ids);\r\n\r\n return true;\r\n }\r\n\r\n public override async parseAndRun(...args: string[]): Promise<boolean> {\r\n return this.run(args);\r\n }\r\n}\r\n\r\n/** A tool that outputs the Ids of the elements in the [SelectionSet]($frontend) of the [IModelConnection]($frontend) associated with the selected [Viewport]($frontend).\r\n * @beta\r\n */\r\nexport class DumpSelectionSetTool extends Tool {\r\n public static override toolId = \"DumpSelectionSet\";\r\n public static override get minArgs() { return 0; }\r\n public static override get maxArgs() { return 2; }\r\n\r\n private _format: \"json\" | \"compressed\" | \"list\" = \"list\";\r\n private _copy?: boolean;\r\n\r\n public override async run(): Promise<boolean> {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (!vp)\r\n return false;\r\n\r\n const elems = Array.from(vp.iModel.selectionSet.elements);\r\n OrderedId64Iterable.sortArray(elems);\r\n\r\n let output;\r\n switch (this._format) {\r\n case \"compressed\": output = CompressedId64Set.compressArray(elems); break;\r\n case \"json\": output = JSON.stringify(elems); break;\r\n default: output = elems.join(\" \"); break;\r\n }\r\n\r\n if (this._copy)\r\n copyStringToClipboard(output);\r\n\r\n const brief = `Selection set dumped${this._copy ? \" to clipboard\" : \"\"}.`;\r\n const details = new NotifyMessageDetails(OutputMessagePriority.Info, brief, output);\r\n IModelApp.notifications.outputMessage(details);\r\n return true;\r\n }\r\n\r\n public override async parseAndRun(...input: string[]): Promise<boolean> {\r\n const args = parseArgs(input);\r\n this._copy = args.getBoolean(\"c\");\r\n const formatArg = args.get(\"f\");\r\n if (formatArg) {\r\n switch (formatArg[0].toLowerCase()) {\r\n case \"j\": this._format = \"json\"; break;\r\n case \"c\": this._format = \"compressed\"; break;\r\n }\r\n }\r\n\r\n return this.run();\r\n }\r\n}\r\n"]}
@@ -15,5 +15,6 @@ export declare class FrontendDevTools {
15
15
  * @beta
16
16
  */
17
17
  static initialize(): Promise<void>;
18
+ private static shutdown;
18
19
  }
19
20
  //# sourceMappingURL=FrontEndDevTools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FrontEndDevTools.d.ts","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":"AAIA;;GAEG;AA+DH;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAC,YAAY,CAAS;IAEpC;;;;;;;OAOG;WACiB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAyJhD"}
1
+ {"version":3,"file":"FrontEndDevTools.d.ts","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":"AAIA;;GAEG;AAgEH;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAC,YAAY,CAAS;IAEpC;;;;;;;OAOG;WACiB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgK/C,OAAO,CAAC,MAAM,CAAC,QAAQ;CAGxB"}
@@ -19,7 +19,8 @@ import { ChangeCameraTool, ChangeEmphasisSettingsTool, ChangeFlashSettingsTool,
19
19
  import { AnimationIntervalTool } from "./tools/AnimationIntervalTool";
20
20
  import { ChangeUnitsTool } from "./tools/ChangeUnitsTool";
21
21
  import { ClipColorTool, TestClipStyleTool, ToggleSectionCutTool } from "./tools/ClipTools";
22
- import { ApplyRenderingStyleTool, ChangeBackgroundColorTool, ChangeViewFlagsTool, OverrideSubCategoryTool, QueryScheduleScriptTool, SaveRenderingStyleTool, SkyCubeTool, SkySphereTool, ToggleSkyboxTool, ToggleWiremeshTool, WoWIgnoreBackgroundTool, } from "./tools/DisplayStyleTools";
22
+ import { ApplyRenderingStyleTool, ChangeBackgroundColorTool, ChangeViewFlagsTool, OverrideSubCategoryTool, SaveRenderingStyleTool, SkyCubeTool, SkySphereTool, ToggleSkyboxTool, ToggleWiremeshTool, WoWIgnoreBackgroundTool, } from "./tools/DisplayStyleTools";
23
+ import { QueryScheduleScriptTool, ReverseScheduleScriptTool, SetScheduleScriptTool } from "./tools/ScheduleScriptTools";
23
24
  import { ClearEmphasizedElementsTool, ClearIsolatedElementsTool, EmphasizeSelectedElementsTool, EmphasizeVisibleElementsTool, IsolateSelectedElementsTool, } from "./tools/EmphasizeElementsTool";
24
25
  import { ToggleFrustumSnapshotTool, ToggleSelectedViewFrustumTool, ToggleShadowFrustumTool } from "./tools/FrustumDecoration";
25
26
  import { InspectElementTool } from "./tools/InspectElementTool";
@@ -34,7 +35,7 @@ import { CompileShadersTool, LoseWebGLContextTool, ToggleDPIForLODTool } from ".
34
35
  import { SetAASamplesTool, ToggleDrapeFrustumTool, TogglePrimitiveVisibilityTool, ToggleReadPixelsTool, ToggleRealityTileBounds, ToggleRealityTileFreeze, ToggleRealityTileLogging, ToggleRealityTilePreload, ToggleVolClassIntersect, } from "./tools/RenderTargetTools";
35
36
  import { ReportWebGLCompatibilityTool } from "./tools/ReportWebGLCompatibilityTool";
36
37
  import { ApplyViewByIdTool, ApplyViewTool, SaveViewTool } from "./tools/SavedViews";
37
- import { SelectElementsByIdTool } from "./tools/SelectionTools";
38
+ import { DumpSelectionSetTool, SelectElementsByIdTool } from "./tools/SelectionTools";
38
39
  import { SetGpuMemoryLimitTool } from "./tools/SetGpuMemoryLimitTool";
39
40
  import { ElementIdFromSourceAspectIdTool, SourceAspectIdFromElementIdTool } from "./tools/SourceAspectIdTools";
40
41
  import { ToggleTileRequestDecorationTool } from "./tools/TileRequestDecoration";
@@ -56,6 +57,8 @@ export class FrontendDevTools {
56
57
  if (this._initialized)
57
58
  return;
58
59
  this._initialized = true;
60
+ // clean up if we're being shut down
61
+ IModelApp.onBeforeShutdown.addListener(() => this.shutdown());
59
62
  const namespace = "FrontendDevTools";
60
63
  const namespacePromise = IModelApp.localization.registerNamespace(namespace);
61
64
  const tools = [
@@ -86,6 +89,7 @@ export class FrontendDevTools {
86
89
  DefaultTileSizeModifierTool,
87
90
  DetachMapLayersTool,
88
91
  DumpPlanProjectionSettingsTool,
92
+ DumpSelectionSetTool,
89
93
  EdgeDetectionEffect,
90
94
  EmbossEffect,
91
95
  ElementIdFromSourceAspectIdTool,
@@ -116,6 +120,7 @@ export class FrontendDevTools {
116
120
  RealityTransitionTool,
117
121
  ReorderMapLayers,
118
122
  ReportWebGLCompatibilityTool,
123
+ ReverseScheduleScriptTool,
119
124
  SaturationConfig,
120
125
  SaturationEffect,
121
126
  SaveRenderingStyleTool,
@@ -123,6 +128,7 @@ export class FrontendDevTools {
123
128
  SelectElementsByIdTool,
124
129
  SetAASamplesTool,
125
130
  SetAspectRatioSkewTool,
131
+ SetScheduleScriptTool,
126
132
  ToggleVolClassIntersect,
127
133
  SetMapBaseTool,
128
134
  SharpenEffect,
@@ -201,6 +207,9 @@ export class FrontendDevTools {
201
207
  tool.register(namespace);
202
208
  return namespacePromise;
203
209
  }
210
+ static shutdown() {
211
+ this._initialized = false;
212
+ }
204
213
  }
205
214
  FrontendDevTools._initialized = false;
206
215
  //# sourceMappingURL=FrontEndDevTools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FrontEndDevTools.js","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport { EdgeDetectionEffect, EmbossEffect, GaussianBlurEffect, SharpenEffect, SharpnessEffect, UnsharpenEffect } from \"./effects/Convolution\";\nimport { ClearEffectsTool } from \"./effects/EffectTools\";\nimport { ExplosionEffect } from \"./effects/Explosion\";\nimport { FlipImageConfig, FlipImageEffect } from \"./effects/FlipImage\";\nimport { LensDistortionConfig, LensDistortionEffect } from \"./effects/LensDistortion\";\nimport { SaturationConfig, SaturationEffect } from \"./effects/Saturation\";\nimport { SnowEffect } from \"./effects/Snow\";\nimport { VignetteConfig, VignetteEffect } from \"./effects/Vignette\";\nimport {\n MaskBackgroundMapByElementTool, MaskBackgroundMapByExcludedElementTool, MaskBackgroundMapByModelTool, MaskBackgroundMapBySubCategoryTool, MaskRealityModelByElementTool, MaskRealityModelByExcludedElementTool,\n MaskRealityModelByModelTool, MaskRealityModelBySubCategoryTool, SetHigherPriorityRealityModelMasking, SetMapHigherPriorityMasking, UnmaskMapTool, UnmaskRealityModelTool,\n} from \"./tools/PlanarMaskTools\";\nimport {\n ChangeCameraTool, ChangeEmphasisSettingsTool, ChangeFlashSettingsTool, ChangeHiliteSettingsTool, DefaultTileSizeModifierTool, FadeOutTool, FreezeSceneTool, SetAspectRatioSkewTool, ShowTileVolumesTool,\n Toggle3dManipulationsTool, ToggleDrawingGraphicsTool, ToggleSectionDrawingSpatialViewTool, ToggleTileTreeReferencesTool, ToggleViewAttachmentBoundariesTool, ToggleViewAttachmentClipShapesTool,\n ToggleViewAttachmentsTool, ViewportAddRealityModel, ViewportTileSizeModifierTool,\n} from \"./tools/ViewportTools\";\nimport { AnimationIntervalTool } from \"./tools/AnimationIntervalTool\";\nimport { ChangeUnitsTool } from \"./tools/ChangeUnitsTool\";\nimport { ClipColorTool, TestClipStyleTool, ToggleSectionCutTool } from \"./tools/ClipTools\";\nimport {\n ApplyRenderingStyleTool, ChangeBackgroundColorTool, ChangeViewFlagsTool, OverrideSubCategoryTool, QueryScheduleScriptTool, SaveRenderingStyleTool, SkyCubeTool, SkySphereTool, ToggleSkyboxTool,\n ToggleWiremeshTool, WoWIgnoreBackgroundTool,\n} from \"./tools/DisplayStyleTools\";\nimport {\n ClearEmphasizedElementsTool, ClearIsolatedElementsTool, EmphasizeSelectedElementsTool, EmphasizeVisibleElementsTool, IsolateSelectedElementsTool,\n} from \"./tools/EmphasizeElementsTool\";\nimport { ToggleFrustumSnapshotTool, ToggleSelectedViewFrustumTool, ToggleShadowFrustumTool } from \"./tools/FrustumDecoration\";\nimport { InspectElementTool } from \"./tools/InspectElementTool\";\nimport {\n AttachArcGISMapLayerByUrlTool, AttachMapLayerTool, AttachMapOverlayTool, AttachModelMapLayerTool, AttachTileURLMapLayerByUrlTool, AttachWmsMapLayerByUrlTool,\n AttachWmtsMapLayerByUrlTool, DetachMapLayersTool, MapBaseColorTool, MapBaseTransparencyTool, MapBaseVisibilityTool, MapLayerSubLayerVisibilityTool,\n MapLayerTransparencyTool, MapLayerVisibilityTool, MapLayerZoomTool, ReorderMapLayers, SetMapBaseTool, ToggleTerrainTool,\n} from \"./tools/MapLayerTool\";\nimport { MeasureTileLoadTimeTool } from \"./tools/MeasureTileLoadTime\";\nimport {\n ClearModelAppearanceOverrides, SetModelColorTool, SetModelEmphasizedTool, SetModelIgnoresMaterialsTool, SetModelLineCodeTool,\n SetModelLineWeightTool, SetModelLocateTool, SetModelTransparencyTool,\n} from \"./tools/ModelAppearanceTools\";\nimport { ChangePlanProjectionSettingsTool, DumpPlanProjectionSettingsTool, OverrideSubCategoryPriorityTool } from \"./tools/PlanProjectionTools\";\nimport { ToggleProjectExtentsTool } from \"./tools/ProjectExtents\";\nimport {\n AttachCesiumAssetTool, AttachRealityModelTool, ClearRealityModelAppearanceOverrides, DetachRealityModelTool, SaveRealityModelTool,\n SetRealityModelColorTool, SetRealityModelEmphasizedTool, SetRealityModelLocateTool, SetRealityModelTransparencyTool, ToggleOSMBuildingDisplay,\n} from \"./tools/RealityModelTools\";\nimport { RealityTransitionTool } from \"./tools/RealityTransitionTool\";\nimport { CompileShadersTool, LoseWebGLContextTool, ToggleDPIForLODTool } from \"./tools/RenderSystemTools\";\nimport {\n SetAASamplesTool, ToggleDrapeFrustumTool, TogglePrimitiveVisibilityTool, ToggleReadPixelsTool, ToggleRealityTileBounds, ToggleRealityTileFreeze,\n ToggleRealityTileLogging, ToggleRealityTilePreload, ToggleVolClassIntersect,\n} from \"./tools/RenderTargetTools\";\nimport { ReportWebGLCompatibilityTool } from \"./tools/ReportWebGLCompatibilityTool\";\nimport { ApplyViewByIdTool, ApplyViewTool, SaveViewTool } from \"./tools/SavedViews\";\nimport { SelectElementsByIdTool } from \"./tools/SelectionTools\";\nimport { SetGpuMemoryLimitTool } from \"./tools/SetGpuMemoryLimitTool\";\nimport { ElementIdFromSourceAspectIdTool, SourceAspectIdFromElementIdTool } from \"./tools/SourceAspectIdTools\";\nimport { ToggleTileRequestDecorationTool } from \"./tools/TileRequestDecoration\";\nimport { ToggleTileTreeBoundsDecorationTool } from \"./tools/TileTreeBoundsDecoration\";\nimport { ToggleToolTipsTool } from \"./tools/ToolTipProvider\";\r\n\n/** Entry-point for the package. Before using the package you *must* call [[FrontendDevTools.initialize]].\n * @beta\n */\nexport class FrontendDevTools {\n private static _initialized = false;\n\n /** Call this before using the package (e.g., before instantiating any of its widgets or attempting to use any of its tools.\n * To initialize when starting up your app:\n * ```ts\n * IModelApp.startup();\n * await FrontendDevTools.initialize();\n * ```\n * @beta\n */\n public static async initialize(): Promise<void> {\n if (this._initialized)\n return;\n\n this._initialized = true;\n\n const namespace = \"FrontendDevTools\";\n const namespacePromise = IModelApp.localization.registerNamespace(namespace);\n const tools = [\n AttachMapLayerTool,\n AttachMapOverlayTool,\n AttachModelMapLayerTool,\n AttachArcGISMapLayerByUrlTool,\n AttachWmsMapLayerByUrlTool,\n AttachWmtsMapLayerByUrlTool,\n AttachTileURLMapLayerByUrlTool,\n AnimationIntervalTool,\n ApplyRenderingStyleTool,\n ApplyViewByIdTool,\n ApplyViewTool,\n ChangeBackgroundColorTool,\n ChangeCameraTool,\n ChangeEmphasisSettingsTool,\n ChangeFlashSettingsTool,\n ChangeHiliteSettingsTool,\n ChangePlanProjectionSettingsTool,\n ChangeUnitsTool,\n ChangeViewFlagsTool,\n ClearEffectsTool,\n ClearEmphasizedElementsTool,\n ClearIsolatedElementsTool,\n ClipColorTool,\n CompileShadersTool,\n DefaultTileSizeModifierTool,\n DetachMapLayersTool,\n DumpPlanProjectionSettingsTool,\n EdgeDetectionEffect,\n EmbossEffect,\n ElementIdFromSourceAspectIdTool,\n EmphasizeSelectedElementsTool,\n EmphasizeVisibleElementsTool,\n ExplosionEffect,\n FadeOutTool,\n FlipImageConfig,\n FlipImageEffect,\n FreezeSceneTool,\n GaussianBlurEffect,\n InspectElementTool,\n IsolateSelectedElementsTool,\n LensDistortionConfig,\n LensDistortionEffect,\n LoseWebGLContextTool,\n MapLayerTransparencyTool,\n MapLayerVisibilityTool,\n MapLayerSubLayerVisibilityTool,\n MapLayerZoomTool,\n MapBaseColorTool,\n MapBaseTransparencyTool,\n MapBaseVisibilityTool,\n MeasureTileLoadTimeTool,\n OverrideSubCategoryTool,\n OverrideSubCategoryPriorityTool,\n QueryScheduleScriptTool,\n RealityTransitionTool,\n ReorderMapLayers,\n ReportWebGLCompatibilityTool,\n SaturationConfig,\n SaturationEffect,\n SaveRenderingStyleTool,\n SaveViewTool,\n SelectElementsByIdTool,\n SetAASamplesTool,\n SetAspectRatioSkewTool,\n ToggleVolClassIntersect,\n SetMapBaseTool,\n SharpenEffect,\n SharpnessEffect,\n ShowTileVolumesTool,\n SkyCubeTool,\n SkySphereTool,\n SnowEffect,\n SourceAspectIdFromElementIdTool,\n TestClipStyleTool,\n Toggle3dManipulationsTool,\n ToggleDrawingGraphicsTool,\n ToggleDPIForLODTool,\n ToggleDrapeFrustumTool,\n ToggleFrustumSnapshotTool,\n TogglePrimitiveVisibilityTool,\n ToggleProjectExtentsTool,\n ToggleReadPixelsTool,\n ToggleSectionDrawingSpatialViewTool,\n ToggleSelectedViewFrustumTool,\n ToggleShadowFrustumTool,\n ToggleSkyboxTool,\n ToggleTileRequestDecorationTool,\n ToggleTileTreeBoundsDecorationTool,\n ToggleTileTreeReferencesTool,\n ToggleToolTipsTool,\n ToggleViewAttachmentBoundariesTool,\n ToggleViewAttachmentClipShapesTool,\n ToggleViewAttachmentsTool,\n ToggleWiremeshTool,\n ToggleRealityTileBounds,\n ToggleRealityTilePreload,\n ToggleRealityTileLogging,\n ToggleRealityTileFreeze,\n ToggleSectionCutTool,\n ToggleTerrainTool,\n UnsharpenEffect,\n ViewportAddRealityModel,\n ViewportTileSizeModifierTool,\n VignetteConfig,\n VignetteEffect,\n AttachRealityModelTool,\n DetachRealityModelTool,\n SaveRealityModelTool,\n SetGpuMemoryLimitTool,\n SetRealityModelLocateTool,\n SetRealityModelEmphasizedTool,\n SetRealityModelTransparencyTool,\n SetRealityModelColorTool,\n SetModelLocateTool,\n SetModelEmphasizedTool,\n SetModelTransparencyTool,\n SetModelColorTool,\n SetModelLineWeightTool,\n SetModelLineCodeTool,\n SetModelIgnoresMaterialsTool,\n ClearRealityModelAppearanceOverrides,\n ClearModelAppearanceOverrides,\n AttachCesiumAssetTool,\n ToggleOSMBuildingDisplay,\n SetHigherPriorityRealityModelMasking,\n SetMapHigherPriorityMasking,\n MaskRealityModelByModelTool,\n MaskRealityModelBySubCategoryTool,\n MaskRealityModelByElementTool,\n MaskRealityModelByExcludedElementTool,\n UnmaskRealityModelTool,\n MaskBackgroundMapByModelTool,\n MaskBackgroundMapBySubCategoryTool,\n MaskBackgroundMapByElementTool,\n MaskBackgroundMapByExcludedElementTool,\n UnmaskMapTool,\n WoWIgnoreBackgroundTool,\n ];\n\n for (const tool of tools)\n tool.register(namespace);\n\n return namespacePromise;\n }\n}\n"]}
1
+ {"version":3,"file":"FrontEndDevTools.js","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utilities\r\n */\r\n\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\nimport { EdgeDetectionEffect, EmbossEffect, GaussianBlurEffect, SharpenEffect, SharpnessEffect, UnsharpenEffect } from \"./effects/Convolution\";\r\nimport { ClearEffectsTool } from \"./effects/EffectTools\";\r\nimport { ExplosionEffect } from \"./effects/Explosion\";\r\nimport { FlipImageConfig, FlipImageEffect } from \"./effects/FlipImage\";\r\nimport { LensDistortionConfig, LensDistortionEffect } from \"./effects/LensDistortion\";\r\nimport { SaturationConfig, SaturationEffect } from \"./effects/Saturation\";\r\nimport { SnowEffect } from \"./effects/Snow\";\r\nimport { VignetteConfig, VignetteEffect } from \"./effects/Vignette\";\r\nimport {\r\n MaskBackgroundMapByElementTool, MaskBackgroundMapByExcludedElementTool, MaskBackgroundMapByModelTool, MaskBackgroundMapBySubCategoryTool, MaskRealityModelByElementTool, MaskRealityModelByExcludedElementTool,\r\n MaskRealityModelByModelTool, MaskRealityModelBySubCategoryTool, SetHigherPriorityRealityModelMasking, SetMapHigherPriorityMasking, UnmaskMapTool, UnmaskRealityModelTool,\r\n} from \"./tools/PlanarMaskTools\";\r\nimport {\r\n ChangeCameraTool, ChangeEmphasisSettingsTool, ChangeFlashSettingsTool, ChangeHiliteSettingsTool, DefaultTileSizeModifierTool, FadeOutTool, FreezeSceneTool, SetAspectRatioSkewTool, ShowTileVolumesTool,\r\n Toggle3dManipulationsTool, ToggleDrawingGraphicsTool, ToggleSectionDrawingSpatialViewTool, ToggleTileTreeReferencesTool, ToggleViewAttachmentBoundariesTool, ToggleViewAttachmentClipShapesTool,\r\n ToggleViewAttachmentsTool, ViewportAddRealityModel, ViewportTileSizeModifierTool,\r\n} from \"./tools/ViewportTools\";\r\nimport { AnimationIntervalTool } from \"./tools/AnimationIntervalTool\";\r\nimport { ChangeUnitsTool } from \"./tools/ChangeUnitsTool\";\r\nimport { ClipColorTool, TestClipStyleTool, ToggleSectionCutTool } from \"./tools/ClipTools\";\r\nimport {\r\n ApplyRenderingStyleTool, ChangeBackgroundColorTool, ChangeViewFlagsTool, OverrideSubCategoryTool, SaveRenderingStyleTool, SkyCubeTool,\r\n SkySphereTool, ToggleSkyboxTool, ToggleWiremeshTool, WoWIgnoreBackgroundTool,\r\n} from \"./tools/DisplayStyleTools\";\r\nimport { QueryScheduleScriptTool, ReverseScheduleScriptTool, SetScheduleScriptTool } from \"./tools/ScheduleScriptTools\";\r\nimport {\r\n ClearEmphasizedElementsTool, ClearIsolatedElementsTool, EmphasizeSelectedElementsTool, EmphasizeVisibleElementsTool, IsolateSelectedElementsTool,\r\n} from \"./tools/EmphasizeElementsTool\";\r\nimport { ToggleFrustumSnapshotTool, ToggleSelectedViewFrustumTool, ToggleShadowFrustumTool } from \"./tools/FrustumDecoration\";\r\nimport { InspectElementTool } from \"./tools/InspectElementTool\";\r\nimport {\r\n AttachArcGISMapLayerByUrlTool, AttachMapLayerTool, AttachMapOverlayTool, AttachModelMapLayerTool, AttachTileURLMapLayerByUrlTool, AttachWmsMapLayerByUrlTool,\r\n AttachWmtsMapLayerByUrlTool, DetachMapLayersTool, MapBaseColorTool, MapBaseTransparencyTool, MapBaseVisibilityTool, MapLayerSubLayerVisibilityTool,\r\n MapLayerTransparencyTool, MapLayerVisibilityTool, MapLayerZoomTool, ReorderMapLayers, SetMapBaseTool, ToggleTerrainTool,\r\n} from \"./tools/MapLayerTool\";\r\nimport { MeasureTileLoadTimeTool } from \"./tools/MeasureTileLoadTime\";\r\nimport {\r\n ClearModelAppearanceOverrides, SetModelColorTool, SetModelEmphasizedTool, SetModelIgnoresMaterialsTool, SetModelLineCodeTool,\r\n SetModelLineWeightTool, SetModelLocateTool, SetModelTransparencyTool,\r\n} from \"./tools/ModelAppearanceTools\";\r\nimport { ChangePlanProjectionSettingsTool, DumpPlanProjectionSettingsTool, OverrideSubCategoryPriorityTool } from \"./tools/PlanProjectionTools\";\r\nimport { ToggleProjectExtentsTool } from \"./tools/ProjectExtents\";\r\nimport {\r\n AttachCesiumAssetTool, AttachRealityModelTool, ClearRealityModelAppearanceOverrides, DetachRealityModelTool, SaveRealityModelTool,\r\n SetRealityModelColorTool, SetRealityModelEmphasizedTool, SetRealityModelLocateTool, SetRealityModelTransparencyTool, ToggleOSMBuildingDisplay,\r\n} from \"./tools/RealityModelTools\";\r\nimport { RealityTransitionTool } from \"./tools/RealityTransitionTool\";\r\nimport { CompileShadersTool, LoseWebGLContextTool, ToggleDPIForLODTool } from \"./tools/RenderSystemTools\";\r\nimport {\r\n SetAASamplesTool, ToggleDrapeFrustumTool, TogglePrimitiveVisibilityTool, ToggleReadPixelsTool, ToggleRealityTileBounds, ToggleRealityTileFreeze,\r\n ToggleRealityTileLogging, ToggleRealityTilePreload, ToggleVolClassIntersect,\r\n} from \"./tools/RenderTargetTools\";\r\nimport { ReportWebGLCompatibilityTool } from \"./tools/ReportWebGLCompatibilityTool\";\r\nimport { ApplyViewByIdTool, ApplyViewTool, SaveViewTool } from \"./tools/SavedViews\";\r\nimport { DumpSelectionSetTool, SelectElementsByIdTool } from \"./tools/SelectionTools\";\r\nimport { SetGpuMemoryLimitTool } from \"./tools/SetGpuMemoryLimitTool\";\r\nimport { ElementIdFromSourceAspectIdTool, SourceAspectIdFromElementIdTool } from \"./tools/SourceAspectIdTools\";\r\nimport { ToggleTileRequestDecorationTool } from \"./tools/TileRequestDecoration\";\r\nimport { ToggleTileTreeBoundsDecorationTool } from \"./tools/TileTreeBoundsDecoration\";\r\nimport { ToggleToolTipsTool } from \"./tools/ToolTipProvider\";\r\n\r\n/** Entry-point for the package. Before using the package you *must* call [[FrontendDevTools.initialize]].\r\n * @beta\r\n */\r\nexport class FrontendDevTools {\r\n private static _initialized = false;\r\n\r\n /** Call this before using the package (e.g., before instantiating any of its widgets or attempting to use any of its tools.\r\n * To initialize when starting up your app:\r\n * ```ts\r\n * IModelApp.startup();\r\n * await FrontendDevTools.initialize();\r\n * ```\r\n * @beta\r\n */\r\n public static async initialize(): Promise<void> {\r\n if (this._initialized)\r\n return;\r\n\r\n this._initialized = true;\r\n\r\n // clean up if we're being shut down\r\n IModelApp.onBeforeShutdown.addListener(() => this.shutdown());\r\n\r\n const namespace = \"FrontendDevTools\";\r\n const namespacePromise = IModelApp.localization.registerNamespace(namespace);\r\n const tools = [\r\n AttachMapLayerTool,\r\n AttachMapOverlayTool,\r\n AttachModelMapLayerTool,\r\n AttachArcGISMapLayerByUrlTool,\r\n AttachWmsMapLayerByUrlTool,\r\n AttachWmtsMapLayerByUrlTool,\r\n AttachTileURLMapLayerByUrlTool,\r\n AnimationIntervalTool,\r\n ApplyRenderingStyleTool,\r\n ApplyViewByIdTool,\r\n ApplyViewTool,\r\n ChangeBackgroundColorTool,\r\n ChangeCameraTool,\r\n ChangeEmphasisSettingsTool,\r\n ChangeFlashSettingsTool,\r\n ChangeHiliteSettingsTool,\r\n ChangePlanProjectionSettingsTool,\r\n ChangeUnitsTool,\r\n ChangeViewFlagsTool,\r\n ClearEffectsTool,\r\n ClearEmphasizedElementsTool,\r\n ClearIsolatedElementsTool,\r\n ClipColorTool,\r\n CompileShadersTool,\r\n DefaultTileSizeModifierTool,\r\n DetachMapLayersTool,\r\n DumpPlanProjectionSettingsTool,\r\n DumpSelectionSetTool,\r\n EdgeDetectionEffect,\r\n EmbossEffect,\r\n ElementIdFromSourceAspectIdTool,\r\n EmphasizeSelectedElementsTool,\r\n EmphasizeVisibleElementsTool,\r\n ExplosionEffect,\r\n FadeOutTool,\r\n FlipImageConfig,\r\n FlipImageEffect,\r\n FreezeSceneTool,\r\n GaussianBlurEffect,\r\n InspectElementTool,\r\n IsolateSelectedElementsTool,\r\n LensDistortionConfig,\r\n LensDistortionEffect,\r\n LoseWebGLContextTool,\r\n MapLayerTransparencyTool,\r\n MapLayerVisibilityTool,\r\n MapLayerSubLayerVisibilityTool,\r\n MapLayerZoomTool,\r\n MapBaseColorTool,\r\n MapBaseTransparencyTool,\r\n MapBaseVisibilityTool,\r\n MeasureTileLoadTimeTool,\r\n OverrideSubCategoryTool,\r\n OverrideSubCategoryPriorityTool,\r\n QueryScheduleScriptTool,\r\n RealityTransitionTool,\r\n ReorderMapLayers,\r\n ReportWebGLCompatibilityTool,\r\n ReverseScheduleScriptTool,\r\n SaturationConfig,\r\n SaturationEffect,\r\n SaveRenderingStyleTool,\r\n SaveViewTool,\r\n SelectElementsByIdTool,\r\n SetAASamplesTool,\r\n SetAspectRatioSkewTool,\r\n SetScheduleScriptTool,\r\n ToggleVolClassIntersect,\r\n SetMapBaseTool,\r\n SharpenEffect,\r\n SharpnessEffect,\r\n ShowTileVolumesTool,\r\n SkyCubeTool,\r\n SkySphereTool,\r\n SnowEffect,\r\n SourceAspectIdFromElementIdTool,\r\n TestClipStyleTool,\r\n Toggle3dManipulationsTool,\r\n ToggleDrawingGraphicsTool,\r\n ToggleDPIForLODTool,\r\n ToggleDrapeFrustumTool,\r\n ToggleFrustumSnapshotTool,\r\n TogglePrimitiveVisibilityTool,\r\n ToggleProjectExtentsTool,\r\n ToggleReadPixelsTool,\r\n ToggleSectionDrawingSpatialViewTool,\r\n ToggleSelectedViewFrustumTool,\r\n ToggleShadowFrustumTool,\r\n ToggleSkyboxTool,\r\n ToggleTileRequestDecorationTool,\r\n ToggleTileTreeBoundsDecorationTool,\r\n ToggleTileTreeReferencesTool,\r\n ToggleToolTipsTool,\r\n ToggleViewAttachmentBoundariesTool,\r\n ToggleViewAttachmentClipShapesTool,\r\n ToggleViewAttachmentsTool,\r\n ToggleWiremeshTool,\r\n ToggleRealityTileBounds,\r\n ToggleRealityTilePreload,\r\n ToggleRealityTileLogging,\r\n ToggleRealityTileFreeze,\r\n ToggleSectionCutTool,\r\n ToggleTerrainTool,\r\n UnsharpenEffect,\r\n ViewportAddRealityModel,\r\n ViewportTileSizeModifierTool,\r\n VignetteConfig,\r\n VignetteEffect,\r\n AttachRealityModelTool,\r\n DetachRealityModelTool,\r\n SaveRealityModelTool,\r\n SetGpuMemoryLimitTool,\r\n SetRealityModelLocateTool,\r\n SetRealityModelEmphasizedTool,\r\n SetRealityModelTransparencyTool,\r\n SetRealityModelColorTool,\r\n SetModelLocateTool,\r\n SetModelEmphasizedTool,\r\n SetModelTransparencyTool,\r\n SetModelColorTool,\r\n SetModelLineWeightTool,\r\n SetModelLineCodeTool,\r\n SetModelIgnoresMaterialsTool,\r\n ClearRealityModelAppearanceOverrides,\r\n ClearModelAppearanceOverrides,\r\n AttachCesiumAssetTool,\r\n ToggleOSMBuildingDisplay,\r\n SetHigherPriorityRealityModelMasking,\r\n SetMapHigherPriorityMasking,\r\n MaskRealityModelByModelTool,\r\n MaskRealityModelBySubCategoryTool,\r\n MaskRealityModelByElementTool,\r\n MaskRealityModelByExcludedElementTool,\r\n UnmaskRealityModelTool,\r\n MaskBackgroundMapByModelTool,\r\n MaskBackgroundMapBySubCategoryTool,\r\n MaskBackgroundMapByElementTool,\r\n MaskBackgroundMapByExcludedElementTool,\r\n UnmaskMapTool,\r\n WoWIgnoreBackgroundTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(namespace);\r\n\r\n return namespacePromise;\r\n }\r\n\r\n private static shutdown() {\r\n this._initialized = false;\r\n }\r\n}\r\n"]}
@@ -32,6 +32,7 @@ export * from "./tools/RenderTargetTools";
32
32
  export * from "./tools/ReportWebGLCompatibilityTool";
33
33
  export * from "./tools/SavedViews";
34
34
  export * from "./tools/SelectionTools";
35
+ export * from "./tools/ScheduleScriptTools";
35
36
  export * from "./tools/SetGpuMemoryLimitTool";
36
37
  export * from "./tools/SourceAspectIdTools";
37
38
  export * from "./tools/TileRequestDecoration";
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-devtools.d.ts","sourceRoot":"","sources":["../../src/frontend-devtools.ts"],"names":[],"mappings":"AAKA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AAEnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAE9C;;GAEG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG"}
1
+ {"version":3,"file":"frontend-devtools.d.ts","sourceRoot":"","sources":["../../src/frontend-devtools.ts"],"names":[],"mappings":"AAKA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AAEnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAE9C;;GAEG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG"}
@@ -36,6 +36,7 @@ export * from "./tools/RenderTargetTools";
36
36
  export * from "./tools/ReportWebGLCompatibilityTool";
37
37
  export * from "./tools/SavedViews";
38
38
  export * from "./tools/SelectionTools";
39
+ export * from "./tools/ScheduleScriptTools";
39
40
  export * from "./tools/SetGpuMemoryLimitTool";
40
41
  export * from "./tools/SourceAspectIdTools";
41
42
  export * from "./tools/TileRequestDecoration";
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-devtools.js","sourceRoot":"","sources":["../../src/frontend-devtools.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AAEnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAE9C;;GAEG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG","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\nexport * from \"./ClipboardUtilities\";\r\nexport * from \"./FrontEndDevTools\";\r\n\r\nexport * from \"./effects/Convolution\";\r\nexport * from \"./effects/EffectTools\";\r\nexport * from \"./effects/Explosion\";\r\nexport * from \"./effects/FlipImage\";\r\nexport * from \"./effects/LensDistortion\";\r\nexport * from \"./effects/Random\";\r\nexport * from \"./effects/Saturation\";\r\nexport * from \"./effects/Snow\";\r\nexport * from \"./effects/Vignette\";\r\n\r\nexport * from \"./tools/AnimationIntervalTool\";\r\nexport * from \"./tools/ChangeUnitsTool\";\r\nexport * from \"./tools/ClipTools\";\r\nexport * from \"./tools/DisplayStyleTools\";\r\nexport * from \"./tools/EmphasizeElementsTool\";\r\nexport * from \"./tools/FrustumDecoration\";\r\nexport * from \"./tools/InspectElementTool\";\r\nexport * from \"./tools/MapLayerTool\";\r\nexport * from \"./tools/MeasureTileLoadTime\";\r\nexport * from \"./tools/ModelAppearanceTools\";\r\nexport * from \"./tools/parseArgs\";\r\nexport * from \"./tools/parseBoolean\";\r\nexport * from \"./tools/parseToggle\";\r\nexport * from \"./tools/PlanarMaskTools\";\r\nexport * from \"./tools/PlanProjectionTools\";\r\nexport * from \"./tools/ProjectExtents\";\r\nexport * from \"./tools/RealityModelTools\";\r\nexport * from \"./tools/RealityTransitionTool\";\r\nexport * from \"./tools/RenderSystemTools\";\r\nexport * from \"./tools/RenderTargetTools\";\r\nexport * from \"./tools/ReportWebGLCompatibilityTool\";\r\nexport * from \"./tools/SavedViews\";\r\nexport * from \"./tools/SelectionTools\";\r\nexport * from \"./tools/SetGpuMemoryLimitTool\";\r\nexport * from \"./tools/SourceAspectIdTools\";\r\nexport * from \"./tools/TileRequestDecoration\";\r\nexport * from \"./tools/TileTreeBoundsDecoration\";\r\nexport * from \"./tools/ToolTipProvider\";\r\nexport * from \"./tools/ViewportTools\";\r\n\r\nexport * from \"./ui/Button\";\r\nexport * from \"./ui/CheckBox\";\r\nexport * from \"./ui/ColorInput\";\r\nexport * from \"./ui/ComboBox\";\r\nexport * from \"./ui/DataList\";\r\nexport * from \"./ui/NestedMenu\";\r\nexport * from \"./ui/NumericInput\";\r\nexport * from \"./ui/RadioBox\";\r\nexport * from \"./ui/Slider\";\r\nexport * from \"./ui/TextBox\";\r\n\r\nexport * from \"./widgets/DiagnosticsPanel\";\r\nexport * from \"./widgets/FpsTracker\";\r\nexport * from \"./widgets/GpuProfiler\";\r\nexport * from \"./widgets/KeyinField\";\r\nexport * from \"./widgets/MemoryTracker\";\r\nexport * from \"./widgets/TileMemoryBreakdown\";\r\nexport * from \"./widgets/TileStatisticsTracker\";\r\nexport * from \"./widgets/ToolSettingsTracker\";\r\n\r\n/** @docs-package-description\r\n * The frontend-devtools package contains various tools and widgets for monitoring and debugging the front-end state of an iTwin.js application.\r\n */\r\n\r\n/**\r\n * @docs-group-description Widgets\r\n * Widgets that wrap some of the package's functionality into embeddable HTML controls.\r\n */\r\n\r\n/**\r\n * @docs-group-description Tools\r\n * Interactive- and immediate-mode [tools]($docs/learning/frontend/Tools.md), most of which can be executed via key-in. All key-ins are documented in the package's README.\r\n */\r\n\r\n/**\r\n * @docs-group-description Controls\r\n * Rudimentary HTML components used to build the widgets.\r\n */\r\n\r\n/**\r\n * @docs-group-description Effects\r\n * Examples of screen-space effects produced by [RenderSystem.createScreenSpaceEffectBuilder]($frontend).\r\n */\r\n\r\n/**\r\n * @docs-group-description Utilities\r\n * Utility functions used throughout the package.\r\n */\r\n"]}
1
+ {"version":3,"file":"frontend-devtools.js","sourceRoot":"","sources":["../../src/frontend-devtools.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AAEnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAE9C;;GAEG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG","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\nexport * from \"./ClipboardUtilities\";\r\nexport * from \"./FrontEndDevTools\";\r\n\r\nexport * from \"./effects/Convolution\";\r\nexport * from \"./effects/EffectTools\";\r\nexport * from \"./effects/Explosion\";\r\nexport * from \"./effects/FlipImage\";\r\nexport * from \"./effects/LensDistortion\";\r\nexport * from \"./effects/Random\";\r\nexport * from \"./effects/Saturation\";\r\nexport * from \"./effects/Snow\";\r\nexport * from \"./effects/Vignette\";\r\n\r\nexport * from \"./tools/AnimationIntervalTool\";\r\nexport * from \"./tools/ChangeUnitsTool\";\r\nexport * from \"./tools/ClipTools\";\r\nexport * from \"./tools/DisplayStyleTools\";\r\nexport * from \"./tools/EmphasizeElementsTool\";\r\nexport * from \"./tools/FrustumDecoration\";\r\nexport * from \"./tools/InspectElementTool\";\r\nexport * from \"./tools/MapLayerTool\";\r\nexport * from \"./tools/MeasureTileLoadTime\";\r\nexport * from \"./tools/ModelAppearanceTools\";\r\nexport * from \"./tools/parseArgs\";\r\nexport * from \"./tools/parseBoolean\";\r\nexport * from \"./tools/parseToggle\";\r\nexport * from \"./tools/PlanarMaskTools\";\r\nexport * from \"./tools/PlanProjectionTools\";\r\nexport * from \"./tools/ProjectExtents\";\r\nexport * from \"./tools/RealityModelTools\";\r\nexport * from \"./tools/RealityTransitionTool\";\r\nexport * from \"./tools/RenderSystemTools\";\r\nexport * from \"./tools/RenderTargetTools\";\r\nexport * from \"./tools/ReportWebGLCompatibilityTool\";\r\nexport * from \"./tools/SavedViews\";\r\nexport * from \"./tools/SelectionTools\";\r\nexport * from \"./tools/ScheduleScriptTools\";\r\nexport * from \"./tools/SetGpuMemoryLimitTool\";\r\nexport * from \"./tools/SourceAspectIdTools\";\r\nexport * from \"./tools/TileRequestDecoration\";\r\nexport * from \"./tools/TileTreeBoundsDecoration\";\r\nexport * from \"./tools/ToolTipProvider\";\r\nexport * from \"./tools/ViewportTools\";\r\n\r\nexport * from \"./ui/Button\";\r\nexport * from \"./ui/CheckBox\";\r\nexport * from \"./ui/ColorInput\";\r\nexport * from \"./ui/ComboBox\";\r\nexport * from \"./ui/DataList\";\r\nexport * from \"./ui/NestedMenu\";\r\nexport * from \"./ui/NumericInput\";\r\nexport * from \"./ui/RadioBox\";\r\nexport * from \"./ui/Slider\";\r\nexport * from \"./ui/TextBox\";\r\n\r\nexport * from \"./widgets/DiagnosticsPanel\";\r\nexport * from \"./widgets/FpsTracker\";\r\nexport * from \"./widgets/GpuProfiler\";\r\nexport * from \"./widgets/KeyinField\";\r\nexport * from \"./widgets/MemoryTracker\";\r\nexport * from \"./widgets/TileMemoryBreakdown\";\r\nexport * from \"./widgets/TileStatisticsTracker\";\r\nexport * from \"./widgets/ToolSettingsTracker\";\r\n\r\n/** @docs-package-description\r\n * The frontend-devtools package contains various tools and widgets for monitoring and debugging the front-end state of an iTwin.js application.\r\n */\r\n\r\n/**\r\n * @docs-group-description Widgets\r\n * Widgets that wrap some of the package's functionality into embeddable HTML controls.\r\n */\r\n\r\n/**\r\n * @docs-group-description Tools\r\n * Interactive- and immediate-mode [tools]($docs/learning/frontend/Tools.md), most of which can be executed via key-in. All key-ins are documented in the package's README.\r\n */\r\n\r\n/**\r\n * @docs-group-description Controls\r\n * Rudimentary HTML components used to build the widgets.\r\n */\r\n\r\n/**\r\n * @docs-group-description Effects\r\n * Examples of screen-space effects produced by [RenderSystem.createScreenSpaceEffectBuilder]($frontend).\r\n */\r\n\r\n/**\r\n * @docs-group-description Utilities\r\n * Utility functions used throughout the package.\r\n */\r\n"]}
@@ -1,3 +1,6 @@
1
+ /** @packageDocumentation
2
+ * @module Tools
3
+ */
1
4
  import { ViewFlags } from "@itwin/core-common";
2
5
  import { Tool, Viewport } from "@itwin/core-frontend";
3
6
  /** Modifies the selected viewport's DisplayStyleState.
@@ -106,21 +109,6 @@ export declare class OverrideSubCategoryTool extends DisplayStyleTool {
106
109
  parse(inArgs: string[]): Promise<boolean>;
107
110
  execute(vp: Viewport): Promise<boolean>;
108
111
  }
109
- /** Query the schedule script JSON from an element.
110
- * @beta
111
- */
112
- export declare class QueryScheduleScriptTool extends DisplayStyleTool {
113
- private _sourceId?;
114
- private _action;
115
- private _includeElementIds;
116
- private _countElementIds;
117
- private _expandElementIds;
118
- static toolId: string;
119
- static get minArgs(): number;
120
- static get maxArgs(): number;
121
- parse(input: string[], vp: Viewport): Promise<boolean>;
122
- execute(vp: Viewport): Promise<boolean>;
123
- }
124
112
  /** Set whether background color is ignored when applying white-on-white reversal.
125
113
  * @beta
126
114
  */
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayStyleTools.d.ts","sourceRoot":"","sources":["../../../src/tools/DisplayStyleTools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DisplayStyleTools.d.ts","sourceRoot":"","sources":["../../../src/tools/DisplayStyleTools.ts"],"names":[],"mappings":"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"}