@itwin/appui-react 4.10.0-dev.1 → 4.10.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 (431) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +2 -2
  3. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  4. package/lib/cjs/appui-react/accudraw/Calculator.js +9 -9
  5. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  6. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  7. package/lib/cjs/appui-react/content/ContentGroup.js +2 -2
  8. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  9. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  10. package/lib/cjs/appui-react/content/IModelViewport.js +2 -2
  11. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  12. package/lib/cjs/appui-react/feedback/ValidationTextbox.js +2 -2
  13. package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
  14. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js +1 -1
  15. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  16. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  17. package/lib/cjs/appui-react/{layout/widget-panels/CenterContent.scss → layers.scss} +6 -2
  18. package/lib/cjs/appui-react/layout/StandardLayout.d.ts +24 -0
  19. package/lib/cjs/appui-react/layout/StandardLayout.d.ts.map +1 -0
  20. package/lib/cjs/appui-react/layout/StandardLayout.js +56 -0
  21. package/lib/cjs/appui-react/layout/StandardLayout.js.map +1 -0
  22. package/lib/cjs/appui-react/layout/StandardLayout.scss +94 -0
  23. package/lib/cjs/appui-react/layout/backstage/Backstage.js +1 -1
  24. package/lib/cjs/appui-react/layout/backstage/Backstage.js.map +1 -1
  25. package/lib/cjs/appui-react/layout/base/SafeAreaInsets.js +4 -4
  26. package/lib/cjs/appui-react/layout/base/SafeAreaInsets.js.map +1 -1
  27. package/lib/cjs/appui-react/layout/outline/PanelOutline.scss +1 -10
  28. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
  29. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js +1 -0
  30. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
  31. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.d.ts.map +1 -1
  32. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +5 -0
  33. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  34. package/lib/cjs/appui-react/layout/state/internal/ToolSettingsStateHelpers.d.ts.map +1 -1
  35. package/lib/cjs/appui-react/layout/state/internal/ToolSettingsStateHelpers.js +6 -0
  36. package/lib/cjs/appui-react/layout/state/internal/ToolSettingsStateHelpers.js.map +1 -1
  37. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.d.ts.map +1 -1
  38. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +2 -0
  39. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  40. package/lib/cjs/appui-react/layout/target/PanelTargets.scss +2 -0
  41. package/lib/cjs/appui-react/layout/tool-settings/Docked.d.ts +12 -6
  42. package/lib/cjs/appui-react/layout/tool-settings/Docked.d.ts.map +1 -1
  43. package/lib/cjs/appui-react/layout/tool-settings/Docked.js +52 -21
  44. package/lib/cjs/appui-react/layout/tool-settings/Docked.js.map +1 -1
  45. package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +15 -23
  46. package/lib/cjs/appui-react/layout/tool-settings/Handle.d.ts.map +1 -1
  47. package/lib/cjs/appui-react/layout/tool-settings/Handle.js +3 -1
  48. package/lib/cjs/appui-react/layout/tool-settings/Handle.js.map +1 -1
  49. package/lib/cjs/appui-react/layout/tool-settings/Handle.scss +6 -12
  50. package/lib/cjs/appui-react/layout/tool-settings/Overflow.d.ts.map +1 -1
  51. package/lib/cjs/appui-react/layout/tool-settings/Overflow.js +4 -5
  52. package/lib/cjs/appui-react/layout/tool-settings/Overflow.js.map +1 -1
  53. package/lib/cjs/appui-react/layout/tool-settings/Overflow.scss +0 -15
  54. package/lib/cjs/appui-react/layout/tool-settings/Setting.scss +1 -12
  55. package/lib/cjs/appui-react/layout/widget/Buttons.d.ts +4 -4
  56. package/lib/cjs/appui-react/layout/widget/Buttons.d.ts.map +1 -1
  57. package/lib/cjs/appui-react/layout/widget/Buttons.js +8 -31
  58. package/lib/cjs/appui-react/layout/widget/Buttons.js.map +1 -1
  59. package/lib/cjs/appui-react/layout/widget/ContentContainer.d.ts.map +1 -1
  60. package/lib/cjs/appui-react/layout/widget/ContentContainer.js +2 -0
  61. package/lib/cjs/appui-react/layout/widget/ContentContainer.js.map +1 -1
  62. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts +1 -1
  63. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  64. package/lib/cjs/appui-react/layout/widget/ContentManager.js +1 -1
  65. package/lib/cjs/appui-react/layout/widget/ContentManager.js.map +1 -1
  66. package/lib/cjs/appui-react/layout/widget/ContentRenderer.d.ts.map +1 -1
  67. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +6 -0
  68. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  69. package/lib/cjs/appui-react/layout/widget/Dock.d.ts +2 -0
  70. package/lib/cjs/appui-react/layout/widget/Dock.d.ts.map +1 -1
  71. package/lib/cjs/appui-react/layout/widget/Dock.js +10 -1
  72. package/lib/cjs/appui-react/layout/widget/Dock.js.map +1 -1
  73. package/lib/cjs/appui-react/layout/widget/FloatingWidget.d.ts.map +1 -1
  74. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +15 -17
  75. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  76. package/lib/cjs/appui-react/layout/widget/FloatingWidget.scss +92 -105
  77. package/lib/cjs/appui-react/layout/widget/PinToggle.d.ts +2 -0
  78. package/lib/cjs/appui-react/layout/widget/PinToggle.d.ts.map +1 -1
  79. package/lib/cjs/appui-react/layout/widget/PinToggle.js +10 -1
  80. package/lib/cjs/appui-react/layout/widget/PinToggle.js.map +1 -1
  81. package/lib/cjs/appui-react/layout/widget/SendBack.d.ts.map +1 -1
  82. package/lib/cjs/appui-react/layout/widget/SendBack.js +4 -5
  83. package/lib/cjs/appui-react/layout/widget/SendBack.js.map +1 -1
  84. package/lib/cjs/appui-react/layout/widget/Tab.d.ts.map +1 -1
  85. package/lib/cjs/appui-react/layout/widget/Tab.js +5 -10
  86. package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
  87. package/lib/cjs/appui-react/layout/widget/TabBar.d.ts.map +1 -1
  88. package/lib/cjs/appui-react/layout/widget/TabBar.js +4 -1
  89. package/lib/cjs/appui-react/layout/widget/TabBar.js.map +1 -1
  90. package/lib/cjs/appui-react/layout/widget/TabBar.scss +17 -19
  91. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.d.ts +8 -0
  92. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.d.ts.map +1 -0
  93. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.js +39 -0
  94. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.js.map +1 -0
  95. package/lib/cjs/appui-react/layout/widget-panels/Grip.d.ts +1 -1
  96. package/lib/cjs/appui-react/layout/widget-panels/Grip.d.ts.map +1 -1
  97. package/lib/cjs/appui-react/layout/widget-panels/Grip.js +4 -0
  98. package/lib/cjs/appui-react/layout/widget-panels/Grip.js.map +1 -1
  99. package/lib/cjs/appui-react/layout/widget-panels/Grip.scss +106 -104
  100. package/lib/cjs/appui-react/layout/widget-panels/Panel.d.ts +1 -1
  101. package/lib/cjs/appui-react/layout/widget-panels/Panel.d.ts.map +1 -1
  102. package/lib/cjs/appui-react/layout/widget-panels/Panel.js +10 -16
  103. package/lib/cjs/appui-react/layout/widget-panels/Panel.js.map +1 -1
  104. package/lib/cjs/appui-react/layout/widget-panels/Panel.scss +175 -243
  105. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.d.ts +1 -0
  106. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.d.ts.map +1 -1
  107. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +35 -31
  108. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  109. package/lib/{esm/appui-react/layout/widget-panels/Panels.scss → cjs/appui-react/layout/widget-panels/PanelSections.scss} +1 -11
  110. package/lib/cjs/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts +7 -0
  111. package/lib/cjs/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts.map +1 -0
  112. package/lib/cjs/appui-react/layout/widget-panels/{AppContent.js → usePanelsAutoCollapse.js} +3 -26
  113. package/lib/cjs/appui-react/layout/widget-panels/usePanelsAutoCollapse.js.map +1 -0
  114. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  115. package/lib/cjs/appui-react/messages/MessageManager.js +0 -1
  116. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  117. package/lib/cjs/appui-react/messages/getToastCategory.d.ts +1 -1
  118. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js +1 -1
  119. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  120. package/lib/cjs/appui-react/popup/CardPopup.js +1 -1
  121. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  122. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  123. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +6 -4
  124. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  125. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +1 -1
  126. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  127. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js +1 -1
  128. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  129. package/lib/cjs/appui-react/popup/ToolbarPopup.js +1 -1
  130. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  131. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +6 -1
  132. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  133. package/lib/cjs/appui-react/preview/PreviewFeatures.js +1 -0
  134. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
  135. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts +9 -0
  136. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts.map +1 -0
  137. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.js +51 -0
  138. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.js.map +1 -0
  139. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts +18 -0
  140. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts.map +1 -0
  141. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.js +27 -0
  142. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.js.map +1 -0
  143. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts +50 -0
  144. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts.map +1 -0
  145. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +115 -0
  146. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -0
  147. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.scss +36 -0
  148. package/lib/cjs/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.d.ts +4 -6
  149. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.d.ts.map +1 -0
  150. package/lib/cjs/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.js +17 -21
  151. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -0
  152. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts +19 -0
  153. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts.map +1 -0
  154. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js +30 -0
  155. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js.map +1 -0
  156. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.scss +49 -0
  157. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.d.ts +1 -1
  158. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.js +1 -1
  159. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.js.map +1 -1
  160. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.d.ts +3 -2
  161. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
  162. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +5 -5
  163. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  164. package/lib/cjs/appui-react/redux/SessionState.d.ts +2 -2
  165. package/lib/cjs/appui-react/redux/SessionState.d.ts.map +1 -1
  166. package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
  167. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -1
  168. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  169. package/lib/cjs/appui-react/statusbar/StatusBarItem.js.map +1 -1
  170. package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  171. package/lib/cjs/appui-react/statusfields/ActivityCenter.js +1 -0
  172. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  173. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.d.ts.map +1 -1
  174. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js +2 -1
  175. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  176. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  177. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js +3 -3
  178. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  179. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +0 -7
  180. package/lib/cjs/appui-react/utils/matchesWords.js +4 -4
  181. package/lib/cjs/appui-react/utils/matchesWords.js.map +1 -1
  182. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  183. package/lib/cjs/appui-react/widget-panels/Frontstage.js +13 -16
  184. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  185. package/lib/cjs/appui-react/widget-panels/Frontstage.scss +0 -23
  186. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +0 -6
  187. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +1 -1
  188. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  189. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  190. package/lib/cjs/appui-react.d.ts +1 -0
  191. package/lib/cjs/appui-react.d.ts.map +1 -1
  192. package/lib/cjs/appui-react.js +1 -0
  193. package/lib/cjs/appui-react.js.map +1 -1
  194. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +2 -2
  195. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  196. package/lib/esm/appui-react/accudraw/Calculator.js +9 -9
  197. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  198. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  199. package/lib/esm/appui-react/content/ContentGroup.js +2 -2
  200. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  201. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  202. package/lib/esm/appui-react/content/IModelViewport.js +2 -2
  203. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  204. package/lib/esm/appui-react/feedback/ValidationTextbox.js +2 -2
  205. package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
  206. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js +1 -1
  207. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  208. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  209. package/lib/esm/appui-react/{layout/widget-panels/CenterContent.scss → layers.scss} +6 -2
  210. package/lib/esm/appui-react/layout/StandardLayout.d.ts +24 -0
  211. package/lib/esm/appui-react/layout/StandardLayout.d.ts.map +1 -0
  212. package/lib/esm/appui-react/layout/StandardLayout.js +52 -0
  213. package/lib/esm/appui-react/layout/StandardLayout.js.map +1 -0
  214. package/lib/esm/appui-react/layout/StandardLayout.scss +94 -0
  215. package/lib/esm/appui-react/layout/backstage/Backstage.js +1 -1
  216. package/lib/esm/appui-react/layout/backstage/Backstage.js.map +1 -1
  217. package/lib/esm/appui-react/layout/base/SafeAreaInsets.js +4 -4
  218. package/lib/esm/appui-react/layout/base/SafeAreaInsets.js.map +1 -1
  219. package/lib/esm/appui-react/layout/outline/PanelOutline.scss +1 -10
  220. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
  221. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js +1 -0
  222. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
  223. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.d.ts.map +1 -1
  224. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +5 -0
  225. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  226. package/lib/esm/appui-react/layout/state/internal/ToolSettingsStateHelpers.d.ts.map +1 -1
  227. package/lib/esm/appui-react/layout/state/internal/ToolSettingsStateHelpers.js +6 -0
  228. package/lib/esm/appui-react/layout/state/internal/ToolSettingsStateHelpers.js.map +1 -1
  229. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.d.ts.map +1 -1
  230. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +2 -0
  231. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  232. package/lib/esm/appui-react/layout/target/PanelTargets.scss +2 -0
  233. package/lib/esm/appui-react/layout/tool-settings/Docked.d.ts +12 -6
  234. package/lib/esm/appui-react/layout/tool-settings/Docked.d.ts.map +1 -1
  235. package/lib/esm/appui-react/layout/tool-settings/Docked.js +53 -22
  236. package/lib/esm/appui-react/layout/tool-settings/Docked.js.map +1 -1
  237. package/lib/esm/appui-react/layout/tool-settings/Docked.scss +15 -23
  238. package/lib/esm/appui-react/layout/tool-settings/Handle.d.ts.map +1 -1
  239. package/lib/esm/appui-react/layout/tool-settings/Handle.js +3 -1
  240. package/lib/esm/appui-react/layout/tool-settings/Handle.js.map +1 -1
  241. package/lib/esm/appui-react/layout/tool-settings/Handle.scss +6 -12
  242. package/lib/esm/appui-react/layout/tool-settings/Overflow.d.ts.map +1 -1
  243. package/lib/esm/appui-react/layout/tool-settings/Overflow.js +4 -5
  244. package/lib/esm/appui-react/layout/tool-settings/Overflow.js.map +1 -1
  245. package/lib/esm/appui-react/layout/tool-settings/Overflow.scss +0 -15
  246. package/lib/esm/appui-react/layout/tool-settings/Setting.scss +1 -12
  247. package/lib/esm/appui-react/layout/widget/Buttons.d.ts +4 -4
  248. package/lib/esm/appui-react/layout/widget/Buttons.d.ts.map +1 -1
  249. package/lib/esm/appui-react/layout/widget/Buttons.js +8 -30
  250. package/lib/esm/appui-react/layout/widget/Buttons.js.map +1 -1
  251. package/lib/esm/appui-react/layout/widget/ContentContainer.d.ts.map +1 -1
  252. package/lib/esm/appui-react/layout/widget/ContentContainer.js +2 -0
  253. package/lib/esm/appui-react/layout/widget/ContentContainer.js.map +1 -1
  254. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts +1 -1
  255. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  256. package/lib/esm/appui-react/layout/widget/ContentManager.js +1 -1
  257. package/lib/esm/appui-react/layout/widget/ContentManager.js.map +1 -1
  258. package/lib/esm/appui-react/layout/widget/ContentRenderer.d.ts.map +1 -1
  259. package/lib/esm/appui-react/layout/widget/ContentRenderer.js +6 -0
  260. package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  261. package/lib/esm/appui-react/layout/widget/Dock.d.ts +2 -0
  262. package/lib/esm/appui-react/layout/widget/Dock.d.ts.map +1 -1
  263. package/lib/esm/appui-react/layout/widget/Dock.js +8 -0
  264. package/lib/esm/appui-react/layout/widget/Dock.js.map +1 -1
  265. package/lib/esm/appui-react/layout/widget/FloatingWidget.d.ts.map +1 -1
  266. package/lib/esm/appui-react/layout/widget/FloatingWidget.js +15 -17
  267. package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  268. package/lib/esm/appui-react/layout/widget/FloatingWidget.scss +92 -105
  269. package/lib/esm/appui-react/layout/widget/PinToggle.d.ts +2 -0
  270. package/lib/esm/appui-react/layout/widget/PinToggle.d.ts.map +1 -1
  271. package/lib/esm/appui-react/layout/widget/PinToggle.js +8 -0
  272. package/lib/esm/appui-react/layout/widget/PinToggle.js.map +1 -1
  273. package/lib/esm/appui-react/layout/widget/SendBack.d.ts.map +1 -1
  274. package/lib/esm/appui-react/layout/widget/SendBack.js +4 -5
  275. package/lib/esm/appui-react/layout/widget/SendBack.js.map +1 -1
  276. package/lib/esm/appui-react/layout/widget/Tab.d.ts.map +1 -1
  277. package/lib/esm/appui-react/layout/widget/Tab.js +5 -10
  278. package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
  279. package/lib/esm/appui-react/layout/widget/TabBar.d.ts.map +1 -1
  280. package/lib/esm/appui-react/layout/widget/TabBar.js +4 -1
  281. package/lib/esm/appui-react/layout/widget/TabBar.js.map +1 -1
  282. package/lib/esm/appui-react/layout/widget/TabBar.scss +17 -19
  283. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.d.ts +8 -0
  284. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.d.ts.map +1 -0
  285. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.js +34 -0
  286. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.js.map +1 -0
  287. package/lib/esm/appui-react/layout/widget-panels/Grip.d.ts +1 -1
  288. package/lib/esm/appui-react/layout/widget-panels/Grip.d.ts.map +1 -1
  289. package/lib/esm/appui-react/layout/widget-panels/Grip.js +4 -0
  290. package/lib/esm/appui-react/layout/widget-panels/Grip.js.map +1 -1
  291. package/lib/esm/appui-react/layout/widget-panels/Grip.scss +106 -104
  292. package/lib/esm/appui-react/layout/widget-panels/Panel.d.ts +1 -1
  293. package/lib/esm/appui-react/layout/widget-panels/Panel.d.ts.map +1 -1
  294. package/lib/esm/appui-react/layout/widget-panels/Panel.js +10 -16
  295. package/lib/esm/appui-react/layout/widget-panels/Panel.js.map +1 -1
  296. package/lib/esm/appui-react/layout/widget-panels/Panel.scss +175 -243
  297. package/lib/esm/appui-react/layout/widget-panels/PanelSections.d.ts +1 -0
  298. package/lib/esm/appui-react/layout/widget-panels/PanelSections.d.ts.map +1 -1
  299. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +34 -30
  300. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  301. package/lib/{cjs/appui-react/layout/widget-panels/Panels.scss → esm/appui-react/layout/widget-panels/PanelSections.scss} +1 -11
  302. package/lib/esm/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts +7 -0
  303. package/lib/esm/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts.map +1 -0
  304. package/lib/esm/appui-react/layout/widget-panels/{AppContent.js → usePanelsAutoCollapse.js} +3 -25
  305. package/lib/esm/appui-react/layout/widget-panels/usePanelsAutoCollapse.js.map +1 -0
  306. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  307. package/lib/esm/appui-react/messages/MessageManager.js +0 -1
  308. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  309. package/lib/esm/appui-react/messages/getToastCategory.d.ts +1 -1
  310. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js +1 -1
  311. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  312. package/lib/esm/appui-react/popup/CardPopup.js +1 -1
  313. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  314. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  315. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +6 -4
  316. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  317. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +1 -1
  318. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  319. package/lib/esm/appui-react/popup/ToolSettingsPopup.js +1 -1
  320. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  321. package/lib/esm/appui-react/popup/ToolbarPopup.js +1 -1
  322. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  323. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +6 -1
  324. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  325. package/lib/esm/appui-react/preview/PreviewFeatures.js +1 -0
  326. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
  327. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts +9 -0
  328. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts.map +1 -0
  329. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.js +46 -0
  330. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.js.map +1 -0
  331. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts +18 -0
  332. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts.map +1 -0
  333. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.js +23 -0
  334. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.js.map +1 -0
  335. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts +50 -0
  336. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts.map +1 -0
  337. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +106 -0
  338. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -0
  339. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.scss +36 -0
  340. package/lib/esm/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.d.ts +4 -6
  341. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.d.ts.map +1 -0
  342. package/lib/esm/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.js +15 -18
  343. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -0
  344. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts +19 -0
  345. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts.map +1 -0
  346. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js +26 -0
  347. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js.map +1 -0
  348. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.scss +49 -0
  349. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.d.ts +1 -1
  350. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.js +1 -1
  351. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.js.map +1 -1
  352. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.d.ts +3 -2
  353. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
  354. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +5 -5
  355. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  356. package/lib/esm/appui-react/redux/SessionState.d.ts +2 -2
  357. package/lib/esm/appui-react/redux/SessionState.d.ts.map +1 -1
  358. package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
  359. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -1
  360. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  361. package/lib/esm/appui-react/statusbar/StatusBarItem.js.map +1 -1
  362. package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  363. package/lib/esm/appui-react/statusfields/ActivityCenter.js +1 -0
  364. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  365. package/lib/esm/appui-react/tools/FrameworkToolAdmin.d.ts.map +1 -1
  366. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js +2 -1
  367. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  368. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  369. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js +3 -3
  370. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  371. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +0 -7
  372. package/lib/esm/appui-react/utils/matchesWords.js +4 -4
  373. package/lib/esm/appui-react/utils/matchesWords.js.map +1 -1
  374. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  375. package/lib/esm/appui-react/widget-panels/Frontstage.js +15 -18
  376. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  377. package/lib/esm/appui-react/widget-panels/Frontstage.scss +0 -23
  378. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +0 -6
  379. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +1 -1
  380. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  381. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  382. package/lib/esm/appui-react.d.ts +1 -0
  383. package/lib/esm/appui-react.d.ts.map +1 -1
  384. package/lib/esm/appui-react.js +1 -0
  385. package/lib/esm/appui-react.js.map +1 -1
  386. package/lib/public/locales/en/UiFramework.json +1 -1
  387. package/package.json +19 -19
  388. package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.d.ts.map +0 -1
  389. package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +0 -1
  390. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.d.ts +0 -30
  391. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.d.ts.map +0 -1
  392. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.js +0 -65
  393. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.js.map +0 -1
  394. package/lib/cjs/appui-react/layout/widget-panels/AppContent.d.ts +0 -11
  395. package/lib/cjs/appui-react/layout/widget-panels/AppContent.d.ts.map +0 -1
  396. package/lib/cjs/appui-react/layout/widget-panels/AppContent.js.map +0 -1
  397. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.d.ts +0 -10
  398. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.d.ts.map +0 -1
  399. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.js +0 -23
  400. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.js.map +0 -1
  401. package/lib/cjs/appui-react/layout/widget-panels/Content.d.ts +0 -21
  402. package/lib/cjs/appui-react/layout/widget-panels/Content.d.ts.map +0 -1
  403. package/lib/cjs/appui-react/layout/widget-panels/Content.js +0 -21
  404. package/lib/cjs/appui-react/layout/widget-panels/Content.js.map +0 -1
  405. package/lib/cjs/appui-react/layout/widget-panels/Content.scss +0 -37
  406. package/lib/cjs/appui-react/layout/widget-panels/Panels.d.ts +0 -24
  407. package/lib/cjs/appui-react/layout/widget-panels/Panels.d.ts.map +0 -1
  408. package/lib/cjs/appui-react/layout/widget-panels/Panels.js +0 -48
  409. package/lib/cjs/appui-react/layout/widget-panels/Panels.js.map +0 -1
  410. package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.d.ts.map +0 -1
  411. package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +0 -1
  412. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.d.ts +0 -30
  413. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.d.ts.map +0 -1
  414. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.js +0 -58
  415. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.js.map +0 -1
  416. package/lib/esm/appui-react/layout/widget-panels/AppContent.d.ts +0 -11
  417. package/lib/esm/appui-react/layout/widget-panels/AppContent.d.ts.map +0 -1
  418. package/lib/esm/appui-react/layout/widget-panels/AppContent.js.map +0 -1
  419. package/lib/esm/appui-react/layout/widget-panels/CenterContent.d.ts +0 -10
  420. package/lib/esm/appui-react/layout/widget-panels/CenterContent.d.ts.map +0 -1
  421. package/lib/esm/appui-react/layout/widget-panels/CenterContent.js +0 -19
  422. package/lib/esm/appui-react/layout/widget-panels/CenterContent.js.map +0 -1
  423. package/lib/esm/appui-react/layout/widget-panels/Content.d.ts +0 -21
  424. package/lib/esm/appui-react/layout/widget-panels/Content.d.ts.map +0 -1
  425. package/lib/esm/appui-react/layout/widget-panels/Content.js +0 -18
  426. package/lib/esm/appui-react/layout/widget-panels/Content.js.map +0 -1
  427. package/lib/esm/appui-react/layout/widget-panels/Content.scss +0 -37
  428. package/lib/esm/appui-react/layout/widget-panels/Panels.d.ts +0 -24
  429. package/lib/esm/appui-react/layout/widget-panels/Panels.d.ts.map +0 -1
  430. package/lib/esm/appui-react/layout/widget-panels/Panels.js +0 -44
  431. package/lib/esm/appui-react/layout/widget-panels/Panels.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationTextbox.js","sourceRoot":"","sources":["../../../../src/appui-react/feedback/ValidationTextbox.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport \"./ValidationTextbox.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { MessageManager } from \"../messages/MessageManager\";\nimport { Input } from \"@itwin/itwinui-react\";\n\n/** Enum for Input Status used in [[ValidationTextbox]]\n * @alpha\n */\nexport enum InputStatus {\n Valid = 0,\n Invalid = 1,\n}\n\n/** Property interface for ValidationTextbox\n * @alpha\n */\ninterface ValidationTextboxProps extends CommonProps {\n /** value to set ValidationTextbox to initially */\n initialValue?: string;\n /** placeholder value to show in gray before anything is entered in */\n placeholder?: string;\n /** triggered when the content of ValidationTextbox is changed. Return true if valid */\n onValueChanged?: (value: string) => InputStatus;\n /** listens for <Enter> key presses */\n onEnterPressed?: () => void;\n /** listens for <Esc> key presses */\n onEscPressed?: () => void;\n /** width of ValidationTextbox, measured in em */\n size?: number;\n /** Error message to display */\n errorText?: string;\n /** Detailed error message to display */\n detailedErrorText?: string;\n /** Content */\n children?: React.ReactNode;\n}\n\ninterface ValidationTextboxState {\n isValid: boolean;\n}\n\n/**\n * Input box that validates text based on provided criteria. Defaults to checking\n * for empty if no method for onValueChanged is provided.\n * @alpha\n */\nexport class ValidationTextbox extends React.PureComponent<\n ValidationTextboxProps,\n ValidationTextboxState\n> {\n constructor(props: ValidationTextboxProps) {\n super(props);\n\n this.state = { isValid: true };\n }\n\n /** @internal */\n public override render(): React.ReactNode {\n const sizeStyle: React.CSSProperties = {\n width: this.props.size ? `${this.props.size.toString()}em` : \"12em\",\n };\n const divStyle: React.CSSProperties = {\n ...sizeStyle,\n ...this.props.style,\n };\n\n const validClassNames = classnames(\"ValidationTextbox-input\");\n\n const invalidClassNames = classnames(\n \"ValidationTextbox-input\",\n \"ValidationTextbox-invalid\"\n );\n\n return (\n <div\n className={classnames(\"uifw-ValidationTextbox\", this.props.className)}\n style={divStyle}\n >\n <Input\n className={this.state.isValid ? validClassNames : invalidClassNames}\n onChange={this._validateText}\n onKeyUp={this._handleKeyUp}\n onPaste={this._validateText}\n onCut={this._validateText}\n onBlur={this._validateText}\n placeholder={this.props.placeholder ? this.props.placeholder : \"\"}\n style={sizeStyle}\n />\n {this.props.children}\n </div>\n );\n }\n\n private processValidateText(target: HTMLInputElement | undefined): void {\n // istanbul ignore next\n if (undefined === target) return;\n\n const value = target.value;\n const isValid = this._calculateIsValid(value);\n\n this.setState({ isValid }, () => {\n if (this.state.isValid) {\n this._hideErrorMessage();\n } else {\n // istanbul ignore else\n if (this.props.errorText && !this.state.isValid)\n this._showErrorMessage(target);\n }\n });\n }\n\n /**\n * Determines if value is valid and resolves any defined functions.\n * Also will show or hide error message if defined.\n * @param event Button press event that triggers validation\n */\n private _validateText = (event?: any): void => {\n this.processValidateText(event.target as HTMLInputElement);\n };\n\n /**\n * Determines if value provided is valid by calling user defined\n * function. If no function is provided, the default criteria for\n * validity is if the value has been defined.\n * @param value The value provided in textbox\n */\n private _calculateIsValid(value: string): boolean {\n if (this.props.onValueChanged)\n return this.props.onValueChanged(value) === InputStatus.Valid\n ? /* istanbul ignore next */ true\n : false;\n return value.length > 0;\n }\n\n /** Hides error message */\n private _hideErrorMessage() {\n MessageManager.hideInputFieldMessage();\n }\n\n /** Displays error message. */\n private _showErrorMessage(target: Element) {\n MessageManager.displayInputFieldMessage(\n target as HTMLElement,\n this.props.errorText!,\n this.props.detailedErrorText\n );\n return;\n }\n\n /**\n * Manages special key codes by calling user defined functions\n * @param event Keyup event\n */\n private _handleKeyUp = (event: React.KeyboardEvent<HTMLInputElement>) => {\n this.processValidateText(event.target as HTMLInputElement);\n\n switch (event.key) {\n case Key.Escape:\n // istanbul ignore else\n if (this.props.onEscPressed) this.props.onEscPressed();\n break;\n case Key.Enter:\n // istanbul ignore else\n if (this.props.onEnterPressed) this.props.onEnterPressed();\n break;\n }\n };\n}\n"]}
1
+ {"version":3,"file":"ValidationTextbox.js","sourceRoot":"","sources":["../../../../src/appui-react/feedback/ValidationTextbox.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport \"./ValidationTextbox.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { MessageManager } from \"../messages/MessageManager\";\nimport { Input } from \"@itwin/itwinui-react\";\n\n/** Enum for Input Status used in [[ValidationTextbox]]\n * @alpha\n */\nexport enum InputStatus {\n Valid = 0,\n Invalid = 1,\n}\n\n/** Property interface for ValidationTextbox\n * @alpha\n */\ninterface ValidationTextboxProps extends CommonProps {\n /** value to set ValidationTextbox to initially */\n initialValue?: string;\n /** placeholder value to show in gray before anything is entered in */\n placeholder?: string;\n /** triggered when the content of ValidationTextbox is changed. Return true if valid */\n onValueChanged?: (value: string) => InputStatus;\n /** listens for <Enter> key presses */\n onEnterPressed?: () => void;\n /** listens for <Esc> key presses */\n onEscPressed?: () => void;\n /** width of ValidationTextbox, measured in em */\n size?: number;\n /** Error message to display */\n errorText?: string;\n /** Detailed error message to display */\n detailedErrorText?: string;\n /** Content */\n children?: React.ReactNode;\n}\n\ninterface ValidationTextboxState {\n isValid: boolean;\n}\n\n/**\n * Input box that validates text based on provided criteria. Defaults to checking\n * for empty if no method for onValueChanged is provided.\n * @alpha\n */\nexport class ValidationTextbox extends React.PureComponent<\n ValidationTextboxProps,\n ValidationTextboxState\n> {\n constructor(props: ValidationTextboxProps) {\n super(props);\n\n this.state = { isValid: true };\n }\n\n /** @internal */\n public override render(): React.ReactNode {\n const sizeStyle: React.CSSProperties = {\n width: this.props.size ? `${this.props.size.toString()}em` : \"12em\",\n };\n const divStyle: React.CSSProperties = {\n ...sizeStyle,\n ...this.props.style,\n };\n\n const validClassNames = classnames(\"ValidationTextbox-input\");\n\n const invalidClassNames = classnames(\n \"ValidationTextbox-input\",\n \"ValidationTextbox-invalid\"\n );\n\n return (\n <div\n className={classnames(\"uifw-ValidationTextbox\", this.props.className)}\n style={divStyle}\n >\n <Input\n className={this.state.isValid ? validClassNames : invalidClassNames}\n onChange={this._validateText}\n onKeyUp={this._handleKeyUp}\n onPaste={this._validateText}\n onCut={this._validateText}\n onBlur={this._validateText}\n placeholder={this.props.placeholder ? this.props.placeholder : \"\"}\n style={sizeStyle}\n />\n {this.props.children}\n </div>\n );\n }\n\n private processValidateText(target: HTMLInputElement | undefined): void {\n // istanbul ignore next\n if (undefined === target) return;\n\n const value = target.value;\n const isValid = this._calculateIsValid(value);\n\n this.setState({ isValid }, () => {\n if (this.state.isValid) {\n this._hideErrorMessage();\n } else {\n // istanbul ignore else\n if (this.props.errorText && !this.state.isValid)\n this._showErrorMessage(target);\n }\n });\n }\n\n /**\n * Determines if value is valid and resolves any defined functions.\n * Also will show or hide error message if defined.\n * @param event Button press event that triggers validation\n */\n private _validateText = (event?: any): void => {\n this.processValidateText(event.target as HTMLInputElement);\n };\n\n /**\n * Determines if value provided is valid by calling user defined\n * function. If no function is provided, the default criteria for\n * validity is if the value has been defined.\n * @param value The value provided in textbox\n */\n private _calculateIsValid(value: string): boolean {\n if (this.props.onValueChanged)\n return this.props.onValueChanged(value) === InputStatus.Valid\n ? /* istanbul ignore next */ true\n : false;\n return value.length > 0;\n }\n\n /** Hides error message */\n private _hideErrorMessage() {\n MessageManager.hideInputFieldMessage();\n }\n\n /** Displays error message. */\n private _showErrorMessage(target: Element) {\n MessageManager.displayInputFieldMessage(\n target as HTMLElement,\n this.props.errorText!,\n this.props.detailedErrorText\n );\n return;\n }\n\n /**\n * Manages special key codes by calling user defined functions\n * @param event Keyup event\n */\n private _handleKeyUp = (event: React.KeyboardEvent<HTMLInputElement>) => {\n this.processValidateText(event.target as HTMLInputElement);\n\n switch (event.key) {\n case Key.Escape.valueOf():\n // istanbul ignore else\n if (this.props.onEscPressed) this.props.onEscPressed();\n break;\n case Key.Enter.valueOf():\n // istanbul ignore else\n if (this.props.onEnterPressed) this.props.onEnterPressed();\n break;\n }\n };\n}\n"]}
@@ -13,7 +13,7 @@ import { UiFramework } from "../UiFramework";
13
13
  */
14
14
  export function onEscapeSetFocusToHome(e) {
15
15
  // istanbul ignore else
16
- if (e.key === Key.Escape) {
16
+ if (e.key === Key.Escape.valueOf()) {
17
17
  UiFramework.keyboardShortcuts.setFocusToHome();
18
18
  }
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useEscapeSetFocusToHome.js","sourceRoot":"","sources":["../../../../src/appui-react/hooks/useEscapeSetFocusToHome.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,CAAsB;IAC3D,uBAAuB;IACvB,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,EAAE;QACxB,WAAW,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;KAChD;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;AACvD,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Hooks\n */\n\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** Keyboard Event handler to set focus to Home on Escape key\n * @internal\n */\nexport function onEscapeSetFocusToHome(e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (e.key === Key.Escape) {\n UiFramework.keyboardShortcuts.setFocusToHome();\n }\n}\n\n/** useCallback Hook for Keyboard Event handler to set focus to Home on Escape key\n * @internal\n */\nexport function useEscapeSetFocusToHome() {\n return React.useCallback(onEscapeSetFocusToHome, []);\n}\n"]}
1
+ {"version":3,"file":"useEscapeSetFocusToHome.js","sourceRoot":"","sources":["../../../../src/appui-react/hooks/useEscapeSetFocusToHome.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,CAAsB;IAC3D,uBAAuB;IACvB,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE;QAClC,WAAW,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;KAChD;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;AACvD,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Hooks\n */\n\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** Keyboard Event handler to set focus to Home on Escape key\n * @internal\n */\nexport function onEscapeSetFocusToHome(e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (e.key === Key.Escape.valueOf()) {\n UiFramework.keyboardShortcuts.setFocusToHome();\n }\n}\n\n/** useCallback Hook for Keyboard Event handler to set focus to Home on Escape key\n * @internal\n */\nexport function useEscapeSetFocusToHome() {\n return React.useCallback(onEscapeSetFocusToHome, []);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"KeyboardShortcut.js","sourceRoot":"","sources":["../../../../src/appui-react/keyboardshortcut/KeyboardShortcut.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module KeyboardShortcut\n */\n\nimport { UiError } from \"@itwin/appui-abstract\";\nimport type { ActionButtonItemDef } from \"../shared/ActionButtonItemDef\";\nimport { ItemDefBase } from \"../shared/ItemDefBase\";\nimport type { KeyboardShortcutProps } from \"../framework/FrameworkKeyboardShortcuts\";\nimport { UiFramework } from \"../UiFramework\";\nimport { KeyboardShortcutMenu } from \"./KeyboardShortcutMenu\";\n\nenum FunctionKey {\n F1 = \"F1\",\n F2 = \"F2\",\n F3 = \"F3\",\n F4 = \"F4\",\n F5 = \"F5\",\n F6 = \"F6\",\n F7 = \"F7\",\n F8 = \"F8\",\n F9 = \"F9\",\n F10 = \"F10\",\n F11 = \"F11\",\n F12 = \"F12\",\n}\n\nenum SpecialKey {\n Home = \"Home\",\n End = \"End\",\n PageUp = \"PageUp\",\n PageDown = \"PageDown\",\n Escape = \"Escape\",\n Delete = \"Delete\",\n Insert = \"Insert\",\n Tab = \"Tab\",\n ArrowLeft = \"ArrowLeft\",\n ArrowRight = \"ArrowRight\",\n ArrowUp = \"ArrowUp\",\n ArrowDown = \"ArrowDown\",\n Enter = \"Enter\",\n Return = \"Enter\",\n Space = \" \",\n Backspace = \"Backspace\",\n Clear = \"Clear\",\n Divide = \"Divide\",\n Multiply = \"Multiply\",\n Subtract = \"Subtract\",\n Add = \"Add\",\n Decimal = \"Decimal\",\n}\n\n/** Keyboard Shortcut used to execute an action\n * @public\n */\nexport class KeyboardShortcut extends ItemDefBase {\n private _key: string;\n private _item?: ActionButtonItemDef;\n private _shortcuts: KeyboardShortcutContainer;\n\n private _isAltKeyRequired: boolean = false;\n private _isCtrlKeyRequired: boolean = false;\n private _isShiftKeyRequired: boolean = false;\n private _isFunctionKey: boolean = false;\n private _isSpecialKey: boolean = false;\n\n constructor(props: KeyboardShortcutProps) {\n super(props);\n\n this._key = props.key;\n\n if (this._key in FunctionKey) this._isFunctionKey = true;\n if (this._key in SpecialKey) this._isSpecialKey = true;\n\n this._shortcuts = new KeyboardShortcutContainer();\n\n if (props.item) {\n this._item = props.item;\n\n // Copy over icon, label & tooltip from the item\n if (!this.iconSpec) this.iconSpec = this._item.iconSpec;\n if (!this.label) this.setLabel(this._item.label);\n if (!this.tooltip) this.setTooltip(this._item.tooltip);\n if (this.isDisabled === undefined)\n this.isDisabled = this._item.isDisabled;\n if (this.isHidden === undefined) this.isHidden = this._item.isHidden;\n } else if (props.shortcuts) {\n props.shortcuts.forEach((childProps: KeyboardShortcutProps) => {\n const shortcut = new KeyboardShortcut(childProps);\n this._shortcuts.registerKey(shortcut.keyMapKey, shortcut);\n });\n } else {\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `Either 'item' or 'shortcuts' must be specified for '${props.key}' key.`\n );\n }\n\n if (props.isAltKeyRequired !== undefined)\n this._isAltKeyRequired = props.isAltKeyRequired;\n if (props.isCtrlKeyRequired !== undefined)\n this._isCtrlKeyRequired = props.isCtrlKeyRequired;\n if (props.isShiftKeyRequired !== undefined)\n this._isShiftKeyRequired = props.isShiftKeyRequired;\n }\n\n /** Returns the id for this shortcut */\n public get id(): string {\n return this.keyMapKey;\n }\n\n /** Returns the shortcut container */\n public get shortcutContainer(): KeyboardShortcutContainer {\n return this._shortcuts;\n }\n\n /** Finds a shortcut with a given key in the shortcut's container */\n public getShortcut(mapKey: string): KeyboardShortcut | undefined {\n return this._shortcuts.findKey(mapKey);\n }\n\n /** Returns the shortcut's key map key used as the id */\n public get keyMapKey(): string {\n const keyMapKey = KeyboardShortcutContainer.generateKeyMapKey(\n this.key,\n this._isAltKeyRequired,\n this._isCtrlKeyRequired,\n this._isShiftKeyRequired\n );\n return keyMapKey;\n }\n\n /** Returns the [[ActionButtonItemDef]] associated with this shortcut */\n public get item(): ActionButtonItemDef | undefined {\n return this._item;\n }\n\n /** Called when the [[ActionButtonItemDef]] associated with this shortcut is invoked */\n public itemPicked(): void {\n if (this._shortcuts.areKeyboardShortcutsAvailable()) {\n this._shortcuts.showShortcutsMenu();\n } else {\n setTimeout(() => {\n // istanbul ignore else\n if (this._item) this._item.execute();\n });\n }\n }\n\n /** Gets the keyboard key */\n public get key(): string {\n return this._key;\n }\n /** Gets whether the Alt key required. */\n public get isAltKeyRequired(): boolean {\n return this._isAltKeyRequired;\n }\n /** Gets whether the Ctrl key required. */\n public get isCtrlKeyRequired(): boolean {\n return this._isCtrlKeyRequired;\n }\n /** Gets whether the Shift key required. */\n public get isShiftKeyRequired(): boolean {\n return this._isShiftKeyRequired;\n }\n /** Gets whether this is a Function key. */\n public get isFunctionKey(): boolean {\n return this._isFunctionKey;\n }\n /** Gets whether this is a Special key. */\n public get isSpecialKey(): boolean {\n return this._isSpecialKey;\n }\n}\n\n/** Keyboard Shortcut Container\n * @public\n */\nexport class KeyboardShortcutContainer {\n private _keyMap: Map<string, KeyboardShortcut> = new Map<\n string,\n KeyboardShortcut\n >();\n private _keyArray: KeyboardShortcut[] = new Array<KeyboardShortcut>();\n\n /** Registers a Keyboard Shortcut associated with a given key in the managed list */\n public registerKey(\n keyMapKey: string,\n inShortcut: KeyboardShortcut\n ): KeyboardShortcut | undefined {\n let shortcut: KeyboardShortcut | undefined;\n\n if ((shortcut = this.findKey(keyMapKey)) === undefined) {\n shortcut = inShortcut;\n this._keyArray.push(shortcut);\n } else {\n const index = this._keyArray.findIndex((value: KeyboardShortcut) => {\n return value.keyMapKey === keyMapKey;\n });\n // istanbul ignore else\n if (index >= 0) {\n shortcut = inShortcut;\n this._keyArray[index] = shortcut;\n }\n }\n\n // istanbul ignore else\n if (shortcut) this._keyMap.set(keyMapKey, shortcut);\n\n return shortcut;\n }\n\n /** Finds a Keyboard Shortcut associated with a given key */\n public findKey(keyMapKey: string): KeyboardShortcut | undefined {\n return this._keyMap.get(keyMapKey);\n }\n\n /** Determines if any Keyboard Shortcuts are available in this container */\n public areKeyboardShortcutsAvailable(): boolean {\n return this._keyMap.size !== 0;\n }\n\n /** Empties any Keyboard Shortcuts from this container */\n public emptyData(): void {\n this._keyMap.clear();\n this._keyArray.length = 0;\n }\n\n public getAvailableKeyboardShortcuts(): KeyboardShortcut[] {\n return this._keyArray.slice();\n }\n\n /** Generates a key used for storing and finding the Keyboard Shortcuts in this container */\n public static generateKeyMapKey(\n keyboardKey: string,\n isAltKeyRequired: boolean,\n isCtrlKeyRequired: boolean,\n isShiftKeyRequired: boolean\n ): string {\n let keyMapKey = keyboardKey;\n\n if (isAltKeyRequired) keyMapKey = `Alt+${keyMapKey}`;\n if (isShiftKeyRequired) keyMapKey = `Shift+${keyMapKey}`;\n if (isCtrlKeyRequired) keyMapKey = `Ctrl+${keyMapKey}`;\n\n return keyMapKey;\n }\n\n /** Displays a menu for the Keyboard Shortcuts in this container */\n public showShortcutsMenu() {\n const offset = 8;\n KeyboardShortcutMenu.onKeyboardShortcutMenuEvent.emit({\n menuVisible: true,\n menuX: UiFramework.keyboardShortcuts.cursorX - offset,\n menuY: UiFramework.keyboardShortcuts.cursorY - offset,\n shortcuts: this.getAvailableKeyboardShortcuts(),\n });\n }\n}\n"]}
1
+ {"version":3,"file":"KeyboardShortcut.js","sourceRoot":"","sources":["../../../../src/appui-react/keyboardshortcut/KeyboardShortcut.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module KeyboardShortcut\n */\n\nimport { UiError } from \"@itwin/appui-abstract\";\nimport type { ActionButtonItemDef } from \"../shared/ActionButtonItemDef\";\nimport { ItemDefBase } from \"../shared/ItemDefBase\";\nimport type { KeyboardShortcutProps } from \"../framework/FrameworkKeyboardShortcuts\";\nimport { UiFramework } from \"../UiFramework\";\nimport { KeyboardShortcutMenu } from \"./KeyboardShortcutMenu\";\n\nenum FunctionKey {\n F1 = \"F1\",\n F2 = \"F2\",\n F3 = \"F3\",\n F4 = \"F4\",\n F5 = \"F5\",\n F6 = \"F6\",\n F7 = \"F7\",\n F8 = \"F8\",\n F9 = \"F9\",\n F10 = \"F10\",\n F11 = \"F11\",\n F12 = \"F12\",\n}\n\nenum SpecialKey {\n Home = \"Home\",\n End = \"End\",\n PageUp = \"PageUp\",\n PageDown = \"PageDown\",\n Escape = \"Escape\",\n Delete = \"Delete\",\n Insert = \"Insert\",\n Tab = \"Tab\",\n ArrowLeft = \"ArrowLeft\",\n ArrowRight = \"ArrowRight\",\n ArrowUp = \"ArrowUp\",\n ArrowDown = \"ArrowDown\",\n Enter = \"Enter\",\n Return = \"Enter\", // eslint-disable-line @typescript-eslint/no-duplicate-enum-values\n Space = \" \",\n Backspace = \"Backspace\",\n Clear = \"Clear\",\n Divide = \"Divide\",\n Multiply = \"Multiply\",\n Subtract = \"Subtract\",\n Add = \"Add\",\n Decimal = \"Decimal\",\n}\n\n/** Keyboard Shortcut used to execute an action\n * @public\n */\nexport class KeyboardShortcut extends ItemDefBase {\n private _key: string;\n private _item?: ActionButtonItemDef;\n private _shortcuts: KeyboardShortcutContainer;\n\n private _isAltKeyRequired: boolean = false;\n private _isCtrlKeyRequired: boolean = false;\n private _isShiftKeyRequired: boolean = false;\n private _isFunctionKey: boolean = false;\n private _isSpecialKey: boolean = false;\n\n constructor(props: KeyboardShortcutProps) {\n super(props);\n\n this._key = props.key;\n\n if (this._key in FunctionKey) this._isFunctionKey = true;\n if (this._key in SpecialKey) this._isSpecialKey = true;\n\n this._shortcuts = new KeyboardShortcutContainer();\n\n if (props.item) {\n this._item = props.item;\n\n // Copy over icon, label & tooltip from the item\n if (!this.iconSpec) this.iconSpec = this._item.iconSpec;\n if (!this.label) this.setLabel(this._item.label);\n if (!this.tooltip) this.setTooltip(this._item.tooltip);\n if (this.isDisabled === undefined)\n this.isDisabled = this._item.isDisabled;\n if (this.isHidden === undefined) this.isHidden = this._item.isHidden;\n } else if (props.shortcuts) {\n props.shortcuts.forEach((childProps: KeyboardShortcutProps) => {\n const shortcut = new KeyboardShortcut(childProps);\n this._shortcuts.registerKey(shortcut.keyMapKey, shortcut);\n });\n } else {\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `Either 'item' or 'shortcuts' must be specified for '${props.key}' key.`\n );\n }\n\n if (props.isAltKeyRequired !== undefined)\n this._isAltKeyRequired = props.isAltKeyRequired;\n if (props.isCtrlKeyRequired !== undefined)\n this._isCtrlKeyRequired = props.isCtrlKeyRequired;\n if (props.isShiftKeyRequired !== undefined)\n this._isShiftKeyRequired = props.isShiftKeyRequired;\n }\n\n /** Returns the id for this shortcut */\n public get id(): string {\n return this.keyMapKey;\n }\n\n /** Returns the shortcut container */\n public get shortcutContainer(): KeyboardShortcutContainer {\n return this._shortcuts;\n }\n\n /** Finds a shortcut with a given key in the shortcut's container */\n public getShortcut(mapKey: string): KeyboardShortcut | undefined {\n return this._shortcuts.findKey(mapKey);\n }\n\n /** Returns the shortcut's key map key used as the id */\n public get keyMapKey(): string {\n const keyMapKey = KeyboardShortcutContainer.generateKeyMapKey(\n this.key,\n this._isAltKeyRequired,\n this._isCtrlKeyRequired,\n this._isShiftKeyRequired\n );\n return keyMapKey;\n }\n\n /** Returns the [[ActionButtonItemDef]] associated with this shortcut */\n public get item(): ActionButtonItemDef | undefined {\n return this._item;\n }\n\n /** Called when the [[ActionButtonItemDef]] associated with this shortcut is invoked */\n public itemPicked(): void {\n if (this._shortcuts.areKeyboardShortcutsAvailable()) {\n this._shortcuts.showShortcutsMenu();\n } else {\n setTimeout(() => {\n // istanbul ignore else\n if (this._item) this._item.execute();\n });\n }\n }\n\n /** Gets the keyboard key */\n public get key(): string {\n return this._key;\n }\n /** Gets whether the Alt key required. */\n public get isAltKeyRequired(): boolean {\n return this._isAltKeyRequired;\n }\n /** Gets whether the Ctrl key required. */\n public get isCtrlKeyRequired(): boolean {\n return this._isCtrlKeyRequired;\n }\n /** Gets whether the Shift key required. */\n public get isShiftKeyRequired(): boolean {\n return this._isShiftKeyRequired;\n }\n /** Gets whether this is a Function key. */\n public get isFunctionKey(): boolean {\n return this._isFunctionKey;\n }\n /** Gets whether this is a Special key. */\n public get isSpecialKey(): boolean {\n return this._isSpecialKey;\n }\n}\n\n/** Keyboard Shortcut Container\n * @public\n */\nexport class KeyboardShortcutContainer {\n private _keyMap: Map<string, KeyboardShortcut> = new Map<\n string,\n KeyboardShortcut\n >();\n private _keyArray: KeyboardShortcut[] = new Array<KeyboardShortcut>();\n\n /** Registers a Keyboard Shortcut associated with a given key in the managed list */\n public registerKey(\n keyMapKey: string,\n inShortcut: KeyboardShortcut\n ): KeyboardShortcut | undefined {\n let shortcut: KeyboardShortcut | undefined;\n\n if ((shortcut = this.findKey(keyMapKey)) === undefined) {\n shortcut = inShortcut;\n this._keyArray.push(shortcut);\n } else {\n const index = this._keyArray.findIndex((value: KeyboardShortcut) => {\n return value.keyMapKey === keyMapKey;\n });\n // istanbul ignore else\n if (index >= 0) {\n shortcut = inShortcut;\n this._keyArray[index] = shortcut;\n }\n }\n\n // istanbul ignore else\n if (shortcut) this._keyMap.set(keyMapKey, shortcut);\n\n return shortcut;\n }\n\n /** Finds a Keyboard Shortcut associated with a given key */\n public findKey(keyMapKey: string): KeyboardShortcut | undefined {\n return this._keyMap.get(keyMapKey);\n }\n\n /** Determines if any Keyboard Shortcuts are available in this container */\n public areKeyboardShortcutsAvailable(): boolean {\n return this._keyMap.size !== 0;\n }\n\n /** Empties any Keyboard Shortcuts from this container */\n public emptyData(): void {\n this._keyMap.clear();\n this._keyArray.length = 0;\n }\n\n public getAvailableKeyboardShortcuts(): KeyboardShortcut[] {\n return this._keyArray.slice();\n }\n\n /** Generates a key used for storing and finding the Keyboard Shortcuts in this container */\n public static generateKeyMapKey(\n keyboardKey: string,\n isAltKeyRequired: boolean,\n isCtrlKeyRequired: boolean,\n isShiftKeyRequired: boolean\n ): string {\n let keyMapKey = keyboardKey;\n\n if (isAltKeyRequired) keyMapKey = `Alt+${keyMapKey}`;\n if (isShiftKeyRequired) keyMapKey = `Shift+${keyMapKey}`;\n if (isCtrlKeyRequired) keyMapKey = `Ctrl+${keyMapKey}`;\n\n return keyMapKey;\n }\n\n /** Displays a menu for the Keyboard Shortcuts in this container */\n public showShortcutsMenu() {\n const offset = 8;\n KeyboardShortcutMenu.onKeyboardShortcutMenuEvent.emit({\n menuVisible: true,\n menuX: UiFramework.keyboardShortcuts.cursorX - offset,\n menuY: UiFramework.keyboardShortcuts.cursorY - offset,\n shortcuts: this.getAvailableKeyboardShortcuts(),\n });\n }\n}\n"]}
@@ -2,6 +2,10 @@
2
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- .nz-widgetPanels-centerContent {
6
- pointer-events: none;
5
+ @layer appui {
6
+ @layer component, preview;
7
+
8
+ @layer preview {
9
+ @layer horizontal-panel-alignment, enable-maximized-widget;
10
+ }
7
11
  }
@@ -0,0 +1,24 @@
1
+ /** @packageDocumentation
2
+ * @module WidgetPanels
3
+ */
4
+ import "./StandardLayout.scss";
5
+ import * as React from "react";
6
+ import type { CommonProps } from "@itwin/core-react";
7
+ interface StandardLayoutProps extends CommonProps {
8
+ /** Main content area of the application (i.e. viewport) that will change bounds based on panel pinned state. */
9
+ children?: React.ReactNode;
10
+ /** Component that displays center content (i.e. toolbars). Content is always bound by widget panels. */
11
+ centerContent?: React.ReactNode;
12
+ toolSettings?: React.ReactNode;
13
+ statusBar?: React.ReactNode;
14
+ topPanel?: React.ReactNode;
15
+ leftPanel?: React.ReactNode;
16
+ rightPanel?: React.ReactNode;
17
+ bottomPanel?: React.ReactNode;
18
+ }
19
+ /** Component that displays widgets in a standard layout.
20
+ * @internal
21
+ */
22
+ export declare function StandardLayout(props: StandardLayoutProps): React.JSX.Element;
23
+ export {};
24
+ //# sourceMappingURL=StandardLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandardLayout.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/layout/StandardLayout.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAE/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAQrD,UAAU,mBAAoB,SAAQ,WAAW;IAC/C,gHAAgH;IAChH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,wGAAwG;IACxG,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,qBAkBxD"}
@@ -0,0 +1,52 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module WidgetPanels
7
+ */
8
+ import "./StandardLayout.scss";
9
+ import classnames from "classnames";
10
+ import * as React from "react";
11
+ import { useLayout } from "./base/LayoutStore";
12
+ import { usePreviewFeatures } from "../preview/PreviewFeatures";
13
+ import { useMaximizedPanelLayout } from "../preview/enable-maximized-widget/useMaximizedWidget";
14
+ import { usePanelsAutoCollapse } from "./widget-panels/usePanelsAutoCollapse";
15
+ import { useHorizontalPanelAlignment } from "../preview/horizontal-panel-alignment/useHorizontalPanelAlignment";
16
+ /** Component that displays widgets in a standard layout.
17
+ * @internal
18
+ */
19
+ export function StandardLayout(props) {
20
+ const pinned = usePinned();
21
+ const appContentRef = usePanelsAutoCollapse();
22
+ const className = classnames("nz-standardLayout", pinned, props.className);
23
+ return (React.createElement("div", { className: className, style: props.style },
24
+ React.createElement("div", { className: "nz-appContent", ref: appContentRef }, props.children),
25
+ React.createElement("div", { className: "nz-centerContent" }, props.centerContent),
26
+ React.createElement(Panel, { side: "left" }, props.leftPanel),
27
+ React.createElement(Panel, { side: "right" }, props.rightPanel),
28
+ React.createElement(Panel, { side: "top" }, props.topPanel),
29
+ React.createElement(Panel, { side: "bottom" }, props.bottomPanel),
30
+ React.createElement("div", { className: "nz-toolSettings" }, props.toolSettings),
31
+ React.createElement("div", { className: "nz-statusBar" }, props.statusBar)));
32
+ }
33
+ function Panel({ children, side }) {
34
+ const maximizedWidget = useMaximizedPanelLayout(side);
35
+ const horizontalAlignment = useHorizontalPanelAlignment(side);
36
+ const className = classnames(`nz-standardLayout_${side}Panel`, maximizedWidget, horizontalAlignment.classNames);
37
+ return (React.createElement("div", { className: className, ...horizontalAlignment.attributes }, children));
38
+ }
39
+ function usePinned() {
40
+ const { contentAlwaysMaxSize } = usePreviewFeatures();
41
+ const leftPinned = useLayout((state) => state.panels.left.pinned);
42
+ const rightPinned = useLayout((state) => state.panels.right.pinned);
43
+ const topPinned = useLayout((state) => state.panels.top.pinned);
44
+ const bottomPinned = useLayout((state) => state.panels.bottom.pinned);
45
+ return {
46
+ "nz-pinned-left": leftPinned && !contentAlwaysMaxSize,
47
+ "nz-pinned-right": rightPinned && !contentAlwaysMaxSize,
48
+ "nz-pinned-top": topPinned && !contentAlwaysMaxSize,
49
+ "nz-pinned-bottom": bottomPinned && !contentAlwaysMaxSize,
50
+ };
51
+ }
52
+ //# sourceMappingURL=StandardLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandardLayout.js","sourceRoot":"","sources":["../../../../src/appui-react/layout/StandardLayout.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAC/B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mEAAmE,CAAC;AAgBhH;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAA0B;IACvD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,aAAa,GAAG,qBAAqB,EAAkB,CAAC;IAC9D,MAAM,SAAS,GAAG,UAAU,CAAC,mBAAmB,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3E,OAAO,CACL,6BAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK;QAC3C,6BAAK,SAAS,EAAC,eAAe,EAAC,GAAG,EAAE,aAAa,IAC9C,KAAK,CAAC,QAAQ,CACX;QACN,6BAAK,SAAS,EAAC,kBAAkB,IAAE,KAAK,CAAC,aAAa,CAAO;QAC7D,oBAAC,KAAK,IAAC,IAAI,EAAC,MAAM,IAAE,KAAK,CAAC,SAAS,CAAS;QAC5C,oBAAC,KAAK,IAAC,IAAI,EAAC,OAAO,IAAE,KAAK,CAAC,UAAU,CAAS;QAC9C,oBAAC,KAAK,IAAC,IAAI,EAAC,KAAK,IAAE,KAAK,CAAC,QAAQ,CAAS;QAC1C,oBAAC,KAAK,IAAC,IAAI,EAAC,QAAQ,IAAE,KAAK,CAAC,WAAW,CAAS;QAChD,6BAAK,SAAS,EAAC,iBAAiB,IAAE,KAAK,CAAC,YAAY,CAAO;QAC3D,6BAAK,SAAS,EAAC,cAAc,IAAE,KAAK,CAAC,SAAS,CAAO,CACjD,CACP,CAAC;AACJ,CAAC;AAMD,SAAS,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAuC;IACpE,MAAM,eAAe,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,mBAAmB,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,UAAU,CAC1B,qBAAqB,IAAI,OAAO,EAChC,eAAe,EACf,mBAAmB,CAAC,UAAU,CAC/B,CAAC;IACF,OAAO,CACL,6BAAK,SAAS,EAAE,SAAS,KAAM,mBAAmB,CAAC,UAAU,IAC1D,QAAQ,CACL,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS;IAChB,MAAM,EAAE,oBAAoB,EAAE,GAAG,kBAAkB,EAAE,CAAC;IACtD,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtE,OAAO;QACL,gBAAgB,EAAE,UAAU,IAAI,CAAC,oBAAoB;QACrD,iBAAiB,EAAE,WAAW,IAAI,CAAC,oBAAoB;QACvD,eAAe,EAAE,SAAS,IAAI,CAAC,oBAAoB;QACnD,kBAAkB,EAAE,YAAY,IAAI,CAAC,oBAAoB;KAC1D,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WidgetPanels\n */\n\nimport \"./StandardLayout.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { useLayout } from \"./base/LayoutStore\";\nimport { usePreviewFeatures } from \"../preview/PreviewFeatures\";\nimport { useMaximizedPanelLayout } from \"../preview/enable-maximized-widget/useMaximizedWidget\";\nimport { usePanelsAutoCollapse } from \"./widget-panels/usePanelsAutoCollapse\";\nimport { useHorizontalPanelAlignment } from \"../preview/horizontal-panel-alignment/useHorizontalPanelAlignment\";\nimport type { PanelSide } from \"./widget-panels/PanelTypes\";\n\ninterface StandardLayoutProps extends CommonProps {\n /** Main content area of the application (i.e. viewport) that will change bounds based on panel pinned state. */\n children?: React.ReactNode;\n /** Component that displays center content (i.e. toolbars). Content is always bound by widget panels. */\n centerContent?: React.ReactNode;\n toolSettings?: React.ReactNode;\n statusBar?: React.ReactNode;\n topPanel?: React.ReactNode;\n leftPanel?: React.ReactNode;\n rightPanel?: React.ReactNode;\n bottomPanel?: React.ReactNode;\n}\n\n/** Component that displays widgets in a standard layout.\n * @internal\n */\nexport function StandardLayout(props: StandardLayoutProps) {\n const pinned = usePinned();\n const appContentRef = usePanelsAutoCollapse<HTMLDivElement>();\n const className = classnames(\"nz-standardLayout\", pinned, props.className);\n return (\n <div className={className} style={props.style}>\n <div className=\"nz-appContent\" ref={appContentRef}>\n {props.children}\n </div>\n <div className=\"nz-centerContent\">{props.centerContent}</div>\n <Panel side=\"left\">{props.leftPanel}</Panel>\n <Panel side=\"right\">{props.rightPanel}</Panel>\n <Panel side=\"top\">{props.topPanel}</Panel>\n <Panel side=\"bottom\">{props.bottomPanel}</Panel>\n <div className=\"nz-toolSettings\">{props.toolSettings}</div>\n <div className=\"nz-statusBar\">{props.statusBar}</div>\n </div>\n );\n}\n\ninterface PanelProps {\n side: PanelSide;\n}\n\nfunction Panel({ children, side }: React.PropsWithChildren<PanelProps>) {\n const maximizedWidget = useMaximizedPanelLayout(side);\n const horizontalAlignment = useHorizontalPanelAlignment(side);\n const className = classnames(\n `nz-standardLayout_${side}Panel`,\n maximizedWidget,\n horizontalAlignment.classNames\n );\n return (\n <div className={className} {...horizontalAlignment.attributes}>\n {children}\n </div>\n );\n}\n\nfunction usePinned() {\n const { contentAlwaysMaxSize } = usePreviewFeatures();\n const leftPinned = useLayout((state) => state.panels.left.pinned);\n const rightPinned = useLayout((state) => state.panels.right.pinned);\n const topPinned = useLayout((state) => state.panels.top.pinned);\n const bottomPinned = useLayout((state) => state.panels.bottom.pinned);\n return {\n \"nz-pinned-left\": leftPinned && !contentAlwaysMaxSize,\n \"nz-pinned-right\": rightPinned && !contentAlwaysMaxSize,\n \"nz-pinned-top\": topPinned && !contentAlwaysMaxSize,\n \"nz-pinned-bottom\": bottomPinned && !contentAlwaysMaxSize,\n };\n}\n"]}
@@ -0,0 +1,94 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
6
+
7
+ @layer appui.component {
8
+ .nz-standardLayout {
9
+ position: relative;
10
+ height: 100%;
11
+ background-color: $buic-background-widget-panel;
12
+ overflow: hidden;
13
+
14
+ display: grid;
15
+ grid-template-columns:
16
+ [lp-start] minmax(0, auto) [lp-end] 1fr [rp-start] minmax(0, auto)
17
+ [rp-end];
18
+ grid-template-rows:
19
+ minmax(0, auto) [ts-end] minmax(0, auto) [tp-end] 1fr [bp-start] minmax(
20
+ 0,
21
+ auto
22
+ )
23
+ [bp-end]
24
+ minmax(0, auto);
25
+ grid-template-areas:
26
+ "ts ts ts"
27
+ "tp tp tp"
28
+ "lp cc rp"
29
+ "bp bp bp"
30
+ "sb sb sb";
31
+
32
+ > .nz-appContent {
33
+ grid-row: 1 / -1;
34
+ grid-column: 1 / -1;
35
+
36
+ // TODO: clean-up #uifw-contentlayout-div
37
+ position: relative;
38
+ }
39
+
40
+ > .nz-toolSettings {
41
+ grid-area: ts;
42
+ }
43
+
44
+ > .nz-centerContent {
45
+ grid-area: cc;
46
+
47
+ pointer-events: none;
48
+ }
49
+
50
+ > .nz-statusBar {
51
+ grid-area: sb;
52
+ }
53
+
54
+ &.nz-pinned-left {
55
+ > .nz-appContent {
56
+ grid-column-start: 2;
57
+ }
58
+ }
59
+
60
+ &.nz-pinned-right {
61
+ > .nz-appContent {
62
+ grid-column-end: -2;
63
+ }
64
+ }
65
+
66
+ &.nz-pinned-top {
67
+ > .nz-appContent {
68
+ grid-row-start: tp-end;
69
+ }
70
+ }
71
+
72
+ &.nz-pinned-bottom {
73
+ > .nz-appContent {
74
+ grid-row-end: bp-start;
75
+ }
76
+ }
77
+ }
78
+
79
+ .nz-standardLayout_topPanel {
80
+ grid-area: tp;
81
+ }
82
+
83
+ .nz-standardLayout_leftPanel {
84
+ grid-area: lp;
85
+ }
86
+
87
+ .nz-standardLayout_rightPanel {
88
+ grid-area: rp;
89
+ }
90
+
91
+ .nz-standardLayout_bottomPanel {
92
+ grid-area: bp;
93
+ }
94
+ }
@@ -20,7 +20,7 @@ class Backstage extends React.PureComponent {
20
20
  this.props.onClose && this.props.onClose();
21
21
  };
22
22
  this._onEsc = (event) => {
23
- if (this.props.isOpen && event.key === Key.Escape) {
23
+ if (this.props.isOpen && event.key === Key.Escape.valueOf()) {
24
24
  this._onClose();
25
25
  }
26
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Backstage.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/backstage/Backstage.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAGH,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,kBAAkB,CAAC;AA2B1B;;GAEG;AACH,MAAa,SAAU,SAAQ,KAAK,CAAC,aAA6B;IAAlE;;QA8CU,aAAQ,GAAG,GAAG,EAAE;YACtB,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,CAAC,CAAC;QAEM,WAAM,GAAG,CAAC,KAAoB,EAAQ,EAAE;YAC9C,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,EAAE;gBACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;aACjB;QACH,CAAC,CAAC;IACJ,CAAC;IAlDiB,iBAAiB;QAC/B,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;IAEe,oBAAoB;QAClC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;IAEe,MAAM;QACpB,MAAM,gBAAgB,GAAG,UAAU,CACjC,gCAAgC,EAChC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,EAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,YAAY,CACvC,CAAC;QACF,MAAM,kBAAkB,GAAG,UAAU,CACnC,wBAAwB,EACxB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,EAC9B,IAAI,CAAC,KAAK,CAAC,cAAc;YACvB,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EACnE,IAAI,CAAC,KAAK,CAAC,SAAS,CACrB,CAAC;QACF,OAAO,CACL;YACE,6BACE,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,IAAI,EAAC,cAAc,GACnB;YACF,6BAAK,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;gBACxD,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CACpB,6BAAK,SAAS,EAAC,WAAW,IAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,CACrD;gBACD,4BAAI,IAAI,EAAC,MAAM,IAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAM;gBACzC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CACpB,6BAAK,SAAS,EAAC,WAAW,IAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,CACrD,CACG,CACL,CACJ,CAAC;IACJ,CAAC;;AA3CsB,sBAAY,GAA0B;IAC3D,WAAW,EAAE,IAAI;CAClB,AAFkC,CAEjC;SAHS,SAAS","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Backstage\n */\n\nimport type { CommonProps } from \"@itwin/core-react\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport type { SafeAreaInsets } from \"../../safearea/SafeAreaInsets\";\nimport { SafeAreaInsetsHelpers } from \"../base/SafeAreaInsets\";\nimport \"./Backstage.scss\";\n\n/** Properties of [[Backstage]] component.\n * @internal\n */\nexport interface BackstageProps extends CommonProps {\n /** Backstage items and separators. I.e. [[BackstageItem]], [[BackstageSeparator]] */\n children?: React.ReactNode;\n /** Optional footer content. */\n footer?: React.ReactNode;\n /** Optional header content. I.e. [[UserProfile]] */\n header?: React.ReactNode;\n /** Describes if the backstage is open. */\n isOpen?: boolean;\n /** Function called when backstage is closed. */\n onClose?: () => void;\n /** Describes respected safe area insets. */\n safeAreaInsets?: SafeAreaInsets;\n /** Describes if a ghosting overlay is shown. */\n showOverlay: boolean;\n}\n\n/** Default properties of [[Backstage]] component.\n * @internal\n */\nexport type BackstageDefaultProps = Pick<BackstageProps, \"showOverlay\">;\n\n/** Backstage component of 9-Zone UI app.\n * @internal\n */\nexport class Backstage extends React.PureComponent<BackstageProps> {\n public static readonly defaultProps: BackstageDefaultProps = {\n showOverlay: true,\n };\n\n public override componentDidMount(): void {\n document.addEventListener(\"keydown\", this._onEsc, false);\n }\n\n public override componentWillUnmount() {\n document.removeEventListener(\"keydown\", this._onEsc, false);\n }\n\n public override render() {\n const overlayClassName = classnames(\n \"nz-backstage-backstage_overlay\",\n this.props.isOpen && \"nz-open\",\n this.props.showOverlay && \"nz-overlay\"\n );\n const backstageClassName = classnames(\n \"nz-backstage-backstage\",\n this.props.isOpen && \"nz-open\",\n this.props.safeAreaInsets &&\n SafeAreaInsetsHelpers.getCssClassNames(this.props.safeAreaInsets),\n this.props.className\n );\n return (\n <>\n <div\n className={overlayClassName}\n onClick={this._onClose}\n role=\"presentation\"\n />\n <div className={backstageClassName} style={this.props.style}>\n {this.props.header && (\n <div className=\"nz-header\">{this.props.header}</div>\n )}\n <ul role=\"menu\">{this.props.children}</ul>\n {this.props.footer && (\n <div className=\"nz-footer\">{this.props.footer}</div>\n )}\n </div>\n </>\n );\n }\n\n private _onClose = () => {\n this.props.onClose && this.props.onClose();\n };\n\n private _onEsc = (event: KeyboardEvent): void => {\n if (this.props.isOpen && event.key === Key.Escape) {\n this._onClose();\n }\n };\n}\n"]}
1
+ {"version":3,"file":"Backstage.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/backstage/Backstage.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAGH,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,kBAAkB,CAAC;AA2B1B;;GAEG;AACH,MAAa,SAAU,SAAQ,KAAK,CAAC,aAA6B;IAAlE;;QA8CU,aAAQ,GAAG,GAAG,EAAE;YACtB,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,CAAC,CAAC;QAEM,WAAM,GAAG,CAAC,KAAoB,EAAQ,EAAE;YAC9C,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE;gBAC3D,IAAI,CAAC,QAAQ,EAAE,CAAC;aACjB;QACH,CAAC,CAAC;IACJ,CAAC;IAlDiB,iBAAiB;QAC/B,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;IAEe,oBAAoB;QAClC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;IAEe,MAAM;QACpB,MAAM,gBAAgB,GAAG,UAAU,CACjC,gCAAgC,EAChC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,EAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,YAAY,CACvC,CAAC;QACF,MAAM,kBAAkB,GAAG,UAAU,CACnC,wBAAwB,EACxB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,EAC9B,IAAI,CAAC,KAAK,CAAC,cAAc;YACvB,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EACnE,IAAI,CAAC,KAAK,CAAC,SAAS,CACrB,CAAC;QACF,OAAO,CACL;YACE,6BACE,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,IAAI,EAAC,cAAc,GACnB;YACF,6BAAK,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;gBACxD,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CACpB,6BAAK,SAAS,EAAC,WAAW,IAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,CACrD;gBACD,4BAAI,IAAI,EAAC,MAAM,IAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAM;gBACzC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CACpB,6BAAK,SAAS,EAAC,WAAW,IAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,CACrD,CACG,CACL,CACJ,CAAC;IACJ,CAAC;;AA3CsB,sBAAY,GAA0B;IAC3D,WAAW,EAAE,IAAI;CAClB,AAFkC,CAEjC;SAHS,SAAS","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Backstage\n */\n\nimport type { CommonProps } from \"@itwin/core-react\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport type { SafeAreaInsets } from \"../../safearea/SafeAreaInsets\";\nimport { SafeAreaInsetsHelpers } from \"../base/SafeAreaInsets\";\nimport \"./Backstage.scss\";\n\n/** Properties of [[Backstage]] component.\n * @internal\n */\nexport interface BackstageProps extends CommonProps {\n /** Backstage items and separators. I.e. [[BackstageItem]], [[BackstageSeparator]] */\n children?: React.ReactNode;\n /** Optional footer content. */\n footer?: React.ReactNode;\n /** Optional header content. I.e. [[UserProfile]] */\n header?: React.ReactNode;\n /** Describes if the backstage is open. */\n isOpen?: boolean;\n /** Function called when backstage is closed. */\n onClose?: () => void;\n /** Describes respected safe area insets. */\n safeAreaInsets?: SafeAreaInsets;\n /** Describes if a ghosting overlay is shown. */\n showOverlay: boolean;\n}\n\n/** Default properties of [[Backstage]] component.\n * @internal\n */\nexport type BackstageDefaultProps = Pick<BackstageProps, \"showOverlay\">;\n\n/** Backstage component of 9-Zone UI app.\n * @internal\n */\nexport class Backstage extends React.PureComponent<BackstageProps> {\n public static readonly defaultProps: BackstageDefaultProps = {\n showOverlay: true,\n };\n\n public override componentDidMount(): void {\n document.addEventListener(\"keydown\", this._onEsc, false);\n }\n\n public override componentWillUnmount() {\n document.removeEventListener(\"keydown\", this._onEsc, false);\n }\n\n public override render() {\n const overlayClassName = classnames(\n \"nz-backstage-backstage_overlay\",\n this.props.isOpen && \"nz-open\",\n this.props.showOverlay && \"nz-overlay\"\n );\n const backstageClassName = classnames(\n \"nz-backstage-backstage\",\n this.props.isOpen && \"nz-open\",\n this.props.safeAreaInsets &&\n SafeAreaInsetsHelpers.getCssClassNames(this.props.safeAreaInsets),\n this.props.className\n );\n return (\n <>\n <div\n className={overlayClassName}\n onClick={this._onClose}\n role=\"presentation\"\n />\n <div className={backstageClassName} style={this.props.style}>\n {this.props.header && (\n <div className=\"nz-header\">{this.props.header}</div>\n )}\n <ul role=\"menu\">{this.props.children}</ul>\n {this.props.footer && (\n <div className=\"nz-footer\">{this.props.footer}</div>\n )}\n </div>\n </>\n );\n }\n\n private _onClose = () => {\n this.props.onClose && this.props.onClose();\n };\n\n private _onEsc = (event: KeyboardEvent): void => {\n if (this.props.isOpen && event.key === Key.Escape.valueOf()) {\n this._onClose();\n }\n };\n}\n"]}
@@ -9,16 +9,16 @@ import { SafeAreaInsets } from "../../safearea/SafeAreaInsets";
9
9
  /** @internal */
10
10
  class SafeAreaInsetsHelpers {
11
11
  static isBottom(flags) {
12
- return SafeAreaInsets.Bottom === (flags & SafeAreaInsets.Bottom);
12
+ return SafeAreaInsets.Bottom.valueOf() === (flags & SafeAreaInsets.Bottom);
13
13
  }
14
14
  static isLeft(flags) {
15
- return SafeAreaInsets.Left === (flags & SafeAreaInsets.Left);
15
+ return SafeAreaInsets.Left.valueOf() === (flags & SafeAreaInsets.Left);
16
16
  }
17
17
  static isRight(flags) {
18
- return SafeAreaInsets.Right === (flags & SafeAreaInsets.Right);
18
+ return SafeAreaInsets.Right.valueOf() === (flags & SafeAreaInsets.Right);
19
19
  }
20
20
  static isTop(flags) {
21
- return SafeAreaInsets.Top === (flags & SafeAreaInsets.Top);
21
+ return SafeAreaInsets.Top.valueOf() === (flags & SafeAreaInsets.Top);
22
22
  }
23
23
  }
24
24
  SafeAreaInsetsHelpers.getCssClassNames = (flags) => {
@@ -1 +1 @@
1
- {"version":3,"file":"SafeAreaInsets.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/base/SafeAreaInsets.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,gBAAgB;AAChB,MAAa,qBAAqB;IACzB,MAAM,CAAC,QAAQ,CAAC,KAAqB;QAC1C,OAAO,cAAc,CAAC,MAAM,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,KAAqB;QACxC,OAAO,cAAc,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,KAAqB;QACzC,OAAO,cAAc,CAAC,KAAK,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAqB;QACvC,OAAO,cAAc,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAC7D,CAAC;;AAEa,sCAAgB,GAAG,CAAC,KAAqB,EAAE,EAAE;IACzD,OAAO;QACL,qBAAqB,EAAE,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC5D,mBAAmB,EAAE,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC;QACxD,oBAAoB,EAAE,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC;QAC1D,kBAAkB,EAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC;KACvD,CAAC;AACJ,CAAC,CAAC;SAxBS,qBAAqB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\nimport { SafeAreaInsets } from \"../../safearea/SafeAreaInsets\";\n\n/** @internal */\nexport class SafeAreaInsetsHelpers {\n public static isBottom(flags: SafeAreaInsets) {\n return SafeAreaInsets.Bottom === (flags & SafeAreaInsets.Bottom);\n }\n\n public static isLeft(flags: SafeAreaInsets) {\n return SafeAreaInsets.Left === (flags & SafeAreaInsets.Left);\n }\n\n public static isRight(flags: SafeAreaInsets) {\n return SafeAreaInsets.Right === (flags & SafeAreaInsets.Right);\n }\n\n public static isTop(flags: SafeAreaInsets) {\n return SafeAreaInsets.Top === (flags & SafeAreaInsets.Top);\n }\n\n public static getCssClassNames = (flags: SafeAreaInsets) => {\n return {\n \"nz-safe-area-bottom\": SafeAreaInsetsHelpers.isBottom(flags),\n \"nz-safe-area-left\": SafeAreaInsetsHelpers.isLeft(flags),\n \"nz-safe-area-right\": SafeAreaInsetsHelpers.isRight(flags),\n \"nz-safe-area-top\": SafeAreaInsetsHelpers.isTop(flags),\n };\n };\n}\n"]}
1
+ {"version":3,"file":"SafeAreaInsets.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/base/SafeAreaInsets.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,gBAAgB;AAChB,MAAa,qBAAqB;IACzB,MAAM,CAAC,QAAQ,CAAC,KAAqB;QAC1C,OAAO,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC7E,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,KAAqB;QACxC,OAAO,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,KAAqB;QACzC,OAAO,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAqB;QACvC,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACvE,CAAC;;AAEa,sCAAgB,GAAG,CAAC,KAAqB,EAAE,EAAE;IACzD,OAAO;QACL,qBAAqB,EAAE,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC5D,mBAAmB,EAAE,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC;QACxD,oBAAoB,EAAE,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC;QAC1D,kBAAkB,EAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC;KACvD,CAAC;AACJ,CAAC,CAAC;SAxBS,qBAAqB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\nimport { SafeAreaInsets } from \"../../safearea/SafeAreaInsets\";\n\n/** @internal */\nexport class SafeAreaInsetsHelpers {\n public static isBottom(flags: SafeAreaInsets) {\n return SafeAreaInsets.Bottom.valueOf() === (flags & SafeAreaInsets.Bottom);\n }\n\n public static isLeft(flags: SafeAreaInsets) {\n return SafeAreaInsets.Left.valueOf() === (flags & SafeAreaInsets.Left);\n }\n\n public static isRight(flags: SafeAreaInsets) {\n return SafeAreaInsets.Right.valueOf() === (flags & SafeAreaInsets.Right);\n }\n\n public static isTop(flags: SafeAreaInsets) {\n return SafeAreaInsets.Top.valueOf() === (flags & SafeAreaInsets.Top);\n }\n\n public static getCssClassNames = (flags: SafeAreaInsets) => {\n return {\n \"nz-safe-area-bottom\": SafeAreaInsetsHelpers.isBottom(flags),\n \"nz-safe-area-left\": SafeAreaInsetsHelpers.isLeft(flags),\n \"nz-safe-area-right\": SafeAreaInsetsHelpers.isRight(flags),\n \"nz-safe-area-top\": SafeAreaInsetsHelpers.isTop(flags),\n };\n };\n}\n"]}
@@ -11,6 +11,7 @@
11
11
  transition: transform var(--iui-duration-1) ease-in;
12
12
  width: 100%;
13
13
  height: 100%;
14
+ z-index: 1;
14
15
 
15
16
  &.nz-hidden {
16
17
  transition: none;
@@ -18,12 +19,10 @@
18
19
 
19
20
  &.nz-left,
20
21
  &.nz-right {
21
- grid-row: 2/3;
22
22
  height: 100%;
23
23
  }
24
24
 
25
25
  &.nz-left {
26
- grid-column: 1;
27
26
  transform-origin: left;
28
27
 
29
28
  &.nz-hidden {
@@ -32,7 +31,6 @@
32
31
  }
33
32
 
34
33
  &.nz-right {
35
- grid-column: 3;
36
34
  right: 0;
37
35
  transform-origin: right;
38
36
 
@@ -43,16 +41,10 @@
43
41
 
44
42
  &.nz-top,
45
43
  &.nz-bottom {
46
- grid-column: 2/3;
47
44
  width: 100%;
48
-
49
- &.nz-span {
50
- grid-column: 1/4;
51
- }
52
45
  }
53
46
 
54
47
  &.nz-top {
55
- grid-row: 1;
56
48
  transform-origin: top;
57
49
 
58
50
  &.nz-hidden {
@@ -61,7 +53,6 @@
61
53
  }
62
54
 
63
55
  &.nz-bottom {
64
- grid-row: 3;
65
56
  bottom: 0;
66
57
  transform-origin: bottom;
67
58
 
@@ -1 +1 @@
1
- {"version":3,"file":"PanelStateHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,kBAAkB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAoBlD,gBAAgB;AAChB,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,iBAAiB,EACvB,IAAI,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACjC,kBAAkB,CAMpB;AAED,gBAAgB;AAChB,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,mBAAmB,EACzB,IAAI,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACnC,oBAAoB,CAQtB;AAED,gBAAgB;AAChB,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAQ1E;AAED,gBAAgB;AAChB,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,WAAW,EAC1D,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,iBAMvD;AAED,gBAAgB;AAChB,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,iBAAiB,UAO3B;AAED,gBAAgB;AAChB,wBAAgB,YAAY,CAC1B,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAC9B,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,EAClC,OAAO,EAAE,SAAS,sBAMnB;AAED,gBAAgB;AAChB,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,EACrB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAChC,aAAa,CAEf;AAED,gBAAgB;AAChB,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,EACrB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAChC,aAAa,CAaf"}
1
+ {"version":3,"file":"PanelStateHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,kBAAkB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAoBlD,gBAAgB;AAChB,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,iBAAiB,EACvB,IAAI,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACjC,kBAAkB,CAMpB;AAED,gBAAgB;AAChB,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,mBAAmB,EACzB,IAAI,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACnC,oBAAoB,CAQtB;AAED,gBAAgB;AAChB,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAQ1E;AAED,gBAAgB;AAChB,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,WAAW,EAC1D,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,iBAMvD;AAED,gBAAgB;AAChB,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,iBAAiB,UAO3B;AAED,gBAAgB;AAChB,wBAAgB,YAAY,CAC1B,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAC9B,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,EAClC,OAAO,EAAE,SAAS,sBAMnB;AAED,gBAAgB;AAChB,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,EACrB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAChC,aAAa,CAEf;AAED,gBAAgB;AAChB,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,EACrB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAChC,aAAa,CAcf"}
@@ -84,6 +84,7 @@ export function insertPanelWidget(state, side, id, tabs, sectionIndex, widgetArg
84
84
  const panel = state.panels[side];
85
85
  const maxWidgetCount = panel.maxWidgetCount;
86
86
  if (panel.widgets.length >= maxWidgetCount)
87
+ // eslint-disable-next-line deprecation/deprecation
87
88
  throw new UiError(category, "Max widget count exceeded", undefined, () => ({
88
89
  maxWidgetCount,
89
90
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"PanelStateHelpers.js","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Base\n */\n\nimport { UiError } from \"@itwin/appui-abstract\";\nimport type { SizeProps } from \"@itwin/core-react\";\nimport produce from \"immer\";\nimport type { WritableDraft } from \"immer/dist/types/types-external\";\nimport { isHorizontalPanelSide } from \"../../widget-panels/Panel\";\nimport type {\n HorizontalPanelSide,\n PanelSide,\n VerticalPanelSide,\n} from \"../../widget-panels/PanelTypes\";\nimport type { NineZoneState } from \"../NineZoneState\";\nimport type {\n HorizontalPanelState,\n PanelMaxSizeState,\n PanelsState,\n PanelState,\n VerticalPanelState,\n} from \"../PanelState\";\nimport type { WidgetState } from \"../WidgetState\";\nimport { category } from \"./NineZoneStateHelpers\";\nimport { addWidgetState } from \"./WidgetStateHelpers\";\n\nfunction createPanelState(side: PanelSide) {\n return {\n collapseOffset: 100,\n collapsed: false,\n maxSize: 600,\n minSize: 200,\n pinned: true,\n resizable: true,\n side,\n size: undefined,\n widgets: [],\n maxWidgetCount: 2,\n splitterPercent: 50,\n };\n}\n\n/** @internal */\nexport function createVerticalPanelState(\n side: VerticalPanelSide,\n args?: Partial<VerticalPanelState>\n): VerticalPanelState {\n return {\n ...createPanelState(side),\n ...args,\n side,\n };\n}\n\n/** @internal */\nexport function createHorizontalPanelState(\n side: HorizontalPanelSide,\n args?: Partial<HorizontalPanelState>\n): HorizontalPanelState {\n return {\n ...createPanelState(side),\n minSize: 100,\n span: true,\n ...args,\n side,\n };\n}\n\n/** @internal */\nexport function createPanelsState(args?: Partial<PanelsState>): PanelsState {\n return {\n bottom: createHorizontalPanelState(\"bottom\"),\n left: createVerticalPanelState(\"left\"),\n right: createVerticalPanelState(\"right\"),\n top: createHorizontalPanelState(\"top\"),\n ...args,\n };\n}\n\n/** @internal */\nexport function updatePanelState<K extends keyof PanelsState>(\n state: NineZoneState,\n side: K,\n update: (draft: WritableDraft<PanelsState>[K]) => void\n) {\n return produce(state, (draft) => {\n const panel = draft.panels[side];\n update(panel);\n });\n}\n\n/** @internal */\nexport function getPanelMaxSize(\n side: PanelSide,\n appSize: SizeProps,\n maxSize: PanelMaxSizeState\n) {\n if (typeof maxSize === \"number\") {\n return maxSize;\n }\n const size = isHorizontalPanelSide(side) ? appSize.height : appSize.width;\n return (maxSize.percentage / 100) * size;\n}\n\n/** @internal */\nexport function getPanelSize(\n preferredSize: number | undefined,\n side: PanelSide,\n minSize: PanelState[\"minSize\"],\n maxSizeSpec: PanelState[\"maxSize\"],\n appSize: SizeProps\n) {\n if (preferredSize === undefined) return undefined;\n\n const maxSize = getPanelMaxSize(side, appSize, maxSizeSpec);\n return Math.min(Math.max(preferredSize, minSize), maxSize);\n}\n\n/** @internal */\nexport function addPanelWidget(\n state: NineZoneState,\n side: PanelSide,\n id: WidgetState[\"id\"],\n tabs: WidgetState[\"tabs\"],\n widgetArgs?: Partial<WidgetState>\n): NineZoneState {\n return insertPanelWidget(state, side, id, tabs, Infinity, widgetArgs);\n}\n\n/** @internal */\nexport function insertPanelWidget(\n state: NineZoneState,\n side: PanelSide,\n id: WidgetState[\"id\"],\n tabs: WidgetState[\"tabs\"],\n sectionIndex: number,\n widgetArgs?: Partial<WidgetState>\n): NineZoneState {\n const panel = state.panels[side];\n const maxWidgetCount = panel.maxWidgetCount;\n if (panel.widgets.length >= maxWidgetCount)\n throw new UiError(category, \"Max widget count exceeded\", undefined, () => ({\n maxWidgetCount,\n }));\n\n state = addWidgetState(state, id, tabs, widgetArgs);\n return produce(state, (draft) => {\n const widgets = draft.panels[side].widgets;\n widgets.splice(sectionIndex, 0, id);\n });\n}\n"]}
1
+ {"version":3,"file":"PanelStateHelpers.js","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Base\n */\n\nimport { UiError } from \"@itwin/appui-abstract\";\nimport type { SizeProps } from \"@itwin/core-react\";\nimport produce from \"immer\";\nimport type { WritableDraft } from \"immer/dist/types/types-external\";\nimport { isHorizontalPanelSide } from \"../../widget-panels/Panel\";\nimport type {\n HorizontalPanelSide,\n PanelSide,\n VerticalPanelSide,\n} from \"../../widget-panels/PanelTypes\";\nimport type { NineZoneState } from \"../NineZoneState\";\nimport type {\n HorizontalPanelState,\n PanelMaxSizeState,\n PanelsState,\n PanelState,\n VerticalPanelState,\n} from \"../PanelState\";\nimport type { WidgetState } from \"../WidgetState\";\nimport { category } from \"./NineZoneStateHelpers\";\nimport { addWidgetState } from \"./WidgetStateHelpers\";\n\nfunction createPanelState(side: PanelSide) {\n return {\n collapseOffset: 100,\n collapsed: false,\n maxSize: 600,\n minSize: 200,\n pinned: true,\n resizable: true,\n side,\n size: undefined,\n widgets: [],\n maxWidgetCount: 2,\n splitterPercent: 50,\n };\n}\n\n/** @internal */\nexport function createVerticalPanelState(\n side: VerticalPanelSide,\n args?: Partial<VerticalPanelState>\n): VerticalPanelState {\n return {\n ...createPanelState(side),\n ...args,\n side,\n };\n}\n\n/** @internal */\nexport function createHorizontalPanelState(\n side: HorizontalPanelSide,\n args?: Partial<HorizontalPanelState>\n): HorizontalPanelState {\n return {\n ...createPanelState(side),\n minSize: 100,\n span: true,\n ...args,\n side,\n };\n}\n\n/** @internal */\nexport function createPanelsState(args?: Partial<PanelsState>): PanelsState {\n return {\n bottom: createHorizontalPanelState(\"bottom\"),\n left: createVerticalPanelState(\"left\"),\n right: createVerticalPanelState(\"right\"),\n top: createHorizontalPanelState(\"top\"),\n ...args,\n };\n}\n\n/** @internal */\nexport function updatePanelState<K extends keyof PanelsState>(\n state: NineZoneState,\n side: K,\n update: (draft: WritableDraft<PanelsState>[K]) => void\n) {\n return produce(state, (draft) => {\n const panel = draft.panels[side];\n update(panel);\n });\n}\n\n/** @internal */\nexport function getPanelMaxSize(\n side: PanelSide,\n appSize: SizeProps,\n maxSize: PanelMaxSizeState\n) {\n if (typeof maxSize === \"number\") {\n return maxSize;\n }\n const size = isHorizontalPanelSide(side) ? appSize.height : appSize.width;\n return (maxSize.percentage / 100) * size;\n}\n\n/** @internal */\nexport function getPanelSize(\n preferredSize: number | undefined,\n side: PanelSide,\n minSize: PanelState[\"minSize\"],\n maxSizeSpec: PanelState[\"maxSize\"],\n appSize: SizeProps\n) {\n if (preferredSize === undefined) return undefined;\n\n const maxSize = getPanelMaxSize(side, appSize, maxSizeSpec);\n return Math.min(Math.max(preferredSize, minSize), maxSize);\n}\n\n/** @internal */\nexport function addPanelWidget(\n state: NineZoneState,\n side: PanelSide,\n id: WidgetState[\"id\"],\n tabs: WidgetState[\"tabs\"],\n widgetArgs?: Partial<WidgetState>\n): NineZoneState {\n return insertPanelWidget(state, side, id, tabs, Infinity, widgetArgs);\n}\n\n/** @internal */\nexport function insertPanelWidget(\n state: NineZoneState,\n side: PanelSide,\n id: WidgetState[\"id\"],\n tabs: WidgetState[\"tabs\"],\n sectionIndex: number,\n widgetArgs?: Partial<WidgetState>\n): NineZoneState {\n const panel = state.panels[side];\n const maxWidgetCount = panel.maxWidgetCount;\n if (panel.widgets.length >= maxWidgetCount)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(category, \"Max widget count exceeded\", undefined, () => ({\n maxWidgetCount,\n }));\n\n state = addWidgetState(state, id, tabs, widgetArgs);\n return produce(state, (draft) => {\n const widgets = draft.panels[side].widgets;\n widgets.splice(sectionIndex, 0, id);\n });\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TabStateHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/TabStateHelpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAUzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMlD,gBAAgB;AAChB,wBAAgB,cAAc,CAC5B,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GACvB,QAAQ,CAOV;AAED,gBAAgB;AAChB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,EAC/B,IAAI,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAC9B,eAAe,CAWjB;AAED,gBAAgB;AAChB,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,IAAI,iBASjD;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,KAAK,IAAI,iBAiBtD;AAED;;GAEG;AACH,wBAAgB,MAAM,CACpB,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,OAAO,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GAC1B,aAAa,CASf;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,EACrB,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,GAC1B,aAAa,CAEf;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,EACrB,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,EAC3B,QAAQ,EAAE,MAAM,GACf,aAAa,CAmBf;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GACpB,aAAa,CAqBf;AAED;;GAEG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GACpB,aAAa,CAWf;AASD;;GAEG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GACpB,aAAa,CA+Cf"}
1
+ {"version":3,"file":"TabStateHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/TabStateHelpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAUzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMlD,gBAAgB;AAChB,wBAAgB,cAAc,CAC5B,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GACvB,QAAQ,CAOV;AAED,gBAAgB;AAChB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,EAC/B,IAAI,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAC9B,eAAe,CAWjB;AAED,gBAAgB;AAChB,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,IAAI,iBASjD;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,KAAK,IAAI,iBAiBtD;AAED;;GAEG;AACH,wBAAgB,MAAM,CACpB,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAClB,OAAO,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GAC1B,aAAa,CAUf;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,EACrB,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,GAC1B,aAAa,CAEf;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,EACrB,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,EAC3B,QAAQ,EAAE,MAAM,GACf,aAAa,CAqBf;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GACpB,aAAa,CAqBf;AAED;;GAEG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GACpB,aAAa,CAYf;AASD;;GAEG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GACpB,aAAa,CAgDf"}
@@ -68,6 +68,7 @@ export function updateSavedTabState(state, id, update) {
68
68
  * @internal
69
69
  */
70
70
  export function addTab(state, id, tabArgs) {
71
+ // eslint-disable-next-line deprecation/deprecation
71
72
  if (id in state.tabs)
72
73
  throw new UiError(category, "Tab already exists");
73
74
  const tab = {
@@ -89,12 +90,14 @@ export function addTabToWidget(state, tabId, widgetId) {
89
90
  */
90
91
  export function insertTabToWidget(state, tabId, widgetId, tabIndex) {
91
92
  if (!(tabId in state.tabs))
93
+ // eslint-disable-next-line deprecation/deprecation
92
94
  throw new UiError(category, "Tab does not exist", undefined, () => ({
93
95
  tabId,
94
96
  }));
95
97
  assertWidgetState(state, widgetId);
96
98
  const location = getTabLocation(state, tabId);
97
99
  if (location)
100
+ // eslint-disable-next-line deprecation/deprecation
98
101
  throw new UiError(category, "Tab is already in a widget", undefined, () => ({ tabId, widgetId: location.widgetId }));
99
102
  return produce(state, (draft) => {
100
103
  const widget = getWidgetState(draft, widgetId);
@@ -127,6 +130,7 @@ export function removeTabFromWidget(state, tabId) {
127
130
  * @internal
128
131
  */
129
132
  export function removeTab(state, tabId) {
133
+ // eslint-disable-next-line deprecation/deprecation
130
134
  if (!(tabId in state.tabs))
131
135
  throw new UiError(category, "Tab does not exist");
132
136
  state = removeTabFromWidget(state, tabId);
@@ -148,6 +152,7 @@ const defaultHomeState = {
148
152
  */
149
153
  export function addRemovedTab(state, tabId) {
150
154
  if (!(tabId in state.tabs))
155
+ // eslint-disable-next-line deprecation/deprecation
151
156
  throw new UiError(category, "Tab does not exist", undefined, () => ({
152
157
  tabId,
153
158
  }));