@itwin/appui-react 3.5.0-dev.57 → 3.5.0-dev.59

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 (177) hide show
  1. package/lib/cjs/appui-react/configurableui/state.d.ts +1 -1
  2. package/lib/cjs/appui-react/configurableui/state.js +1 -1
  3. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  4. package/lib/cjs/appui-react/content/ContentGroup.d.ts +8 -0
  5. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  6. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  7. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +5 -1
  8. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  9. package/lib/cjs/appui-react/frontstage/Frontstage.js +1 -0
  10. package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
  11. package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  12. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +5 -2
  13. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  14. package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
  15. package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
  16. package/lib/cjs/appui-react/frontstage/FrontstageConfig.js +10 -0
  17. package/lib/cjs/appui-react/frontstage/FrontstageConfig.js.map +1 -0
  18. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +8 -0
  19. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  20. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +114 -6
  21. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  22. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +0 -4
  23. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  24. package/lib/cjs/appui-react/frontstage/FrontstageManager.js +1 -8
  25. package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
  26. package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
  27. package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
  28. package/lib/cjs/appui-react/frontstage/FrontstageProvider.js +1 -1
  29. package/lib/cjs/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  30. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
  31. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  32. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +1 -1
  33. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  34. package/lib/cjs/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
  35. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js +1 -1
  36. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  37. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +3 -0
  38. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  39. package/lib/cjs/appui-react/stagepanels/StagePanel.js +1 -0
  40. package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
  41. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts +39 -0
  42. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
  43. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js +11 -0
  44. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
  45. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
  46. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  47. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +4 -7
  48. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  49. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +2 -0
  50. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  51. package/lib/cjs/appui-react/uistate/AppUiSettings.js +4 -0
  52. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  53. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  54. package/lib/cjs/appui-react/widget-panels/StatusBar.js +5 -2
  55. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  56. package/lib/cjs/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
  57. package/lib/cjs/appui-react/widget-panels/Toolbars.js +10 -3
  58. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  59. package/lib/cjs/appui-react/widgets/NavigationWidget.js.map +1 -1
  60. package/lib/cjs/appui-react/widgets/ToolWidget.js.map +1 -1
  61. package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  62. package/lib/cjs/appui-react/widgets/Widget.d.ts +1 -0
  63. package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -1
  64. package/lib/cjs/appui-react/widgets/Widget.js +1 -0
  65. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
  66. package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts +11 -0
  67. package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
  68. package/lib/cjs/appui-react/widgets/WidgetConfig.js +10 -0
  69. package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -0
  70. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +10 -1
  71. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  72. package/lib/cjs/appui-react/widgets/WidgetDef.js +13 -10
  73. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  74. package/lib/cjs/appui-react/widgets/WidgetProps.d.ts +1 -0
  75. package/lib/cjs/appui-react/widgets/WidgetProps.d.ts.map +1 -1
  76. package/lib/cjs/appui-react/widgets/WidgetProps.js.map +1 -1
  77. package/lib/cjs/appui-react/zones/Zone.d.ts +5 -1
  78. package/lib/cjs/appui-react/zones/Zone.d.ts.map +1 -1
  79. package/lib/cjs/appui-react/zones/Zone.js +1 -0
  80. package/lib/cjs/appui-react/zones/Zone.js.map +1 -1
  81. package/lib/cjs/appui-react/zones/ZoneDef.d.ts +1 -0
  82. package/lib/cjs/appui-react/zones/ZoneDef.d.ts.map +1 -1
  83. package/lib/cjs/appui-react/zones/ZoneDef.js +2 -2
  84. package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
  85. package/lib/cjs/appui-react.d.ts +3 -0
  86. package/lib/cjs/appui-react.d.ts.map +1 -1
  87. package/lib/cjs/appui-react.js +3 -0
  88. package/lib/cjs/appui-react.js.map +1 -1
  89. package/lib/esm/appui-react/configurableui/state.d.ts +1 -1
  90. package/lib/esm/appui-react/configurableui/state.js +1 -1
  91. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  92. package/lib/esm/appui-react/content/ContentGroup.d.ts +8 -0
  93. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  94. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  95. package/lib/esm/appui-react/frontstage/Frontstage.d.ts +5 -1
  96. package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  97. package/lib/esm/appui-react/frontstage/Frontstage.js +1 -0
  98. package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
  99. package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  100. package/lib/esm/appui-react/frontstage/FrontstageComposer.js +6 -3
  101. package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  102. package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
  103. package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
  104. package/lib/esm/appui-react/frontstage/FrontstageConfig.js +9 -0
  105. package/lib/esm/appui-react/frontstage/FrontstageConfig.js.map +1 -0
  106. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +8 -0
  107. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  108. package/lib/esm/appui-react/frontstage/FrontstageDef.js +115 -7
  109. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  110. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +0 -4
  111. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  112. package/lib/esm/appui-react/frontstage/FrontstageManager.js +1 -8
  113. package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
  114. package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
  115. package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
  116. package/lib/esm/appui-react/frontstage/FrontstageProvider.js +1 -1
  117. package/lib/esm/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  118. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
  119. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  120. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +1 -1
  121. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  122. package/lib/esm/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
  123. package/lib/esm/appui-react/shared/ActionButtonItemDef.js +1 -1
  124. package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  125. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +3 -0
  126. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  127. package/lib/esm/appui-react/stagepanels/StagePanel.js +1 -0
  128. package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
  129. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts +39 -0
  130. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
  131. package/lib/esm/appui-react/stagepanels/StagePanelConfig.js +10 -0
  132. package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
  133. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
  134. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  135. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +4 -7
  136. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  137. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +2 -0
  138. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  139. package/lib/esm/appui-react/uistate/AppUiSettings.js +4 -0
  140. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  141. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  142. package/lib/esm/appui-react/widget-panels/StatusBar.js +5 -2
  143. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  144. package/lib/esm/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
  145. package/lib/esm/appui-react/widget-panels/Toolbars.js +10 -3
  146. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  147. package/lib/esm/appui-react/widgets/NavigationWidget.js.map +1 -1
  148. package/lib/esm/appui-react/widgets/ToolWidget.js.map +1 -1
  149. package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  150. package/lib/esm/appui-react/widgets/Widget.d.ts +1 -0
  151. package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -1
  152. package/lib/esm/appui-react/widgets/Widget.js +1 -0
  153. package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
  154. package/lib/esm/appui-react/widgets/WidgetConfig.d.ts +11 -0
  155. package/lib/esm/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
  156. package/lib/esm/appui-react/widgets/WidgetConfig.js +9 -0
  157. package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -0
  158. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +10 -1
  159. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  160. package/lib/esm/appui-react/widgets/WidgetDef.js +13 -10
  161. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  162. package/lib/esm/appui-react/widgets/WidgetProps.d.ts +1 -0
  163. package/lib/esm/appui-react/widgets/WidgetProps.d.ts.map +1 -1
  164. package/lib/esm/appui-react/widgets/WidgetProps.js.map +1 -1
  165. package/lib/esm/appui-react/zones/Zone.d.ts +5 -1
  166. package/lib/esm/appui-react/zones/Zone.d.ts.map +1 -1
  167. package/lib/esm/appui-react/zones/Zone.js +1 -0
  168. package/lib/esm/appui-react/zones/Zone.js.map +1 -1
  169. package/lib/esm/appui-react/zones/ZoneDef.d.ts +1 -0
  170. package/lib/esm/appui-react/zones/ZoneDef.d.ts.map +1 -1
  171. package/lib/esm/appui-react/zones/ZoneDef.js +2 -2
  172. package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
  173. package/lib/esm/appui-react.d.ts +3 -0
  174. package/lib/esm/appui-react.d.ts.map +1 -1
  175. package/lib/esm/appui-react.js +3 -0
  176. package/lib/esm/appui-react.js.map +1 -1
  177. package/package.json +33 -33
@@ -59,6 +59,7 @@ export declare type StagePanelMaxSizeSpec = number | {
59
59
  percentage: number;
60
60
  };
61
61
  /** Properties of a [[StagePanel]] component
62
+ * @deprecated Props of a deprecated component.
62
63
  * @public
63
64
  */
64
65
  export interface StagePanelProps {
@@ -92,6 +93,7 @@ export interface StagePanelProps {
92
93
  runtimeProps?: StagePanelRuntimeProps;
93
94
  }
94
95
  /** Default properties of [[StagePanel]] component.
96
+ * @deprecated Default props of a deprecated component.
95
97
  * @public
96
98
  */
97
99
  export declare type StagePanelDefaultProps = Pick<StagePanelProps, "resizable">;
@@ -116,6 +118,7 @@ interface StagePanelComponentState {
116
118
  stagePanelWidgets: ReadonlyArray<WidgetDef["id"]>;
117
119
  }
118
120
  /** Frontstage Panel React component.
121
+ * @deprecated Use [StagePanelConfig] instead.
119
122
  * @public
120
123
  */
121
124
  export declare class StagePanel extends React.Component<StagePanelProps, StagePanelComponentState> {
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanel.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StagePanel.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanel.tsx"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import { FrontstageManager } from "../frontstage/FrontstageManager";
13
13
  import { FrameworkStagePanel } from "./FrameworkStagePanel";
14
14
  import { StagePanelState as StagePanelState } from "./StagePanelDef";
15
15
  /** Frontstage Panel React component.
16
+ * @deprecated Use [StagePanelConfig] instead.
16
17
  * @public
17
18
  */
18
19
  export class StagePanel extends React.Component {
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanel.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanel.tsx"],"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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\r\nimport {\r\n NestedStagePanelKey, NestedStagePanelsManagerProps, NineZoneStagePanelManagerProps, StagePanelType as NZ_StagePanelType, WidgetZoneId,\r\n ZonesManagerWidgetsProps,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { StagePanelChangeHandler, WidgetChangeHandler, ZoneDefProvider } from \"../frontstage/FrontstageComposer\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetProps } from \"../widgets/WidgetProps\";\r\nimport { WidgetTabs } from \"../widgets/WidgetStack\";\r\nimport { ZoneLocation } from \"../zones/Zone\";\r\nimport { FrameworkStagePanel } from \"./FrameworkStagePanel\";\r\nimport { PanelStateChangedEventArgs, StagePanelDef, StagePanelState as StagePanelState } from \"./StagePanelDef\";\r\nimport { WidgetDef, WidgetStateChangedEventArgs } from \"../widgets/WidgetDef\";\r\n\r\n/** Available StagePanel locations.\r\n * ------------------------------------------------------------------------------------\r\n * TopMost\r\n * ------------------------------------------------------------------------------------\r\n * Left | Top | Right\r\n * |---------------------------------------------------------------|\r\n * | Nine-zone |\r\n * | |\r\n * | |\r\n * | |\r\n * | |\r\n * | |\r\n * |---------------------------------------------------------------|\r\n * | Bottom |\r\n * ------------------------------------------------------------------------------------\r\n * BottomMost\r\n * ------------------------------------------------------------------------------------\r\n */\r\n\r\n/** Properties of a Stage Panel Zone\r\n * @public @deprecated\r\n */\r\nexport interface StagePanelZoneProps {\r\n /** Properties for the Widgets in this Zone.\r\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\r\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\r\n */\r\n widgets: Array<React.ReactElement<WidgetProps>>;\r\n /** Any application data to attach to this Zone. */\r\n applicationData?: any;\r\n}\r\n\r\n/** Properties of the Stage Panel Zones\r\n * @public @deprecated\r\n */\r\nexport interface StagePanelZonesProps {\r\n /** Properties for the Widgets in the Start section. */\r\n start?: StagePanelZoneProps;\r\n /** Properties for the Widgets in the Middle section. Deprecated - all widgets originally targeted for \"middle\" will now go to \"end\". */\r\n middle?: StagePanelZoneProps;\r\n /** Properties for the Widgets in the End section. */\r\n end?: StagePanelZoneProps;\r\n}\r\n\r\n/** Available units of panel maximum size. Pixels or percentage of 9-Zone App size.\r\n * @note Percentage of 9-Zone `height` is used for top/bottom panel and percentage of 9-Zone `width` is used for left/right panel.\r\n * @public\r\n */\r\nexport type StagePanelMaxSizeSpec = number | { percentage: number };\r\n\r\n/** Properties of a [[StagePanel]] component\r\n * @public\r\n */\r\nexport interface StagePanelProps {\r\n /** Describes which zones are allowed in this stage panel. */\r\n allowedZones?: ZoneLocation[];\r\n /** Any application data to attach to this Panel. */\r\n applicationData?: any;\r\n /** Default Panel state. Controls how the panel is initially displayed. Defaults to StagePanelState.Open. */\r\n defaultState?: StagePanelState;\r\n /** Stage panel header. */\r\n header?: React.ReactNode;\r\n /** Maximum size of the panel. */\r\n maxSize?: StagePanelMaxSizeSpec;\r\n /** Minimum size of the panel. */\r\n minSize?: number;\r\n /** Indicates whether the panel is pinned. Defaults to true. */\r\n pinned?: boolean;\r\n /** Indicates whether the panel is resizable. Defaults to true. */\r\n resizable: boolean;\r\n /** Default size of the panel. */\r\n size?: number;\r\n /** Properties for the Widgets in this Panel.\r\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\r\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\r\n */\r\n widgets?: Array<React.ReactElement<WidgetProps>>;\r\n\r\n /** Properties for the Panel Zones in this Panel.\r\n * @beta */\r\n panelZones?: StagePanelZonesProps;\r\n\r\n /** @internal */\r\n runtimeProps?: StagePanelRuntimeProps;\r\n}\r\n\r\n/** Default properties of [[StagePanel]] component.\r\n * @public\r\n */\r\nexport type StagePanelDefaultProps = Pick<StagePanelProps, \"resizable\">;\r\n\r\n/** Runtime Properties for the [[StagePanel]] component.\r\n * @internal\r\n */\r\nexport interface StagePanelRuntimeProps {\r\n draggedWidgetId: WidgetZoneId | undefined; // eslint-disable-line deprecation/deprecation\r\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>; // eslint-disable-line deprecation/deprecation\r\n isInFooterMode: boolean;\r\n isTargeted: boolean;\r\n panel: NineZoneStagePanelManagerProps;\r\n panelDef: StagePanelDef;\r\n stagePanelChangeHandler: StagePanelChangeHandler;\r\n widgetChangeHandler: WidgetChangeHandler; // eslint-disable-line deprecation/deprecation\r\n widgets: ZonesManagerWidgetsProps;\r\n widgetTabs: WidgetTabs;\r\n zoneDefProvider: ZoneDefProvider;\r\n}\r\n\r\ninterface StagePanelComponentState {\r\n panelState: StagePanelState;\r\n stagePanelWidgets: ReadonlyArray<WidgetDef[\"id\"]>;\r\n}\r\n\r\n/** Frontstage Panel React component.\r\n * @public\r\n */\r\nexport class StagePanel extends React.Component<StagePanelProps, StagePanelComponentState> {\r\n public static readonly defaultProps: StagePanelDefaultProps = {\r\n resizable: true,\r\n };\r\n\r\n public constructor(props: StagePanelProps) {\r\n super(props);\r\n\r\n const panelState = this.props.runtimeProps?.panelDef.panelState;\r\n this.state = {\r\n panelState: panelState === undefined ? StagePanelState.Open : panelState,\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n };\r\n }\r\n\r\n public static initializeStagePanelDef(panelDef: StagePanelDef, props: StagePanelProps, panelLocation: StagePanelLocation): void {\r\n panelDef.initializeFromProps(props, panelLocation);\r\n }\r\n\r\n public override componentDidMount() {\r\n FrontstageManager.onPanelStateChangedEvent.addListener(this._handlePanelStateChangedEvent);\r\n FrontstageManager.onWidgetStateChangedEvent.addListener(this._handleWidgetStateChangedEvent);\r\n }\r\n\r\n public override componentDidUpdate(prevProps: StagePanelProps) {\r\n if (prevProps.runtimeProps?.panelDef !== this.props.runtimeProps?.panelDef) {\r\n this.setState({\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n });\r\n }\r\n }\r\n\r\n public override componentWillUnmount() {\r\n FrontstageManager.onPanelStateChangedEvent.removeListener(this._handlePanelStateChangedEvent);\r\n FrontstageManager.onWidgetStateChangedEvent.removeListener(this._handleWidgetStateChangedEvent);\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const { applicationData, defaultState, runtimeProps, maxSize, size, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\r\n if (!runtimeProps)\r\n return null;\r\n\r\n const { stagePanelChangeHandler, panelDef, ...otherRuntimeProps } = runtimeProps;\r\n return (\r\n <FrameworkStagePanel\r\n changeHandler={stagePanelChangeHandler}\r\n initialSize={size}\r\n location={panelDef.location}\r\n renderPane={this._handleRenderPane}\r\n stagePanelWidgets={this.state.stagePanelWidgets}\r\n panelState={this.state.panelState}\r\n maxSize={typeof maxSize === \"number\" ? maxSize : undefined}\r\n {...props}\r\n {...otherRuntimeProps}\r\n />\r\n );\r\n }\r\n\r\n private _handleRenderPane = (widgetDefId: WidgetDef[\"id\"]): React.ReactNode => {\r\n const runtimeProps = this.props.runtimeProps;\r\n if (!runtimeProps)\r\n return null;\r\n const widgetDef = runtimeProps.panelDef.findWidgetDef(widgetDefId);\r\n if (!widgetDef || !widgetDef.isVisible)\r\n return null;\r\n return (\r\n <div\r\n style={{\r\n height: \"100%\",\r\n display: runtimeProps.panel.isCollapsed ? \"none\" : \"block\",\r\n }}\r\n >\r\n {widgetDef.reactNode}\r\n </div>\r\n );\r\n };\r\n\r\n private _handlePanelStateChangedEvent = ({ panelDef, panelState }: PanelStateChangedEventArgs) => {\r\n // istanbul ignore else\r\n if (panelDef !== this.props.runtimeProps?.panelDef)\r\n return;\r\n // istanbul ignore next\r\n this.setState({\r\n panelState,\r\n });\r\n };\r\n\r\n private _handleWidgetStateChangedEvent = ({ widgetDef }: WidgetStateChangedEventArgs) => {\r\n const runtimeProps = this.props.runtimeProps;\r\n if (!runtimeProps)\r\n return;\r\n if (!runtimeProps.panelDef.findWidgetDef(widgetDef.id))\r\n return;\r\n this.setState({\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n });\r\n };\r\n\r\n private _getVisibleStagePanelWidgets() {\r\n const panelDef = this.props.runtimeProps?.panelDef;\r\n if (!panelDef)\r\n return [];\r\n const visibleWidgets = panelDef.widgetDefs.filter((wd) => wd.isVisible);\r\n return visibleWidgets.map((widgetDef) => widgetDef.id);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const getStagePanelType = (location: StagePanelLocation): NZ_StagePanelType => {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return NZ_StagePanelType.Bottom;\r\n case StagePanelLocation.Left:\r\n return NZ_StagePanelType.Left;\r\n case StagePanelLocation.Right:\r\n return NZ_StagePanelType.Right;\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return NZ_StagePanelType.Top;\r\n }\r\n};\r\n\r\n/** @internal */\r\nexport const getNestedStagePanelKey = (location: StagePanelLocation): NestedStagePanelKey<NestedStagePanelsManagerProps> => {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Bottom,\r\n };\r\n case StagePanelLocation.BottomMost:\r\n return {\r\n id: \"outer\",\r\n type: NZ_StagePanelType.Bottom,\r\n };\r\n case StagePanelLocation.Left:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Left,\r\n };\r\n case StagePanelLocation.Right:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Right,\r\n };\r\n case StagePanelLocation.Top:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Top,\r\n };\r\n case StagePanelLocation.TopMost:\r\n return {\r\n id: \"outer\",\r\n type: NZ_StagePanelType.Top,\r\n };\r\n }\r\n};\r\n"]}
1
+ {"version":3,"file":"StagePanel.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanel.tsx"],"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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\r\nimport {\r\n NestedStagePanelKey, NestedStagePanelsManagerProps, NineZoneStagePanelManagerProps, StagePanelType as NZ_StagePanelType, WidgetZoneId,\r\n ZonesManagerWidgetsProps,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { StagePanelChangeHandler, WidgetChangeHandler, ZoneDefProvider } from \"../frontstage/FrontstageComposer\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetProps } from \"../widgets/WidgetProps\";\r\nimport { WidgetTabs } from \"../widgets/WidgetStack\";\r\nimport { ZoneLocation } from \"../zones/Zone\";\r\nimport { FrameworkStagePanel } from \"./FrameworkStagePanel\";\r\nimport { PanelStateChangedEventArgs, StagePanelDef, StagePanelState as StagePanelState } from \"./StagePanelDef\";\r\nimport { WidgetDef, WidgetStateChangedEventArgs } from \"../widgets/WidgetDef\";\r\n\r\n/** Available StagePanel locations.\r\n * ------------------------------------------------------------------------------------\r\n * TopMost\r\n * ------------------------------------------------------------------------------------\r\n * Left | Top | Right\r\n * |---------------------------------------------------------------|\r\n * | Nine-zone |\r\n * | |\r\n * | |\r\n * | |\r\n * | |\r\n * | |\r\n * |---------------------------------------------------------------|\r\n * | Bottom |\r\n * ------------------------------------------------------------------------------------\r\n * BottomMost\r\n * ------------------------------------------------------------------------------------\r\n */\r\n\r\n/** Properties of a Stage Panel Zone\r\n * @public @deprecated\r\n */\r\nexport interface StagePanelZoneProps {\r\n /** Properties for the Widgets in this Zone.\r\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\r\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\r\n */\r\n widgets: Array<React.ReactElement<WidgetProps>>;\r\n /** Any application data to attach to this Zone. */\r\n applicationData?: any;\r\n}\r\n\r\n/** Properties of the Stage Panel Zones\r\n * @public @deprecated\r\n */\r\nexport interface StagePanelZonesProps {\r\n /** Properties for the Widgets in the Start section. */\r\n start?: StagePanelZoneProps;\r\n /** Properties for the Widgets in the Middle section. Deprecated - all widgets originally targeted for \"middle\" will now go to \"end\". */\r\n middle?: StagePanelZoneProps;\r\n /** Properties for the Widgets in the End section. */\r\n end?: StagePanelZoneProps;\r\n}\r\n\r\n/** Available units of panel maximum size. Pixels or percentage of 9-Zone App size.\r\n * @note Percentage of 9-Zone `height` is used for top/bottom panel and percentage of 9-Zone `width` is used for left/right panel.\r\n * @public\r\n */\r\nexport type StagePanelMaxSizeSpec = number | { percentage: number };\r\n\r\n/** Properties of a [[StagePanel]] component\r\n * @deprecated Props of a deprecated component.\r\n * @public\r\n */\r\nexport interface StagePanelProps {\r\n /** Describes which zones are allowed in this stage panel. */\r\n allowedZones?: ZoneLocation[];\r\n /** Any application data to attach to this Panel. */\r\n applicationData?: any;\r\n /** Default Panel state. Controls how the panel is initially displayed. Defaults to StagePanelState.Open. */\r\n defaultState?: StagePanelState;\r\n /** Stage panel header. */\r\n header?: React.ReactNode;\r\n /** Maximum size of the panel. */\r\n maxSize?: StagePanelMaxSizeSpec;\r\n /** Minimum size of the panel. */\r\n minSize?: number;\r\n /** Indicates whether the panel is pinned. Defaults to true. */\r\n pinned?: boolean;\r\n /** Indicates whether the panel is resizable. Defaults to true. */\r\n resizable: boolean;\r\n /** Default size of the panel. */\r\n size?: number;\r\n /** Properties for the Widgets in this Panel.\r\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\r\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\r\n */\r\n widgets?: Array<React.ReactElement<WidgetProps>>;\r\n\r\n /** Properties for the Panel Zones in this Panel.\r\n * @beta */\r\n panelZones?: StagePanelZonesProps;\r\n\r\n /** @internal */\r\n runtimeProps?: StagePanelRuntimeProps;\r\n}\r\n\r\n/** Default properties of [[StagePanel]] component.\r\n * @deprecated Default props of a deprecated component.\r\n * @public\r\n */\r\nexport type StagePanelDefaultProps = Pick<StagePanelProps, \"resizable\">;\r\n\r\n/** Runtime Properties for the [[StagePanel]] component.\r\n * @internal\r\n */\r\nexport interface StagePanelRuntimeProps {\r\n draggedWidgetId: WidgetZoneId | undefined; // eslint-disable-line deprecation/deprecation\r\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>; // eslint-disable-line deprecation/deprecation\r\n isInFooterMode: boolean;\r\n isTargeted: boolean;\r\n panel: NineZoneStagePanelManagerProps;\r\n panelDef: StagePanelDef;\r\n stagePanelChangeHandler: StagePanelChangeHandler;\r\n widgetChangeHandler: WidgetChangeHandler; // eslint-disable-line deprecation/deprecation\r\n widgets: ZonesManagerWidgetsProps;\r\n widgetTabs: WidgetTabs;\r\n zoneDefProvider: ZoneDefProvider;\r\n}\r\n\r\ninterface StagePanelComponentState {\r\n panelState: StagePanelState;\r\n stagePanelWidgets: ReadonlyArray<WidgetDef[\"id\"]>;\r\n}\r\n\r\n/** Frontstage Panel React component.\r\n * @deprecated Use [StagePanelConfig] instead.\r\n * @public\r\n */\r\nexport class StagePanel extends React.Component<StagePanelProps, StagePanelComponentState> {\r\n public static readonly defaultProps: StagePanelDefaultProps = {\r\n resizable: true,\r\n };\r\n\r\n public constructor(props: StagePanelProps) {\r\n super(props);\r\n\r\n const panelState = this.props.runtimeProps?.panelDef.panelState;\r\n this.state = {\r\n panelState: panelState === undefined ? StagePanelState.Open : panelState,\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n };\r\n }\r\n\r\n public static initializeStagePanelDef(panelDef: StagePanelDef, props: StagePanelProps, panelLocation: StagePanelLocation): void {\r\n panelDef.initializeFromProps(props, panelLocation);\r\n }\r\n\r\n public override componentDidMount() {\r\n FrontstageManager.onPanelStateChangedEvent.addListener(this._handlePanelStateChangedEvent);\r\n FrontstageManager.onWidgetStateChangedEvent.addListener(this._handleWidgetStateChangedEvent);\r\n }\r\n\r\n public override componentDidUpdate(prevProps: StagePanelProps) {\r\n if (prevProps.runtimeProps?.panelDef !== this.props.runtimeProps?.panelDef) {\r\n this.setState({\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n });\r\n }\r\n }\r\n\r\n public override componentWillUnmount() {\r\n FrontstageManager.onPanelStateChangedEvent.removeListener(this._handlePanelStateChangedEvent);\r\n FrontstageManager.onWidgetStateChangedEvent.removeListener(this._handleWidgetStateChangedEvent);\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const { applicationData, defaultState, runtimeProps, maxSize, size, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\r\n if (!runtimeProps)\r\n return null;\r\n\r\n const { stagePanelChangeHandler, panelDef, ...otherRuntimeProps } = runtimeProps;\r\n return (\r\n <FrameworkStagePanel\r\n changeHandler={stagePanelChangeHandler}\r\n initialSize={size}\r\n location={panelDef.location}\r\n renderPane={this._handleRenderPane}\r\n stagePanelWidgets={this.state.stagePanelWidgets}\r\n panelState={this.state.panelState}\r\n maxSize={typeof maxSize === \"number\" ? maxSize : undefined}\r\n {...props}\r\n {...otherRuntimeProps}\r\n />\r\n );\r\n }\r\n\r\n private _handleRenderPane = (widgetDefId: WidgetDef[\"id\"]): React.ReactNode => {\r\n const runtimeProps = this.props.runtimeProps;\r\n if (!runtimeProps)\r\n return null;\r\n const widgetDef = runtimeProps.panelDef.findWidgetDef(widgetDefId);\r\n if (!widgetDef || !widgetDef.isVisible)\r\n return null;\r\n return (\r\n <div\r\n style={{\r\n height: \"100%\",\r\n display: runtimeProps.panel.isCollapsed ? \"none\" : \"block\",\r\n }}\r\n >\r\n {widgetDef.reactNode}\r\n </div>\r\n );\r\n };\r\n\r\n private _handlePanelStateChangedEvent = ({ panelDef, panelState }: PanelStateChangedEventArgs) => {\r\n // istanbul ignore else\r\n if (panelDef !== this.props.runtimeProps?.panelDef)\r\n return;\r\n // istanbul ignore next\r\n this.setState({\r\n panelState,\r\n });\r\n };\r\n\r\n private _handleWidgetStateChangedEvent = ({ widgetDef }: WidgetStateChangedEventArgs) => {\r\n const runtimeProps = this.props.runtimeProps;\r\n if (!runtimeProps)\r\n return;\r\n if (!runtimeProps.panelDef.findWidgetDef(widgetDef.id))\r\n return;\r\n this.setState({\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n });\r\n };\r\n\r\n private _getVisibleStagePanelWidgets() {\r\n const panelDef = this.props.runtimeProps?.panelDef;\r\n if (!panelDef)\r\n return [];\r\n const visibleWidgets = panelDef.widgetDefs.filter((wd) => wd.isVisible);\r\n return visibleWidgets.map((widgetDef) => widgetDef.id);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const getStagePanelType = (location: StagePanelLocation): NZ_StagePanelType => {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return NZ_StagePanelType.Bottom;\r\n case StagePanelLocation.Left:\r\n return NZ_StagePanelType.Left;\r\n case StagePanelLocation.Right:\r\n return NZ_StagePanelType.Right;\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return NZ_StagePanelType.Top;\r\n }\r\n};\r\n\r\n/** @internal */\r\nexport const getNestedStagePanelKey = (location: StagePanelLocation): NestedStagePanelKey<NestedStagePanelsManagerProps> => {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Bottom,\r\n };\r\n case StagePanelLocation.BottomMost:\r\n return {\r\n id: \"outer\",\r\n type: NZ_StagePanelType.Bottom,\r\n };\r\n case StagePanelLocation.Left:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Left,\r\n };\r\n case StagePanelLocation.Right:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Right,\r\n };\r\n case StagePanelLocation.Top:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Top,\r\n };\r\n case StagePanelLocation.TopMost:\r\n return {\r\n id: \"outer\",\r\n type: NZ_StagePanelType.Top,\r\n };\r\n }\r\n};\r\n"]}
@@ -0,0 +1,39 @@
1
+ /** @packageDocumentation
2
+ * @module Frontstage
3
+ */
4
+ import { WidgetConfig } from "../widgets/WidgetConfig";
5
+ import { StagePanelMaxSizeSpec } from "./StagePanel";
6
+ import { StagePanelState as StagePanelState } from "./StagePanelDef";
7
+ /** Configuration from which a stage panel is created.
8
+ * @beta
9
+ */
10
+ export interface StagePanelConfig {
11
+ /** Default Panel state. Controls how the panel is initially displayed. Defaults to StagePanelState.Open. */
12
+ readonly defaultState?: StagePanelState;
13
+ /** Maximum size of the panel. */
14
+ readonly maxSize?: StagePanelMaxSizeSpec;
15
+ /** Minimum size of the panel. */
16
+ readonly minSize?: number;
17
+ /** Indicates whether the panel is pinned. Defaults to true. */
18
+ readonly pinned?: boolean;
19
+ /** Indicates whether the panel is resizable. Defaults to true. */
20
+ readonly resizable?: boolean;
21
+ /** Default size of the panel. */
22
+ readonly size?: number;
23
+ /** Configuration of the panel sections. */
24
+ readonly sections?: StagePanelSectionsConfig;
25
+ }
26
+ /** Configuration from which a stage panel section is created.
27
+ * @beta
28
+ */
29
+ export declare type StagePanelSectionConfig = ReadonlyArray<WidgetConfig>;
30
+ /** Configuration from which stage panel sections are created.
31
+ * @beta
32
+ */
33
+ export interface StagePanelSectionsConfig {
34
+ /** Configuration of the `start` section. */
35
+ readonly start?: StagePanelSectionConfig;
36
+ /** Configuration of the `end` section. */
37
+ readonly end?: StagePanelSectionConfig;
38
+ }
39
+ //# sourceMappingURL=StagePanelConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StagePanelConfig.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelConfig.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,eAAe,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4GAA4G;IAC5G,QAAQ,CAAC,YAAY,CAAC,EAAE,eAAe,CAAC;IACxC,iCAAiC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IACzC,iCAAiC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,iCAAiC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,wBAAwB,CAAC;CAC9C;AAED;;GAEG;AACH,oBAAY,uBAAuB,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC;IACzC,0CAA0C;IAC1C,QAAQ,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC;CACxC"}
@@ -0,0 +1,10 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /* eslint-disable deprecation/deprecation */
6
+ /** @packageDocumentation
7
+ * @module Frontstage
8
+ */
9
+ export {};
10
+ //# sourceMappingURL=StagePanelConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StagePanelConfig.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelConfig.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,4CAA4C;AAC5C;;GAEG","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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport { WidgetConfig } from \"../widgets/WidgetConfig\";\r\nimport { StagePanelMaxSizeSpec } from \"./StagePanel\";\r\nimport { StagePanelState as StagePanelState } from \"./StagePanelDef\";\r\n\r\n/** Configuration from which a stage panel is created.\r\n * @beta\r\n */\r\nexport interface StagePanelConfig {\r\n /** Default Panel state. Controls how the panel is initially displayed. Defaults to StagePanelState.Open. */\r\n readonly defaultState?: StagePanelState;\r\n /** Maximum size of the panel. */\r\n readonly maxSize?: StagePanelMaxSizeSpec;\r\n /** Minimum size of the panel. */\r\n readonly minSize?: number;\r\n /** Indicates whether the panel is pinned. Defaults to true. */\r\n readonly pinned?: boolean;\r\n /** Indicates whether the panel is resizable. Defaults to true. */\r\n readonly resizable?: boolean;\r\n /** Default size of the panel. */\r\n readonly size?: number;\r\n /** Configuration of the panel sections. */\r\n readonly sections?: StagePanelSectionsConfig;\r\n}\r\n\r\n/** Configuration from which a stage panel section is created.\r\n * @beta\r\n */\r\nexport type StagePanelSectionConfig = ReadonlyArray<WidgetConfig>;\r\n\r\n/** Configuration from which stage panel sections are created.\r\n * @beta\r\n */\r\nexport interface StagePanelSectionsConfig {\r\n /** Configuration of the `start` section. */\r\n readonly start?: StagePanelSectionConfig;\r\n /** Configuration of the `end` section. */\r\n readonly end?: StagePanelSectionConfig;\r\n}\r\n"]}
@@ -83,7 +83,7 @@ export declare class StagePanelDef extends WidgetHost {
83
83
  */
84
84
  get panelZones(): StagePanelZonesDef;
85
85
  /** @internal */
86
- initializeFromProps(props?: StagePanelProps, panelLocation?: StagePanelLocation): void;
86
+ initializeFromProps(props?: StagePanelProps, location?: StagePanelLocation): void;
87
87
  /** Gets the list of Widgets. */
88
88
  get widgetDefs(): ReadonlyArray<WidgetDef>;
89
89
  /** Gets the list of Widgets (w/o StagePanelZone widgets).
@@ -228,6 +228,11 @@ export declare const setPanelSize: (base: {
228
228
  readonly id: string;
229
229
  readonly label: string;
230
230
  readonly iconSpec?: boolean | import("react").ReactText | {
231
+ readonly stringGetter: () => string;
232
+ readonly syncEventIds: readonly string[];
233
+ readonly value: string;
234
+ readonly refresh: () => boolean;
235
+ } | {
231
236
  readonly type: string | import("react").JSXElementConstructor<any>;
232
237
  readonly props: any;
233
238
  readonly key: import("react").Key | null;
@@ -244,11 +249,6 @@ export declare const setPanelSize: (base: {
244
249
  } | any | null | undefined;
245
250
  readonly type: string | import("react").JSXElementConstructor<any>;
246
251
  readonly props: any;
247
- } | {
248
- readonly stringGetter: () => string;
249
- readonly syncEventIds: readonly string[];
250
- readonly value: string;
251
- readonly refresh: () => boolean;
252
252
  } | null | undefined;
253
253
  readonly preferredFloatingWidgetSize?: {
254
254
  readonly width: number;
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanelDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StagePanelDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"AAKA;;GAEG;;AAGH,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACjH,OAAO,EAAwB,YAAY,EAAE,MAAM,eAAe,CAAC;AAGnE;;GAEG;AACH,oBAAY,eAAe;IACzB,GAAG,IAAA;IACH,SAAS,IAAA;IACT,IAAI,IAAA;IACJ,KAAK,IAAA;CACN;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,EAAE,eAAe,CAAC;CAC7B;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,OAAO,CAAC,0BAA0B,CAAC;CAAI;AAEnF,gBAAgB;AAChB,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,aAAa,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B;AAED,gBAAgB;AAChB,qBAAa,qBAAsB,SAAQ,OAAO,CAAC,yBAAyB,CAAC;CAAI;AAEjF;;;GAGG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,aAAa,CAAwB;IAC7C,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAM;IAC/B,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,WAAW,CAA4B;IAE/C;OACG;;IAKH,gBAAgB;IAChB,IAAW,WAAW,sCAAgC;IAEtD,gBAAgB;IAChB,IAAW,OAAO,uBAA4B;IAE9C,gCAAgC;IAChC,IAAW,IAAI,uBAYd;IAED,IAAW,IAAI,CAAC,IAAI,oBAAA,EAsBnB;IAED,gDAAgD;IAEhD,IAAW,SAAS,IAAI,OAAO,CAA4B;IAE3D,6CAA6C;IAC7C,IAAW,MAAM,IAAI,OAAO,CAAyB;IAErD,oDAAoD;IACpD,IAAW,eAAe,IAAI,GAAG,GAAG,SAAS,CAAkC;IAC/E,yBAAyB;IACzB,IAAW,QAAQ,IAAI,kBAAkB,CAA2B;IAEpE,gDAAgD;IAChD,IAAW,UAAU,IAaa,eAAe,CAFhD;IAED,IAAW,UAAU,CAAC,UAAU,EAAE,eAAe,EA6BhD;IAED,gBAAgB;IAChB,IAAW,YAAY,oBAAiC;IAExD,gBAAgB;IAChB,IAAW,WAAW,uBAAgC;IAEtD;;OAEG;IACH,IAAW,UAAU,uBAEpB;IAED,gBAAgB;IACT,mBAAmB,CAAC,KAAK,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,IAAI;IA+BxF,gCAAgC;IAChC,IAAoB,UAAU,IAAI,aAAa,CAAC,SAAS,CAAC,CAMzD;IAED;;OAEG;IACH,IAAW,eAAe,yBAEzB;IAED,gBAAgB;IACA,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,kBAAkB,EAAE,QAAQ,EAAE,iBAAiB,GAAG,SAAS,EAC/J,kBAAkB,EAAE,SAAS,EAAE,EAAE,yBAAyB,CAAC,EAAE,GAAG,GAC/D,IAAI;CAKR;AAED,gBAAgB;AAChB,oBAAY,qBAAqB,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,OAAO,GAAG,KAAK,CAAC,CAAC;AAIpF,gBAAgB;AAChB,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,IAAI,CAA2B;IAEvC,IAAW,KAAK,sBAEf;IAED,IAAW,GAAG,sBAEb;IAED,gBAAgB;IACT,mBAAmB,CAAC,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,kBAAkB,GAAG,IAAI;IAYhG,gBAAgB;IACR,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;CAOlF;AAED,gBAAgB;AAChB,qBAAa,iBAAkB,SAAQ,UAAU;IAC/C,gBAAgB;IACT,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,kBAAkB,EAAE,SAAS,EAAE,qBAAqB,GAAG,IAAI;CAQlI;AAED,gBAAgB;AAChB,wBAAgB,WAAW,CAAC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,CAanE;AAED,gBAAgB;AAChB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2GAOvB,CAAC"}
@@ -149,17 +149,15 @@ export class StagePanelDef extends WidgetHost {
149
149
  return this._panelZones;
150
150
  }
151
151
  /** @internal */
152
- initializeFromProps(props, panelLocation) {
153
- if (panelLocation !== undefined)
154
- this._location = panelLocation;
152
+ initializeFromProps(props, location) {
153
+ if (location !== undefined)
154
+ this._location = location;
155
155
  if (!props)
156
156
  return;
157
157
  this._size = props.size;
158
158
  this._defaultSize = props.size;
159
159
  this._maxSizeSpec = props.maxSize;
160
160
  this._minSize = props.minSize;
161
- if (panelLocation !== undefined)
162
- this._location = panelLocation;
163
161
  if (props.defaultState !== undefined) {
164
162
  this._panelState = props.defaultState;
165
163
  this._defaultState = props.defaultState;
@@ -167,8 +165,7 @@ export class StagePanelDef extends WidgetHost {
167
165
  this._resizable = props.resizable;
168
166
  if (props.pinned !== undefined)
169
167
  this._pinned = props.pinned;
170
- if (props.applicationData !== undefined)
171
- this._applicationData = props.applicationData;
168
+ this._applicationData = props.applicationData;
172
169
  if (props.panelZones) {
173
170
  this._panelZones.initializeFromProps(props.panelZones, this._location);
174
171
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport produce, { Draft } from \"immer\";\r\nimport { StagePanelLocation, StagePanelSection, UiEvent } from \"@itwin/appui-abstract\";\r\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { WidgetHost } from \"../widgets/WidgetHost\";\r\nimport { StagePanelMaxSizeSpec, StagePanelProps, StagePanelZoneProps, StagePanelZonesProps } from \"./StagePanel\";\r\nimport { getStableWidgetProps, ZoneLocation } from \"../zones/Zone\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for StagePanel state.\r\n * @public\r\n */\r\nexport enum StagePanelState {\r\n Off,\r\n Minimized,\r\n Open,\r\n Popup,\r\n}\r\n\r\n/** Panel State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface PanelStateChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n panelState: StagePanelState;\r\n}\r\n\r\n/** Panel State Changed Event class.\r\n * @beta\r\n */\r\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface PanelSizeChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n size: number | undefined;\r\n}\r\n\r\n/** @internal */\r\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\r\n\r\n/**\r\n * A StagePanelDef represents each Stage Panel within a Frontstage.\r\n * @public\r\n */\r\nexport class StagePanelDef extends WidgetHost {\r\n private _panelState = StagePanelState.Open;\r\n private _defaultState = StagePanelState.Open;\r\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\r\n private _minSize: number | undefined;\r\n private _size: number | undefined;\r\n private _defaultSize: number | undefined;\r\n private _resizable = true;\r\n private _pinned = true;\r\n private _applicationData?: any;\r\n private _location: StagePanelLocation = StagePanelLocation.Left;\r\n private _panelZones = new StagePanelZonesDef();\r\n\r\n /** Constructor for PanelDef.\r\n */\r\n constructor() {\r\n super();\r\n }\r\n\r\n /** @internal */\r\n public get maxSizeSpec() { return this._maxSizeSpec; }\r\n\r\n /** @internal */\r\n public get minSize() { return this._minSize; }\r\n\r\n /** Default size of the panel */\r\n public get size() {\r\n // istanbul ignore next\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._size;\r\n\r\n // istanbul ignore else\r\n if (FrontstageManager.activeFrontstageDef) {\r\n const [_, size] = FrontstageManager.activeFrontstageDef.getPanelCurrentState(this);\r\n return size;\r\n }\r\n // istanbul ignore next\r\n return this._defaultSize;\r\n }\r\n\r\n public set size(size) {\r\n if (this._size === size)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (UiFramework.uiVersion === \"2\") {\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\r\n const panel = frontstageDef.nineZoneState.panels[side];\r\n if (panel.size === this._size)\r\n return;\r\n size = panel.size;\r\n }\r\n }\r\n this._size = size;\r\n FrontstageManager.onPanelSizeChangedEvent.emit({\r\n panelDef: this,\r\n size,\r\n });\r\n }\r\n\r\n /** Indicates whether the panel is resizable. */\r\n // istanbul ignore next\r\n public get resizable(): boolean { return this._resizable; }\r\n\r\n /** Indicates whether the panel is pinned. */\r\n public get pinned(): boolean { return this._pinned; }\r\n\r\n /** Any application data to attach to this Panel. */\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n /** Location of panel. */\r\n public get location(): StagePanelLocation { return this._location; }\r\n\r\n /** Panel state. Defaults to PanelState.Open. */\r\n public get panelState() {\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._panelState;\r\n\r\n // istanbul ignore else\r\n if (FrontstageManager.activeFrontstageDef) {\r\n const [state] = FrontstageManager.activeFrontstageDef?.getPanelCurrentState(this);\r\n return state;\r\n }\r\n // istanbul ignore next\r\n return this.defaultState;\r\n }\r\n\r\n public set panelState(panelState: StagePanelState) {\r\n if (panelState === this._panelState)\r\n return;\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (UiFramework.uiVersion === \"2\" && frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\r\n const panel = nineZone.panels[side];\r\n switch (panelState) {\r\n case StagePanelState.Minimized: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n case StagePanelState.Open: {\r\n panel.collapsed = false;\r\n break;\r\n }\r\n case StagePanelState.Off: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n this._panelState = panelState;\r\n FrontstageManager.onPanelStateChangedEvent.emit({\r\n panelDef: this,\r\n panelState,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get defaultSize() { return this._defaultSize; }\r\n\r\n /** Panel zones.\r\n * @internal\r\n */\r\n public get panelZones() {\r\n return this._panelZones;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props?: StagePanelProps, panelLocation?: StagePanelLocation): void {\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (!props)\r\n return;\r\n this._size = props.size;\r\n this._defaultSize = props.size;\r\n this._maxSizeSpec = props.maxSize;\r\n this._minSize = props.minSize;\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (props.defaultState !== undefined) {\r\n this._panelState = props.defaultState;\r\n this._defaultState = props.defaultState;\r\n }\r\n this._resizable = props.resizable;\r\n if (props.pinned !== undefined)\r\n this._pinned = props.pinned;\r\n if (props.applicationData !== undefined)\r\n this._applicationData = props.applicationData;\r\n if (props.panelZones) {\r\n this._panelZones.initializeFromProps(props.panelZones, this._location);\r\n }\r\n\r\n if (props.widgets) {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-sp-${StagePanelLocation[this._location]}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n const widgetDefs = [...super.widgetDefs];\r\n for (const [, panelZone] of this.panelZones) {\r\n widgetDefs.push(...panelZone.widgetDefs);\r\n }\r\n return widgetDefs;\r\n }\r\n\r\n /** Gets the list of Widgets (w/o StagePanelZone widgets).\r\n * @internal\r\n */\r\n public get panelWidgetDefs() {\r\n return super.widgetDefs;\r\n }\r\n\r\n /** @internal */\r\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, _section: StagePanelSection | undefined,\r\n allStageWidgetDefs: WidgetDef[], frontstageApplicationData?: any,\r\n ): void {\r\n this.panelZones.start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, allStageWidgetDefs, frontstageApplicationData);\r\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Middle, allStageWidgetDefs, frontstageApplicationData);\r\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, allStageWidgetDefs, frontstageApplicationData);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport type StagePanelZoneDefKeys = keyof Pick<StagePanelZonesDef, \"start\" | \"end\">;\r\n\r\nconst stagePanelZoneDefKeys: StagePanelZoneDefKeys[] = [\"start\", \"end\"];\r\n\r\n/** @internal */\r\nexport class StagePanelZonesDef {\r\n private _start = new StagePanelZoneDef();\r\n private _end = new StagePanelZoneDef();\r\n\r\n public get start() {\r\n return this._start;\r\n }\r\n\r\n public get end() {\r\n return this._end;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZonesProps, panelLocation: StagePanelLocation): void {\r\n if (props.start) {\r\n this.start.initializeFromProps(props.start, panelLocation, \"start\");\r\n }\r\n if (props.middle) {\r\n this.end.initializeFromProps(props.middle, panelLocation, \"end\");\r\n }\r\n if (props.end) {\r\n this.end.initializeFromProps(props.end, panelLocation, \"end\");\r\n }\r\n }\r\n\r\n /** @internal */\r\n public *[Symbol.iterator](): Iterator<[StagePanelZoneDefKeys, StagePanelZoneDef]> {\r\n for (const key of stagePanelZoneDefKeys) {\r\n const value = this[key];\r\n yield [key, value];\r\n }\r\n return undefined;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class StagePanelZoneDef extends WidgetHost {\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZoneProps, panelLocation: StagePanelLocation, panelZone: StagePanelZoneDefKeys): void {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-spz-${StagePanelLocation[panelLocation]}-${panelZone}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return \"bottom\";\r\n case StagePanelLocation.Left:\r\n return \"left\";\r\n case StagePanelLocation.Right:\r\n return \"right\";\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return \"top\";\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const setPanelSize = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n size: number | undefined,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\r\n});\r\n"]}
1
+ {"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,4CAA4C;AAC5C;;GAEG;AAEH,OAAO,OAAkB,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,oBAAoB,EAAgB,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;GAEG;AACH,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,mDAAG,CAAA;IACH,+DAAS,CAAA;IACT,qDAAI,CAAA;IACJ,uDAAK,CAAA;AACP,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAUD;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,OAAmC;CAAI;AAQnF,gBAAgB;AAChB,MAAM,OAAO,qBAAsB,SAAQ,OAAkC;CAAI;AAEjF;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,UAAU;IAa3C;OACG;IACH;QACE,KAAK,EAAE,CAAC;QAfF,gBAAW,GAAG,eAAe,CAAC,IAAI,CAAC;QACnC,kBAAa,GAAG,eAAe,CAAC,IAAI,CAAC;QAKrC,eAAU,GAAG,IAAI,CAAC;QAClB,YAAO,GAAG,IAAI,CAAC;QAEf,cAAS,GAAuB,kBAAkB,CAAC,IAAI,CAAC;QACxD,gBAAW,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAM/C,CAAC;IAED,gBAAgB;IAChB,IAAW,WAAW,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAEtD,gBAAgB;IAChB,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9C,gCAAgC;IAChC,IAAW,IAAI;QACb,uBAAuB;QACvB,IAAI,GAAG,KAAK,WAAW,CAAC,SAAS;YAC/B,OAAO,IAAI,CAAC,KAAK,CAAC;QAEpB,uBAAuB;QACvB,IAAI,iBAAiB,CAAC,mBAAmB,EAAE;YACzC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YACnF,OAAO,IAAI,CAAC;SACb;QACD,uBAAuB;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAW,IAAI,CAAC,IAAI;QAClB,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YACrB,OAAO;QAET,uBAAuB;QACvB,IAAI,WAAW,CAAC,SAAS,KAAK,GAAG,EAAE;YACjC,MAAM,aAAa,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;YAC5D,uBAAuB;YACvB,IAAI,aAAa,IAAI,aAAa,CAAC,aAAa,EAAE;gBAChD,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACxC,aAAa,CAAC,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBACpF,MAAM,KAAK,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK;oBAC3B,OAAO;gBACT,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;aACnB;SACF;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC;YAC7C,QAAQ,EAAE,IAAI;YACd,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAED,gDAAgD;IAChD,uBAAuB;IACvB,IAAW,SAAS,KAAc,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAE3D,6CAA6C;IAC7C,IAAW,MAAM,KAAc,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAErD,oDAAoD;IACpD,IAAW,eAAe,KAAsB,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC/E,yBAAyB;IACzB,IAAW,QAAQ,KAAyB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAEpE,gDAAgD;IAChD,IAAW,UAAU;;QACnB,IAAI,GAAG,KAAK,WAAW,CAAC,SAAS;YAC/B,OAAO,IAAI,CAAC,WAAW,CAAC;QAE1B,uBAAuB;QACvB,IAAI,iBAAiB,CAAC,mBAAmB,EAAE;YACzC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAClF,OAAO,KAAK,CAAC;SACd;QACD,uBAAuB;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAW,UAAU,CAAC,UAA2B;QAC/C,IAAI,UAAU,KAAK,IAAI,CAAC,WAAW;YACjC,OAAO;QACT,MAAM,aAAa,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;QAC5D,IAAI,WAAW,CAAC,SAAS,KAAK,GAAG,IAAI,aAAa,IAAI,aAAa,CAAC,aAAa,EAAE;YACjF,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxC,aAAa,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,EAAE;gBAC9E,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpC,QAAQ,UAAU,EAAE;oBAClB,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC;wBAC9B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;wBACvB,MAAM;qBACP;oBACD,KAAK,eAAe,CAAC,IAAI,CAAC,CAAC;wBACzB,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;wBACxB,MAAM;qBACP;oBACD,KAAK,eAAe,CAAC,GAAG,CAAC,CAAC;wBACxB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;wBACvB,MAAM;qBACP;iBACF;YACH,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,iBAAiB,CAAC,wBAAwB,CAAC,IAAI,CAAC;YAC9C,QAAQ,EAAE,IAAI;YACd,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;IAChB,IAAW,YAAY,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAExD,gBAAgB;IAChB,IAAW,WAAW,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAEtD;;OAEG;IACH,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,gBAAgB;IACT,mBAAmB,CAAC,KAAuB,EAAE,QAA6B;QAC/E,IAAI,QAAQ,KAAK,SAAS;YACxB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC5B,IAAI,CAAC,KAAK;YACR,OAAO;QACT,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE;YACpC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC;YACtC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC;SACzC;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAC5B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,eAAe,CAAC;QAC9C,IAAI,KAAK,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SACxE;QAED,IAAI,KAAK,CAAC,OAAO,EAAE;YACjB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE;gBAC1C,MAAM,QAAQ,GAAG,WAAW,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;gBAC1E,MAAM,WAAW,GAAG,oBAAoB,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBACrE,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,CAAC;gBAC7C,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,gCAAgC;IAChC,IAAoB,UAAU;QAC5B,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QACzC,KAAK,MAAM,CAAC,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;YAC3C,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;SAC1C;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,KAAK,CAAC,UAAU,CAAC;IAC1B,CAAC;IAED,gBAAgB;IACA,uBAAuB,CAAC,OAAe,EAAE,UAAkB,EAAE,QAA2C,EAAE,QAAuC,EAC/J,kBAA+B,EAAE,yBAA+B;QAEhE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,EAAE,yBAAyB,CAAC,CAAC;QACrJ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,EAAE,yBAAyB,CAAC,CAAC;QACpJ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,GAAG,EAAE,kBAAkB,EAAE,yBAAyB,CAAC,CAAC;IACnJ,CAAC;CACF;AAKD,MAAM,qBAAqB,GAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAExE,gBAAgB;AAChB,MAAM,OAAO,kBAAkB;IAA/B;QACU,WAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACjC,SAAI,GAAG,IAAI,iBAAiB,EAAE,CAAC;IA+BzC,CAAC;IA7BC,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,gBAAgB;IACT,mBAAmB,CAAC,KAA2B,EAAE,aAAiC;QACvF,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;SACrE;QACD,IAAI,KAAK,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;SAClE;QACD,IAAI,KAAK,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;SAC/D;IACH,CAAC;IAED,gBAAgB;IACT,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,qBAAqB,EAAE;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACpB;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,OAAO,iBAAkB,SAAQ,UAAU;IAC/C,gBAAgB;IACT,mBAAmB,CAAC,KAA0B,EAAE,aAAiC,EAAE,SAAgC;QACxH,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE;YAC1C,MAAM,QAAQ,GAAG,YAAY,kBAAkB,CAAC,aAAa,CAAC,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;YACvF,MAAM,WAAW,GAAG,oBAAoB,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACrE,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,CAAC;YAC7C,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,UAAU,WAAW,CAAC,QAA4B;IACtD,QAAQ,QAAQ,EAAE;QAChB,KAAK,kBAAkB,CAAC,MAAM,CAAC;QAC/B,KAAK,kBAAkB,CAAC,UAAU;YAChC,OAAO,QAAQ,CAAC;QAClB,KAAK,kBAAkB,CAAC,IAAI;YAC1B,OAAO,MAAM,CAAC;QAChB,KAAK,kBAAkB,CAAC,KAAK;YAC3B,OAAO,OAAO,CAAC;QACjB,KAAK,kBAAkB,CAAC,GAAG,CAAC;QAC5B,KAAK,kBAAkB,CAAC,OAAO;YAC7B,OAAO,KAAK,CAAC;KAChB;AACH,CAAC;AAED,gBAAgB;AAChB,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,CAClC,QAA8B,EAC9B,IAAe,EACf,IAAwB,EACxB,EAAE;IACF,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpC,KAAK,CAAC,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;AAClG,CAAC,CAAC,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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport produce, { Draft } from \"immer\";\r\nimport { StagePanelLocation, StagePanelSection, UiEvent } from \"@itwin/appui-abstract\";\r\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { WidgetHost } from \"../widgets/WidgetHost\";\r\nimport { StagePanelMaxSizeSpec, StagePanelProps, StagePanelZoneProps, StagePanelZonesProps } from \"./StagePanel\";\r\nimport { getStableWidgetProps, ZoneLocation } from \"../zones/Zone\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for StagePanel state.\r\n * @public\r\n */\r\nexport enum StagePanelState {\r\n Off,\r\n Minimized,\r\n Open,\r\n Popup,\r\n}\r\n\r\n/** Panel State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface PanelStateChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n panelState: StagePanelState;\r\n}\r\n\r\n/** Panel State Changed Event class.\r\n * @beta\r\n */\r\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface PanelSizeChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n size: number | undefined;\r\n}\r\n\r\n/** @internal */\r\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\r\n\r\n/**\r\n * A StagePanelDef represents each Stage Panel within a Frontstage.\r\n * @public\r\n */\r\nexport class StagePanelDef extends WidgetHost {\r\n private _panelState = StagePanelState.Open;\r\n private _defaultState = StagePanelState.Open;\r\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\r\n private _minSize: number | undefined;\r\n private _size: number | undefined;\r\n private _defaultSize: number | undefined;\r\n private _resizable = true;\r\n private _pinned = true;\r\n private _applicationData?: any;\r\n private _location: StagePanelLocation = StagePanelLocation.Left;\r\n private _panelZones = new StagePanelZonesDef();\r\n\r\n /** Constructor for PanelDef.\r\n */\r\n constructor() {\r\n super();\r\n }\r\n\r\n /** @internal */\r\n public get maxSizeSpec() { return this._maxSizeSpec; }\r\n\r\n /** @internal */\r\n public get minSize() { return this._minSize; }\r\n\r\n /** Default size of the panel */\r\n public get size() {\r\n // istanbul ignore next\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._size;\r\n\r\n // istanbul ignore else\r\n if (FrontstageManager.activeFrontstageDef) {\r\n const [_, size] = FrontstageManager.activeFrontstageDef.getPanelCurrentState(this);\r\n return size;\r\n }\r\n // istanbul ignore next\r\n return this._defaultSize;\r\n }\r\n\r\n public set size(size) {\r\n if (this._size === size)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (UiFramework.uiVersion === \"2\") {\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\r\n const panel = frontstageDef.nineZoneState.panels[side];\r\n if (panel.size === this._size)\r\n return;\r\n size = panel.size;\r\n }\r\n }\r\n this._size = size;\r\n FrontstageManager.onPanelSizeChangedEvent.emit({\r\n panelDef: this,\r\n size,\r\n });\r\n }\r\n\r\n /** Indicates whether the panel is resizable. */\r\n // istanbul ignore next\r\n public get resizable(): boolean { return this._resizable; }\r\n\r\n /** Indicates whether the panel is pinned. */\r\n public get pinned(): boolean { return this._pinned; }\r\n\r\n /** Any application data to attach to this Panel. */\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n /** Location of panel. */\r\n public get location(): StagePanelLocation { return this._location; }\r\n\r\n /** Panel state. Defaults to PanelState.Open. */\r\n public get panelState() {\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._panelState;\r\n\r\n // istanbul ignore else\r\n if (FrontstageManager.activeFrontstageDef) {\r\n const [state] = FrontstageManager.activeFrontstageDef?.getPanelCurrentState(this);\r\n return state;\r\n }\r\n // istanbul ignore next\r\n return this.defaultState;\r\n }\r\n\r\n public set panelState(panelState: StagePanelState) {\r\n if (panelState === this._panelState)\r\n return;\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (UiFramework.uiVersion === \"2\" && frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\r\n const panel = nineZone.panels[side];\r\n switch (panelState) {\r\n case StagePanelState.Minimized: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n case StagePanelState.Open: {\r\n panel.collapsed = false;\r\n break;\r\n }\r\n case StagePanelState.Off: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n this._panelState = panelState;\r\n FrontstageManager.onPanelStateChangedEvent.emit({\r\n panelDef: this,\r\n panelState,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get defaultSize() { return this._defaultSize; }\r\n\r\n /** Panel zones.\r\n * @internal\r\n */\r\n public get panelZones() {\r\n return this._panelZones;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props?: StagePanelProps, location?: StagePanelLocation): void {\r\n if (location !== undefined)\r\n this._location = location;\r\n if (!props)\r\n return;\r\n this._size = props.size;\r\n this._defaultSize = props.size;\r\n this._maxSizeSpec = props.maxSize;\r\n this._minSize = props.minSize;\r\n if (props.defaultState !== undefined) {\r\n this._panelState = props.defaultState;\r\n this._defaultState = props.defaultState;\r\n }\r\n this._resizable = props.resizable;\r\n if (props.pinned !== undefined)\r\n this._pinned = props.pinned;\r\n this._applicationData = props.applicationData;\r\n if (props.panelZones) {\r\n this._panelZones.initializeFromProps(props.panelZones, this._location);\r\n }\r\n\r\n if (props.widgets) {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-sp-${StagePanelLocation[this._location]}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n const widgetDefs = [...super.widgetDefs];\r\n for (const [, panelZone] of this.panelZones) {\r\n widgetDefs.push(...panelZone.widgetDefs);\r\n }\r\n return widgetDefs;\r\n }\r\n\r\n /** Gets the list of Widgets (w/o StagePanelZone widgets).\r\n * @internal\r\n */\r\n public get panelWidgetDefs() {\r\n return super.widgetDefs;\r\n }\r\n\r\n /** @internal */\r\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, _section: StagePanelSection | undefined,\r\n allStageWidgetDefs: WidgetDef[], frontstageApplicationData?: any,\r\n ): void {\r\n this.panelZones.start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, allStageWidgetDefs, frontstageApplicationData);\r\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Middle, allStageWidgetDefs, frontstageApplicationData);\r\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, allStageWidgetDefs, frontstageApplicationData);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport type StagePanelZoneDefKeys = keyof Pick<StagePanelZonesDef, \"start\" | \"end\">;\r\n\r\nconst stagePanelZoneDefKeys: StagePanelZoneDefKeys[] = [\"start\", \"end\"];\r\n\r\n/** @internal */\r\nexport class StagePanelZonesDef {\r\n private _start = new StagePanelZoneDef();\r\n private _end = new StagePanelZoneDef();\r\n\r\n public get start() {\r\n return this._start;\r\n }\r\n\r\n public get end() {\r\n return this._end;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZonesProps, panelLocation: StagePanelLocation): void {\r\n if (props.start) {\r\n this.start.initializeFromProps(props.start, panelLocation, \"start\");\r\n }\r\n if (props.middle) {\r\n this.end.initializeFromProps(props.middle, panelLocation, \"end\");\r\n }\r\n if (props.end) {\r\n this.end.initializeFromProps(props.end, panelLocation, \"end\");\r\n }\r\n }\r\n\r\n /** @internal */\r\n public *[Symbol.iterator](): Iterator<[StagePanelZoneDefKeys, StagePanelZoneDef]> {\r\n for (const key of stagePanelZoneDefKeys) {\r\n const value = this[key];\r\n yield [key, value];\r\n }\r\n return undefined;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class StagePanelZoneDef extends WidgetHost {\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZoneProps, panelLocation: StagePanelLocation, panelZone: StagePanelZoneDefKeys): void {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-spz-${StagePanelLocation[panelLocation]}-${panelZone}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return \"bottom\";\r\n case StagePanelLocation.Left:\r\n return \"left\";\r\n case StagePanelLocation.Right:\r\n return \"right\";\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return \"top\";\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const setPanelSize = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n size: number | undefined,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\r\n});\r\n"]}
@@ -16,6 +16,7 @@ export interface InitialAppUiSettings {
16
16
  autoCollapseUnpinnedPanels?: boolean;
17
17
  animateToolSettings?: boolean;
18
18
  useToolAsToolSettingsLabel?: boolean;
19
+ toolbarOpacity: number;
19
20
  }
20
21
  /** These are the UI settings that are stored in the Redux store. They control the color theme, the UI version,
21
22
  * how toolbar group buttons work, and the opacity of widgets in 1.0 and floating widget in 2.0 when the cursor
@@ -41,6 +42,7 @@ export declare class AppUiSettings implements UserSettingsProvider {
41
42
  autoCollapseUnpinnedPanels: UiStateEntry<boolean>;
42
43
  animateToolSettings: UiStateEntry<boolean>;
43
44
  useToolAsToolSettingsLabel: UiStateEntry<boolean>;
45
+ toolbarOpacity: UiStateEntry<number>;
44
46
  private setColorTheme;
45
47
  constructor(defaults: Partial<InitialAppUiSettings>);
46
48
  private handleSyncUiEvent;
@@ -1 +1 @@
1
- {"version":3,"file":"AppUiSettings.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAe,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAIvF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa;IACb,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAED;;;;;;;;;;GAUG;AACH,qBAAa,aAAc,YAAW,oBAAoB;IACxD,SAAgB,UAAU,2BAA2B;IAErD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAmB;IACnD,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,sBAAsB,CAAS;IAEhC,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACvC,gBAAgB,EAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC;IACnD,aAAa,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,0BAA0B,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAClD,mBAAmB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC3C,0BAA0B,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAEzD,OAAO,CAAC,aAAa,CAInB;gBAEU,QAAQ,EAAE,OAAO,CAAC,oBAAoB,CAAC;IA2CnD,OAAO,CAAC,iBAAiB,CA8BvB;IAEW,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7C,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtE"}
1
+ {"version":3,"file":"AppUiSettings.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAe,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAIvF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa;IACb,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,aAAc,YAAW,oBAAoB;IACxD,SAAgB,UAAU,2BAA2B;IAErD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAmB;IACnD,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,sBAAsB,CAAS;IAEhC,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACvC,gBAAgB,EAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC;IACnD,aAAa,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,0BAA0B,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAClD,mBAAmB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC3C,0BAA0B,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAClD,cAAc,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAE5C,OAAO,CAAC,aAAa,CAInB;gBAEU,QAAQ,EAAE,OAAO,CAAC,oBAAoB,CAAC;IA+CnD,OAAO,CAAC,iBAAiB,CAiCvB;IAEW,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7C,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtE"}
@@ -51,6 +51,8 @@ export class AppUiSettings {
51
51
  await this.animateToolSettings.saveSetting(UiFramework.getUiStateStorage());
52
52
  if (args.eventIds.has("configurableui:set-use-tool-as-tool-settings-label"))
53
53
  await this.useToolAsToolSettingsLabel.saveSetting(UiFramework.getUiStateStorage());
54
+ if (args.eventIds.has("configurableui:set-toolbar-opacity"))
55
+ await this.toolbarOpacity.saveSetting(UiFramework.getUiStateStorage());
54
56
  };
55
57
  this._settings = [];
56
58
  this.colorTheme = new UiStateEntry(AppUiSettings._settingNamespace, "ColorTheme", UiFramework.getColorTheme, this.setColorTheme, defaults.colorTheme);
@@ -70,6 +72,8 @@ export class AppUiSettings {
70
72
  this._settings.push(this.animateToolSettings);
71
73
  this.useToolAsToolSettingsLabel = new UiStateEntry(AppUiSettings._settingNamespace, "UseToolAsToolSettingsLabel", () => UiFramework.useToolAsToolSettingsLabel, (value) => UiFramework.setUseToolAsToolSettingsLabel(value), defaults.useToolAsToolSettingsLabel);
72
74
  this._settings.push(this.useToolAsToolSettingsLabel);
75
+ this.toolbarOpacity = new UiStateEntry(AppUiSettings._settingNamespace, "ToolOpacity", () => UiFramework.getToolbarOpacity(), (value) => UiFramework.setToolbarOpacity(value), defaults.toolbarOpacity);
76
+ this._settings.push(this.toolbarOpacity);
73
77
  SyncUiEventDispatcher.onSyncUiEvent.addListener(this.handleSyncUiEvent);
74
78
  }
75
79
  async apply(storage) {
@@ -1 +1 @@
1
- {"version":3,"file":"AppUiSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.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 Settings\r\n */\r\n\r\nimport { UiStateEntry, UiStateStorage } from \"@itwin/core-react\";\r\nimport { UiSyncEventArgs } from \"@itwin/appui-abstract\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { FrameworkVersionId, UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\n\r\n// cSpell:ignore configurableui\r\n\r\n/** Default values that may be specified for [[AppUiSettings]].\r\n * @public\r\n */\r\nexport interface InitialAppUiSettings {\r\n colorTheme: string;\r\n dragInteraction: boolean;\r\n frameworkVersion: FrameworkVersionId; // eslint-disable-line deprecation/deprecation\r\n widgetOpacity: number;\r\n showWidgetIcon?: boolean;\r\n /** @alpha */\r\n autoCollapseUnpinnedPanels?: boolean;\r\n animateToolSettings?: boolean;\r\n useToolAsToolSettingsLabel?: boolean;\r\n}\r\n\r\n/** These are the UI settings that are stored in the Redux store. They control the color theme, the UI version,\r\n * how toolbar group buttons work, and the opacity of widgets in 1.0 and floating widget in 2.0 when the cursor\r\n * is not inside them. It is expect that an IModelApp using App UI components will create and register AppUiSettings with\r\n * defaults specific to their application. This would be done by calling the following.\r\n *\r\n * ```ts\r\n * UiFramework.registerUserSettingsProvider(new AppUiSettings(defaults));\r\n * ```\r\n *\r\n * @public\r\n */\r\nexport class AppUiSettings implements UserSettingsProvider {\r\n public readonly providerId = \"AppUiSettingsProvider\";\r\n\r\n private static _settingNamespace = \"AppUiSettings\";\r\n private _settings: Array<UiStateEntry<any>> = [];\r\n private _applyingLocalSettings = false;\r\n\r\n public colorTheme: UiStateEntry<string>;\r\n public dragInteraction: UiStateEntry<boolean>;\r\n public frameworkVersion: UiStateEntry<FrameworkVersionId>; // eslint-disable-line deprecation/deprecation\r\n public widgetOpacity: UiStateEntry<number>;\r\n public showWidgetIcon: UiStateEntry<boolean>;\r\n public autoCollapseUnpinnedPanels: UiStateEntry<boolean>;\r\n public animateToolSettings: UiStateEntry<boolean>;\r\n public useToolAsToolSettingsLabel: UiStateEntry<boolean>;\r\n\r\n private setColorTheme = (theme: string) => {\r\n UiFramework.setColorTheme(theme);\r\n // always store to local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", theme);\r\n };\r\n\r\n constructor(defaults: Partial<InitialAppUiSettings>) {\r\n this._settings = [];\r\n\r\n this.colorTheme = new UiStateEntry<string>(AppUiSettings._settingNamespace, \"ColorTheme\", UiFramework.getColorTheme, this.setColorTheme, defaults.colorTheme);\r\n this._settings.push(this.colorTheme);\r\n\r\n this.dragInteraction = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"DragInteraction\",\r\n () => UiFramework.useDragInteraction,\r\n (value: boolean) => UiFramework.setUseDragInteraction(value), defaults.dragInteraction);\r\n this._settings.push(this.dragInteraction);\r\n\r\n this.showWidgetIcon = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"ShowWidgetIcon\",\r\n () => UiFramework.showWidgetIcon,\r\n (value: boolean) => UiFramework.setShowWidgetIcon(value), defaults.showWidgetIcon);\r\n this._settings.push(this.showWidgetIcon);\r\n\r\n this.autoCollapseUnpinnedPanels = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"AutoCollapseUnpinnedPanels\",\r\n () => UiFramework.autoCollapseUnpinnedPanels,\r\n (value: boolean) => UiFramework.setAutoCollapseUnpinnedPanels(value), defaults.autoCollapseUnpinnedPanels);\r\n this._settings.push(this.autoCollapseUnpinnedPanels);\r\n\r\n this.frameworkVersion = new UiStateEntry<FrameworkVersionId>(AppUiSettings._settingNamespace, \"FrameworkVersion\", // eslint-disable-line deprecation/deprecation\r\n () => UiFramework.uiVersion,\r\n (value: FrameworkVersionId) => UiFramework.setUiVersion(value), defaults.frameworkVersion); // eslint-disable-line deprecation/deprecation\r\n this._settings.push(this.frameworkVersion);\r\n\r\n this.widgetOpacity = new UiStateEntry<number>(AppUiSettings._settingNamespace, \"WidgetOpacity\",\r\n () => UiFramework.getWidgetOpacity(), (value: number) => UiFramework.setWidgetOpacity(value), defaults.widgetOpacity);\r\n this._settings.push(this.widgetOpacity);\r\n\r\n this.animateToolSettings = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"AnimateToolSettings\",\r\n () => UiFramework.animateToolSettings,\r\n (value: boolean) => UiFramework.setAnimateToolSettings(value), defaults.animateToolSettings);\r\n this._settings.push(this.animateToolSettings);\r\n\r\n this.useToolAsToolSettingsLabel = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"UseToolAsToolSettingsLabel\",\r\n () => UiFramework.useToolAsToolSettingsLabel,\r\n (value: boolean) => UiFramework.setUseToolAsToolSettingsLabel(value), defaults.useToolAsToolSettingsLabel);\r\n this._settings.push(this.useToolAsToolSettingsLabel);\r\n\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this.handleSyncUiEvent);\r\n }\r\n\r\n private handleSyncUiEvent = async (args: UiSyncEventArgs) => {\r\n if (this._applyingLocalSettings)\r\n return;\r\n\r\n if (args.eventIds.has(\"configurableui:set_theme\")) {\r\n await this.colorTheme.saveSetting(UiFramework.getUiStateStorage());\r\n // always store as default theme in local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", UiFramework.getColorTheme());\r\n }\r\n\r\n if (args.eventIds.has(\"configurableui:set-drag-interaction\"))\r\n await this.dragInteraction.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-framework-version\"))\r\n await this.frameworkVersion.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-show-widget-icon\"))\r\n await this.showWidgetIcon.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-auto-collapse-unpinned-panels\"))\r\n await this.autoCollapseUnpinnedPanels.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set_widget_opacity\"))\r\n await this.widgetOpacity.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-animate-tool-settings\"))\r\n await this.animateToolSettings.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-use-tool-as-tool-settings-label\"))\r\n await this.useToolAsToolSettingsLabel.saveSetting(UiFramework.getUiStateStorage());\r\n };\r\n\r\n public async apply(storage: UiStateStorage): Promise<void> {\r\n this._applyingLocalSettings = true;\r\n for await (const setting of this._settings) {\r\n await setting.getSettingAndApplyValue(storage);\r\n }\r\n this._applyingLocalSettings = false;\r\n }\r\n\r\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\r\n await this.apply(storage);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"AppUiSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.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 Settings\r\n */\r\n\r\nimport { UiStateEntry, UiStateStorage } from \"@itwin/core-react\";\r\nimport { UiSyncEventArgs } from \"@itwin/appui-abstract\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { FrameworkVersionId, UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\n\r\n// cSpell:ignore configurableui\r\n\r\n/** Default values that may be specified for [[AppUiSettings]].\r\n * @public\r\n */\r\nexport interface InitialAppUiSettings {\r\n colorTheme: string;\r\n dragInteraction: boolean;\r\n frameworkVersion: FrameworkVersionId; // eslint-disable-line deprecation/deprecation\r\n widgetOpacity: number;\r\n showWidgetIcon?: boolean;\r\n /** @alpha */\r\n autoCollapseUnpinnedPanels?: boolean;\r\n animateToolSettings?: boolean;\r\n useToolAsToolSettingsLabel?: boolean;\r\n toolbarOpacity: number;\r\n}\r\n\r\n/** These are the UI settings that are stored in the Redux store. They control the color theme, the UI version,\r\n * how toolbar group buttons work, and the opacity of widgets in 1.0 and floating widget in 2.0 when the cursor\r\n * is not inside them. It is expect that an IModelApp using App UI components will create and register AppUiSettings with\r\n * defaults specific to their application. This would be done by calling the following.\r\n *\r\n * ```ts\r\n * UiFramework.registerUserSettingsProvider(new AppUiSettings(defaults));\r\n * ```\r\n *\r\n * @public\r\n */\r\nexport class AppUiSettings implements UserSettingsProvider {\r\n public readonly providerId = \"AppUiSettingsProvider\";\r\n\r\n private static _settingNamespace = \"AppUiSettings\";\r\n private _settings: Array<UiStateEntry<any>> = [];\r\n private _applyingLocalSettings = false;\r\n\r\n public colorTheme: UiStateEntry<string>;\r\n public dragInteraction: UiStateEntry<boolean>;\r\n public frameworkVersion: UiStateEntry<FrameworkVersionId>; // eslint-disable-line deprecation/deprecation\r\n public widgetOpacity: UiStateEntry<number>;\r\n public showWidgetIcon: UiStateEntry<boolean>;\r\n public autoCollapseUnpinnedPanels: UiStateEntry<boolean>;\r\n public animateToolSettings: UiStateEntry<boolean>;\r\n public useToolAsToolSettingsLabel: UiStateEntry<boolean>;\r\n public toolbarOpacity: UiStateEntry<number>;\r\n\r\n private setColorTheme = (theme: string) => {\r\n UiFramework.setColorTheme(theme);\r\n // always store to local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", theme);\r\n };\r\n\r\n constructor(defaults: Partial<InitialAppUiSettings>) {\r\n this._settings = [];\r\n\r\n this.colorTheme = new UiStateEntry<string>(AppUiSettings._settingNamespace, \"ColorTheme\", UiFramework.getColorTheme, this.setColorTheme, defaults.colorTheme);\r\n this._settings.push(this.colorTheme);\r\n\r\n this.dragInteraction = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"DragInteraction\",\r\n () => UiFramework.useDragInteraction,\r\n (value: boolean) => UiFramework.setUseDragInteraction(value), defaults.dragInteraction);\r\n this._settings.push(this.dragInteraction);\r\n\r\n this.showWidgetIcon = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"ShowWidgetIcon\",\r\n () => UiFramework.showWidgetIcon,\r\n (value: boolean) => UiFramework.setShowWidgetIcon(value), defaults.showWidgetIcon);\r\n this._settings.push(this.showWidgetIcon);\r\n\r\n this.autoCollapseUnpinnedPanels = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"AutoCollapseUnpinnedPanels\",\r\n () => UiFramework.autoCollapseUnpinnedPanels,\r\n (value: boolean) => UiFramework.setAutoCollapseUnpinnedPanels(value), defaults.autoCollapseUnpinnedPanels);\r\n this._settings.push(this.autoCollapseUnpinnedPanels);\r\n\r\n this.frameworkVersion = new UiStateEntry<FrameworkVersionId>(AppUiSettings._settingNamespace, \"FrameworkVersion\", // eslint-disable-line deprecation/deprecation\r\n () => UiFramework.uiVersion,\r\n (value: FrameworkVersionId) => UiFramework.setUiVersion(value), defaults.frameworkVersion); // eslint-disable-line deprecation/deprecation\r\n this._settings.push(this.frameworkVersion);\r\n\r\n this.widgetOpacity = new UiStateEntry<number>(AppUiSettings._settingNamespace, \"WidgetOpacity\",\r\n () => UiFramework.getWidgetOpacity(), (value: number) => UiFramework.setWidgetOpacity(value), defaults.widgetOpacity);\r\n this._settings.push(this.widgetOpacity);\r\n\r\n this.animateToolSettings = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"AnimateToolSettings\",\r\n () => UiFramework.animateToolSettings,\r\n (value: boolean) => UiFramework.setAnimateToolSettings(value), defaults.animateToolSettings);\r\n this._settings.push(this.animateToolSettings);\r\n\r\n this.useToolAsToolSettingsLabel = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"UseToolAsToolSettingsLabel\",\r\n () => UiFramework.useToolAsToolSettingsLabel,\r\n (value: boolean) => UiFramework.setUseToolAsToolSettingsLabel(value), defaults.useToolAsToolSettingsLabel);\r\n this._settings.push(this.useToolAsToolSettingsLabel);\r\n\r\n this.toolbarOpacity = new UiStateEntry<number>(AppUiSettings._settingNamespace, \"ToolOpacity\",\r\n () => UiFramework.getToolbarOpacity(), (value: number) => UiFramework.setToolbarOpacity(value), defaults.toolbarOpacity);\r\n this._settings.push(this.toolbarOpacity);\r\n\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this.handleSyncUiEvent);\r\n }\r\n\r\n private handleSyncUiEvent = async (args: UiSyncEventArgs) => {\r\n if (this._applyingLocalSettings)\r\n return;\r\n\r\n if (args.eventIds.has(\"configurableui:set_theme\")) {\r\n await this.colorTheme.saveSetting(UiFramework.getUiStateStorage());\r\n // always store as default theme in local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", UiFramework.getColorTheme());\r\n }\r\n\r\n if (args.eventIds.has(\"configurableui:set-drag-interaction\"))\r\n await this.dragInteraction.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-framework-version\"))\r\n await this.frameworkVersion.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-show-widget-icon\"))\r\n await this.showWidgetIcon.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-auto-collapse-unpinned-panels\"))\r\n await this.autoCollapseUnpinnedPanels.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set_widget_opacity\"))\r\n await this.widgetOpacity.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-animate-tool-settings\"))\r\n await this.animateToolSettings.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-use-tool-as-tool-settings-label\"))\r\n await this.useToolAsToolSettingsLabel.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-toolbar-opacity\"))\r\n await this.toolbarOpacity.saveSetting(UiFramework.getUiStateStorage());\r\n };\r\n\r\n public async apply(storage: UiStateStorage): Promise<void> {\r\n this._applyingLocalSettings = true;\r\n for await (const setting of this._settings) {\r\n await setting.getSettingAndApplyValue(storage);\r\n }\r\n this._applyingLocalSettings = false;\r\n }\r\n\r\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\r\n await this.apply(storage);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,gBAAgB;AAChB,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,sBAkBvD"}
1
+ {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,gBAAgB;AAChB,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,sBAqBvD"}
@@ -15,9 +15,12 @@ import { StatusBar } from "../statusbar/StatusBar";
15
15
  export function WidgetPanelsStatusBar(props) {
16
16
  const frontstageDef = useActiveFrontstageDef();
17
17
  const zone = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.bottomCenter;
18
- if (!zone || !zone.isStatusBar)
18
+ let widget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.statusBar;
19
+ if (zone && zone.isStatusBar) {
20
+ widget = zone.getSingleWidgetDef();
21
+ }
22
+ if (!widget)
19
23
  return null;
20
- const widget = zone.getSingleWidgetDef();
21
24
  const className = classnames("uifw-widgetPanels-statusBar", props.className);
22
25
  return (React.createElement(StatusBar, { className: className, style: props.style, isInFooterMode: true, widgetControl: widget === null || widget === void 0 ? void 0 : widget.getWidgetControl(ConfigurableUiControlType.StatusBarWidget) }));
23
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,gBAAgB;AAChB,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACtD,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,YAAY,CAAC;IACzC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW;QAC5B,OAAO,IAAI,CAAC;IACd,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,UAAU,CAC1B,6BAA6B,EAC7B,KAAK,CAAC,SAAS,CAChB,CAAC;IACF,OAAO,CACL,oBAAC,SAAS,IACR,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,cAAc,QACd,aAAa,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,CAAC,yBAAyB,CAAC,eAAe,CAA2B,GAC5G,CACH,CAAC;AACJ,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/** @packageDocumentation\r\n * @module StatusBar\r\n */\r\n\r\nimport \"./StatusBar.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\nimport { StatusBar } from \"../statusbar/StatusBar\";\r\nimport { StatusBarWidgetControl } from \"../statusbar/StatusBarWidgetControl\";\r\n\r\n/** @internal */\r\nexport function WidgetPanelsStatusBar(props: CommonProps) {\r\n const frontstageDef = useActiveFrontstageDef();\r\n const zone = frontstageDef?.bottomCenter;\r\n if (!zone || !zone.isStatusBar)\r\n return null;\r\n const widget = zone.getSingleWidgetDef();\r\n const className = classnames(\r\n \"uifw-widgetPanels-statusBar\",\r\n props.className,\r\n );\r\n return (\r\n <StatusBar\r\n className={className}\r\n style={props.style}\r\n isInFooterMode\r\n widgetControl={widget?.getWidgetControl(ConfigurableUiControlType.StatusBarWidget) as StatusBarWidgetControl}\r\n />\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,gBAAgB;AAChB,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACtD,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,YAAY,CAAC;IACzC,IAAI,MAAM,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,SAAS,CAAC;IACtC,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE;QAC5B,MAAM,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;KACpC;IACD,IAAI,CAAC,MAAM;QACT,OAAO,IAAI,CAAC;IACd,MAAM,SAAS,GAAG,UAAU,CAC1B,6BAA6B,EAC7B,KAAK,CAAC,SAAS,CAChB,CAAC;IACF,OAAO,CACL,oBAAC,SAAS,IACR,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,cAAc,QACd,aAAa,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,CAAC,yBAAyB,CAAC,eAAe,CAA2B,GAC5G,CACH,CAAC;AACJ,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/** @packageDocumentation\r\n * @module StatusBar\r\n */\r\n\r\nimport \"./StatusBar.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\nimport { StatusBar } from \"../statusbar/StatusBar\";\r\nimport { StatusBarWidgetControl } from \"../statusbar/StatusBarWidgetControl\";\r\n\r\n/** @internal */\r\nexport function WidgetPanelsStatusBar(props: CommonProps) {\r\n const frontstageDef = useActiveFrontstageDef();\r\n const zone = frontstageDef?.bottomCenter;\r\n let widget = frontstageDef?.statusBar;\r\n if (zone && zone.isStatusBar) {\r\n widget = zone.getSingleWidgetDef();\r\n }\r\n if (!widget)\r\n return null;\r\n const className = classnames(\r\n \"uifw-widgetPanels-statusBar\",\r\n props.className,\r\n );\r\n return (\r\n <StatusBar\r\n className={className}\r\n style={props.style}\r\n isInFooterMode\r\n widgetControl={widget?.getWidgetControl(ConfigurableUiControlType.StatusBarWidget) as StatusBarWidgetControl}\r\n />\r\n );\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbars.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,iBAAiB,CAAC;AAIzB,gBAAgB;AAChB,wBAAgB,oBAAoB,gBAUnC"}
1
+ {"version":3,"file":"Toolbars.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,iBAAiB,CAAC;AAIzB,gBAAgB;AAChB,wBAAgB,oBAAoB,gBAoBnC"}
@@ -10,10 +10,17 @@ import * as React from "react";
10
10
  import { useActiveFrontstageDef } from "../frontstage/Frontstage";
11
11
  /** @internal */
12
12
  export function WidgetPanelsToolbars() {
13
- var _a, _b, _c, _d;
14
13
  const frontstageDef = useActiveFrontstageDef();
15
- const tools = (_b = (_a = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topLeft) === null || _a === void 0 ? void 0 : _a.getSingleWidgetDef()) === null || _b === void 0 ? void 0 : _b.reactNode;
16
- const navigation = (_d = (_c = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topRight) === null || _c === void 0 ? void 0 : _c.getSingleWidgetDef()) === null || _d === void 0 ? void 0 : _d.reactNode;
14
+ let toolsWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.contentManipulation;
15
+ if (frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topLeft) {
16
+ toolsWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topLeft.getSingleWidgetDef();
17
+ }
18
+ let navigationWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.viewNavigation;
19
+ if (frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topRight) {
20
+ navigationWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topRight.getSingleWidgetDef();
21
+ }
22
+ const tools = toolsWidget === null || toolsWidget === void 0 ? void 0 : toolsWidget.reactNode;
23
+ const navigation = navigationWidget === null || navigationWidget === void 0 ? void 0 : navigationWidget.reactNode;
17
24
  return (React.createElement("div", { className: "uifw-widgetPanels-toolbars" },
18
25
  tools,
19
26
  navigation));
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbars.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,gBAAgB;AAChB,MAAM,UAAU,oBAAoB;;IAClC,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,0CAAE,kBAAkB,EAAE,0CAAE,SAAS,CAAC;IACtE,MAAM,UAAU,GAAG,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,0CAAE,kBAAkB,EAAE,0CAAE,SAAS,CAAC;IAC5E,OAAO,CACL,6BAAK,SAAS,EAAC,4BAA4B;QACxC,KAAK;QACL,UAAU,CACP,CACP,CAAC;AACJ,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/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport \"./Toolbars.scss\";\r\nimport * as React from \"react\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\n\r\n/** @internal */\r\nexport function WidgetPanelsToolbars() {\r\n const frontstageDef = useActiveFrontstageDef();\r\n const tools = frontstageDef?.topLeft?.getSingleWidgetDef()?.reactNode;\r\n const navigation = frontstageDef?.topRight?.getSingleWidgetDef()?.reactNode;\r\n return (\r\n <div className=\"uifw-widgetPanels-toolbars\">\r\n {tools}\r\n {navigation}\r\n </div>\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"Toolbars.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,gBAAgB;AAChB,MAAM,UAAU,oBAAoB;IAClC,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAE/C,IAAI,WAAW,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,mBAAmB,CAAC;IACrD,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,EAAE;QAC1B,WAAW,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC;KAC3D;IAED,IAAI,gBAAgB,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,cAAc,CAAC;IACrD,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,EAAE;QAC3B,gBAAgB,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,CAAC,kBAAkB,EAAE,CAAC;KACjE;IACD,MAAM,KAAK,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,CAAC;IACrC,MAAM,UAAU,GAAG,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,SAAS,CAAC;IAC/C,OAAO,CACL,6BAAK,SAAS,EAAC,4BAA4B;QACxC,KAAK;QACL,UAAU,CACP,CACP,CAAC;AACJ,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/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport \"./Toolbars.scss\";\r\nimport * as React from \"react\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\n\r\n/** @internal */\r\nexport function WidgetPanelsToolbars() {\r\n const frontstageDef = useActiveFrontstageDef();\r\n\r\n let toolsWidget = frontstageDef?.contentManipulation;\r\n if (frontstageDef?.topLeft) {\r\n toolsWidget = frontstageDef?.topLeft.getSingleWidgetDef();\r\n }\r\n\r\n let navigationWidget = frontstageDef?.viewNavigation;\r\n if (frontstageDef?.topRight) {\r\n navigationWidget = frontstageDef?.topRight.getSingleWidgetDef();\r\n }\r\n const tools = toolsWidget?.reactNode;\r\n const navigation = navigationWidget?.reactNode;\r\n return (\r\n <div className=\"uifw-widgetPanels-toolbars\">\r\n {tools}\r\n {navigation}\r\n </div>\r\n );\r\n}\r\n"]}