@itwin/appui-react 3.4.0-dev.9 → 3.5.0-dev.12

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 (131) hide show
  1. package/CHANGELOG.md +43 -1
  2. package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts.map +1 -1
  3. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +4 -5
  4. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  5. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +7 -0
  6. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  7. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +23 -0
  8. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  9. package/lib/cjs/appui-react/dialog/ModelessDialogManager.d.ts +0 -2
  10. package/lib/cjs/appui-react/dialog/ModelessDialogManager.d.ts.map +1 -1
  11. package/lib/cjs/appui-react/dialog/ModelessDialogManager.js +6 -18
  12. package/lib/cjs/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  13. package/lib/cjs/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
  14. package/lib/cjs/appui-react/dialog/StandardMessageBox.js +2 -1
  15. package/lib/cjs/appui-react/dialog/StandardMessageBox.js.map +1 -1
  16. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +13 -1
  17. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  18. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +140 -96
  19. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  20. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +2 -0
  21. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  22. package/lib/cjs/appui-react/frontstage/FrontstageManager.js +4 -0
  23. package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
  24. package/lib/cjs/appui-react/imodel-components/category-tree/Categories.json +2 -2
  25. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +1 -0
  26. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.json +1 -0
  27. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.d.ts +1 -1
  28. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.d.ts.map +1 -1
  29. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.js +11 -8
  30. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
  31. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts +15 -1
  32. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  33. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +5 -2
  34. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  35. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +0 -6
  36. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  37. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts +1 -0
  38. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  39. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +23 -4
  40. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  41. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts +9 -0
  42. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  43. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js +17 -1
  44. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  45. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  46. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +2 -0
  47. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  48. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +1 -0
  49. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
  50. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +2 -0
  51. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  52. package/lib/cjs/appui-react/widget-panels/FloatingWidget.d.ts +7 -0
  53. package/lib/cjs/appui-react/widget-panels/FloatingWidget.d.ts.map +1 -0
  54. package/lib/cjs/appui-react/widget-panels/FloatingWidget.js +19 -0
  55. package/lib/cjs/appui-react/widget-panels/FloatingWidget.js.map +1 -0
  56. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +20 -697
  57. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  58. package/lib/cjs/appui-react/widget-panels/Frontstage.js +300 -271
  59. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  60. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js +1 -1
  61. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  62. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +16 -6
  63. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  64. package/lib/cjs/appui-react/widgets/WidgetDef.js +13 -1
  65. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  66. package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts.map +1 -1
  67. package/lib/esm/appui-react/childwindow/ChildWindowManager.js +4 -5
  68. package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  69. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +7 -0
  70. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  71. package/lib/esm/appui-react/dialog/DialogManagerBase.js +23 -0
  72. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  73. package/lib/esm/appui-react/dialog/ModelessDialogManager.d.ts +0 -2
  74. package/lib/esm/appui-react/dialog/ModelessDialogManager.d.ts.map +1 -1
  75. package/lib/esm/appui-react/dialog/ModelessDialogManager.js +6 -18
  76. package/lib/esm/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  77. package/lib/esm/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
  78. package/lib/esm/appui-react/dialog/StandardMessageBox.js +2 -1
  79. package/lib/esm/appui-react/dialog/StandardMessageBox.js.map +1 -1
  80. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +13 -1
  81. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  82. package/lib/esm/appui-react/frontstage/FrontstageDef.js +142 -98
  83. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  84. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +2 -0
  85. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  86. package/lib/esm/appui-react/frontstage/FrontstageManager.js +4 -0
  87. package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
  88. package/lib/esm/appui-react/imodel-components/category-tree/Categories.json +2 -2
  89. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +1 -0
  90. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.json +1 -0
  91. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.d.ts +1 -1
  92. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.d.ts.map +1 -1
  93. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.js +12 -9
  94. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
  95. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts +15 -1
  96. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  97. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +4 -2
  98. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  99. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +0 -6
  100. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  101. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts +1 -0
  102. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  103. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +25 -6
  104. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  105. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts +9 -0
  106. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  107. package/lib/esm/appui-react/tools/RestoreLayoutTool.js +15 -0
  108. package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  109. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  110. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +2 -0
  111. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  112. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +1 -0
  113. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
  114. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +2 -0
  115. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  116. package/lib/esm/appui-react/widget-panels/FloatingWidget.d.ts +7 -0
  117. package/lib/esm/appui-react/widget-panels/FloatingWidget.d.ts.map +1 -0
  118. package/lib/esm/appui-react/widget-panels/FloatingWidget.js +15 -0
  119. package/lib/esm/appui-react/widget-panels/FloatingWidget.js.map +1 -0
  120. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +20 -697
  121. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  122. package/lib/esm/appui-react/widget-panels/Frontstage.js +291 -265
  123. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  124. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js +2 -2
  125. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  126. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +16 -6
  127. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  128. package/lib/esm/appui-react/widgets/WidgetDef.js +13 -1
  129. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  130. package/lib/public/locales/en/UiFramework.json +10 -3
  131. package/package.json +37 -35
@@ -4,11 +4,11 @@
4
4
  import "./Frontstage.scss";
5
5
  import * as React from "react";
6
6
  import { WidgetState } from "@itwin/appui-abstract";
7
- import { UiStateStorageResult, UiStateStorageStatus } from "@itwin/core-react";
7
+ import { RectangleProps, UiStateStorageResult, UiStateStorageStatus } from "@itwin/core-react";
8
8
  import { NineZoneDispatch, NineZoneLabels, NineZoneState, PanelSide, TabState } from "@itwin/appui-layout-react";
9
9
  import { FrontstageDef } from "../frontstage/FrontstageDef";
10
10
  import { StagePanelState, StagePanelZoneDefKeys } from "../stagepanels/StagePanelDef";
11
- import { WidgetDef } from "../widgets/WidgetDef";
11
+ import { TabLocation, WidgetDef } from "../widgets/WidgetDef";
12
12
  import { ZoneState } from "../zones/ZoneDef";
13
13
  /** @internal */
14
14
  export declare function useNineZoneState(frontstageDef: FrontstageDef): NineZoneState | undefined;
@@ -51,7 +51,7 @@ export declare function isFrontstageStateSettingResult(settingsResult: UiStateSt
51
51
  setting: WidgetPanelsFrontstageState;
52
52
  };
53
53
  /** @internal */
54
- export declare function initializePanel(nineZone: NineZoneState, frontstageDef: FrontstageDef, panelSide: PanelSide): NineZoneState;
54
+ export declare function initializePanel(state: NineZoneState, frontstageDef: FrontstageDef, panelSide: PanelSide): NineZoneState;
55
55
  /** @internal */
56
56
  export declare function initializeNineZoneState(frontstageDef: FrontstageDef): NineZoneState;
57
57
  /** Converts from saved NineZoneState to NineZoneState.
@@ -73,10 +73,23 @@ export declare function isPanelCollapsed(zoneStates: ReadonlyArray<ZoneState | u
73
73
  */
74
74
  export interface WidgetPanelsFrontstageState {
75
75
  nineZone: SavedNineZoneState;
76
+ widgets: SavedWidgets;
76
77
  id: FrontstageDef["id"];
78
+ /** Frontstage version used to create the frontstage state. Allows to invalidate the layout from the frontstage. */
77
79
  version: number;
80
+ /** Platform provided frontstage version. Allows to invalidate the layout from the platform. */
78
81
  stateVersion: number;
79
82
  }
83
+ /** Saved data specific to `WidgetDef`. I.e. used to restore hidden widgets.
84
+ * @internal
85
+ */
86
+ export interface SavedWidget {
87
+ readonly id: WidgetDef["id"];
88
+ readonly tabLocation?: TabLocation;
89
+ readonly popoutBounds?: RectangleProps;
90
+ }
91
+ /** @internal */
92
+ export declare type SavedWidgets = ReadonlyArray<SavedWidget>;
80
93
  declare type SavedTabState = Omit<TabState, "label" | "canPopout" | "isFloatingStateWindowResizable" | "iconSpec">;
81
94
  interface SavedTabsState {
82
95
  readonly [id: string]: SavedTabState;
@@ -85,701 +98,13 @@ interface SavedNineZoneState extends Omit<NineZoneState, "tabs"> {
85
98
  readonly tabs: SavedTabsState;
86
99
  }
87
100
  /** @internal */
88
- export declare const setWidgetState: (base: {
89
- readonly draggedTab: {
90
- readonly tabId: string;
91
- readonly position: {
92
- readonly x: number;
93
- readonly y: number;
94
- };
95
- readonly home: {
96
- readonly widgetIndex: number;
97
- readonly widgetId: string | undefined;
98
- readonly side: PanelSide;
99
- };
100
- } | undefined;
101
- readonly floatingWidgets: {
102
- readonly byId: {
103
- readonly [x: string]: {
104
- readonly bounds: {
105
- readonly left: number;
106
- readonly top: number;
107
- readonly right: number;
108
- readonly bottom: number;
109
- };
110
- readonly id: string;
111
- readonly home: {
112
- readonly widgetIndex: number;
113
- readonly widgetId: string | undefined;
114
- readonly side: PanelSide;
115
- };
116
- readonly userSized?: boolean | undefined;
117
- readonly hidden?: boolean | undefined;
118
- };
119
- };
120
- readonly allIds: readonly string[];
121
- };
122
- readonly popoutWidgets: {
123
- readonly byId: {
124
- readonly [x: string]: {
125
- readonly bounds: {
126
- readonly left: number;
127
- readonly top: number;
128
- readonly right: number;
129
- readonly bottom: number;
130
- };
131
- readonly id: string;
132
- readonly home: {
133
- readonly widgetIndex: number;
134
- readonly widgetId: string | undefined;
135
- readonly side: PanelSide;
136
- };
137
- };
138
- };
139
- readonly allIds: readonly string[];
140
- };
141
- readonly panels: {
142
- readonly bottom: {
143
- readonly span: boolean;
144
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
145
- readonly collapseOffset: number;
146
- readonly collapsed: boolean;
147
- readonly maxSize: number;
148
- readonly minSize: number;
149
- readonly pinned: boolean;
150
- readonly resizable: boolean;
151
- readonly size: number | undefined;
152
- readonly widgets: readonly string[];
153
- readonly maxWidgetCount: number;
154
- readonly splitterPercent: number | undefined;
155
- };
156
- readonly left: {
157
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
158
- readonly collapseOffset: number;
159
- readonly collapsed: boolean;
160
- readonly maxSize: number;
161
- readonly minSize: number;
162
- readonly pinned: boolean;
163
- readonly resizable: boolean;
164
- readonly size: number | undefined;
165
- readonly widgets: readonly string[];
166
- readonly maxWidgetCount: number;
167
- readonly splitterPercent: number | undefined;
168
- };
169
- readonly right: {
170
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
171
- readonly collapseOffset: number;
172
- readonly collapsed: boolean;
173
- readonly maxSize: number;
174
- readonly minSize: number;
175
- readonly pinned: boolean;
176
- readonly resizable: boolean;
177
- readonly size: number | undefined;
178
- readonly widgets: readonly string[];
179
- readonly maxWidgetCount: number;
180
- readonly splitterPercent: number | undefined;
181
- };
182
- readonly top: {
183
- readonly span: boolean;
184
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
185
- readonly collapseOffset: number;
186
- readonly collapsed: boolean;
187
- readonly maxSize: number;
188
- readonly minSize: number;
189
- readonly pinned: boolean;
190
- readonly resizable: boolean;
191
- readonly size: number | undefined;
192
- readonly widgets: readonly string[];
193
- readonly maxWidgetCount: number;
194
- readonly splitterPercent: number | undefined;
195
- };
196
- };
197
- readonly tabs: {
198
- readonly [x: string]: {
199
- readonly id: string;
200
- readonly label: string;
201
- readonly iconSpec?: boolean | React.ReactText | {
202
- readonly type: string | React.JSXElementConstructor<any>;
203
- readonly props: any;
204
- readonly key: React.Key | null;
205
- } | {} | {
206
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
207
- } | {
208
- readonly key: React.Key | null;
209
- readonly children: boolean | React.ReactText | {
210
- readonly type: string | React.JSXElementConstructor<any>;
211
- readonly props: any;
212
- readonly key: React.Key | null;
213
- } | {} | {
214
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
215
- } | any | null | undefined;
216
- readonly type: string | React.JSXElementConstructor<any>;
217
- readonly props: any;
218
- } | {
219
- readonly stringGetter: () => string;
220
- readonly syncEventIds: readonly string[];
221
- readonly value: string;
222
- readonly refresh: () => boolean;
223
- } | null | undefined;
224
- readonly preferredFloatingWidgetSize?: {
225
- readonly width: number;
226
- readonly height: number;
227
- } | undefined;
228
- readonly preferredPopoutWidgetSize?: {
229
- readonly width: number;
230
- readonly height: number;
231
- readonly x: number;
232
- readonly y: number;
233
- } | undefined;
234
- readonly preferredPanelWidgetSize?: "fit-content" | undefined;
235
- readonly allowedPanelTargets?: readonly PanelSide[] | undefined;
236
- readonly canPopout?: boolean | undefined;
237
- readonly userSized?: boolean | undefined;
238
- readonly isFloatingStateWindowResizable?: boolean | undefined;
239
- readonly hideWithUiWhenFloating?: boolean | undefined;
240
- };
241
- };
242
- readonly toolSettings: {
243
- readonly type: "docked";
244
- } | {
245
- readonly type: "widget";
246
- };
247
- readonly widgets: {
248
- readonly [x: string]: {
249
- readonly activeTabId: string;
250
- readonly id: string;
251
- readonly minimized: boolean;
252
- readonly tabs: readonly string[];
253
- readonly isFloatingStateWindowResizable?: boolean | undefined;
254
- };
255
- };
256
- readonly size: {
257
- readonly width: number;
258
- readonly height: number;
259
- };
260
- }, widgetDef: WidgetDef, state: WidgetState) => import("immer/dist/internal").WritableDraft<NineZoneState>;
101
+ export declare function setWidgetState(state: NineZoneState, widgetDef: WidgetDef, widgetState: WidgetState): NineZoneState;
261
102
  /** @internal */
262
- export declare const showWidget: (base: {
263
- readonly draggedTab: {
264
- readonly tabId: string;
265
- readonly position: {
266
- readonly x: number;
267
- readonly y: number;
268
- };
269
- readonly home: {
270
- readonly widgetIndex: number;
271
- readonly widgetId: string | undefined;
272
- readonly side: PanelSide;
273
- };
274
- } | undefined;
275
- readonly floatingWidgets: {
276
- readonly byId: {
277
- readonly [x: string]: {
278
- readonly bounds: {
279
- readonly left: number;
280
- readonly top: number;
281
- readonly right: number;
282
- readonly bottom: number;
283
- };
284
- readonly id: string;
285
- readonly home: {
286
- readonly widgetIndex: number;
287
- readonly widgetId: string | undefined;
288
- readonly side: PanelSide;
289
- };
290
- readonly userSized?: boolean | undefined;
291
- readonly hidden?: boolean | undefined;
292
- };
293
- };
294
- readonly allIds: readonly string[];
295
- };
296
- readonly popoutWidgets: {
297
- readonly byId: {
298
- readonly [x: string]: {
299
- readonly bounds: {
300
- readonly left: number;
301
- readonly top: number;
302
- readonly right: number;
303
- readonly bottom: number;
304
- };
305
- readonly id: string;
306
- readonly home: {
307
- readonly widgetIndex: number;
308
- readonly widgetId: string | undefined;
309
- readonly side: PanelSide;
310
- };
311
- };
312
- };
313
- readonly allIds: readonly string[];
314
- };
315
- readonly panels: {
316
- readonly bottom: {
317
- readonly span: boolean;
318
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
319
- readonly collapseOffset: number;
320
- readonly collapsed: boolean;
321
- readonly maxSize: number;
322
- readonly minSize: number;
323
- readonly pinned: boolean;
324
- readonly resizable: boolean;
325
- readonly size: number | undefined;
326
- readonly widgets: readonly string[];
327
- readonly maxWidgetCount: number;
328
- readonly splitterPercent: number | undefined;
329
- };
330
- readonly left: {
331
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
332
- readonly collapseOffset: number;
333
- readonly collapsed: boolean;
334
- readonly maxSize: number;
335
- readonly minSize: number;
336
- readonly pinned: boolean;
337
- readonly resizable: boolean;
338
- readonly size: number | undefined;
339
- readonly widgets: readonly string[];
340
- readonly maxWidgetCount: number;
341
- readonly splitterPercent: number | undefined;
342
- };
343
- readonly right: {
344
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
345
- readonly collapseOffset: number;
346
- readonly collapsed: boolean;
347
- readonly maxSize: number;
348
- readonly minSize: number;
349
- readonly pinned: boolean;
350
- readonly resizable: boolean;
351
- readonly size: number | undefined;
352
- readonly widgets: readonly string[];
353
- readonly maxWidgetCount: number;
354
- readonly splitterPercent: number | undefined;
355
- };
356
- readonly top: {
357
- readonly span: boolean;
358
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
359
- readonly collapseOffset: number;
360
- readonly collapsed: boolean;
361
- readonly maxSize: number;
362
- readonly minSize: number;
363
- readonly pinned: boolean;
364
- readonly resizable: boolean;
365
- readonly size: number | undefined;
366
- readonly widgets: readonly string[];
367
- readonly maxWidgetCount: number;
368
- readonly splitterPercent: number | undefined;
369
- };
370
- };
371
- readonly tabs: {
372
- readonly [x: string]: {
373
- readonly id: string;
374
- readonly label: string;
375
- readonly iconSpec?: boolean | React.ReactText | {
376
- readonly type: string | React.JSXElementConstructor<any>;
377
- readonly props: any;
378
- readonly key: React.Key | null;
379
- } | {} | {
380
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
381
- } | {
382
- readonly key: React.Key | null;
383
- readonly children: boolean | React.ReactText | {
384
- readonly type: string | React.JSXElementConstructor<any>;
385
- readonly props: any;
386
- readonly key: React.Key | null;
387
- } | {} | {
388
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
389
- } | any | null | undefined;
390
- readonly type: string | React.JSXElementConstructor<any>;
391
- readonly props: any;
392
- } | {
393
- readonly stringGetter: () => string;
394
- readonly syncEventIds: readonly string[];
395
- readonly value: string;
396
- readonly refresh: () => boolean;
397
- } | null | undefined;
398
- readonly preferredFloatingWidgetSize?: {
399
- readonly width: number;
400
- readonly height: number;
401
- } | undefined;
402
- readonly preferredPopoutWidgetSize?: {
403
- readonly width: number;
404
- readonly height: number;
405
- readonly x: number;
406
- readonly y: number;
407
- } | undefined;
408
- readonly preferredPanelWidgetSize?: "fit-content" | undefined;
409
- readonly allowedPanelTargets?: readonly PanelSide[] | undefined;
410
- readonly canPopout?: boolean | undefined;
411
- readonly userSized?: boolean | undefined;
412
- readonly isFloatingStateWindowResizable?: boolean | undefined;
413
- readonly hideWithUiWhenFloating?: boolean | undefined;
414
- };
415
- };
416
- readonly toolSettings: {
417
- readonly type: "docked";
418
- } | {
419
- readonly type: "widget";
420
- };
421
- readonly widgets: {
422
- readonly [x: string]: {
423
- readonly activeTabId: string;
424
- readonly id: string;
425
- readonly minimized: boolean;
426
- readonly tabs: readonly string[];
427
- readonly isFloatingStateWindowResizable?: boolean | undefined;
428
- };
429
- };
430
- readonly size: {
431
- readonly width: number;
432
- readonly height: number;
433
- };
434
- }, id: string) => import("immer/dist/internal").WritableDraft<NineZoneState>;
103
+ export declare function showWidget(state: NineZoneState, id: TabState["id"]): NineZoneState;
435
104
  /** @internal */
436
- export declare const expandWidget: (base: {
437
- readonly draggedTab: {
438
- readonly tabId: string;
439
- readonly position: {
440
- readonly x: number;
441
- readonly y: number;
442
- };
443
- readonly home: {
444
- readonly widgetIndex: number;
445
- readonly widgetId: string | undefined;
446
- readonly side: PanelSide;
447
- };
448
- } | undefined;
449
- readonly floatingWidgets: {
450
- readonly byId: {
451
- readonly [x: string]: {
452
- readonly bounds: {
453
- readonly left: number;
454
- readonly top: number;
455
- readonly right: number;
456
- readonly bottom: number;
457
- };
458
- readonly id: string;
459
- readonly home: {
460
- readonly widgetIndex: number;
461
- readonly widgetId: string | undefined;
462
- readonly side: PanelSide;
463
- };
464
- readonly userSized?: boolean | undefined;
465
- readonly hidden?: boolean | undefined;
466
- };
467
- };
468
- readonly allIds: readonly string[];
469
- };
470
- readonly popoutWidgets: {
471
- readonly byId: {
472
- readonly [x: string]: {
473
- readonly bounds: {
474
- readonly left: number;
475
- readonly top: number;
476
- readonly right: number;
477
- readonly bottom: number;
478
- };
479
- readonly id: string;
480
- readonly home: {
481
- readonly widgetIndex: number;
482
- readonly widgetId: string | undefined;
483
- readonly side: PanelSide;
484
- };
485
- };
486
- };
487
- readonly allIds: readonly string[];
488
- };
489
- readonly panels: {
490
- readonly bottom: {
491
- readonly span: boolean;
492
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
493
- readonly collapseOffset: number;
494
- readonly collapsed: boolean;
495
- readonly maxSize: number;
496
- readonly minSize: number;
497
- readonly pinned: boolean;
498
- readonly resizable: boolean;
499
- readonly size: number | undefined;
500
- readonly widgets: readonly string[];
501
- readonly maxWidgetCount: number;
502
- readonly splitterPercent: number | undefined;
503
- };
504
- readonly left: {
505
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
506
- readonly collapseOffset: number;
507
- readonly collapsed: boolean;
508
- readonly maxSize: number;
509
- readonly minSize: number;
510
- readonly pinned: boolean;
511
- readonly resizable: boolean;
512
- readonly size: number | undefined;
513
- readonly widgets: readonly string[];
514
- readonly maxWidgetCount: number;
515
- readonly splitterPercent: number | undefined;
516
- };
517
- readonly right: {
518
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
519
- readonly collapseOffset: number;
520
- readonly collapsed: boolean;
521
- readonly maxSize: number;
522
- readonly minSize: number;
523
- readonly pinned: boolean;
524
- readonly resizable: boolean;
525
- readonly size: number | undefined;
526
- readonly widgets: readonly string[];
527
- readonly maxWidgetCount: number;
528
- readonly splitterPercent: number | undefined;
529
- };
530
- readonly top: {
531
- readonly span: boolean;
532
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
533
- readonly collapseOffset: number;
534
- readonly collapsed: boolean;
535
- readonly maxSize: number;
536
- readonly minSize: number;
537
- readonly pinned: boolean;
538
- readonly resizable: boolean;
539
- readonly size: number | undefined;
540
- readonly widgets: readonly string[];
541
- readonly maxWidgetCount: number;
542
- readonly splitterPercent: number | undefined;
543
- };
544
- };
545
- readonly tabs: {
546
- readonly [x: string]: {
547
- readonly id: string;
548
- readonly label: string;
549
- readonly iconSpec?: boolean | React.ReactText | {
550
- readonly type: string | React.JSXElementConstructor<any>;
551
- readonly props: any;
552
- readonly key: React.Key | null;
553
- } | {} | {
554
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
555
- } | {
556
- readonly key: React.Key | null;
557
- readonly children: boolean | React.ReactText | {
558
- readonly type: string | React.JSXElementConstructor<any>;
559
- readonly props: any;
560
- readonly key: React.Key | null;
561
- } | {} | {
562
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
563
- } | any | null | undefined;
564
- readonly type: string | React.JSXElementConstructor<any>;
565
- readonly props: any;
566
- } | {
567
- readonly stringGetter: () => string;
568
- readonly syncEventIds: readonly string[];
569
- readonly value: string;
570
- readonly refresh: () => boolean;
571
- } | null | undefined;
572
- readonly preferredFloatingWidgetSize?: {
573
- readonly width: number;
574
- readonly height: number;
575
- } | undefined;
576
- readonly preferredPopoutWidgetSize?: {
577
- readonly width: number;
578
- readonly height: number;
579
- readonly x: number;
580
- readonly y: number;
581
- } | undefined;
582
- readonly preferredPanelWidgetSize?: "fit-content" | undefined;
583
- readonly allowedPanelTargets?: readonly PanelSide[] | undefined;
584
- readonly canPopout?: boolean | undefined;
585
- readonly userSized?: boolean | undefined;
586
- readonly isFloatingStateWindowResizable?: boolean | undefined;
587
- readonly hideWithUiWhenFloating?: boolean | undefined;
588
- };
589
- };
590
- readonly toolSettings: {
591
- readonly type: "docked";
592
- } | {
593
- readonly type: "widget";
594
- };
595
- readonly widgets: {
596
- readonly [x: string]: {
597
- readonly activeTabId: string;
598
- readonly id: string;
599
- readonly minimized: boolean;
600
- readonly tabs: readonly string[];
601
- readonly isFloatingStateWindowResizable?: boolean | undefined;
602
- };
603
- };
604
- readonly size: {
605
- readonly width: number;
606
- readonly height: number;
607
- };
608
- }, id: string) => import("immer/dist/internal").WritableDraft<NineZoneState>;
105
+ export declare function expandWidget(state: NineZoneState, id: TabState["id"]): NineZoneState;
609
106
  /** @internal */
610
- export declare const setWidgetLabel: (base: {
611
- readonly draggedTab: {
612
- readonly tabId: string;
613
- readonly position: {
614
- readonly x: number;
615
- readonly y: number;
616
- };
617
- readonly home: {
618
- readonly widgetIndex: number;
619
- readonly widgetId: string | undefined;
620
- readonly side: PanelSide;
621
- };
622
- } | undefined;
623
- readonly floatingWidgets: {
624
- readonly byId: {
625
- readonly [x: string]: {
626
- readonly bounds: {
627
- readonly left: number;
628
- readonly top: number;
629
- readonly right: number;
630
- readonly bottom: number;
631
- };
632
- readonly id: string;
633
- readonly home: {
634
- readonly widgetIndex: number;
635
- readonly widgetId: string | undefined;
636
- readonly side: PanelSide;
637
- };
638
- readonly userSized?: boolean | undefined;
639
- readonly hidden?: boolean | undefined;
640
- };
641
- };
642
- readonly allIds: readonly string[];
643
- };
644
- readonly popoutWidgets: {
645
- readonly byId: {
646
- readonly [x: string]: {
647
- readonly bounds: {
648
- readonly left: number;
649
- readonly top: number;
650
- readonly right: number;
651
- readonly bottom: number;
652
- };
653
- readonly id: string;
654
- readonly home: {
655
- readonly widgetIndex: number;
656
- readonly widgetId: string | undefined;
657
- readonly side: PanelSide;
658
- };
659
- };
660
- };
661
- readonly allIds: readonly string[];
662
- };
663
- readonly panels: {
664
- readonly bottom: {
665
- readonly span: boolean;
666
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
667
- readonly collapseOffset: number;
668
- readonly collapsed: boolean;
669
- readonly maxSize: number;
670
- readonly minSize: number;
671
- readonly pinned: boolean;
672
- readonly resizable: boolean;
673
- readonly size: number | undefined;
674
- readonly widgets: readonly string[];
675
- readonly maxWidgetCount: number;
676
- readonly splitterPercent: number | undefined;
677
- };
678
- readonly left: {
679
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
680
- readonly collapseOffset: number;
681
- readonly collapsed: boolean;
682
- readonly maxSize: number;
683
- readonly minSize: number;
684
- readonly pinned: boolean;
685
- readonly resizable: boolean;
686
- readonly size: number | undefined;
687
- readonly widgets: readonly string[];
688
- readonly maxWidgetCount: number;
689
- readonly splitterPercent: number | undefined;
690
- };
691
- readonly right: {
692
- readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
693
- readonly collapseOffset: number;
694
- readonly collapsed: boolean;
695
- readonly maxSize: number;
696
- readonly minSize: number;
697
- readonly pinned: boolean;
698
- readonly resizable: boolean;
699
- readonly size: number | undefined;
700
- readonly widgets: readonly string[];
701
- readonly maxWidgetCount: number;
702
- readonly splitterPercent: number | undefined;
703
- };
704
- readonly top: {
705
- readonly span: boolean;
706
- readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
707
- readonly collapseOffset: number;
708
- readonly collapsed: boolean;
709
- readonly maxSize: number;
710
- readonly minSize: number;
711
- readonly pinned: boolean;
712
- readonly resizable: boolean;
713
- readonly size: number | undefined;
714
- readonly widgets: readonly string[];
715
- readonly maxWidgetCount: number;
716
- readonly splitterPercent: number | undefined;
717
- };
718
- };
719
- readonly tabs: {
720
- readonly [x: string]: {
721
- readonly id: string;
722
- readonly label: string;
723
- readonly iconSpec?: boolean | React.ReactText | {
724
- readonly type: string | React.JSXElementConstructor<any>;
725
- readonly props: any;
726
- readonly key: React.Key | null;
727
- } | {} | {
728
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
729
- } | {
730
- readonly key: React.Key | null;
731
- readonly children: boolean | React.ReactText | {
732
- readonly type: string | React.JSXElementConstructor<any>;
733
- readonly props: any;
734
- readonly key: React.Key | null;
735
- } | {} | {
736
- readonly [Symbol.iterator]: () => Iterator<React.ReactNode, any, undefined>;
737
- } | any | null | undefined;
738
- readonly type: string | React.JSXElementConstructor<any>;
739
- readonly props: any;
740
- } | {
741
- readonly stringGetter: () => string;
742
- readonly syncEventIds: readonly string[];
743
- readonly value: string;
744
- readonly refresh: () => boolean;
745
- } | null | undefined;
746
- readonly preferredFloatingWidgetSize?: {
747
- readonly width: number;
748
- readonly height: number;
749
- } | undefined;
750
- readonly preferredPopoutWidgetSize?: {
751
- readonly width: number;
752
- readonly height: number;
753
- readonly x: number;
754
- readonly y: number;
755
- } | undefined;
756
- readonly preferredPanelWidgetSize?: "fit-content" | undefined;
757
- readonly allowedPanelTargets?: readonly PanelSide[] | undefined;
758
- readonly canPopout?: boolean | undefined;
759
- readonly userSized?: boolean | undefined;
760
- readonly isFloatingStateWindowResizable?: boolean | undefined;
761
- readonly hideWithUiWhenFloating?: boolean | undefined;
762
- };
763
- };
764
- readonly toolSettings: {
765
- readonly type: "docked";
766
- } | {
767
- readonly type: "widget";
768
- };
769
- readonly widgets: {
770
- readonly [x: string]: {
771
- readonly activeTabId: string;
772
- readonly id: string;
773
- readonly minimized: boolean;
774
- readonly tabs: readonly string[];
775
- readonly isFloatingStateWindowResizable?: boolean | undefined;
776
- };
777
- };
778
- readonly size: {
779
- readonly width: number;
780
- readonly height: number;
781
- };
782
- }, id: string, label: string) => import("immer/dist/internal").WritableDraft<NineZoneState>;
107
+ export declare function setWidgetLabel(state: NineZoneState, id: TabState["id"], label: string): NineZoneState;
783
108
  /** @internal */
784
109
  export declare function useSavedFrontstageState(frontstageDef: FrontstageDef): void;
785
110
  /** @internal */
@@ -792,7 +117,5 @@ export declare function getFrontstageStateSettingName(frontstageId: WidgetPanels
792
117
  export declare function useFrontstageManager(frontstageDef: FrontstageDef, useToolAsToolSettingsLabel?: boolean): void;
793
118
  /** @internal */
794
119
  export declare function useItemsManager(frontstageDef: FrontstageDef): void;
795
- /** @internal */
796
- export declare function saveFrontstagePopoutWidgetSizeAndPosition(state: NineZoneState, stageId: string, stageVersion: number, childWindowId: string, childWindow: Window): Promise<NineZoneState>;
797
120
  export {};
798
121
  //# sourceMappingURL=Frontstage.d.ts.map