@itwin/appui-react 3.5.0-dev.7 → 3.5.0

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 (489) hide show
  1. package/CHANGELOG.md +90 -1
  2. package/lib/cjs/appui-react/UiFramework.d.ts +11 -1
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +18 -3
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +2 -2
  7. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  8. package/lib/cjs/appui-react/backstage/Backstage.d.ts +3 -0
  9. package/lib/cjs/appui-react/backstage/Backstage.d.ts.map +1 -1
  10. package/lib/cjs/appui-react/backstage/Backstage.js +3 -1
  11. package/lib/cjs/appui-react/backstage/Backstage.js.map +1 -1
  12. package/lib/cjs/appui-react/backstage/CommandLaunch.js +1 -1
  13. package/lib/cjs/appui-react/backstage/CommandLaunch.js.map +1 -1
  14. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +1 -0
  15. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  16. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  17. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  18. package/lib/cjs/appui-react/configurableui/state.d.ts +4 -1
  19. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  20. package/lib/cjs/appui-react/configurableui/state.js +6 -0
  21. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  22. package/lib/cjs/appui-react/content/ContentGroup.d.ts +8 -0
  23. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  24. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  25. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +2 -2
  26. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  27. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +5 -1
  28. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  29. package/lib/cjs/appui-react/frontstage/Frontstage.js +1 -0
  30. package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
  31. package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts +3 -0
  32. package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  33. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +5 -2
  34. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  35. package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
  36. package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
  37. package/lib/cjs/appui-react/frontstage/FrontstageConfig.js +10 -0
  38. package/lib/cjs/appui-react/frontstage/FrontstageConfig.js.map +1 -0
  39. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +8 -0
  40. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  41. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +114 -7
  42. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  43. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +2 -4
  44. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  45. package/lib/cjs/appui-react/frontstage/FrontstageManager.js +5 -8
  46. package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
  47. package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
  48. package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
  49. package/lib/cjs/appui-react/frontstage/FrontstageProvider.js +1 -1
  50. package/lib/cjs/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  51. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
  52. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  53. package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts +13 -3
  54. package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
  55. package/lib/cjs/appui-react/hooks/useFrameworkVersion.js +15 -7
  56. package/lib/cjs/appui-react/hooks/useFrameworkVersion.js.map +1 -1
  57. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts +1 -0
  58. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts.map +1 -1
  59. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
  60. package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts +2 -0
  61. package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
  62. package/lib/cjs/appui-react/messages/ActivityMessagePopup.js +1 -0
  63. package/lib/cjs/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  64. package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts +1 -0
  65. package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
  66. package/lib/cjs/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  67. package/lib/cjs/appui-react/messages/StickyMessage.d.ts +1 -0
  68. package/lib/cjs/appui-react/messages/StickyMessage.d.ts.map +1 -1
  69. package/lib/cjs/appui-react/messages/StickyMessage.js.map +1 -1
  70. package/lib/cjs/appui-react/messages/ToastMessage.d.ts +1 -0
  71. package/lib/cjs/appui-react/messages/ToastMessage.d.ts.map +1 -1
  72. package/lib/cjs/appui-react/messages/ToastMessage.js.map +1 -1
  73. package/lib/cjs/appui-react/pickers/ListPicker.d.ts +1 -0
  74. package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
  75. package/lib/cjs/appui-react/pickers/ListPicker.js +4 -2
  76. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  77. package/lib/cjs/appui-react/pickers/ListPicker.scss +2 -1
  78. package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
  79. package/lib/cjs/appui-react/safearea/SafeAreaContext.d.ts +1 -0
  80. package/lib/cjs/appui-react/safearea/SafeAreaContext.d.ts.map +1 -1
  81. package/lib/cjs/appui-react/safearea/SafeAreaContext.js +2 -1
  82. package/lib/cjs/appui-react/safearea/SafeAreaContext.js.map +1 -1
  83. package/lib/cjs/appui-react/safearea/SafeAreaInsets.d.ts +13 -0
  84. package/lib/cjs/appui-react/safearea/SafeAreaInsets.d.ts.map +1 -0
  85. package/lib/cjs/appui-react/safearea/SafeAreaInsets.js +16 -0
  86. package/lib/cjs/appui-react/safearea/SafeAreaInsets.js.map +1 -0
  87. package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.js +2 -1
  88. package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
  89. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  90. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +16 -3
  91. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  92. package/lib/cjs/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
  93. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js +3 -2
  94. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  95. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +3 -0
  96. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  97. package/lib/cjs/appui-react/stagepanels/StagePanel.js +1 -0
  98. package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
  99. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts +39 -0
  100. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
  101. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js +11 -0
  102. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
  103. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
  104. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  105. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +4 -7
  106. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  107. package/lib/cjs/appui-react/statusbar/Indicator.d.ts +26 -0
  108. package/lib/cjs/appui-react/statusbar/Indicator.d.ts.map +1 -0
  109. package/lib/cjs/appui-react/statusbar/Indicator.js +38 -0
  110. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -0
  111. package/lib/cjs/appui-react/statusbar/Indicator.scss +110 -0
  112. package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts +24 -0
  113. package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts.map +1 -0
  114. package/lib/cjs/appui-react/statusbar/LabelIndicator.js +29 -0
  115. package/lib/cjs/appui-react/statusbar/LabelIndicator.js.map +1 -0
  116. package/lib/cjs/appui-react/statusbar/LabelIndicator.scss +43 -0
  117. package/lib/cjs/appui-react/statusbar/Separator.d.ts +10 -0
  118. package/lib/cjs/appui-react/statusbar/Separator.d.ts.map +1 -0
  119. package/lib/cjs/appui-react/statusbar/Separator.js +21 -0
  120. package/lib/cjs/appui-react/statusbar/Separator.js.map +1 -0
  121. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +2 -1
  122. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  123. package/lib/cjs/appui-react/statusbar/dialog/Button.d.ts +21 -0
  124. package/lib/cjs/appui-react/statusbar/dialog/Button.d.ts.map +1 -0
  125. package/lib/cjs/appui-react/statusbar/dialog/Button.js +20 -0
  126. package/lib/cjs/appui-react/statusbar/dialog/Button.js.map +1 -0
  127. package/lib/cjs/appui-react/statusbar/dialog/Dialog.d.ts +30 -0
  128. package/lib/cjs/appui-react/statusbar/dialog/Dialog.d.ts.map +1 -0
  129. package/lib/cjs/appui-react/statusbar/dialog/Dialog.js +31 -0
  130. package/lib/cjs/appui-react/statusbar/dialog/Dialog.js.map +1 -0
  131. package/lib/cjs/appui-react/statusbar/dialog/TitleBar.d.ts +19 -0
  132. package/lib/cjs/appui-react/statusbar/dialog/TitleBar.d.ts.map +1 -0
  133. package/lib/cjs/appui-react/statusbar/dialog/TitleBar.js +20 -0
  134. package/lib/cjs/appui-react/statusbar/dialog/TitleBar.js.map +1 -0
  135. package/lib/cjs/appui-react/statusfields/Indicator.d.ts +1 -0
  136. package/lib/cjs/appui-react/statusfields/Indicator.d.ts.map +1 -1
  137. package/lib/cjs/appui-react/statusfields/Indicator.js +1 -0
  138. package/lib/cjs/appui-react/statusfields/Indicator.js.map +1 -1
  139. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  140. package/lib/cjs/appui-react/statusfields/MessageCenter.js +2 -5
  141. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  142. package/lib/cjs/appui-react/statusfields/PromptField.js +2 -1
  143. package/lib/cjs/appui-react/statusfields/PromptField.js.map +1 -1
  144. package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  145. package/lib/cjs/appui-react/statusfields/SectionsField.js +4 -2
  146. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  147. package/lib/cjs/appui-react/statusfields/SelectionInfo.js +2 -1
  148. package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
  149. package/lib/cjs/appui-react/statusfields/SelectionScope.js +2 -1
  150. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  151. package/lib/cjs/appui-react/statusfields/SnapMode.js +2 -1
  152. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  153. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  154. package/lib/cjs/appui-react/statusfields/ViewAttributes.js +3 -2
  155. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  156. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +0 -1
  157. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  158. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -11
  159. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  160. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts +6 -1
  161. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  162. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +14 -0
  163. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  164. package/lib/cjs/appui-react/theme/ThemeManager.d.ts +7 -1
  165. package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
  166. package/lib/cjs/appui-react/theme/ThemeManager.js +14 -3
  167. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  168. package/lib/cjs/appui-react/toolbar/ActionItemButton.d.ts +2 -0
  169. package/lib/cjs/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
  170. package/lib/cjs/appui-react/toolbar/ActionItemButton.js +1 -0
  171. package/lib/cjs/appui-react/toolbar/ActionItemButton.js.map +1 -1
  172. package/lib/cjs/appui-react/toolbar/GroupItem.d.ts +2 -0
  173. package/lib/cjs/appui-react/toolbar/GroupItem.d.ts.map +1 -1
  174. package/lib/cjs/appui-react/toolbar/GroupItem.js +1 -0
  175. package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
  176. package/lib/cjs/appui-react/toolbar/ToolButton.d.ts +2 -0
  177. package/lib/cjs/appui-react/toolbar/ToolButton.d.ts.map +1 -1
  178. package/lib/cjs/appui-react/toolbar/ToolButton.js +1 -0
  179. package/lib/cjs/appui-react/toolbar/ToolButton.js.map +1 -1
  180. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +1 -1
  181. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  182. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts +9 -0
  183. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  184. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js +17 -1
  185. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  186. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  187. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +3 -3
  188. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  189. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -3
  190. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  191. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -1
  192. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  193. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +2 -0
  194. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  195. package/lib/cjs/appui-react/uistate/AppUiSettings.js +6 -1
  196. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  197. package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
  198. package/lib/cjs/appui-react/utils/UiShowHideManager.js +8 -0
  199. package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +1 -1
  200. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  201. package/lib/cjs/appui-react/widget-panels/Frontstage.js +28 -19
  202. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  203. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  204. package/lib/cjs/appui-react/widget-panels/StatusBar.js +5 -2
  205. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  206. package/lib/cjs/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
  207. package/lib/cjs/appui-react/widget-panels/Toolbars.js +10 -3
  208. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  209. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js +1 -1
  210. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  211. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +2 -2
  212. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  213. package/lib/cjs/appui-react/widgets/NavigationWidget.js.map +1 -1
  214. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +1 -1
  215. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  216. package/lib/cjs/appui-react/widgets/ToolWidget.js.map +1 -1
  217. package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  218. package/lib/cjs/appui-react/widgets/Widget.d.ts +1 -0
  219. package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -1
  220. package/lib/cjs/appui-react/widgets/Widget.js +1 -0
  221. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
  222. package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts +11 -0
  223. package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
  224. package/lib/cjs/appui-react/widgets/WidgetConfig.js +10 -0
  225. package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -0
  226. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +14 -1
  227. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  228. package/lib/cjs/appui-react/widgets/WidgetDef.js +21 -11
  229. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  230. package/lib/cjs/appui-react/widgets/WidgetProps.d.ts +1 -0
  231. package/lib/cjs/appui-react/widgets/WidgetProps.d.ts.map +1 -1
  232. package/lib/cjs/appui-react/widgets/WidgetProps.js.map +1 -1
  233. package/lib/cjs/appui-react/zones/Zone.d.ts +5 -1
  234. package/lib/cjs/appui-react/zones/Zone.d.ts.map +1 -1
  235. package/lib/cjs/appui-react/zones/Zone.js +1 -0
  236. package/lib/cjs/appui-react/zones/Zone.js.map +1 -1
  237. package/lib/cjs/appui-react/zones/ZoneDef.d.ts +1 -0
  238. package/lib/cjs/appui-react/zones/ZoneDef.d.ts.map +1 -1
  239. package/lib/cjs/appui-react/zones/ZoneDef.js +2 -2
  240. package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
  241. package/lib/cjs/appui-react.d.ts +8 -0
  242. package/lib/cjs/appui-react.d.ts.map +1 -1
  243. package/lib/cjs/appui-react.js +8 -0
  244. package/lib/cjs/appui-react.js.map +1 -1
  245. package/lib/esm/appui-react/UiFramework.d.ts +11 -1
  246. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  247. package/lib/esm/appui-react/UiFramework.js +19 -4
  248. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  249. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +2 -2
  250. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  251. package/lib/esm/appui-react/backstage/Backstage.d.ts +3 -0
  252. package/lib/esm/appui-react/backstage/Backstage.d.ts.map +1 -1
  253. package/lib/esm/appui-react/backstage/Backstage.js +3 -1
  254. package/lib/esm/appui-react/backstage/Backstage.js.map +1 -1
  255. package/lib/esm/appui-react/backstage/CommandLaunch.js +1 -1
  256. package/lib/esm/appui-react/backstage/CommandLaunch.js.map +1 -1
  257. package/lib/esm/appui-react/childwindow/ChildWindowManager.js +1 -0
  258. package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  259. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  260. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  261. package/lib/esm/appui-react/configurableui/state.d.ts +4 -1
  262. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  263. package/lib/esm/appui-react/configurableui/state.js +7 -1
  264. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  265. package/lib/esm/appui-react/content/ContentGroup.d.ts +8 -0
  266. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  267. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  268. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +2 -2
  269. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  270. package/lib/esm/appui-react/frontstage/Frontstage.d.ts +5 -1
  271. package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  272. package/lib/esm/appui-react/frontstage/Frontstage.js +1 -0
  273. package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
  274. package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts +3 -0
  275. package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  276. package/lib/esm/appui-react/frontstage/FrontstageComposer.js +6 -3
  277. package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  278. package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
  279. package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
  280. package/lib/esm/appui-react/frontstage/FrontstageConfig.js +9 -0
  281. package/lib/esm/appui-react/frontstage/FrontstageConfig.js.map +1 -0
  282. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +8 -0
  283. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  284. package/lib/esm/appui-react/frontstage/FrontstageDef.js +115 -8
  285. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  286. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +2 -4
  287. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  288. package/lib/esm/appui-react/frontstage/FrontstageManager.js +5 -8
  289. package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
  290. package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
  291. package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
  292. package/lib/esm/appui-react/frontstage/FrontstageProvider.js +1 -1
  293. package/lib/esm/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  294. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
  295. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  296. package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts +13 -3
  297. package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
  298. package/lib/esm/appui-react/hooks/useFrameworkVersion.js +15 -7
  299. package/lib/esm/appui-react/hooks/useFrameworkVersion.js.map +1 -1
  300. package/lib/esm/appui-react/messages/ActivityMessage.d.ts +1 -0
  301. package/lib/esm/appui-react/messages/ActivityMessage.d.ts.map +1 -1
  302. package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
  303. package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts +2 -0
  304. package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
  305. package/lib/esm/appui-react/messages/ActivityMessagePopup.js +1 -0
  306. package/lib/esm/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  307. package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts +1 -0
  308. package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
  309. package/lib/esm/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  310. package/lib/esm/appui-react/messages/StickyMessage.d.ts +1 -0
  311. package/lib/esm/appui-react/messages/StickyMessage.d.ts.map +1 -1
  312. package/lib/esm/appui-react/messages/StickyMessage.js.map +1 -1
  313. package/lib/esm/appui-react/messages/ToastMessage.d.ts +1 -0
  314. package/lib/esm/appui-react/messages/ToastMessage.d.ts.map +1 -1
  315. package/lib/esm/appui-react/messages/ToastMessage.js.map +1 -1
  316. package/lib/esm/appui-react/pickers/ListPicker.d.ts +1 -0
  317. package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
  318. package/lib/esm/appui-react/pickers/ListPicker.js +4 -2
  319. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  320. package/lib/esm/appui-react/pickers/ListPicker.scss +2 -1
  321. package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
  322. package/lib/esm/appui-react/safearea/SafeAreaContext.d.ts +1 -0
  323. package/lib/esm/appui-react/safearea/SafeAreaContext.d.ts.map +1 -1
  324. package/lib/esm/appui-react/safearea/SafeAreaContext.js +2 -1
  325. package/lib/esm/appui-react/safearea/SafeAreaContext.js.map +1 -1
  326. package/lib/esm/appui-react/safearea/SafeAreaInsets.d.ts +13 -0
  327. package/lib/esm/appui-react/safearea/SafeAreaInsets.d.ts.map +1 -0
  328. package/lib/esm/appui-react/safearea/SafeAreaInsets.js +13 -0
  329. package/lib/esm/appui-react/safearea/SafeAreaInsets.js.map +1 -0
  330. package/lib/esm/appui-react/selection/ClearEmphasisStatusField.js +2 -1
  331. package/lib/esm/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
  332. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  333. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +16 -3
  334. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  335. package/lib/esm/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
  336. package/lib/esm/appui-react/shared/ActionButtonItemDef.js +3 -2
  337. package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  338. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +3 -0
  339. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  340. package/lib/esm/appui-react/stagepanels/StagePanel.js +1 -0
  341. package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
  342. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts +39 -0
  343. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
  344. package/lib/esm/appui-react/stagepanels/StagePanelConfig.js +10 -0
  345. package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
  346. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
  347. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  348. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +4 -7
  349. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  350. package/lib/esm/appui-react/statusbar/Indicator.d.ts +26 -0
  351. package/lib/esm/appui-react/statusbar/Indicator.d.ts.map +1 -0
  352. package/lib/esm/appui-react/statusbar/Indicator.js +34 -0
  353. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -0
  354. package/lib/esm/appui-react/statusbar/Indicator.scss +110 -0
  355. package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts +24 -0
  356. package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts.map +1 -0
  357. package/lib/esm/appui-react/statusbar/LabelIndicator.js +25 -0
  358. package/lib/esm/appui-react/statusbar/LabelIndicator.js.map +1 -0
  359. package/lib/esm/appui-react/statusbar/LabelIndicator.scss +43 -0
  360. package/lib/esm/appui-react/statusbar/Separator.d.ts +10 -0
  361. package/lib/esm/appui-react/statusbar/Separator.d.ts.map +1 -0
  362. package/lib/esm/appui-react/statusbar/Separator.js +17 -0
  363. package/lib/esm/appui-react/statusbar/Separator.js.map +1 -0
  364. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +2 -1
  365. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  366. package/lib/esm/appui-react/statusbar/dialog/Button.d.ts +21 -0
  367. package/lib/esm/appui-react/statusbar/dialog/Button.d.ts.map +1 -0
  368. package/lib/esm/appui-react/statusbar/dialog/Button.js +16 -0
  369. package/lib/esm/appui-react/statusbar/dialog/Button.js.map +1 -0
  370. package/lib/esm/appui-react/statusbar/dialog/Dialog.d.ts +30 -0
  371. package/lib/esm/appui-react/statusbar/dialog/Dialog.d.ts.map +1 -0
  372. package/lib/esm/appui-react/statusbar/dialog/Dialog.js +27 -0
  373. package/lib/esm/appui-react/statusbar/dialog/Dialog.js.map +1 -0
  374. package/lib/esm/appui-react/statusbar/dialog/TitleBar.d.ts +19 -0
  375. package/lib/esm/appui-react/statusbar/dialog/TitleBar.d.ts.map +1 -0
  376. package/lib/esm/appui-react/statusbar/dialog/TitleBar.js +16 -0
  377. package/lib/esm/appui-react/statusbar/dialog/TitleBar.js.map +1 -0
  378. package/lib/esm/appui-react/statusfields/Indicator.d.ts +1 -0
  379. package/lib/esm/appui-react/statusfields/Indicator.d.ts.map +1 -1
  380. package/lib/esm/appui-react/statusfields/Indicator.js +1 -0
  381. package/lib/esm/appui-react/statusfields/Indicator.js.map +1 -1
  382. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  383. package/lib/esm/appui-react/statusfields/MessageCenter.js +2 -5
  384. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  385. package/lib/esm/appui-react/statusfields/PromptField.js +2 -1
  386. package/lib/esm/appui-react/statusfields/PromptField.js.map +1 -1
  387. package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  388. package/lib/esm/appui-react/statusfields/SectionsField.js +5 -3
  389. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  390. package/lib/esm/appui-react/statusfields/SelectionInfo.js +2 -1
  391. package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
  392. package/lib/esm/appui-react/statusfields/SelectionScope.js +2 -1
  393. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  394. package/lib/esm/appui-react/statusfields/SnapMode.js +2 -1
  395. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  396. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  397. package/lib/esm/appui-react/statusfields/ViewAttributes.js +3 -2
  398. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  399. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +0 -1
  400. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  401. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +15 -13
  402. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  403. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts +6 -1
  404. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  405. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +14 -0
  406. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  407. package/lib/esm/appui-react/theme/ThemeManager.d.ts +7 -1
  408. package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
  409. package/lib/esm/appui-react/theme/ThemeManager.js +13 -2
  410. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  411. package/lib/esm/appui-react/toolbar/ActionItemButton.d.ts +2 -0
  412. package/lib/esm/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
  413. package/lib/esm/appui-react/toolbar/ActionItemButton.js +1 -0
  414. package/lib/esm/appui-react/toolbar/ActionItemButton.js.map +1 -1
  415. package/lib/esm/appui-react/toolbar/GroupItem.d.ts +2 -0
  416. package/lib/esm/appui-react/toolbar/GroupItem.d.ts.map +1 -1
  417. package/lib/esm/appui-react/toolbar/GroupItem.js +1 -0
  418. package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
  419. package/lib/esm/appui-react/toolbar/ToolButton.d.ts +2 -0
  420. package/lib/esm/appui-react/toolbar/ToolButton.d.ts.map +1 -1
  421. package/lib/esm/appui-react/toolbar/ToolButton.js +1 -0
  422. package/lib/esm/appui-react/toolbar/ToolButton.js.map +1 -1
  423. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +1 -1
  424. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  425. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts +9 -0
  426. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  427. package/lib/esm/appui-react/tools/RestoreLayoutTool.js +15 -0
  428. package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  429. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  430. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +3 -3
  431. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  432. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -3
  433. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  434. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -1
  435. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  436. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +2 -0
  437. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  438. package/lib/esm/appui-react/uistate/AppUiSettings.js +6 -1
  439. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  440. package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
  441. package/lib/esm/appui-react/utils/UiShowHideManager.js +8 -0
  442. package/lib/esm/appui-react/utils/UiShowHideManager.js.map +1 -1
  443. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  444. package/lib/esm/appui-react/widget-panels/Frontstage.js +28 -19
  445. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  446. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  447. package/lib/esm/appui-react/widget-panels/StatusBar.js +5 -2
  448. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  449. package/lib/esm/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
  450. package/lib/esm/appui-react/widget-panels/Toolbars.js +10 -3
  451. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  452. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js +1 -1
  453. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  454. package/lib/esm/appui-react/widgets/BackstageAppButton.js +2 -2
  455. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  456. package/lib/esm/appui-react/widgets/NavigationWidget.js.map +1 -1
  457. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +1 -1
  458. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  459. package/lib/esm/appui-react/widgets/ToolWidget.js.map +1 -1
  460. package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  461. package/lib/esm/appui-react/widgets/Widget.d.ts +1 -0
  462. package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -1
  463. package/lib/esm/appui-react/widgets/Widget.js +1 -0
  464. package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
  465. package/lib/esm/appui-react/widgets/WidgetConfig.d.ts +11 -0
  466. package/lib/esm/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
  467. package/lib/esm/appui-react/widgets/WidgetConfig.js +9 -0
  468. package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -0
  469. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +14 -1
  470. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  471. package/lib/esm/appui-react/widgets/WidgetDef.js +21 -11
  472. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  473. package/lib/esm/appui-react/widgets/WidgetProps.d.ts +1 -0
  474. package/lib/esm/appui-react/widgets/WidgetProps.d.ts.map +1 -1
  475. package/lib/esm/appui-react/widgets/WidgetProps.js.map +1 -1
  476. package/lib/esm/appui-react/zones/Zone.d.ts +5 -1
  477. package/lib/esm/appui-react/zones/Zone.d.ts.map +1 -1
  478. package/lib/esm/appui-react/zones/Zone.js +1 -0
  479. package/lib/esm/appui-react/zones/Zone.js.map +1 -1
  480. package/lib/esm/appui-react/zones/ZoneDef.d.ts +1 -0
  481. package/lib/esm/appui-react/zones/ZoneDef.d.ts.map +1 -1
  482. package/lib/esm/appui-react/zones/ZoneDef.js +2 -2
  483. package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
  484. package/lib/esm/appui-react.d.ts +8 -0
  485. package/lib/esm/appui-react.d.ts.map +1 -1
  486. package/lib/esm/appui-react.js +8 -0
  487. package/lib/esm/appui-react.js.map +1 -1
  488. package/lib/public/locales/en/UiFramework.json +11 -4
  489. package/package.json +34 -34
@@ -10,7 +10,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.StandardStatusbarUiItemsProvider = void 0;
11
11
  const React = require("react");
12
12
  const appui_abstract_1 = require("@itwin/appui-abstract");
13
- const appui_layout_react_1 = require("@itwin/appui-layout-react");
14
13
  const StatusBarItemUtilities_1 = require("../statusbar/StatusBarItemUtilities");
15
14
  const ToolAssistanceField_1 = require("../statusfields/toolassistance/ToolAssistanceField");
16
15
  const withStatusFieldProps_1 = require("../statusbar/withStatusFieldProps");
@@ -21,6 +20,7 @@ const SnapMode_1 = require("../statusfields/SnapMode");
21
20
  const SelectionInfo_1 = require("../statusfields/SelectionInfo");
22
21
  const TileLoadingIndicator_1 = require("../statusfields/tileloading/TileLoadingIndicator");
23
22
  const SelectionScope_1 = require("../statusfields/SelectionScope");
23
+ const Separator_1 = require("../statusbar/Separator");
24
24
  /**
25
25
  * Provide standard statusbar fields for the SimpleStatusbarWidget
26
26
  * @beta
@@ -42,12 +42,12 @@ class StandardStatusbarUiItemsProvider {
42
42
  // istanbul ignore else
43
43
  if (!this._defaultItems || this._defaultItems.toolAssistance) {
44
44
  if (!this._defaultItems || this._defaultItems.preToolAssistanceSeparator)
45
- statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.PreToolAssistance", appui_abstract_1.StatusBarSection.Left, 15, React.createElement(appui_layout_react_1.FooterSeparator, null)));
45
+ statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.PreToolAssistance", appui_abstract_1.StatusBarSection.Left, 15, React.createElement(Separator_1.StatusBarSeparator, null)));
46
46
  // eslint-disable-next-line deprecation/deprecation
47
47
  const ToolAssistance = (0, withStatusFieldProps_1.withStatusFieldProps)(ToolAssistanceField_1.ToolAssistanceField);
48
48
  statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.ToolAssistance", appui_abstract_1.StatusBarSection.Left, 20, React.createElement(ToolAssistance, null)));
49
49
  if (!this._defaultItems || this._defaultItems.postToolAssistanceSeparator)
50
- statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.PostToolAssistance", appui_abstract_1.StatusBarSection.Left, 25, React.createElement(appui_layout_react_1.FooterSeparator, null)));
50
+ statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.PostToolAssistance", appui_abstract_1.StatusBarSection.Left, 25, React.createElement(Separator_1.StatusBarSeparator, null)));
51
51
  }
52
52
  // istanbul ignore else
53
53
  if ((_a = this._defaultItems) === null || _a === void 0 ? void 0 : _a.activityCenter) {
@@ -1 +1 @@
1
- {"version":3,"file":"StandardStatusbarUiItemsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.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/** @packageDocumentation\r\n * @module StandardUiItemsProvider\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonStatusBarItem, StatusBarSection, UiItemsProvider } from \"@itwin/appui-abstract\";\r\nimport { FooterSeparator } from \"@itwin/appui-layout-react\";\r\nimport { StatusBarItemUtilities } from \"../statusbar/StatusBarItemUtilities\";\r\nimport { ToolAssistanceField } from \"../statusfields/toolassistance/ToolAssistanceField\";\r\nimport { withStatusFieldProps } from \"../statusbar/withStatusFieldProps\";\r\nimport { MessageCenterField } from \"../statusfields/MessageCenter\";\r\nimport { withMessageCenterFieldProps } from \"../statusbar/withMessageCenterFieldProps\";\r\nimport { ActivityCenterField } from \"../statusfields/ActivityCenter\";\r\nimport { SnapModeField } from \"../statusfields/SnapMode\";\r\nimport { SelectionInfoField } from \"../statusfields/SelectionInfo\";\r\nimport { TileLoadingIndicator } from \"../statusfields/tileloading/TileLoadingIndicator\";\r\nimport { SelectionScopeField } from \"../statusfields/SelectionScope\";\r\n\r\n/**\r\n * Defines what items to include from the provider. If any items are\r\n * specified then only those items will be added to statusbar.\r\n * @public\r\n */\r\nexport interface DefaultStatusbarItems {\r\n messageCenter?: boolean;\r\n preToolAssistanceSeparator?: boolean;\r\n toolAssistance?: boolean;\r\n postToolAssistanceSeparator?: boolean;\r\n activityCenter?: boolean;\r\n accuSnapModePicker?: boolean;\r\n tileLoadIndicator?: boolean;\r\n selectionScope?: boolean;\r\n selectionInfo?: boolean;\r\n}\r\n\r\n/**\r\n * Provide standard statusbar fields for the SimpleStatusbarWidget\r\n * @beta\r\n */\r\nexport class StandardStatusbarUiItemsProvider implements UiItemsProvider {\r\n public get id(): string { return \"appui-react:StandardStatusbarUiItemsProvider\"; }\r\n\r\n constructor(private _defaultItems?: DefaultStatusbarItems) { }\r\n\r\n public provideStatusBarItems(_stageId: string, _stageUsage: string, _stageAppData?: any): CommonStatusBarItem[] {\r\n const statusBarItems: CommonStatusBarItem[] = [];\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.messageCenter) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const MessageCenter = withMessageCenterFieldProps(MessageCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.MessageCenter\", StatusBarSection.Left, 10, <MessageCenter />));\r\n }\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.toolAssistance) {\r\n if (!this._defaultItems || this._defaultItems.preToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PreToolAssistance\", StatusBarSection.Left, 15, <FooterSeparator />));\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n const ToolAssistance = withStatusFieldProps(ToolAssistanceField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ToolAssistance\", StatusBarSection.Left, 20, <ToolAssistance />));\r\n\r\n if (!this._defaultItems || this._defaultItems.postToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PostToolAssistance\", StatusBarSection.Left, 25, <FooterSeparator />));\r\n }\r\n // istanbul ignore else\r\n if (this._defaultItems?.activityCenter) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const ActivityCenter = withStatusFieldProps(ActivityCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ActivityCenter\", StatusBarSection.Left, 30, <ActivityCenter />));\r\n }\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.accuSnapModePicker) {\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SnapMode\", StatusBarSection.Center, 10, <SnapModeField />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.tileLoadIndicator) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const TileLoadIndicator = withStatusFieldProps(TileLoadingIndicator);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.TileLoadIndicator\", StatusBarSection.Right, 10, <TileLoadIndicator />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.selectionScope) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const SelectionScope = withStatusFieldProps(SelectionScopeField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionScope\", StatusBarSection.Right, 20, <SelectionScope />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.selectionInfo) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const SelectionInfo = withStatusFieldProps(SelectionInfoField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionInfo\", StatusBarSection.Right, 30, <SelectionInfo />));\r\n }\r\n\r\n return statusBarItems;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"StandardStatusbarUiItemsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.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/** @packageDocumentation\r\n * @module StandardUiItemsProvider\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonStatusBarItem, StatusBarSection, UiItemsProvider } from \"@itwin/appui-abstract\";\r\nimport { StatusBarItemUtilities } from \"../statusbar/StatusBarItemUtilities\";\r\nimport { ToolAssistanceField } from \"../statusfields/toolassistance/ToolAssistanceField\";\r\nimport { withStatusFieldProps } from \"../statusbar/withStatusFieldProps\";\r\nimport { MessageCenterField } from \"../statusfields/MessageCenter\";\r\nimport { withMessageCenterFieldProps } from \"../statusbar/withMessageCenterFieldProps\";\r\nimport { ActivityCenterField } from \"../statusfields/ActivityCenter\";\r\nimport { SnapModeField } from \"../statusfields/SnapMode\";\r\nimport { SelectionInfoField } from \"../statusfields/SelectionInfo\";\r\nimport { TileLoadingIndicator } from \"../statusfields/tileloading/TileLoadingIndicator\";\r\nimport { SelectionScopeField } from \"../statusfields/SelectionScope\";\r\nimport { StatusBarSeparator } from \"../statusbar/Separator\";\r\n\r\n/**\r\n * Defines what items to include from the provider. If any items are\r\n * specified then only those items will be added to statusbar.\r\n * @public\r\n */\r\nexport interface DefaultStatusbarItems {\r\n messageCenter?: boolean;\r\n preToolAssistanceSeparator?: boolean;\r\n toolAssistance?: boolean;\r\n postToolAssistanceSeparator?: boolean;\r\n activityCenter?: boolean;\r\n accuSnapModePicker?: boolean;\r\n tileLoadIndicator?: boolean;\r\n selectionScope?: boolean;\r\n selectionInfo?: boolean;\r\n}\r\n\r\n/**\r\n * Provide standard statusbar fields for the SimpleStatusbarWidget\r\n * @beta\r\n */\r\nexport class StandardStatusbarUiItemsProvider implements UiItemsProvider {\r\n public get id(): string { return \"appui-react:StandardStatusbarUiItemsProvider\"; }\r\n\r\n constructor(private _defaultItems?: DefaultStatusbarItems) { }\r\n\r\n public provideStatusBarItems(_stageId: string, _stageUsage: string, _stageAppData?: any): CommonStatusBarItem[] {\r\n const statusBarItems: CommonStatusBarItem[] = [];\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.messageCenter) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const MessageCenter = withMessageCenterFieldProps(MessageCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.MessageCenter\", StatusBarSection.Left, 10, <MessageCenter />));\r\n }\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.toolAssistance) {\r\n if (!this._defaultItems || this._defaultItems.preToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PreToolAssistance\", StatusBarSection.Left, 15, <StatusBarSeparator />));\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n const ToolAssistance = withStatusFieldProps(ToolAssistanceField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ToolAssistance\", StatusBarSection.Left, 20, <ToolAssistance />));\r\n\r\n if (!this._defaultItems || this._defaultItems.postToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PostToolAssistance\", StatusBarSection.Left, 25, <StatusBarSeparator />));\r\n }\r\n // istanbul ignore else\r\n if (this._defaultItems?.activityCenter) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const ActivityCenter = withStatusFieldProps(ActivityCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ActivityCenter\", StatusBarSection.Left, 30, <ActivityCenter />));\r\n }\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.accuSnapModePicker) {\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SnapMode\", StatusBarSection.Center, 10, <SnapModeField />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.tileLoadIndicator) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const TileLoadIndicator = withStatusFieldProps(TileLoadingIndicator);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.TileLoadIndicator\", StatusBarSection.Right, 10, <TileLoadIndicator />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.selectionScope) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const SelectionScope = withStatusFieldProps(SelectionScopeField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionScope\", StatusBarSection.Right, 20, <SelectionScope />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.selectionInfo) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const SelectionInfo = withStatusFieldProps(SelectionInfoField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionInfo\", StatusBarSection.Right, 30, <SelectionInfo />));\r\n }\r\n\r\n return statusBarItems;\r\n }\r\n}\r\n"]}
@@ -24,7 +24,7 @@ var LayoutMode;
24
24
  */
25
25
  function ToolSettingsGridContainer({ componentGenerator }) {
26
26
  const { availableContentWidth } = React.useContext(ToolSettingsContent_1.ToolSettingsContentContext);
27
- const version = (0, useFrameworkVersion_1.useFrameworkVersion)();
27
+ const version = (0, useFrameworkVersion_1.useFrameworkVersion)(); // eslint-disable-line deprecation/deprecation
28
28
  const layoutMode = toLayoutMode(availableContentWidth);
29
29
  const className = (0, classnames_1.default)("uifw-tool-settings-grid-container", version === "1" && "uifw-fill",
30
30
  // istanbul ignore next
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultDialogGridContainer.js","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/DefaultDialogGridContainer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,6CAA2C;AAC3C,2CAAoC;AACpC,+BAA+B;AAE/B,sEAAmE;AACnE,wEAA4E;AAG5E,IAAK,UAGJ;AAHD,WAAK,UAAU;IACb,2CAAQ,CAAA;IACR,+CAAU,CAAA;AACZ,CAAC,EAHI,UAAU,KAAV,UAAU,QAGd;AAED;;;GAGG;AACH,SAAgB,yBAAyB,CAAC,EAAE,kBAAkB,EAA8C;IAC1G,MAAM,EAAE,qBAAqB,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,gDAA0B,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAG,IAAA,yCAAmB,GAAE,CAAC;IACtC,MAAM,UAAU,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,mCAAmC,EACnC,OAAO,KAAK,GAAG,IAAI,WAAW;IAC9B,uBAAuB;IACvB,UAAU,CAAC,MAAM,KAAK,UAAU,IAAI,qBAAqB,CAC1D,CAAC;IACF,OAAO,CACL,oBAAC,mBAAmB,IAClB,kBAAkB,EAAE,kBAAkB,EACtC,kBAAkB,EAAE,SAAS,GAC7B,CACH,CAAC;AACJ,CAAC;AAhBD,8DAgBC;AAOD,gBAAgB;AAChB,uBAAuB;AACvB,SAAgB,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,kBAAkB,EAA4B;IACtG,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,wBAAwB,EACxB,kBAAkB,CACnB,CAAC;IACF,OAAO,CACL,6BAAK,SAAS,EAAC,6BAA6B;QAC1C,6BAAK,SAAS,EAAE,SAAS,IACtB,kBAAkB,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAc,EAAE,KAAa,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CACjH,CACF,CACP,CAAC;AACJ,CAAC;AAZD,kDAYC;AAED;;GAEG;AACH,SAAgB,0BAA0B,CAAC,EAAE,kBAAkB,EAAE,cAAc,EAAwE;IACrJ,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACxB,oBAAC,yBAAyB,IAAC,kBAAkB,EAAE,kBAAkB,GAAI,CAAC,CAAC;QACvE,0BAA0B;QAC1B,oBAAC,mBAAmB,IAAC,kBAAkB,EAAE,kBAAkB,GAAI,CAAC,CAAC;AACrE,CAAC;AALD,gEAKC;AAED,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;IACrC,OAAO,CAAC,KAAK,GAAG,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;AACrG,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/** @packageDocumentation\r\n * @module UiProvider\r\n */\r\n\r\nimport \"./DefaultDialogGridContainer.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { DialogRow } from \"@itwin/appui-abstract\";\r\nimport { useFrameworkVersion } from \"../hooks/useFrameworkVersion\";\r\nimport { ToolSettingsContentContext } from \"../widgets/ToolSettingsContent\";\r\nimport { ComponentGenerator } from \"./ComponentGenerator\";\r\n\r\nenum LayoutMode {\r\n Wide = 0,\r\n Narrow = 1,\r\n}\r\n\r\n/**\r\n * Component to provide grid of property editors\r\n * @public\r\n */\r\nexport function ToolSettingsGridContainer({ componentGenerator }: { componentGenerator: ComponentGenerator }) {\r\n const { availableContentWidth } = React.useContext(ToolSettingsContentContext);\r\n const version = useFrameworkVersion();\r\n const layoutMode = toLayoutMode(availableContentWidth);\r\n const className = classnames(\r\n \"uifw-tool-settings-grid-container\",\r\n version === \"1\" && \"uifw-fill\",\r\n // istanbul ignore next\r\n LayoutMode.Narrow === layoutMode && \"uifw-default-narrow\",\r\n );\r\n return (\r\n <DialogGridContainer\r\n componentGenerator={componentGenerator}\r\n containerClassName={className}\r\n />\r\n );\r\n}\r\n\r\ninterface DialogGridContainerProps {\r\n componentGenerator: ComponentGenerator;\r\n containerClassName?: string;\r\n}\r\n\r\n/** @internal */\r\n// istanbul ignore next\r\nexport function DialogGridContainer({ componentGenerator, containerClassName }: DialogGridContainerProps) {\r\n const className = classnames(\r\n \"uifw-default-container\",\r\n containerClassName,\r\n );\r\n return (\r\n <div className=\"uifw-default-resizer-parent\">\r\n <div className={className}>\r\n {componentGenerator.uiDataProvider.rows.map((row: DialogRow, index: number) => componentGenerator.getRow(row, index))}\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n/** DefaultDialogGridContainer populates a React node with the items specified by the UiLayoutDataProvider\r\n * @public\r\n */\r\nexport function DefaultDialogGridContainer({ componentGenerator, isToolSettings }: { componentGenerator: ComponentGenerator, isToolSettings?: boolean }) {\r\n return (!!isToolSettings ?\r\n <ToolSettingsGridContainer componentGenerator={componentGenerator} /> :\r\n /* istanbul ignore next */\r\n <DialogGridContainer componentGenerator={componentGenerator} />);\r\n}\r\n\r\nconst toLayoutMode = (width: number) => {\r\n return (width < 250 && width > 0) ? /* istanbul ignore next */ LayoutMode.Narrow : LayoutMode.Wide;\r\n};\r\n"]}
1
+ {"version":3,"file":"DefaultDialogGridContainer.js","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/DefaultDialogGridContainer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,6CAA2C;AAC3C,2CAAoC;AACpC,+BAA+B;AAE/B,sEAAmE;AACnE,wEAA4E;AAG5E,IAAK,UAGJ;AAHD,WAAK,UAAU;IACb,2CAAQ,CAAA;IACR,+CAAU,CAAA;AACZ,CAAC,EAHI,UAAU,KAAV,UAAU,QAGd;AAED;;;GAGG;AACH,SAAgB,yBAAyB,CAAC,EAAE,kBAAkB,EAA8C;IAC1G,MAAM,EAAE,qBAAqB,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,gDAA0B,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAG,IAAA,yCAAmB,GAAE,CAAC,CAAC,8CAA8C;IACrF,MAAM,UAAU,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,mCAAmC,EACnC,OAAO,KAAK,GAAG,IAAI,WAAW;IAC9B,uBAAuB;IACvB,UAAU,CAAC,MAAM,KAAK,UAAU,IAAI,qBAAqB,CAC1D,CAAC;IACF,OAAO,CACL,oBAAC,mBAAmB,IAClB,kBAAkB,EAAE,kBAAkB,EACtC,kBAAkB,EAAE,SAAS,GAC7B,CACH,CAAC;AACJ,CAAC;AAhBD,8DAgBC;AAOD,gBAAgB;AAChB,uBAAuB;AACvB,SAAgB,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,kBAAkB,EAA4B;IACtG,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,wBAAwB,EACxB,kBAAkB,CACnB,CAAC;IACF,OAAO,CACL,6BAAK,SAAS,EAAC,6BAA6B;QAC1C,6BAAK,SAAS,EAAE,SAAS,IACtB,kBAAkB,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAc,EAAE,KAAa,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CACjH,CACF,CACP,CAAC;AACJ,CAAC;AAZD,kDAYC;AAED;;GAEG;AACH,SAAgB,0BAA0B,CAAC,EAAE,kBAAkB,EAAE,cAAc,EAAwE;IACrJ,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACxB,oBAAC,yBAAyB,IAAC,kBAAkB,EAAE,kBAAkB,GAAI,CAAC,CAAC;QACvE,0BAA0B;QAC1B,oBAAC,mBAAmB,IAAC,kBAAkB,EAAE,kBAAkB,GAAI,CAAC,CAAC;AACrE,CAAC;AALD,gEAKC;AAED,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;IACrC,OAAO,CAAC,KAAK,GAAG,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;AACrG,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/** @packageDocumentation\r\n * @module UiProvider\r\n */\r\n\r\nimport \"./DefaultDialogGridContainer.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { DialogRow } from \"@itwin/appui-abstract\";\r\nimport { useFrameworkVersion } from \"../hooks/useFrameworkVersion\";\r\nimport { ToolSettingsContentContext } from \"../widgets/ToolSettingsContent\";\r\nimport { ComponentGenerator } from \"./ComponentGenerator\";\r\n\r\nenum LayoutMode {\r\n Wide = 0,\r\n Narrow = 1,\r\n}\r\n\r\n/**\r\n * Component to provide grid of property editors\r\n * @public\r\n */\r\nexport function ToolSettingsGridContainer({ componentGenerator }: { componentGenerator: ComponentGenerator }) {\r\n const { availableContentWidth } = React.useContext(ToolSettingsContentContext);\r\n const version = useFrameworkVersion(); // eslint-disable-line deprecation/deprecation\r\n const layoutMode = toLayoutMode(availableContentWidth);\r\n const className = classnames(\r\n \"uifw-tool-settings-grid-container\",\r\n version === \"1\" && \"uifw-fill\",\r\n // istanbul ignore next\r\n LayoutMode.Narrow === layoutMode && \"uifw-default-narrow\",\r\n );\r\n return (\r\n <DialogGridContainer\r\n componentGenerator={componentGenerator}\r\n containerClassName={className}\r\n />\r\n );\r\n}\r\n\r\ninterface DialogGridContainerProps {\r\n componentGenerator: ComponentGenerator;\r\n containerClassName?: string;\r\n}\r\n\r\n/** @internal */\r\n// istanbul ignore next\r\nexport function DialogGridContainer({ componentGenerator, containerClassName }: DialogGridContainerProps) {\r\n const className = classnames(\r\n \"uifw-default-container\",\r\n containerClassName,\r\n );\r\n return (\r\n <div className=\"uifw-default-resizer-parent\">\r\n <div className={className}>\r\n {componentGenerator.uiDataProvider.rows.map((row: DialogRow, index: number) => componentGenerator.getRow(row, index))}\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n/** DefaultDialogGridContainer populates a React node with the items specified by the UiLayoutDataProvider\r\n * @public\r\n */\r\nexport function DefaultDialogGridContainer({ componentGenerator, isToolSettings }: { componentGenerator: ComponentGenerator, isToolSettings?: boolean }) {\r\n return (!!isToolSettings ?\r\n <ToolSettingsGridContainer componentGenerator={componentGenerator} /> :\r\n /* istanbul ignore next */\r\n <DialogGridContainer componentGenerator={componentGenerator} />);\r\n}\r\n\r\nconst toLayoutMode = (width: number) => {\r\n return (width < 250 && width > 0) ? /* istanbul ignore next */ LayoutMode.Narrow : LayoutMode.Wide;\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"}
@@ -54,6 +54,8 @@ class AppUiSettings {
54
54
  await this.animateToolSettings.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
55
55
  if (args.eventIds.has("configurableui:set-use-tool-as-tool-settings-label"))
56
56
  await this.useToolAsToolSettingsLabel.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
57
+ if (args.eventIds.has("configurableui:set-toolbar-opacity"))
58
+ await this.toolbarOpacity.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
57
59
  };
58
60
  this._settings = [];
59
61
  this.colorTheme = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "ColorTheme", UiFramework_1.UiFramework.getColorTheme, this.setColorTheme, defaults.colorTheme);
@@ -64,7 +66,8 @@ class AppUiSettings {
64
66
  this._settings.push(this.showWidgetIcon);
65
67
  this.autoCollapseUnpinnedPanels = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "AutoCollapseUnpinnedPanels", () => UiFramework_1.UiFramework.autoCollapseUnpinnedPanels, (value) => UiFramework_1.UiFramework.setAutoCollapseUnpinnedPanels(value), defaults.autoCollapseUnpinnedPanels);
66
68
  this._settings.push(this.autoCollapseUnpinnedPanels);
67
- this.frameworkVersion = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "FrameworkVersion", () => UiFramework_1.UiFramework.uiVersion, (value) => UiFramework_1.UiFramework.setUiVersion(value), defaults.frameworkVersion);
69
+ this.frameworkVersion = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "FrameworkVersion", // eslint-disable-line deprecation/deprecation
70
+ () => UiFramework_1.UiFramework.uiVersion, (value) => UiFramework_1.UiFramework.setUiVersion(value), defaults.frameworkVersion); // eslint-disable-line deprecation/deprecation
68
71
  this._settings.push(this.frameworkVersion);
69
72
  this.widgetOpacity = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "WidgetOpacity", () => UiFramework_1.UiFramework.getWidgetOpacity(), (value) => UiFramework_1.UiFramework.setWidgetOpacity(value), defaults.widgetOpacity);
70
73
  this._settings.push(this.widgetOpacity);
@@ -72,6 +75,8 @@ class AppUiSettings {
72
75
  this._settings.push(this.animateToolSettings);
73
76
  this.useToolAsToolSettingsLabel = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "UseToolAsToolSettingsLabel", () => UiFramework_1.UiFramework.useToolAsToolSettingsLabel, (value) => UiFramework_1.UiFramework.setUseToolAsToolSettingsLabel(value), defaults.useToolAsToolSettingsLabel);
74
77
  this._settings.push(this.useToolAsToolSettingsLabel);
78
+ this.toolbarOpacity = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "ToolOpacity", () => UiFramework_1.UiFramework.getToolbarOpacity(), (value) => UiFramework_1.UiFramework.setToolbarOpacity(value), defaults.toolbarOpacity);
79
+ this._settings.push(this.toolbarOpacity);
75
80
  SyncUiEventDispatcher_1.SyncUiEventDispatcher.onSyncUiEvent.addListener(this.handleSyncUiEvent);
76
81
  }
77
82
  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;\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>;\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\",\r\n () => UiFramework.uiVersion,\r\n (value: FrameworkVersionId) => UiFramework.setUiVersion(value), defaults.frameworkVersion);\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":"UiShowHideManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/utils/UiShowHideManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UiShowHideManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/utils/UiShowHideManager.ts"],"names":[],"mappings":"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"}
@@ -177,6 +177,14 @@ class UiShowHideManager {
177
177
  /** @internal */
178
178
  static terminate() {
179
179
  UiShowHideManager.cancelTimer();
180
+ // Ensure that next use will have default values for tests.
181
+ UiShowHideManager._isUiVisible = true;
182
+ UiShowHideManager._autoHideUi = true;
183
+ UiShowHideManager._showHidePanels = false;
184
+ UiShowHideManager._showHideFooter = false;
185
+ UiShowHideManager._inactivityTime = exports.INACTIVITY_TIME_DEFAULT;
186
+ UiShowHideManager._useProximityOpacity = false;
187
+ UiShowHideManager._snapWidgetOpacity = false;
180
188
  }
181
189
  }
182
190
  exports.UiShowHideManager = UiShowHideManager;
@@ -1 +1 @@
1
- {"version":3,"file":"UiShowHideManager.js","sourceRoot":"","sources":["../../../../src/appui-react/utils/UiShowHideManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utilities\r\n */\r\n\r\nimport { UiStateStorage, UiStateStorageStatus } from \"@itwin/core-react\";\r\nimport { SyncUiEventDispatcher, SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\n\r\n/** Class that maintain UiShowHide user settings between sessions\r\n * @internal\r\n */\r\nexport class UiShowHideSettingsProvider implements UserSettingsProvider {\r\n private static _settingsNamespace = \"AppUiSettings\";\r\n private static _autoHideUiKey = \"AutoHideUi\";\r\n private static _useProximityOpacityKey = \"UseProximityOpacity\";\r\n private static _snapWidgetOpacityKey = \"SnapWidgetOpacity\";\r\n public readonly providerId = \"UiShowHideSettingsProvider\";\r\n\r\n public static initialize() {\r\n UiFramework.registerUserSettingsProvider(new UiShowHideSettingsProvider());\r\n }\r\n\r\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\r\n let result = await storage.getSetting(UiShowHideSettingsProvider._settingsNamespace, UiShowHideSettingsProvider._autoHideUiKey);\r\n if (result.status === UiStateStorageStatus.Success)\r\n UiShowHideManager.setAutoHideUi(result.setting);\r\n\r\n result = await storage.getSetting(UiShowHideSettingsProvider._settingsNamespace, UiShowHideSettingsProvider._useProximityOpacityKey);\r\n if (result.status === UiStateStorageStatus.Success)\r\n UiShowHideManager.setUseProximityOpacity(result.setting);\r\n\r\n result = await storage.getSetting(UiShowHideSettingsProvider._settingsNamespace, UiShowHideSettingsProvider._snapWidgetOpacityKey);\r\n if (result.status === UiStateStorageStatus.Success)\r\n UiShowHideManager.setSnapWidgetOpacity(result.setting);\r\n }\r\n\r\n public static async storeAutoHideUi(v: boolean, storage?: UiStateStorage) {\r\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._autoHideUiKey, v);\r\n }\r\n\r\n public static async storeUseProximityOpacity(v: boolean, storage?: UiStateStorage) {\r\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._useProximityOpacityKey, v);\r\n }\r\n\r\n public static async storeSnapWidgetOpacity(v: boolean, storage?: UiStateStorage) {\r\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._snapWidgetOpacityKey, v);\r\n }\r\n}\r\n\r\n/** The default inactivity time.\r\n * @internal\r\n */\r\nexport const INACTIVITY_TIME_DEFAULT = 3500; /** Wait 3.5 seconds */\r\n\r\n/** Maintains Ui Show/Hide state. The `Ui` includes widgets, panels and the status bar.\r\n * @public\r\n */\r\nexport class UiShowHideManager {\r\n private static _isUiVisible: boolean = true;\r\n private static _autoHideUi: boolean = true;\r\n private static _showHidePanels: boolean = false;\r\n private static _showHideFooter: boolean = false;\r\n private static _inactivityTime: number = INACTIVITY_TIME_DEFAULT;\r\n private static _timeout: NodeJS.Timeout;\r\n private static _useProximityOpacity: boolean = false;\r\n private static _snapWidgetOpacity: boolean = false;\r\n\r\n /** Determines if the Ui is visible */\r\n public static get isUiVisible() {\r\n return UiShowHideManager._isUiVisible;\r\n }\r\n public static set isUiVisible(visible: boolean) {\r\n UiShowHideManager._isUiVisible = visible;\r\n }\r\n\r\n /** @internal */\r\n public static setAutoHideUi(value: boolean) {\r\n UiShowHideManager._autoHideUi = value;\r\n }\r\n\r\n /** @internal */\r\n public static setUseProximityOpacity(value: boolean) {\r\n UiShowHideManager._useProximityOpacity = value;\r\n }\r\n\r\n /** @internal */\r\n public static setSnapWidgetOpacity(value: boolean) {\r\n UiShowHideManager._snapWidgetOpacity = value;\r\n }\r\n\r\n /** Determines whether the `auto-hide Ui` feature is on. Defaults to false.\r\n * When true, the Ui automatically hides after a few seconds of inactivity.\r\n */\r\n public static get autoHideUi(): boolean {\r\n return UiShowHideManager._autoHideUi;\r\n }\r\n\r\n public static set autoHideUi(autoHide: boolean) {\r\n void UiShowHideSettingsProvider.storeAutoHideUi(autoHide);\r\n UiShowHideManager._autoHideUi = autoHide;\r\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(SyncUiEventId.ShowHideManagerSettingChange);\r\n }\r\n /** Determines whether the widget panels are shown and hidden. Defaults to false. */\r\n public static get showHidePanels(): boolean {\r\n return UiShowHideManager._showHidePanels;\r\n }\r\n public static set showHidePanels(showHide: boolean) {\r\n UiShowHideManager._showHidePanels = showHide;\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Determines whether the status bar is shown and hidden. Defaults to false. */\r\n public static get showHideFooter(): boolean {\r\n return UiShowHideManager._showHideFooter;\r\n }\r\n public static set showHideFooter(showHide: boolean) {\r\n UiShowHideManager._showHideFooter = showHide;\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Determines the amount of inactivity time before the Ui is hidden. Defaults to 3.5 seconds. */\r\n public static get inactivityTime(): number {\r\n return UiShowHideManager._inactivityTime;\r\n }\r\n public static set inactivityTime(time: number) {\r\n UiShowHideManager._inactivityTime = time;\r\n }\r\n\r\n /** Determines whether the proximity of the mouse should alter the opacity of a toolbar. Defaults to true. */\r\n public static get useProximityOpacity(): boolean {\r\n return UiShowHideManager._useProximityOpacity;\r\n }\r\n public static set useProximityOpacity(value: boolean) {\r\n UiShowHideManager._useProximityOpacity = value;\r\n void UiShowHideSettingsProvider.storeUseProximityOpacity(value);\r\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(SyncUiEventId.ShowHideManagerSettingChange);\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Determines whether the opacity of a toolbar should snap. Defaults to false. */\r\n public static get snapWidgetOpacity(): boolean {\r\n return UiShowHideManager._snapWidgetOpacity;\r\n }\r\n public static set snapWidgetOpacity(value: boolean) {\r\n UiShowHideManager._snapWidgetOpacity = value;\r\n void UiShowHideSettingsProvider.storeSnapWidgetOpacity(value);\r\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(SyncUiEventId.ShowHideManagerSettingChange);\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Handler for when a Frontstage is ready */\r\n public static handleFrontstageReady() {\r\n // istanbul ignore next\r\n if (!UiShowHideManager._autoHideUi)\r\n return;\r\n\r\n UiShowHideManager.showUiAndResetTimer();\r\n }\r\n\r\n /** Handler for when the mouse moves over the content area */\r\n public static handleContentMouseMove(_event?: React.MouseEvent<HTMLElement, MouseEvent>) {\r\n if (!UiShowHideManager._autoHideUi)\r\n return;\r\n\r\n UiShowHideManager.showUiAndResetTimer();\r\n }\r\n\r\n /** Handler for when the mouse enters a widget */\r\n public static handleWidgetMouseEnter(_event?: React.MouseEvent<HTMLElement, MouseEvent>) {\r\n if (!UiShowHideManager._autoHideUi)\r\n return;\r\n\r\n UiShowHideManager.showUiAndCancelTimer();\r\n }\r\n\r\n /** Shows the Ui and resets the inactivity timer */\r\n public static showUiAndResetTimer() {\r\n setTimeout(() => {\r\n UiShowHideManager.showUi();\r\n UiShowHideManager.resetTimer();\r\n });\r\n }\r\n\r\n /** Shows the Ui and cancels the inactivity timer */\r\n public static showUiAndCancelTimer() {\r\n setTimeout(() => {\r\n UiShowHideManager.showUi();\r\n UiShowHideManager.cancelTimer();\r\n });\r\n }\r\n\r\n private static cancelTimer() {\r\n clearTimeout(UiShowHideManager._timeout);\r\n }\r\n\r\n private static resetTimer() {\r\n UiShowHideManager.cancelTimer();\r\n UiShowHideManager._timeout = setTimeout(UiShowHideManager.hideUi, UiShowHideManager._inactivityTime);\r\n }\r\n\r\n private static showUi() {\r\n UiFramework.setIsUiVisible(true);\r\n }\r\n\r\n private static hideUi() {\r\n UiFramework.setIsUiVisible(false);\r\n }\r\n\r\n /** @internal */\r\n public static terminate() {\r\n UiShowHideManager.cancelTimer();\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"UiShowHideManager.js","sourceRoot":"","sources":["../../../../src/appui-react/utils/UiShowHideManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utilities\r\n */\r\n\r\nimport { UiStateStorage, UiStateStorageStatus } from \"@itwin/core-react\";\r\nimport { SyncUiEventDispatcher, SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\n\r\n/** Class that maintain UiShowHide user settings between sessions\r\n * @internal\r\n */\r\nexport class UiShowHideSettingsProvider implements UserSettingsProvider {\r\n private static _settingsNamespace = \"AppUiSettings\";\r\n private static _autoHideUiKey = \"AutoHideUi\";\r\n private static _useProximityOpacityKey = \"UseProximityOpacity\";\r\n private static _snapWidgetOpacityKey = \"SnapWidgetOpacity\";\r\n public readonly providerId = \"UiShowHideSettingsProvider\";\r\n\r\n public static initialize() {\r\n UiFramework.registerUserSettingsProvider(new UiShowHideSettingsProvider());\r\n }\r\n\r\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\r\n let result = await storage.getSetting(UiShowHideSettingsProvider._settingsNamespace, UiShowHideSettingsProvider._autoHideUiKey);\r\n if (result.status === UiStateStorageStatus.Success)\r\n UiShowHideManager.setAutoHideUi(result.setting);\r\n\r\n result = await storage.getSetting(UiShowHideSettingsProvider._settingsNamespace, UiShowHideSettingsProvider._useProximityOpacityKey);\r\n if (result.status === UiStateStorageStatus.Success)\r\n UiShowHideManager.setUseProximityOpacity(result.setting);\r\n\r\n result = await storage.getSetting(UiShowHideSettingsProvider._settingsNamespace, UiShowHideSettingsProvider._snapWidgetOpacityKey);\r\n if (result.status === UiStateStorageStatus.Success)\r\n UiShowHideManager.setSnapWidgetOpacity(result.setting);\r\n }\r\n\r\n public static async storeAutoHideUi(v: boolean, storage?: UiStateStorage) {\r\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._autoHideUiKey, v);\r\n }\r\n\r\n public static async storeUseProximityOpacity(v: boolean, storage?: UiStateStorage) {\r\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._useProximityOpacityKey, v);\r\n }\r\n\r\n public static async storeSnapWidgetOpacity(v: boolean, storage?: UiStateStorage) {\r\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._snapWidgetOpacityKey, v);\r\n }\r\n}\r\n\r\n/** The default inactivity time.\r\n * @internal\r\n */\r\nexport const INACTIVITY_TIME_DEFAULT = 3500; /** Wait 3.5 seconds */\r\n\r\n/** Maintains Ui Show/Hide state. The `Ui` includes widgets, panels and the status bar.\r\n * @public\r\n */\r\nexport class UiShowHideManager {\r\n private static _isUiVisible: boolean = true;\r\n private static _autoHideUi: boolean = true;\r\n private static _showHidePanels: boolean = false;\r\n private static _showHideFooter: boolean = false;\r\n private static _inactivityTime: number = INACTIVITY_TIME_DEFAULT;\r\n private static _timeout: NodeJS.Timeout;\r\n private static _useProximityOpacity: boolean = false;\r\n private static _snapWidgetOpacity: boolean = false;\r\n\r\n /** Determines if the Ui is visible */\r\n public static get isUiVisible() {\r\n return UiShowHideManager._isUiVisible;\r\n }\r\n public static set isUiVisible(visible: boolean) {\r\n UiShowHideManager._isUiVisible = visible;\r\n }\r\n\r\n /** @internal */\r\n public static setAutoHideUi(value: boolean) {\r\n UiShowHideManager._autoHideUi = value;\r\n }\r\n\r\n /** @internal */\r\n public static setUseProximityOpacity(value: boolean) {\r\n UiShowHideManager._useProximityOpacity = value;\r\n }\r\n\r\n /** @internal */\r\n public static setSnapWidgetOpacity(value: boolean) {\r\n UiShowHideManager._snapWidgetOpacity = value;\r\n }\r\n\r\n /** Determines whether the `auto-hide Ui` feature is on. Defaults to false.\r\n * When true, the Ui automatically hides after a few seconds of inactivity.\r\n */\r\n public static get autoHideUi(): boolean {\r\n return UiShowHideManager._autoHideUi;\r\n }\r\n\r\n public static set autoHideUi(autoHide: boolean) {\r\n void UiShowHideSettingsProvider.storeAutoHideUi(autoHide);\r\n UiShowHideManager._autoHideUi = autoHide;\r\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(SyncUiEventId.ShowHideManagerSettingChange);\r\n }\r\n /** Determines whether the widget panels are shown and hidden. Defaults to false. */\r\n public static get showHidePanels(): boolean {\r\n return UiShowHideManager._showHidePanels;\r\n }\r\n public static set showHidePanels(showHide: boolean) {\r\n UiShowHideManager._showHidePanels = showHide;\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Determines whether the status bar is shown and hidden. Defaults to false. */\r\n public static get showHideFooter(): boolean {\r\n return UiShowHideManager._showHideFooter;\r\n }\r\n public static set showHideFooter(showHide: boolean) {\r\n UiShowHideManager._showHideFooter = showHide;\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Determines the amount of inactivity time before the Ui is hidden. Defaults to 3.5 seconds. */\r\n public static get inactivityTime(): number {\r\n return UiShowHideManager._inactivityTime;\r\n }\r\n public static set inactivityTime(time: number) {\r\n UiShowHideManager._inactivityTime = time;\r\n }\r\n\r\n /** Determines whether the proximity of the mouse should alter the opacity of a toolbar. Defaults to true. */\r\n public static get useProximityOpacity(): boolean {\r\n return UiShowHideManager._useProximityOpacity;\r\n }\r\n public static set useProximityOpacity(value: boolean) {\r\n UiShowHideManager._useProximityOpacity = value;\r\n void UiShowHideSettingsProvider.storeUseProximityOpacity(value);\r\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(SyncUiEventId.ShowHideManagerSettingChange);\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Determines whether the opacity of a toolbar should snap. Defaults to false. */\r\n public static get snapWidgetOpacity(): boolean {\r\n return UiShowHideManager._snapWidgetOpacity;\r\n }\r\n public static set snapWidgetOpacity(value: boolean) {\r\n UiShowHideManager._snapWidgetOpacity = value;\r\n void UiShowHideSettingsProvider.storeSnapWidgetOpacity(value);\r\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(SyncUiEventId.ShowHideManagerSettingChange);\r\n UiFramework.onUiVisibilityChanged.emit({ visible: UiFramework.getIsUiVisible() });\r\n }\r\n\r\n /** Handler for when a Frontstage is ready */\r\n public static handleFrontstageReady() {\r\n // istanbul ignore next\r\n if (!UiShowHideManager._autoHideUi)\r\n return;\r\n\r\n UiShowHideManager.showUiAndResetTimer();\r\n }\r\n\r\n /** Handler for when the mouse moves over the content area */\r\n public static handleContentMouseMove(_event?: React.MouseEvent<HTMLElement, MouseEvent>) {\r\n if (!UiShowHideManager._autoHideUi)\r\n return;\r\n\r\n UiShowHideManager.showUiAndResetTimer();\r\n }\r\n\r\n /** Handler for when the mouse enters a widget */\r\n public static handleWidgetMouseEnter(_event?: React.MouseEvent<HTMLElement, MouseEvent>) {\r\n if (!UiShowHideManager._autoHideUi)\r\n return;\r\n\r\n UiShowHideManager.showUiAndCancelTimer();\r\n }\r\n\r\n /** Shows the Ui and resets the inactivity timer */\r\n public static showUiAndResetTimer() {\r\n setTimeout(() => {\r\n UiShowHideManager.showUi();\r\n UiShowHideManager.resetTimer();\r\n });\r\n }\r\n\r\n /** Shows the Ui and cancels the inactivity timer */\r\n public static showUiAndCancelTimer() {\r\n setTimeout(() => {\r\n UiShowHideManager.showUi();\r\n UiShowHideManager.cancelTimer();\r\n });\r\n }\r\n\r\n private static cancelTimer() {\r\n clearTimeout(UiShowHideManager._timeout);\r\n }\r\n\r\n private static resetTimer() {\r\n UiShowHideManager.cancelTimer();\r\n UiShowHideManager._timeout = setTimeout(UiShowHideManager.hideUi, UiShowHideManager._inactivityTime);\r\n }\r\n\r\n private static showUi() {\r\n UiFramework.setIsUiVisible(true);\r\n }\r\n\r\n private static hideUi() {\r\n UiFramework.setIsUiVisible(false);\r\n }\r\n\r\n /** @internal */\r\n public static terminate() {\r\n UiShowHideManager.cancelTimer();\r\n // Ensure that next use will have default values for tests.\r\n UiShowHideManager._isUiVisible = true;\r\n UiShowHideManager._autoHideUi = true;\r\n UiShowHideManager._showHidePanels = false;\r\n UiShowHideManager._showHideFooter = false;\r\n UiShowHideManager._inactivityTime = INACTIVITY_TIME_DEFAULT;\r\n UiShowHideManager._useProximityOpacity = false;\r\n UiShowHideManager._snapWidgetOpacity = false;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.tsx"],"names":[],"mappings":"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"}
@@ -243,6 +243,7 @@ function addWidgets(state, widgets, side, widgetId) {
243
243
  canPopout: widget.canPopout,
244
244
  isFloatingStateWindowResizable: widget.isFloatingStateWindowResizable,
245
245
  hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,
246
+ allowedPanelTargets: widget.allowedPanelTargets,
246
247
  });
247
248
  tabs.push(widget.id);
248
249
  }
@@ -282,6 +283,7 @@ function appendWidgets(state, widgetDefs, side, preferredWidgetIndex) {
282
283
  userSized,
283
284
  isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
284
285
  hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
286
+ allowedPanelTargets: widgetDef.allowedPanelTargets,
285
287
  });
286
288
  if (widgetDef.isFloatingStateSupported && widgetDef.defaultState === appui_abstract_1.WidgetState.Floating) {
287
289
  const floatingContainerId = (_a = widgetDef.floatingContainerId) !== null && _a !== void 0 ? _a : (0, appui_layout_react_1.getUniqueId)();
@@ -663,6 +665,7 @@ function restoreNineZoneState(frontstageDef, saved) {
663
665
  iconSpec: widgetDef.iconSpec,
664
666
  canPopout: widgetDef.canPopout,
665
667
  isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
668
+ allowedPanelTargets: widgetDef.allowedPanelTargets,
666
669
  };
667
670
  });
668
671
  }
@@ -731,9 +734,9 @@ function packNineZoneState(state) {
731
734
  return packed;
732
735
  }
733
736
  exports.packNineZoneState = packNineZoneState;
734
- // TODO: clean-up of saved widgets.
735
737
  // istanbul ignore next
736
- function packSavedWidgets(savedWidgets, frontstageDef) {
738
+ function packSavedWidgets(frontstageDef) {
739
+ let savedWidgets = [];
737
740
  for (const widgetDef of frontstageDef.widgetDefs) {
738
741
  const id = widgetDef.id;
739
742
  const initialWidget = {
@@ -749,17 +752,25 @@ function packSavedWidgets(savedWidgets, frontstageDef) {
749
752
  });
750
753
  if (widget === initialWidget)
751
754
  continue;
752
- savedWidgets = (0, immer_1.default)(savedWidgets, (draft) => {
753
- draft.push(widget);
754
- });
755
+ savedWidgets.push(widget);
756
+ }
757
+ // Add previously saved widgets.
758
+ const prevSavedWidgets = frontstageDef.savedWidgetDefs || [];
759
+ for (const prevWidget of prevSavedWidgets) {
760
+ if (savedWidgets.find((w) => w.id === prevWidget.id))
761
+ continue;
762
+ savedWidgets.push(prevWidget);
755
763
  }
764
+ // Limit number of saved widgets.
765
+ const maxWidgets = 100;
766
+ if (savedWidgets.length > maxWidgets)
767
+ savedWidgets = savedWidgets.slice(0, maxWidgets);
756
768
  return savedWidgets;
757
769
  }
758
770
  // istanbul ignore next
759
- function restoreSavedWidgets(savedWidgets, frontstage) {
760
- let i = savedWidgets.length;
761
- while (i--) {
762
- const savedWidget = savedWidgets[i];
771
+ function restoreSavedWidgets(frontstage) {
772
+ const savedWidgets = frontstage.savedWidgetDefs || [];
773
+ for (const savedWidget of savedWidgets) {
763
774
  const widgetId = savedWidget.id;
764
775
  const widgetDef = frontstage.findWidgetDef(widgetId);
765
776
  if (!widgetDef)
@@ -770,11 +781,7 @@ function restoreSavedWidgets(savedWidgets, frontstage) {
770
781
  if (savedWidget.popoutBounds) {
771
782
  widgetDef.popoutBounds = core_react_1.Rectangle.create(savedWidget.popoutBounds);
772
783
  }
773
- savedWidgets = (0, immer_1.default)(savedWidgets, (draft) => {
774
- draft.splice(i, 1);
775
- });
776
784
  }
777
- return savedWidgets;
778
785
  }
779
786
  /** @internal */
780
787
  function isPanelCollapsed(zoneStates, panelStates) {
@@ -990,12 +997,12 @@ function useSavedFrontstageState(frontstageDef) {
990
997
  const setting = settingResult.setting;
991
998
  if (setting.version >= version && setting.stateVersion >= stateVersion) {
992
999
  const restored = restoreNineZoneState(frontstageDef, setting.nineZone);
993
- const savedWidgets = restoreSavedWidgets(setting.widgets, frontstageDef);
1000
+ frontstageDef.savedWidgetDefs = setting.widgets;
1001
+ restoreSavedWidgets(frontstageDef);
994
1002
  let state = addMissingWidgets(frontstageDef, restored);
995
1003
  state = hideWidgets(state, frontstageDef);
996
1004
  state = processPopoutWidgets(state, frontstageDef);
997
1005
  frontstageDef.nineZoneState = state;
998
- frontstageDef.savedWidgetDefs = savedWidgets;
999
1006
  return;
1000
1007
  }
1001
1008
  }
@@ -1010,14 +1017,16 @@ function useSaveFrontstageSettings(frontstageDef) {
1010
1017
  const nineZone = useNineZoneState(frontstageDef);
1011
1018
  const uiSettingsStorage = (0, useUiStateStorage_1.useUiStateStorageHandler)();
1012
1019
  const saveSetting = React.useMemo(() => {
1013
- return debounce(async (frontstage, state, savedWidgets) => {
1020
+ return debounce(async (frontstage, state) => {
1014
1021
  const id = frontstage.id;
1022
+ const widgets = packSavedWidgets(frontstage);
1023
+ frontstage.savedWidgetDefs = widgets;
1015
1024
  const setting = {
1016
1025
  id,
1017
1026
  version: frontstage.version,
1018
1027
  stateVersion,
1019
1028
  nineZone: packNineZoneState(state),
1020
- widgets: packSavedWidgets(savedWidgets, frontstage),
1029
+ widgets,
1021
1030
  };
1022
1031
  await uiSettingsStorage.saveSetting(exports.FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id), setting);
1023
1032
  }, 1000);
@@ -1030,8 +1039,7 @@ function useSaveFrontstageSettings(frontstageDef) {
1030
1039
  React.useEffect(() => {
1031
1040
  if (!nineZone || nineZone.draggedTab)
1032
1041
  return;
1033
- const savedWidgets = frontstageDef.savedWidgetDefs || [];
1034
- saveSetting(frontstageDef, nineZone, savedWidgets);
1042
+ saveSetting(frontstageDef, nineZone);
1035
1043
  }, [frontstageDef, nineZone, saveSetting]);
1036
1044
  }
1037
1045
  exports.useSaveFrontstageSettings = useSaveFrontstageSettings;
@@ -1163,6 +1171,7 @@ function useItemsManager(frontstageDef) {
1163
1171
  const refreshNineZoneState = (def) => {
1164
1172
  // Fired for both registered/unregistered. Update definitions and remove/add missing widgets.
1165
1173
  def.updateWidgetDefs();
1174
+ restoreSavedWidgets(def);
1166
1175
  let state = def.nineZoneState;
1167
1176
  if (!state)
1168
1177
  return;