@itwin/appui-react 4.0.0 → 4.0.1

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 (731) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/lib/cjs/appui-react/UiFramework.js +5 -9
  3. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  4. package/lib/cjs/appui-react/_variables.scss +11 -11
  5. package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
  6. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  7. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.scss +14 -14
  8. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  9. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.scss +27 -27
  10. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  11. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +4 -1
  12. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  13. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +55 -55
  14. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
  15. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/AccuDrawUiSettings.js.map +1 -1
  17. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  18. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  19. package/lib/cjs/appui-react/accudraw/Calculator.scss +84 -84
  20. package/lib/cjs/appui-react/accudraw/CalculatorEngine.js.map +1 -1
  21. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  22. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  23. package/lib/cjs/appui-react/accudraw/MenuButton.js.map +1 -1
  24. package/lib/cjs/appui-react/accudraw/MenuButton.scss +18 -18
  25. package/lib/cjs/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
  26. package/lib/cjs/appui-react/accudraw/SquareButton.js.map +1 -1
  27. package/lib/cjs/appui-react/accudraw/SquareButton.scss +29 -29
  28. package/lib/cjs/appui-react/accudraw/backspace.svg +9 -9
  29. package/lib/cjs/appui-react/accudraw/constraint-2d.svg +11 -11
  30. package/lib/cjs/appui-react/accudraw/height-2.svg +10 -10
  31. package/lib/cjs/appui-react/accudraw/height.svg +11 -11
  32. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  33. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -2
  34. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  35. package/lib/cjs/appui-react/backstage/BackstageItem.js.map +1 -1
  36. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  37. package/lib/cjs/appui-react/backstage/BackstageItemsManager.js.map +1 -1
  38. package/lib/cjs/appui-react/backstage/BackstageManager.js.map +1 -1
  39. package/lib/cjs/appui-react/backstage/InternalBackstageManager.js.map +1 -1
  40. package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
  41. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  42. package/lib/cjs/appui-react/childwindow/CopyStyles.js.map +1 -1
  43. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +24 -25
  44. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  45. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.scss +14 -14
  46. package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +1 -1
  47. package/lib/cjs/appui-react/childwindow/PopoutWidget.scss +10 -10
  48. package/lib/cjs/appui-react/configurableui/ActivityTracker.js.map +1 -1
  49. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  50. package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
  51. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
  52. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  53. package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
  54. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  55. package/lib/cjs/appui-react/configurableui/configurableui.scss +74 -74
  56. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  57. package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
  58. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  59. package/lib/cjs/appui-react/content/ContentLayout.js +6 -11
  60. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  61. package/lib/cjs/appui-react/content/ContentLayout.scss +99 -99
  62. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
  63. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  64. package/lib/cjs/appui-react/content/DefaultViewOverlay.scss +46 -46
  65. package/lib/cjs/appui-react/content/FloatingViewportContent.js +1 -2
  66. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  67. package/lib/cjs/appui-react/content/IModelViewport.js +3 -6
  68. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  69. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
  70. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  71. package/lib/cjs/appui-react/content/InternalContentViewManager.js +1 -1
  72. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  73. package/lib/cjs/appui-react/content/StageContentLayout.js.map +1 -1
  74. package/lib/cjs/appui-react/content/ViewStateHelper.js.map +1 -1
  75. package/lib/cjs/appui-react/content/ViewportContentControl.js.map +1 -1
  76. package/lib/cjs/appui-react/content/split-pane/Pane.js.map +1 -1
  77. package/lib/cjs/appui-react/content/split-pane/Resizer.js.map +1 -1
  78. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +8 -12
  79. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  80. package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
  81. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
  82. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  83. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  84. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.scss +34 -34
  85. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  86. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  87. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.scss +30 -30
  88. package/lib/cjs/appui-react/dialog/ContentDialog.js +3 -6
  89. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  90. package/lib/cjs/appui-react/dialog/ContentDialog.scss +25 -25
  91. package/lib/cjs/appui-react/dialog/ContentDialogManager.js.map +1 -1
  92. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +2 -3
  93. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  94. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  95. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  96. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  97. package/lib/cjs/appui-react/dialog/ModalDialogManager.js.map +1 -1
  98. package/lib/cjs/appui-react/dialog/ModelessDialog.js.map +1 -1
  99. package/lib/cjs/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  100. package/lib/cjs/appui-react/dialog/StandardMessageBox.js.map +1 -1
  101. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  102. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  103. package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
  104. package/lib/cjs/appui-react/feedback/ValidationTextbox.scss +50 -50
  105. package/lib/cjs/appui-react/framework/FrameworkBackstage.js.map +1 -1
  106. package/lib/cjs/appui-react/framework/FrameworkChildWindows.js.map +1 -1
  107. package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
  108. package/lib/cjs/appui-react/framework/FrameworkControls.js.map +1 -1
  109. package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
  110. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  111. package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
  112. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  113. package/lib/cjs/appui-react/framework/FrameworkVisibility.js.map +1 -1
  114. package/lib/cjs/appui-react/frontstage/FrontstageConfig.js.map +1 -1
  115. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +3 -4
  116. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  117. package/lib/cjs/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  118. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  119. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  120. package/lib/cjs/appui-react/frontstage/ModalFrontstage.scss +80 -80
  121. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +2 -3
  122. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  123. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.scss +11 -11
  124. package/lib/cjs/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  125. package/lib/cjs/appui-react/frontstage/StageUsage.js.map +1 -1
  126. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  127. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  128. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  129. package/lib/cjs/appui-react/hooks/useActiveStageId.js.map +1 -1
  130. package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
  131. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  132. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  133. package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
  134. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  135. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  136. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  137. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
  138. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  139. package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
  140. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  141. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  142. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  143. package/lib/cjs/appui-react/messages/ActivityMessage.js +5 -7
  144. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
  145. package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
  146. package/lib/cjs/appui-react/messages/HollowIcon.js.map +1 -1
  147. package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
  148. package/lib/cjs/appui-react/messages/InputField.scss +82 -82
  149. package/lib/cjs/appui-react/messages/MessageLabel.js.map +1 -1
  150. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  151. package/lib/cjs/appui-react/messages/MessageSpan.js.map +1 -1
  152. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  153. package/lib/cjs/appui-react/messages/Pointer.scss +42 -42
  154. package/lib/cjs/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
  155. package/lib/cjs/appui-react/messages/StatusMessageManager.js.map +1 -1
  156. package/lib/cjs/appui-react/messages/getToastCategory.js.map +1 -1
  157. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  158. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  159. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  160. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  161. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.scss +67 -67
  162. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  163. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.scss +72 -72
  164. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  165. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.scss +13 -13
  166. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  167. package/lib/cjs/appui-react/pickers/ListPicker.scss +305 -305
  168. package/lib/cjs/appui-react/pickers/ViewSelector.js +4 -4
  169. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  170. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  171. package/lib/cjs/appui-react/popup/CardPopup.scss +25 -25
  172. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  173. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  174. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +1 -2
  175. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  176. package/lib/cjs/appui-react/popup/KeyinPalettePanel.scss +30 -30
  177. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  178. package/lib/cjs/appui-react/popup/PopupManager.js +1 -2
  179. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  180. package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
  181. package/lib/cjs/appui-react/popup/PositionPopup.scss +28 -28
  182. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  183. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  184. package/lib/cjs/appui-react/redux/FrameworkState.js.map +1 -1
  185. package/lib/cjs/appui-react/redux/ReducerRegistry.js.map +1 -1
  186. package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
  187. package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
  188. package/lib/cjs/appui-react/redux/connectIModel.js.map +1 -1
  189. package/lib/cjs/appui-react/redux/redux-ts.js.map +1 -1
  190. package/lib/cjs/appui-react/safearea/SafeAreaContext.js.map +1 -1
  191. package/lib/cjs/appui-react/safearea/SafeAreaHelpers.js.map +1 -1
  192. package/lib/cjs/appui-react/safearea/SafeAreaInsets.js.map +1 -1
  193. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  194. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  195. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +1 -1
  196. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  197. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.scss +119 -119
  198. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  199. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  200. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.scss +65 -65
  201. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  202. package/lib/cjs/appui-react/shared/AnyItemDef.js.map +1 -1
  203. package/lib/cjs/appui-react/shared/AnyToolbarItemDef.js.map +1 -1
  204. package/lib/cjs/appui-react/shared/CommandItemDef.js.map +1 -1
  205. package/lib/cjs/appui-react/shared/CustomItemDef.js.map +1 -1
  206. package/lib/cjs/appui-react/shared/CustomItemProps.js.map +1 -1
  207. package/lib/cjs/appui-react/shared/GroupItemProps.js.map +1 -1
  208. package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
  209. package/lib/cjs/appui-react/shared/ItemMap.js.map +1 -1
  210. package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
  211. package/lib/cjs/appui-react/shared/MenuItem.js.map +1 -1
  212. package/lib/cjs/appui-react/shared/SelectionScope.js.map +1 -1
  213. package/lib/cjs/appui-react/shared/ToolItemDef.js.map +1 -1
  214. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
  215. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +5 -7
  216. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  217. package/lib/cjs/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
  218. package/lib/cjs/appui-react/stagepanels/StagePanelSection.js.map +1 -1
  219. package/lib/cjs/appui-react/statusbar/Field.js.map +1 -1
  220. package/lib/cjs/appui-react/statusbar/Field.scss +109 -109
  221. package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
  222. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  223. package/lib/cjs/appui-react/statusbar/LabelIndicator.js.map +1 -1
  224. package/lib/cjs/appui-react/statusbar/LabelIndicator.scss +43 -43
  225. package/lib/cjs/appui-react/statusbar/Overflow.js.map +1 -1
  226. package/lib/cjs/appui-react/statusbar/Overflow.scss +27 -27
  227. package/lib/cjs/appui-react/statusbar/OverflowPanel.js.map +1 -1
  228. package/lib/cjs/appui-react/statusbar/OverflowPanel.scss +22 -22
  229. package/lib/cjs/appui-react/statusbar/Popup.js.map +1 -1
  230. package/lib/cjs/appui-react/statusbar/Separator.js.map +1 -1
  231. package/lib/cjs/appui-react/statusbar/Separator.scss +12 -12
  232. package/lib/cjs/appui-react/statusbar/StatusBar.js +3 -5
  233. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  234. package/lib/cjs/appui-react/statusbar/StatusBar.scss +41 -41
  235. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  236. package/lib/cjs/appui-react/statusbar/StatusBarItem.js.map +1 -1
  237. package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
  238. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  239. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  240. package/lib/cjs/appui-react/statusbar/dialog/Button.js.map +1 -1
  241. package/lib/cjs/appui-react/statusbar/dialog/Dialog.js.map +1 -1
  242. package/lib/cjs/appui-react/statusbar/dialog/TitleBar.js.map +1 -1
  243. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  244. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  245. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  246. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  247. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  248. package/lib/cjs/appui-react/statusfields/SectionsField.scss +35 -35
  249. package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
  250. package/lib/cjs/appui-react/statusfields/SelectionInfo.scss +14 -14
  251. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  252. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +46 -46
  253. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  254. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  255. package/lib/cjs/appui-react/statusfields/ViewAttributes.scss +10 -10
  256. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  257. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +45 -45
  258. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +1 -1
  259. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  260. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +194 -194
  261. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  262. package/lib/cjs/appui-react/theme/ThemeManager.js +1 -2
  263. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  264. package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
  265. package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
  266. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  267. package/lib/cjs/appui-react/toolbar/DragInteraction.js.map +1 -1
  268. package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
  269. package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
  270. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  271. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  272. package/lib/cjs/appui-react/toolbar/ToolbarItem.js.map +1 -1
  273. package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
  274. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
  275. package/lib/cjs/appui-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  276. package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.js.map +1 -1
  277. package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
  278. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  279. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +7 -14
  280. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  281. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  282. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  283. package/lib/cjs/appui-react/tools/OpenSettingsTool.js.map +1 -1
  284. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  285. package/lib/cjs/appui-react/tools/ToolSettingsTools.js.map +1 -1
  286. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +1 -2
  287. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  288. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  289. package/lib/cjs/appui-react/toolsettings/ToolInformation.js.map +1 -1
  290. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  291. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -1
  292. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +25 -18
  293. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  294. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  295. package/lib/cjs/appui-react/ui-items-provider/ProviderItem.js.map +1 -1
  296. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  297. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +8 -10
  298. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  299. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  300. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  301. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  302. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
  303. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  304. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +8 -14
  305. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  306. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
  307. package/lib/cjs/appui-react/ui-items-provider/isProviderItem.js.map +1 -1
  308. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
  309. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  310. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +1 -1
  311. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  312. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  313. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +212 -212
  314. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  315. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  316. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +3 -3
  317. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  318. package/lib/cjs/appui-react/utils/PropsHelper.d.ts.map +1 -1
  319. package/lib/cjs/appui-react/utils/PropsHelper.js +2 -1
  320. package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
  321. package/lib/cjs/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
  322. package/lib/cjs/appui-react/utils/ViewUtilities.js.map +1 -1
  323. package/lib/cjs/appui-react/widget-panels/Content.js +7 -8
  324. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  325. package/lib/cjs/appui-react/widget-panels/FloatingWidget.js.map +1 -1
  326. package/lib/cjs/appui-react/widget-panels/Frontstage.js +30 -39
  327. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  328. package/lib/cjs/appui-react/widget-panels/Frontstage.scss +19 -19
  329. package/lib/cjs/appui-react/widget-panels/FrontstageContent.js.map +1 -1
  330. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  331. package/lib/cjs/appui-react/widget-panels/StatusBar.js +1 -1
  332. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  333. package/lib/cjs/appui-react/widget-panels/StatusBar.scss +10 -10
  334. package/lib/cjs/appui-react/widget-panels/Tab.js +1 -1
  335. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  336. package/lib/cjs/appui-react/widget-panels/Tab.scss +14 -14
  337. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +9 -17
  338. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  339. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +41 -41
  340. package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
  341. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  342. package/lib/cjs/appui-react/widget-panels/Toolbars.scss +20 -20
  343. package/lib/cjs/appui-react/widget-panels/useTransientState.js.map +1 -1
  344. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  345. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  346. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  347. package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
  348. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  349. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +2 -2
  350. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  351. package/lib/cjs/appui-react/widgets/StableWidgetDef.js.map +1 -1
  352. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  353. package/lib/cjs/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  354. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  355. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  356. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
  357. package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -1
  358. package/lib/cjs/appui-react/widgets/WidgetControl.js.map +1 -1
  359. package/lib/cjs/appui-react/widgets/WidgetDef.js +1 -1
  360. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  361. package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
  362. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  363. package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
  364. package/lib/cjs/appui-react/widgets/WidgetState.js.map +1 -1
  365. package/lib/cjs/appui-react.js.map +1 -1
  366. package/lib/esm/appui-react/UiFramework.js +5 -9
  367. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  368. package/lib/esm/appui-react/_variables.scss +11 -11
  369. package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
  370. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  371. package/lib/esm/appui-react/accudraw/AccuDrawDialog.scss +14 -14
  372. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  373. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.scss +27 -27
  374. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  375. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +4 -1
  376. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  377. package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +55 -55
  378. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
  379. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  380. package/lib/esm/appui-react/accudraw/AccuDrawUiSettings.js.map +1 -1
  381. package/lib/esm/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  382. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  383. package/lib/esm/appui-react/accudraw/Calculator.scss +84 -84
  384. package/lib/esm/appui-react/accudraw/CalculatorEngine.js.map +1 -1
  385. package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  386. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  387. package/lib/esm/appui-react/accudraw/MenuButton.js.map +1 -1
  388. package/lib/esm/appui-react/accudraw/MenuButton.scss +18 -18
  389. package/lib/esm/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
  390. package/lib/esm/appui-react/accudraw/SquareButton.js.map +1 -1
  391. package/lib/esm/appui-react/accudraw/SquareButton.scss +29 -29
  392. package/lib/esm/appui-react/accudraw/backspace.svg +9 -9
  393. package/lib/esm/appui-react/accudraw/constraint-2d.svg +11 -11
  394. package/lib/esm/appui-react/accudraw/height-2.svg +10 -10
  395. package/lib/esm/appui-react/accudraw/height.svg +11 -11
  396. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  397. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -2
  398. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  399. package/lib/esm/appui-react/backstage/BackstageItem.js.map +1 -1
  400. package/lib/esm/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  401. package/lib/esm/appui-react/backstage/BackstageItemsManager.js.map +1 -1
  402. package/lib/esm/appui-react/backstage/BackstageManager.js.map +1 -1
  403. package/lib/esm/appui-react/backstage/InternalBackstageManager.js.map +1 -1
  404. package/lib/esm/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
  405. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  406. package/lib/esm/appui-react/childwindow/CopyStyles.js.map +1 -1
  407. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +24 -25
  408. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  409. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.scss +14 -14
  410. package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +1 -1
  411. package/lib/esm/appui-react/childwindow/PopoutWidget.scss +10 -10
  412. package/lib/esm/appui-react/configurableui/ActivityTracker.js.map +1 -1
  413. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  414. package/lib/esm/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
  415. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
  416. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  417. package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
  418. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  419. package/lib/esm/appui-react/configurableui/configurableui.scss +74 -74
  420. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  421. package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
  422. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  423. package/lib/esm/appui-react/content/ContentLayout.js +6 -11
  424. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  425. package/lib/esm/appui-react/content/ContentLayout.scss +99 -99
  426. package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
  427. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  428. package/lib/esm/appui-react/content/DefaultViewOverlay.scss +46 -46
  429. package/lib/esm/appui-react/content/FloatingViewportContent.js +1 -2
  430. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  431. package/lib/esm/appui-react/content/IModelViewport.js +3 -6
  432. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  433. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
  434. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  435. package/lib/esm/appui-react/content/InternalContentViewManager.js +1 -1
  436. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  437. package/lib/esm/appui-react/content/StageContentLayout.js.map +1 -1
  438. package/lib/esm/appui-react/content/ViewStateHelper.js.map +1 -1
  439. package/lib/esm/appui-react/content/ViewportContentControl.js.map +1 -1
  440. package/lib/esm/appui-react/content/split-pane/Pane.js.map +1 -1
  441. package/lib/esm/appui-react/content/split-pane/Resizer.js.map +1 -1
  442. package/lib/esm/appui-react/content/split-pane/SplitPane.js +8 -12
  443. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  444. package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
  445. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
  446. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  447. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  448. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.scss +34 -34
  449. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  450. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  451. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.scss +30 -30
  452. package/lib/esm/appui-react/dialog/ContentDialog.js +3 -6
  453. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  454. package/lib/esm/appui-react/dialog/ContentDialog.scss +25 -25
  455. package/lib/esm/appui-react/dialog/ContentDialogManager.js.map +1 -1
  456. package/lib/esm/appui-react/dialog/DialogManagerBase.js +2 -3
  457. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  458. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  459. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  460. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  461. package/lib/esm/appui-react/dialog/ModalDialogManager.js.map +1 -1
  462. package/lib/esm/appui-react/dialog/ModelessDialog.js.map +1 -1
  463. package/lib/esm/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  464. package/lib/esm/appui-react/dialog/StandardMessageBox.js.map +1 -1
  465. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  466. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  467. package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
  468. package/lib/esm/appui-react/feedback/ValidationTextbox.scss +50 -50
  469. package/lib/esm/appui-react/framework/FrameworkBackstage.js.map +1 -1
  470. package/lib/esm/appui-react/framework/FrameworkChildWindows.js.map +1 -1
  471. package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
  472. package/lib/esm/appui-react/framework/FrameworkControls.js.map +1 -1
  473. package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
  474. package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  475. package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
  476. package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  477. package/lib/esm/appui-react/framework/FrameworkVisibility.js.map +1 -1
  478. package/lib/esm/appui-react/frontstage/FrontstageConfig.js.map +1 -1
  479. package/lib/esm/appui-react/frontstage/FrontstageDef.js +3 -4
  480. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  481. package/lib/esm/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  482. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  483. package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  484. package/lib/esm/appui-react/frontstage/ModalFrontstage.scss +80 -80
  485. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +2 -3
  486. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  487. package/lib/esm/appui-react/frontstage/ModalSettingsStage.scss +11 -11
  488. package/lib/esm/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  489. package/lib/esm/appui-react/frontstage/StageUsage.js.map +1 -1
  490. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  491. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  492. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  493. package/lib/esm/appui-react/hooks/useActiveStageId.js.map +1 -1
  494. package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
  495. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  496. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  497. package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
  498. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  499. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  500. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  501. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
  502. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  503. package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
  504. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  505. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  506. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  507. package/lib/esm/appui-react/messages/ActivityMessage.js +5 -7
  508. package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
  509. package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
  510. package/lib/esm/appui-react/messages/HollowIcon.js.map +1 -1
  511. package/lib/esm/appui-react/messages/InputField.js.map +1 -1
  512. package/lib/esm/appui-react/messages/InputField.scss +82 -82
  513. package/lib/esm/appui-react/messages/MessageLabel.js.map +1 -1
  514. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  515. package/lib/esm/appui-react/messages/MessageSpan.js.map +1 -1
  516. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  517. package/lib/esm/appui-react/messages/Pointer.scss +42 -42
  518. package/lib/esm/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
  519. package/lib/esm/appui-react/messages/StatusMessageManager.js.map +1 -1
  520. package/lib/esm/appui-react/messages/getToastCategory.js.map +1 -1
  521. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  522. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  523. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  524. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  525. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.scss +67 -67
  526. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  527. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.scss +72 -72
  528. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  529. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.scss +13 -13
  530. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  531. package/lib/esm/appui-react/pickers/ListPicker.scss +305 -305
  532. package/lib/esm/appui-react/pickers/ViewSelector.js +4 -4
  533. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  534. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  535. package/lib/esm/appui-react/popup/CardPopup.scss +25 -25
  536. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  537. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  538. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +1 -2
  539. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  540. package/lib/esm/appui-react/popup/KeyinPalettePanel.scss +30 -30
  541. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  542. package/lib/esm/appui-react/popup/PopupManager.js +1 -2
  543. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  544. package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
  545. package/lib/esm/appui-react/popup/PositionPopup.scss +28 -28
  546. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  547. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  548. package/lib/esm/appui-react/redux/FrameworkState.js.map +1 -1
  549. package/lib/esm/appui-react/redux/ReducerRegistry.js.map +1 -1
  550. package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
  551. package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
  552. package/lib/esm/appui-react/redux/connectIModel.js.map +1 -1
  553. package/lib/esm/appui-react/redux/redux-ts.js.map +1 -1
  554. package/lib/esm/appui-react/safearea/SafeAreaContext.js.map +1 -1
  555. package/lib/esm/appui-react/safearea/SafeAreaHelpers.js.map +1 -1
  556. package/lib/esm/appui-react/safearea/SafeAreaInsets.js.map +1 -1
  557. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  558. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  559. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +1 -1
  560. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  561. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.scss +119 -119
  562. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  563. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  564. package/lib/esm/appui-react/settings/ui/UiSettingsPage.scss +65 -65
  565. package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  566. package/lib/esm/appui-react/shared/AnyItemDef.js.map +1 -1
  567. package/lib/esm/appui-react/shared/AnyToolbarItemDef.js.map +1 -1
  568. package/lib/esm/appui-react/shared/CommandItemDef.js.map +1 -1
  569. package/lib/esm/appui-react/shared/CustomItemDef.js.map +1 -1
  570. package/lib/esm/appui-react/shared/CustomItemProps.js.map +1 -1
  571. package/lib/esm/appui-react/shared/GroupItemProps.js.map +1 -1
  572. package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
  573. package/lib/esm/appui-react/shared/ItemMap.js.map +1 -1
  574. package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
  575. package/lib/esm/appui-react/shared/MenuItem.js.map +1 -1
  576. package/lib/esm/appui-react/shared/SelectionScope.js.map +1 -1
  577. package/lib/esm/appui-react/shared/ToolItemDef.js.map +1 -1
  578. package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
  579. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +5 -7
  580. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  581. package/lib/esm/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
  582. package/lib/esm/appui-react/stagepanels/StagePanelSection.js.map +1 -1
  583. package/lib/esm/appui-react/statusbar/Field.js.map +1 -1
  584. package/lib/esm/appui-react/statusbar/Field.scss +109 -109
  585. package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
  586. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  587. package/lib/esm/appui-react/statusbar/LabelIndicator.js.map +1 -1
  588. package/lib/esm/appui-react/statusbar/LabelIndicator.scss +43 -43
  589. package/lib/esm/appui-react/statusbar/Overflow.js.map +1 -1
  590. package/lib/esm/appui-react/statusbar/Overflow.scss +27 -27
  591. package/lib/esm/appui-react/statusbar/OverflowPanel.js.map +1 -1
  592. package/lib/esm/appui-react/statusbar/OverflowPanel.scss +22 -22
  593. package/lib/esm/appui-react/statusbar/Popup.js.map +1 -1
  594. package/lib/esm/appui-react/statusbar/Separator.js.map +1 -1
  595. package/lib/esm/appui-react/statusbar/Separator.scss +12 -12
  596. package/lib/esm/appui-react/statusbar/StatusBar.js +3 -5
  597. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  598. package/lib/esm/appui-react/statusbar/StatusBar.scss +41 -41
  599. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  600. package/lib/esm/appui-react/statusbar/StatusBarItem.js.map +1 -1
  601. package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
  602. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  603. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  604. package/lib/esm/appui-react/statusbar/dialog/Button.js.map +1 -1
  605. package/lib/esm/appui-react/statusbar/dialog/Dialog.js.map +1 -1
  606. package/lib/esm/appui-react/statusbar/dialog/TitleBar.js.map +1 -1
  607. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  608. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  609. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  610. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  611. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  612. package/lib/esm/appui-react/statusfields/SectionsField.scss +35 -35
  613. package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
  614. package/lib/esm/appui-react/statusfields/SelectionInfo.scss +14 -14
  615. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  616. package/lib/esm/appui-react/statusfields/SelectionScope.scss +46 -46
  617. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  618. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  619. package/lib/esm/appui-react/statusfields/ViewAttributes.scss +10 -10
  620. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  621. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +45 -45
  622. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +1 -1
  623. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  624. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +194 -194
  625. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  626. package/lib/esm/appui-react/theme/ThemeManager.js +1 -2
  627. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  628. package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
  629. package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
  630. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  631. package/lib/esm/appui-react/toolbar/DragInteraction.js.map +1 -1
  632. package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
  633. package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
  634. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  635. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  636. package/lib/esm/appui-react/toolbar/ToolbarItem.js.map +1 -1
  637. package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
  638. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
  639. package/lib/esm/appui-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  640. package/lib/esm/appui-react/toolbar/toUIAToolbarItem.js.map +1 -1
  641. package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
  642. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  643. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +7 -14
  644. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  645. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  646. package/lib/esm/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  647. package/lib/esm/appui-react/tools/OpenSettingsTool.js.map +1 -1
  648. package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  649. package/lib/esm/appui-react/tools/ToolSettingsTools.js.map +1 -1
  650. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +1 -2
  651. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  652. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  653. package/lib/esm/appui-react/toolsettings/ToolInformation.js.map +1 -1
  654. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  655. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -1
  656. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +25 -18
  657. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  658. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  659. package/lib/esm/appui-react/ui-items-provider/ProviderItem.js.map +1 -1
  660. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  661. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +8 -10
  662. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  663. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  664. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  665. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  666. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
  667. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  668. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +8 -14
  669. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  670. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
  671. package/lib/esm/appui-react/ui-items-provider/isProviderItem.js.map +1 -1
  672. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
  673. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  674. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +1 -1
  675. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  676. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  677. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +212 -212
  678. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  679. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  680. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +3 -3
  681. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  682. package/lib/esm/appui-react/utils/PropsHelper.d.ts.map +1 -1
  683. package/lib/esm/appui-react/utils/PropsHelper.js +2 -1
  684. package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
  685. package/lib/esm/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
  686. package/lib/esm/appui-react/utils/ViewUtilities.js.map +1 -1
  687. package/lib/esm/appui-react/widget-panels/Content.js +7 -8
  688. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  689. package/lib/esm/appui-react/widget-panels/FloatingWidget.js.map +1 -1
  690. package/lib/esm/appui-react/widget-panels/Frontstage.js +30 -39
  691. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  692. package/lib/esm/appui-react/widget-panels/Frontstage.scss +19 -19
  693. package/lib/esm/appui-react/widget-panels/FrontstageContent.js.map +1 -1
  694. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  695. package/lib/esm/appui-react/widget-panels/StatusBar.js +1 -1
  696. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  697. package/lib/esm/appui-react/widget-panels/StatusBar.scss +10 -10
  698. package/lib/esm/appui-react/widget-panels/Tab.js +1 -1
  699. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  700. package/lib/esm/appui-react/widget-panels/Tab.scss +14 -14
  701. package/lib/esm/appui-react/widget-panels/ToolSettings.js +9 -17
  702. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  703. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +41 -41
  704. package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
  705. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  706. package/lib/esm/appui-react/widget-panels/Toolbars.scss +20 -20
  707. package/lib/esm/appui-react/widget-panels/useTransientState.js.map +1 -1
  708. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  709. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  710. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  711. package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
  712. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  713. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +2 -2
  714. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  715. package/lib/esm/appui-react/widgets/StableWidgetDef.js.map +1 -1
  716. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  717. package/lib/esm/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  718. package/lib/esm/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  719. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  720. package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
  721. package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -1
  722. package/lib/esm/appui-react/widgets/WidgetControl.js.map +1 -1
  723. package/lib/esm/appui-react/widgets/WidgetDef.js +1 -1
  724. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  725. package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
  726. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  727. package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
  728. package/lib/esm/appui-react/widgets/WidgetState.js.map +1 -1
  729. package/lib/esm/appui-react.js.map +1 -1
  730. package/lib/public/locales/en/UiFramework.json +331 -331
  731. package/package.json +16 -16
@@ -17,6 +17,9 @@ const itwinui_react_1 = require("@itwin/itwinui-react");
17
17
  const FrameworkAccuDraw_1 = require("./FrameworkAccuDraw");
18
18
  const UiFramework_1 = require("../UiFramework");
19
19
  const itwinui_icons_react_1 = require("@itwin/itwinui-icons-react");
20
+ function isLetter(char) {
21
+ return char.length === 1 && char.toLowerCase() !== char.toUpperCase();
22
+ }
20
23
  const ForwardRefAccuDrawInput = React.forwardRef(function ForwardRefAccuDrawInputField(props, ref) {
21
24
  const { className, style, id, label, iconSpec, labelClassName, labelStyle, labelCentered, field, isLocked, onValueChanged, valueChangedDelay, onEnterPressed, onEscPressed, ...inputProps } = props;
22
25
  const [stringValue, setStringValue] = React.useState("");
@@ -77,7 +80,7 @@ const ForwardRefAccuDrawInput = React.forwardRef(function ForwardRefAccuDrawInpu
77
80
  onEnterPressed && onEnterPressed();
78
81
  return;
79
82
  }
80
- if ((0, appui_abstract_1.isLetter)(e.key)) {
83
+ if (isLetter(e.key)) {
81
84
  e.preventDefault();
82
85
  UiFramework_1.UiFramework.keyboardShortcuts.processKey(e.key);
83
86
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawInputField.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawInputField.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport \"./AccuDrawInputField.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ItemField } from \"@itwin/core-frontend\";\r\nimport { CommonProps, Icon, IconSpec, useRefs } from \"@itwin/core-react\";\r\nimport { isLetter, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { Input } from \"@itwin/itwinui-react\";\r\nimport { AccuDrawSetFieldFocusEventArgs, AccuDrawSetFieldValueToUiEventArgs, FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { SvgLock } from \"@itwin/itwinui-icons-react\";\r\n/** Properties for [[AccuDrawInputField]] component\r\n * @beta\r\n */\r\nexport interface AccuDrawInputFieldProps extends CommonProps {\r\n /** Which AccuDraw field this represents */\r\n field: ItemField;\r\n /** id for the input element */\r\n id: string;\r\n /** Indicates whether field is locked */\r\n isLocked?: boolean;\r\n /** label for the input element */\r\n label?: string;\r\n /** icon for the input element */\r\n iconSpec?: IconSpec;\r\n /** Custom CSS class name for the label */\r\n labelClassName?: string;\r\n /** Custom CSS Style for the label */\r\n labelStyle?: React.CSSProperties;\r\n /** Center justified label */\r\n labelCentered?: boolean;\r\n /** Triggered when the content is changed */\r\n onValueChanged: (stringValue: string) => void;\r\n /** Frequency to poll for changes in value, in milliseconds */\r\n valueChangedDelay?: number;\r\n /** Listens for <Enter> keypress */\r\n onEnterPressed?: () => void;\r\n /** Listens for <Esc> keypress */\r\n onEscPressed?: () => void;\r\n /** Provides ability to return reference to HTMLInputElement */\r\n ref?: React.Ref<HTMLInputElement>;\r\n}\r\n\r\nconst ForwardRefAccuDrawInput = React.forwardRef<HTMLInputElement, AccuDrawInputFieldProps>(\r\n function ForwardRefAccuDrawInputField(props: AccuDrawInputFieldProps, ref) {\r\n const { className, style, id, label, iconSpec, labelClassName, labelStyle, labelCentered, field, isLocked,\r\n onValueChanged, valueChangedDelay, onEnterPressed, onEscPressed, ...inputProps } = props;\r\n const [stringValue, setStringValue] = React.useState(\"\");\r\n const timeoutId = React.useRef(0);\r\n const [needValueChanged, setNeedValueChanged] = React.useState(false);\r\n const [needSelection, setNeedSelection] = React.useState(false);\r\n const [isFocusField, setIsFocusField] = React.useState(false);\r\n const inputElementRef = React.useRef<HTMLInputElement>(null);\r\n const refs = useRefs(inputElementRef, ref); // combine ref needed for target with the forwardRef needed by the Parent when parent is a Type Editor.\r\n\r\n React.useEffect(() => {\r\n const formattedValue = FrameworkAccuDraw.getFieldDisplayValue(field);\r\n setStringValue(formattedValue);\r\n }, [field]);\r\n\r\n const handleChange = React.useCallback((event: React.ChangeEvent<HTMLInputElement>): void => {\r\n const value = event.currentTarget.value;\r\n\r\n // istanbul ignore next\r\n if (value === undefined)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (stringValue !== value) {\r\n setStringValue(value);\r\n setNeedValueChanged(true);\r\n }\r\n }, [stringValue]);\r\n\r\n const unsetTimeout = (): void => {\r\n // istanbul ignore else\r\n if (timeoutId) {\r\n window.clearTimeout(timeoutId.current);\r\n timeoutId.current = 0;\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n // After setStringValue & re-render\r\n // istanbul ignore else\r\n if (needValueChanged) {\r\n if (valueChangedDelay) {\r\n unsetTimeout();\r\n timeoutId.current = window.setTimeout(() => {\r\n onValueChanged(stringValue);\r\n }, valueChangedDelay);\r\n } else {\r\n onValueChanged(stringValue);\r\n }\r\n setNeedValueChanged(false);\r\n }\r\n }, [onValueChanged, valueChangedDelay, stringValue, needValueChanged]);\r\n\r\n React.useEffect(() => {\r\n // On unmount\r\n return () => unsetTimeout();\r\n }, []);\r\n\r\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\r\n switch (e.key) {\r\n case SpecialKey.Escape:\r\n onEscPressed && onEscPressed();\r\n return;\r\n case SpecialKey.Enter:\r\n onEnterPressed && onEnterPressed();\r\n return;\r\n }\r\n\r\n if (isLetter(e.key)) {\r\n e.preventDefault();\r\n UiFramework.keyboardShortcuts.processKey(e.key);\r\n return;\r\n }\r\n }, [onEscPressed, onEnterPressed]);\r\n\r\n React.useEffect(() => {\r\n const handleSetFieldValueToUi = (args: AccuDrawSetFieldValueToUiEventArgs) => {\r\n if (args.field === field && stringValue !== args.formattedValue) {\r\n setStringValue(args.formattedValue);\r\n // istanbul ignore else\r\n if (isFocusField)\r\n setNeedSelection(true);\r\n }\r\n };\r\n return FrameworkAccuDraw.onAccuDrawSetFieldValueToUiEvent.addListener(handleSetFieldValueToUi);\r\n }, [field, isFocusField, stringValue]);\r\n\r\n React.useEffect(() => {\r\n if (needSelection) {\r\n // istanbul ignore else\r\n if (inputElementRef.current)\r\n inputElementRef.current.select();\r\n setNeedSelection(false);\r\n }\r\n }, [needSelection]);\r\n\r\n React.useEffect(() => {\r\n const handleSetFieldFocus = (args: AccuDrawSetFieldFocusEventArgs) => {\r\n setIsFocusField(args.field === field);\r\n };\r\n return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener(handleSetFieldFocus);\r\n }, [field]);\r\n\r\n const inputClassNames = classnames(\"uifw-accudraw-input-field\", className);\r\n const labelClassNames = classnames(\"uifw-accudraw-input-label\",\r\n labelCentered && \"uifw-label-centered\",\r\n labelClassName\r\n );\r\n\r\n return (\r\n <>\r\n <label htmlFor={id} className={labelClassNames} style={labelStyle}>\r\n {label}\r\n {iconSpec && <Icon iconSpec={iconSpec} />}\r\n </label>\r\n <Input {...inputProps} ref={refs} id={id} value={stringValue}\r\n className={inputClassNames} style={style} autoComplete=\"off\"\r\n onChange={handleChange} onKeyDown={handleKeyDown} size=\"small\" />\r\n <span className=\"uifw-accudraw-lock\" >\r\n {isLocked && <Icon iconSpec={<SvgLock />} />}\r\n </span>\r\n </>\r\n );\r\n }\r\n);\r\n\r\n/** Input field for AccuDraw Ui\r\n * @beta\r\n */\r\nexport const AccuDrawInputField: (props: AccuDrawInputFieldProps) => JSX.Element | null = ForwardRefAccuDrawInput;\r\n"]}
1
+ {"version":3,"file":"AccuDrawInputField.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawInputField.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 AccuDraw\n */\n\nimport \"./AccuDrawInputField.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { ItemField } from \"@itwin/core-frontend\";\nimport { CommonProps, Icon, IconSpec, useRefs } from \"@itwin/core-react\";\nimport { SpecialKey } from \"@itwin/appui-abstract\";\nimport { Input } from \"@itwin/itwinui-react\";\nimport { AccuDrawSetFieldFocusEventArgs, AccuDrawSetFieldValueToUiEventArgs, FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\nimport { UiFramework } from \"../UiFramework\";\nimport { SvgLock } from \"@itwin/itwinui-icons-react\";\n\nfunction isLetter(char: string): boolean {\n return char.length === 1 && char.toLowerCase() !== char.toUpperCase();\n}\n\n/** Properties for [[AccuDrawInputField]] component\n * @beta\n */\nexport interface AccuDrawInputFieldProps extends CommonProps {\n /** Which AccuDraw field this represents */\n field: ItemField;\n /** id for the input element */\n id: string;\n /** Indicates whether field is locked */\n isLocked?: boolean;\n /** label for the input element */\n label?: string;\n /** icon for the input element */\n iconSpec?: IconSpec;\n /** Custom CSS class name for the label */\n labelClassName?: string;\n /** Custom CSS Style for the label */\n labelStyle?: React.CSSProperties;\n /** Center justified label */\n labelCentered?: boolean;\n /** Triggered when the content is changed */\n onValueChanged: (stringValue: string) => void;\n /** Frequency to poll for changes in value, in milliseconds */\n valueChangedDelay?: number;\n /** Listens for <Enter> keypress */\n onEnterPressed?: () => void;\n /** Listens for <Esc> keypress */\n onEscPressed?: () => void;\n /** Provides ability to return reference to HTMLInputElement */\n ref?: React.Ref<HTMLInputElement>;\n}\n\nconst ForwardRefAccuDrawInput = React.forwardRef<HTMLInputElement, AccuDrawInputFieldProps>(\n function ForwardRefAccuDrawInputField(props: AccuDrawInputFieldProps, ref) {\n const { className, style, id, label, iconSpec, labelClassName, labelStyle, labelCentered, field, isLocked,\n onValueChanged, valueChangedDelay, onEnterPressed, onEscPressed, ...inputProps } = props;\n const [stringValue, setStringValue] = React.useState(\"\");\n const timeoutId = React.useRef(0);\n const [needValueChanged, setNeedValueChanged] = React.useState(false);\n const [needSelection, setNeedSelection] = React.useState(false);\n const [isFocusField, setIsFocusField] = React.useState(false);\n const inputElementRef = React.useRef<HTMLInputElement>(null);\n const refs = useRefs(inputElementRef, ref); // combine ref needed for target with the forwardRef needed by the Parent when parent is a Type Editor.\n\n React.useEffect(() => {\n const formattedValue = FrameworkAccuDraw.getFieldDisplayValue(field);\n setStringValue(formattedValue);\n }, [field]);\n\n const handleChange = React.useCallback((event: React.ChangeEvent<HTMLInputElement>): void => {\n const value = event.currentTarget.value;\n\n // istanbul ignore next\n if (value === undefined)\n return;\n\n // istanbul ignore else\n if (stringValue !== value) {\n setStringValue(value);\n setNeedValueChanged(true);\n }\n }, [stringValue]);\n\n const unsetTimeout = (): void => {\n // istanbul ignore else\n if (timeoutId) {\n window.clearTimeout(timeoutId.current);\n timeoutId.current = 0;\n }\n };\n\n React.useEffect(() => {\n // After setStringValue & re-render\n // istanbul ignore else\n if (needValueChanged) {\n if (valueChangedDelay) {\n unsetTimeout();\n timeoutId.current = window.setTimeout(() => {\n onValueChanged(stringValue);\n }, valueChangedDelay);\n } else {\n onValueChanged(stringValue);\n }\n setNeedValueChanged(false);\n }\n }, [onValueChanged, valueChangedDelay, stringValue, needValueChanged]);\n\n React.useEffect(() => {\n // On unmount\n return () => unsetTimeout();\n }, []);\n\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\n switch (e.key) {\n case SpecialKey.Escape:\n onEscPressed && onEscPressed();\n return;\n case SpecialKey.Enter:\n onEnterPressed && onEnterPressed();\n return;\n }\n\n if (isLetter(e.key)) {\n e.preventDefault();\n UiFramework.keyboardShortcuts.processKey(e.key);\n return;\n }\n }, [onEscPressed, onEnterPressed]);\n\n React.useEffect(() => {\n const handleSetFieldValueToUi = (args: AccuDrawSetFieldValueToUiEventArgs) => {\n if (args.field === field && stringValue !== args.formattedValue) {\n setStringValue(args.formattedValue);\n // istanbul ignore else\n if (isFocusField)\n setNeedSelection(true);\n }\n };\n return FrameworkAccuDraw.onAccuDrawSetFieldValueToUiEvent.addListener(handleSetFieldValueToUi);\n }, [field, isFocusField, stringValue]);\n\n React.useEffect(() => {\n if (needSelection) {\n // istanbul ignore else\n if (inputElementRef.current)\n inputElementRef.current.select();\n setNeedSelection(false);\n }\n }, [needSelection]);\n\n React.useEffect(() => {\n const handleSetFieldFocus = (args: AccuDrawSetFieldFocusEventArgs) => {\n setIsFocusField(args.field === field);\n };\n return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener(handleSetFieldFocus);\n }, [field]);\n\n const inputClassNames = classnames(\"uifw-accudraw-input-field\", className);\n const labelClassNames = classnames(\"uifw-accudraw-input-label\",\n labelCentered && \"uifw-label-centered\",\n labelClassName\n );\n\n return (\n <>\n <label htmlFor={id} className={labelClassNames} style={labelStyle}>\n {label}\n {iconSpec && <Icon iconSpec={iconSpec} />}\n </label>\n <Input {...inputProps} ref={refs} id={id} value={stringValue}\n className={inputClassNames} style={style} autoComplete=\"off\"\n onChange={handleChange} onKeyDown={handleKeyDown} size=\"small\" />\n <span className=\"uifw-accudraw-lock\" >\n {isLocked && <Icon iconSpec={<SvgLock />} />}\n </span>\n </>\n );\n }\n);\n\n/** Input field for AccuDraw Ui\n * @beta\n */\nexport const AccuDrawInputField: (props: AccuDrawInputFieldProps) => JSX.Element | null = ForwardRefAccuDrawInput;\n"]}
@@ -1,55 +1,55 @@
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/base/base";
6
- @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
7
-
8
- .uifw-accudraw-input-label {
9
- min-width: 16px;
10
- margin-right: 4px;
11
-
12
- display: flex;
13
- align-items: center;
14
-
15
- font-size: var(--iui-font-size-2);
16
- font-weight: var(--iui-font-weight-bold);
17
- line-height: var(--iui-size-l);
18
- color: var(--iui-color-text);
19
-
20
- &.uifw-label-centered {
21
- justify-content: center;
22
- }
23
-
24
- .icon {
25
- width: 16px;
26
- height: 16px;
27
-
28
- margin-top: 2px;
29
- @include uicore-centered;
30
- }
31
- }
32
-
33
- .uifw-accudraw-input-field {
34
- flex: 1;
35
- }
36
-
37
- .uifw-accudraw-lock {
38
- width: 22px;
39
- @include uicore-centered;
40
- }
41
-
42
- .uifw-accudraw-x-value {
43
- background-color: $buic-accessory-alert;
44
- color: var(--iui-color-white);
45
- }
46
-
47
- .uifw-accudraw-y-value {
48
- background-color: $buic-accessory-success;
49
- color: var(--iui-color-white);
50
- }
51
-
52
- .uifw-accudraw-z-value {
53
- background-color: $buic-accessory-primary;
54
- color: var(--iui-color-white);
55
- }
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/base/base";
6
+ @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
7
+
8
+ .uifw-accudraw-input-label {
9
+ min-width: 16px;
10
+ margin-right: 4px;
11
+
12
+ display: flex;
13
+ align-items: center;
14
+
15
+ font-size: var(--iui-font-size-2);
16
+ font-weight: var(--iui-font-weight-bold);
17
+ line-height: var(--iui-size-l);
18
+ color: var(--iui-color-text);
19
+
20
+ &.uifw-label-centered {
21
+ justify-content: center;
22
+ }
23
+
24
+ .icon {
25
+ width: 16px;
26
+ height: 16px;
27
+
28
+ margin-top: 2px;
29
+ @include uicore-centered;
30
+ }
31
+ }
32
+
33
+ .uifw-accudraw-input-field {
34
+ flex: 1;
35
+ }
36
+
37
+ .uifw-accudraw-lock {
38
+ width: 22px;
39
+ @include uicore-centered;
40
+ }
41
+
42
+ .uifw-accudraw-x-value {
43
+ background-color: $buic-accessory-alert;
44
+ color: var(--iui-color-white);
45
+ }
46
+
47
+ .uifw-accudraw-y-value {
48
+ background-color: $buic-accessory-success;
49
+ color: var(--iui-color-white);
50
+ }
51
+
52
+ .uifw-accudraw-z-value {
53
+ background-color: $buic-accessory-primary;
54
+ color: var(--iui-color-white);
55
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawKeyboardShortcuts.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawKeyboardShortcuts.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,iEAA8D;AAC9D,2DAAwD;AAExD;;GAEG;AACH,MAAa,yBAAyB;IACpC;OACG;IACI,MAAM,CAAC,mBAAmB;QAC/B,MAAM,oBAAoB,GAA4B;YACpD;gBACE,GAAG,EAAE,GAAG;gBACR,QAAQ,EAAE,8BAA8B;gBACxC,SAAS,EAAE;oBACT;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;qBACrC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;qBACrC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,iBAAiB;qBAC7C;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,KAAK;wBAChC,QAAQ,EAAE,qCAAiB,CAAC,sBAAsB;qBACnD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,KAAK;wBAChC,QAAQ,EAAE,qCAAiB,CAAC,sBAAsB;qBACnD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,KAAK;wBAChC,QAAQ,EAAE,qCAAiB,CAAC,sBAAsB;qBACnD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;wBACpC,QAAQ,EAAE,qCAAiB,CAAC,4BAA4B;qBACzD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,YAAY;wBACvC,QAAQ,EAAE,qCAAiB,CAAC,4BAA4B;qBACzD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,eAAe;qBAC3C;iBACF;aACF;YACD;gBACE,GAAG,EAAE,GAAG;gBACR,QAAQ,EAAE,oCAAoC;gBAC9C,SAAS,EAAE;oBACT;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;wBACpC,UAAU,EAAE,qCAAiB,CAAC,wBAAwB;qBACvD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,UAAU;wBACrC,UAAU,EAAE,qCAAiB,CAAC,yBAAyB;qBACxD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,WAAW;wBACtC,UAAU,EAAE,qCAAiB,CAAC,0BAA0B;qBACzD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,UAAU;wBACrC,UAAU,EAAE,qCAAiB,CAAC,yBAAyB;qBACxD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,WAAW;qBACvC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,UAAU;qBACtC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,eAAe;qBAC3C;iBACF;aACF;SACF,CAAC;QAEF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;CACF;AA9FD,8DA8FC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport { KeyboardShortcutProps } from \"../framework/FrameworkKeyboardShortcuts\";\r\nimport { AccuDrawCommandItems } from \"./AccuDrawCommandItems\";\r\nimport { FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\r\n\r\n/** Default AccuDraw Keyboard Shortcuts\r\n * @beta\r\n */\r\nexport class AccuDrawKeyboardShortcuts {\r\n /** Get default AccuDraw Keyboard Shortcuts list.\r\n */\r\n public static getDefaultShortcuts(): KeyboardShortcutProps[] {\r\n const keyboardShortcutList: KeyboardShortcutProps[] = [\r\n {\r\n key: \"a\",\r\n labelKey: \"UiFramework:accuDraw.subMenu\",\r\n shortcuts: [\r\n {\r\n key: \"s\",\r\n item: AccuDrawCommandItems.lockSmart,\r\n },\r\n {\r\n key: \"r\",\r\n item: AccuDrawCommandItems.setOrigin,\r\n },\r\n {\r\n key: \"t\",\r\n item: AccuDrawCommandItems.changeCompassMode,\r\n },\r\n {\r\n key: \"x\",\r\n item: AccuDrawCommandItems.lockX,\r\n isHidden: FrameworkAccuDraw.isPolarModeConditional,\r\n },\r\n {\r\n key: \"y\",\r\n item: AccuDrawCommandItems.lockY,\r\n isHidden: FrameworkAccuDraw.isPolarModeConditional,\r\n },\r\n {\r\n key: \"z\",\r\n item: AccuDrawCommandItems.lockZ,\r\n isHidden: FrameworkAccuDraw.isPolarModeConditional,\r\n },\r\n {\r\n key: \"a\",\r\n item: AccuDrawCommandItems.lockAngle,\r\n isHidden: FrameworkAccuDraw.isRectangularModeConditional,\r\n },\r\n {\r\n key: \"d\",\r\n item: AccuDrawCommandItems.lockDistance,\r\n isHidden: FrameworkAccuDraw.isRectangularModeConditional,\r\n },\r\n {\r\n key: \"b\",\r\n item: AccuDrawCommandItems.bumpToolSetting,\r\n },\r\n ],\r\n },\r\n {\r\n key: \"r\",\r\n labelKey: \"UiFramework:accuDraw.rotateSubMenu\",\r\n shortcuts: [\r\n {\r\n key: \"t\",\r\n item: AccuDrawCommandItems.rotateTop,\r\n isDisabled: FrameworkAccuDraw.isTopRotationConditional,\r\n },\r\n {\r\n key: \"s\",\r\n item: AccuDrawCommandItems.rotateSide,\r\n isDisabled: FrameworkAccuDraw.isSideRotationConditional,\r\n },\r\n {\r\n key: \"f\",\r\n item: AccuDrawCommandItems.rotateFront,\r\n isDisabled: FrameworkAccuDraw.isFrontRotationConditional,\r\n },\r\n {\r\n key: \"v\",\r\n item: AccuDrawCommandItems.rotateView,\r\n isDisabled: FrameworkAccuDraw.isViewRotationConditional,\r\n },\r\n {\r\n key: \"c\",\r\n item: AccuDrawCommandItems.rotateCycle,\r\n },\r\n {\r\n key: \"a\",\r\n item: AccuDrawCommandItems.rotateAxes,\r\n },\r\n {\r\n key: \"e\",\r\n item: AccuDrawCommandItems.rotateToElement,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n return keyboardShortcutList;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"AccuDrawKeyboardShortcuts.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawKeyboardShortcuts.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,iEAA8D;AAC9D,2DAAwD;AAExD;;GAEG;AACH,MAAa,yBAAyB;IACpC;OACG;IACI,MAAM,CAAC,mBAAmB;QAC/B,MAAM,oBAAoB,GAA4B;YACpD;gBACE,GAAG,EAAE,GAAG;gBACR,QAAQ,EAAE,8BAA8B;gBACxC,SAAS,EAAE;oBACT;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;qBACrC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;qBACrC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,iBAAiB;qBAC7C;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,KAAK;wBAChC,QAAQ,EAAE,qCAAiB,CAAC,sBAAsB;qBACnD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,KAAK;wBAChC,QAAQ,EAAE,qCAAiB,CAAC,sBAAsB;qBACnD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,KAAK;wBAChC,QAAQ,EAAE,qCAAiB,CAAC,sBAAsB;qBACnD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;wBACpC,QAAQ,EAAE,qCAAiB,CAAC,4BAA4B;qBACzD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,YAAY;wBACvC,QAAQ,EAAE,qCAAiB,CAAC,4BAA4B;qBACzD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,eAAe;qBAC3C;iBACF;aACF;YACD;gBACE,GAAG,EAAE,GAAG;gBACR,QAAQ,EAAE,oCAAoC;gBAC9C,SAAS,EAAE;oBACT;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,SAAS;wBACpC,UAAU,EAAE,qCAAiB,CAAC,wBAAwB;qBACvD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,UAAU;wBACrC,UAAU,EAAE,qCAAiB,CAAC,yBAAyB;qBACxD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,WAAW;wBACtC,UAAU,EAAE,qCAAiB,CAAC,0BAA0B;qBACzD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,UAAU;wBACrC,UAAU,EAAE,qCAAiB,CAAC,yBAAyB;qBACxD;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,WAAW;qBACvC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,UAAU;qBACtC;oBACD;wBACE,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,2CAAoB,CAAC,eAAe;qBAC3C;iBACF;aACF;SACF,CAAC;QAEF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;CACF;AA9FD,8DA8FC","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 AccuDraw\n */\n\nimport { KeyboardShortcutProps } from \"../framework/FrameworkKeyboardShortcuts\";\nimport { AccuDrawCommandItems } from \"./AccuDrawCommandItems\";\nimport { FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\n\n/** Default AccuDraw Keyboard Shortcuts\n * @beta\n */\nexport class AccuDrawKeyboardShortcuts {\n /** Get default AccuDraw Keyboard Shortcuts list.\n */\n public static getDefaultShortcuts(): KeyboardShortcutProps[] {\n const keyboardShortcutList: KeyboardShortcutProps[] = [\n {\n key: \"a\",\n labelKey: \"UiFramework:accuDraw.subMenu\",\n shortcuts: [\n {\n key: \"s\",\n item: AccuDrawCommandItems.lockSmart,\n },\n {\n key: \"r\",\n item: AccuDrawCommandItems.setOrigin,\n },\n {\n key: \"t\",\n item: AccuDrawCommandItems.changeCompassMode,\n },\n {\n key: \"x\",\n item: AccuDrawCommandItems.lockX,\n isHidden: FrameworkAccuDraw.isPolarModeConditional,\n },\n {\n key: \"y\",\n item: AccuDrawCommandItems.lockY,\n isHidden: FrameworkAccuDraw.isPolarModeConditional,\n },\n {\n key: \"z\",\n item: AccuDrawCommandItems.lockZ,\n isHidden: FrameworkAccuDraw.isPolarModeConditional,\n },\n {\n key: \"a\",\n item: AccuDrawCommandItems.lockAngle,\n isHidden: FrameworkAccuDraw.isRectangularModeConditional,\n },\n {\n key: \"d\",\n item: AccuDrawCommandItems.lockDistance,\n isHidden: FrameworkAccuDraw.isRectangularModeConditional,\n },\n {\n key: \"b\",\n item: AccuDrawCommandItems.bumpToolSetting,\n },\n ],\n },\n {\n key: \"r\",\n labelKey: \"UiFramework:accuDraw.rotateSubMenu\",\n shortcuts: [\n {\n key: \"t\",\n item: AccuDrawCommandItems.rotateTop,\n isDisabled: FrameworkAccuDraw.isTopRotationConditional,\n },\n {\n key: \"s\",\n item: AccuDrawCommandItems.rotateSide,\n isDisabled: FrameworkAccuDraw.isSideRotationConditional,\n },\n {\n key: \"f\",\n item: AccuDrawCommandItems.rotateFront,\n isDisabled: FrameworkAccuDraw.isFrontRotationConditional,\n },\n {\n key: \"v\",\n item: AccuDrawCommandItems.rotateView,\n isDisabled: FrameworkAccuDraw.isViewRotationConditional,\n },\n {\n key: \"c\",\n item: AccuDrawCommandItems.rotateCycle,\n },\n {\n key: \"a\",\n item: AccuDrawCommandItems.rotateAxes,\n },\n {\n key: \"e\",\n item: AccuDrawCommandItems.rotateToElement,\n },\n ],\n },\n ];\n\n return keyboardShortcutList;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawPopupManager.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawPopupManager.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { XAndY } from \"@itwin/core-geometry\";\r\nimport { AngleDescription, LengthDescription } from \"@itwin/core-frontend\";\r\nimport { AbstractMenuItemProps, IconSpecUtilities, OnCancelFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"@itwin/appui-abstract\";\r\n\r\nimport { PopupInfo, PopupManager } from \"../popup/PopupManager\";\r\nimport { MenuItemHelpers } from \"../shared/MenuItem\";\r\nimport { CalculatorPopup } from \"./CalculatorPopup\";\r\nimport { MenuButtonPopup } from \"./MenuButtonPopup\";\r\n\r\nimport angleIcon from \"./angle.svg\";\r\nimport lengthIcon from \"./distance.svg\";\r\nimport heightIcon from \"./height-2.svg\";\r\n\r\n/** AccuDraw Popup Manager class\r\n * @alpha\r\n */\r\nexport class AccuDrawPopupManager {\r\n private static _calculatorId = \"Calculator\";\r\n\r\n public static showMenuButton(id: string, el: HTMLElement, pt: XAndY, menuItemsProps: AbstractMenuItemProps[]): boolean {\r\n const menuItems = MenuItemHelpers.createMenuItems(menuItemsProps);\r\n const menuContent = MenuItemHelpers.createMenuItemNodes(menuItems);\r\n\r\n const component = (\r\n <MenuButtonPopup id={id} el={el} pt={pt} offset={PopupManager.defaultOffset}\r\n content={menuContent} />\r\n );\r\n\r\n const popupInfo: PopupInfo = {\r\n id, pt, component, parentDocument: el.ownerDocument,\r\n };\r\n PopupManager.addOrUpdatePopup(popupInfo);\r\n\r\n return true;\r\n }\r\n\r\n public static hideMenuButton(id: string): boolean {\r\n return PopupManager.removePopup(id);\r\n }\r\n\r\n public static showCalculator(el: HTMLElement, pt: XAndY, initialValue: number, resultIcon: string, onOk: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\r\n const id = AccuDrawPopupManager._calculatorId;\r\n const component = (\r\n <CalculatorPopup id={id} el={el} pt={pt} offset={PopupManager.defaultOffset}\r\n initialValue={initialValue} resultIcon={resultIcon} onOk={onOk} onCancel={onCancel} />\r\n );\r\n\r\n const popupInfo: PopupInfo = {\r\n id, pt, component, parentDocument: el.ownerDocument,\r\n };\r\n PopupManager.addOrUpdatePopup(popupInfo);\r\n\r\n return true;\r\n }\r\n\r\n public static hideCalculator(): boolean {\r\n return PopupManager.removePopup(AccuDrawPopupManager._calculatorId);\r\n }\r\n\r\n public static showAngleEditor(el: HTMLElement, pt: XAndY, value: number, onCommit: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\r\n const propertyDescription = new AngleDescription(undefined, undefined, IconSpecUtilities.createWebComponentIconSpec(angleIcon));\r\n return PopupManager.showInputEditor(el, pt, value, propertyDescription, onCommit as OnValueCommitFunc, onCancel);\r\n }\r\n\r\n public static showLengthEditor(el: HTMLElement, pt: XAndY, value: number, onCommit: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\r\n const propertyDescription = new LengthDescription(undefined, undefined, IconSpecUtilities.createWebComponentIconSpec(lengthIcon));\r\n return PopupManager.showInputEditor(el, pt, value, propertyDescription, onCommit as OnValueCommitFunc, onCancel);\r\n }\r\n\r\n public static showHeightEditor(el: HTMLElement, pt: XAndY, value: number, onCommit: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\r\n const propertyDescription = new LengthDescription(undefined, undefined, IconSpecUtilities.createWebComponentIconSpec(heightIcon));\r\n return PopupManager.showInputEditor(el, pt, value, propertyDescription, onCommit as OnValueCommitFunc, onCancel);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"AccuDrawPopupManager.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawPopupManager.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 AccuDraw\n */\n\nimport * as React from \"react\";\nimport { XAndY } from \"@itwin/core-geometry\";\nimport { AngleDescription, LengthDescription } from \"@itwin/core-frontend\";\nimport { AbstractMenuItemProps, IconSpecUtilities, OnCancelFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"@itwin/appui-abstract\";\n\nimport { PopupInfo, PopupManager } from \"../popup/PopupManager\";\nimport { MenuItemHelpers } from \"../shared/MenuItem\";\nimport { CalculatorPopup } from \"./CalculatorPopup\";\nimport { MenuButtonPopup } from \"./MenuButtonPopup\";\n\nimport angleIcon from \"./angle.svg\";\nimport lengthIcon from \"./distance.svg\";\nimport heightIcon from \"./height-2.svg\";\n\n/** AccuDraw Popup Manager class\n * @alpha\n */\nexport class AccuDrawPopupManager {\n private static _calculatorId = \"Calculator\";\n\n public static showMenuButton(id: string, el: HTMLElement, pt: XAndY, menuItemsProps: AbstractMenuItemProps[]): boolean {\n const menuItems = MenuItemHelpers.createMenuItems(menuItemsProps);\n const menuContent = MenuItemHelpers.createMenuItemNodes(menuItems);\n\n const component = (\n <MenuButtonPopup id={id} el={el} pt={pt} offset={PopupManager.defaultOffset}\n content={menuContent} />\n );\n\n const popupInfo: PopupInfo = {\n id, pt, component, parentDocument: el.ownerDocument,\n };\n PopupManager.addOrUpdatePopup(popupInfo);\n\n return true;\n }\n\n public static hideMenuButton(id: string): boolean {\n return PopupManager.removePopup(id);\n }\n\n public static showCalculator(el: HTMLElement, pt: XAndY, initialValue: number, resultIcon: string, onOk: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\n const id = AccuDrawPopupManager._calculatorId;\n const component = (\n <CalculatorPopup id={id} el={el} pt={pt} offset={PopupManager.defaultOffset}\n initialValue={initialValue} resultIcon={resultIcon} onOk={onOk} onCancel={onCancel} />\n );\n\n const popupInfo: PopupInfo = {\n id, pt, component, parentDocument: el.ownerDocument,\n };\n PopupManager.addOrUpdatePopup(popupInfo);\n\n return true;\n }\n\n public static hideCalculator(): boolean {\n return PopupManager.removePopup(AccuDrawPopupManager._calculatorId);\n }\n\n public static showAngleEditor(el: HTMLElement, pt: XAndY, value: number, onCommit: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\n const propertyDescription = new AngleDescription(undefined, undefined, IconSpecUtilities.createWebComponentIconSpec(angleIcon));\n return PopupManager.showInputEditor(el, pt, value, propertyDescription, onCommit as OnValueCommitFunc, onCancel);\n }\n\n public static showLengthEditor(el: HTMLElement, pt: XAndY, value: number, onCommit: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\n const propertyDescription = new LengthDescription(undefined, undefined, IconSpecUtilities.createWebComponentIconSpec(lengthIcon));\n return PopupManager.showInputEditor(el, pt, value, propertyDescription, onCommit as OnValueCommitFunc, onCancel);\n }\n\n public static showHeightEditor(el: HTMLElement, pt: XAndY, value: number, onCommit: OnNumberCommitFunc, onCancel: OnCancelFunc): boolean {\n const propertyDescription = new LengthDescription(undefined, undefined, IconSpecUtilities.createWebComponentIconSpec(heightIcon));\n return PopupManager.showInputEditor(el, pt, value, propertyDescription, onCommit as OnValueCommitFunc, onCancel);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawUiSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawUiSettings.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport { ColorDef } from \"@itwin/core-common\";\r\nimport { IconSpec } from \"@itwin/core-react\";\r\n\r\n/** AccuDraw User Interface Settings\r\n * @beta\r\n */\r\nexport interface AccuDrawUiSettings {\r\n /** X field style */\r\n xStyle?: React.CSSProperties;\r\n /** Y field style */\r\n yStyle?: React.CSSProperties;\r\n /** Z field style */\r\n zStyle?: React.CSSProperties;\r\n /** Angle field style */\r\n angleStyle?: React.CSSProperties;\r\n /** Distance field style */\r\n distanceStyle?: React.CSSProperties;\r\n\r\n /** X field background color */\r\n xBackgroundColor?: ColorDef | string;\r\n /** Y field background color */\r\n yBackgroundColor?: ColorDef | string;\r\n /** Z field background color */\r\n zBackgroundColor?: ColorDef | string;\r\n /** Angle field background color */\r\n angleBackgroundColor?: ColorDef | string;\r\n /** Distance field background color */\r\n distanceBackgroundColor?: ColorDef | string;\r\n\r\n /** X field foreground color */\r\n xForegroundColor?: ColorDef | string;\r\n /** Y field foreground color */\r\n yForegroundColor?: ColorDef | string;\r\n /** Z field foreground color */\r\n zForegroundColor?: ColorDef | string;\r\n /** Angle field foreground color */\r\n angleForegroundColor?: ColorDef | string;\r\n /** Distance field foreground color */\r\n distanceForegroundColor?: ColorDef | string;\r\n\r\n /** X field label */\r\n xLabel?: string;\r\n /** Y field label */\r\n yLabel?: string;\r\n /** Z field label */\r\n zLabel?: string;\r\n /** Angle field label */\r\n angleLabel?: string;\r\n /** Distance field label */\r\n distanceLabel?: string;\r\n\r\n /** X field icon */\r\n xIcon?: IconSpec;\r\n /** Y field icon */\r\n yIcon?: IconSpec;\r\n /** Z field icon */\r\n zIcon?: IconSpec;\r\n /** Angle field icon */\r\n angleIcon?: IconSpec;\r\n /** Distance field icon */\r\n distanceIcon?: IconSpec;\r\n}\r\n"]}
1
+ {"version":3,"file":"AccuDrawUiSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawUiSettings.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 AccuDraw\n */\n\nimport { ColorDef } from \"@itwin/core-common\";\nimport { IconSpec } from \"@itwin/core-react\";\n\n/** AccuDraw User Interface Settings\n * @beta\n */\nexport interface AccuDrawUiSettings {\n /** X field style */\n xStyle?: React.CSSProperties;\n /** Y field style */\n yStyle?: React.CSSProperties;\n /** Z field style */\n zStyle?: React.CSSProperties;\n /** Angle field style */\n angleStyle?: React.CSSProperties;\n /** Distance field style */\n distanceStyle?: React.CSSProperties;\n\n /** X field background color */\n xBackgroundColor?: ColorDef | string;\n /** Y field background color */\n yBackgroundColor?: ColorDef | string;\n /** Z field background color */\n zBackgroundColor?: ColorDef | string;\n /** Angle field background color */\n angleBackgroundColor?: ColorDef | string;\n /** Distance field background color */\n distanceBackgroundColor?: ColorDef | string;\n\n /** X field foreground color */\n xForegroundColor?: ColorDef | string;\n /** Y field foreground color */\n yForegroundColor?: ColorDef | string;\n /** Z field foreground color */\n zForegroundColor?: ColorDef | string;\n /** Angle field foreground color */\n angleForegroundColor?: ColorDef | string;\n /** Distance field foreground color */\n distanceForegroundColor?: ColorDef | string;\n\n /** X field label */\n xLabel?: string;\n /** Y field label */\n yLabel?: string;\n /** Z field label */\n zLabel?: string;\n /** Angle field label */\n angleLabel?: string;\n /** Distance field label */\n distanceLabel?: string;\n\n /** X field icon */\n xIcon?: IconSpec;\n /** Y field icon */\n yIcon?: IconSpec;\n /** Z field icon */\n zIcon?: IconSpec;\n /** Angle field icon */\n angleIcon?: IconSpec;\n /** Distance field icon */\n distanceIcon?: IconSpec;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawWidget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,kDAAmE;AAEnE,qEAAkE;AAElE,4DAAyD;AACzD,gDAA6C;AAE7C;;GAEG;AACH,MAAa,qBAAsB,SAAQ,6BAAa;IAI/C,MAAM,KAAK,KAAK;QACrB,OAAO,yBAAW,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IACvD,CAAC;IAED,YAAY,IAA4B,EAAE,OAAY;QACpD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,CAAC,SAAS,GAAG,oBAAC,cAAc,OAAG,CAAC;IACtC,CAAC;;AAVa,wBAAE,GAAG,gBAAgB,CAAC;AAFzB,sDAAqB;AAelC;;GAEG;AACH,SAAgB,cAAc;IAC5B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,wBAAW,CAAC,QAAQ,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,GAAG,CAAC;IAEvB,6EAA6E;IAC7E,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAS,EAAE,EAAU,EAAE,EAAE;QAC/D,cAAc,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,wBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,wBAAW,CAAC,UAAU,CAAC,CAAC;IAClF,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,GAAG,GAAG,IAAA,8BAAiB,EAAiB,YAAY,CAAC,CAAC;IAE5D,OAAO,CACL,6BAAK,GAAG,EAAE,GAAG;QACX,oBAAC,+CAAsB,IAAC,WAAW,EAAE,WAAW,GAAI,CAChD,CACP,CAAC;AACJ,CAAC;AAhBD,wCAgBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Orientation, useResizeObserver } from \"@itwin/core-react\";\r\n\r\nimport { AccuDrawFieldContainer } from \"./AccuDrawFieldContainer\";\r\nimport { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\r\nimport { WidgetControl } from \"../widgets/WidgetControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** AccuDraw Widget Control\r\n * @beta\r\n */\r\nexport class AccuDrawWidgetControl extends WidgetControl {\r\n\r\n public static id = \"AccuDrawWidget\";\r\n\r\n public static get label(): string {\r\n return UiFramework.translate(\"accuDraw.dialogTitle\");\r\n }\r\n\r\n constructor(info: ConfigurableCreateInfo, options: any) {\r\n super(info, options);\r\n\r\n this.reactNode = <AccuDrawWidget />;\r\n }\r\n}\r\n\r\n/** AccuDraw Widget displays [[AccuDrawFieldContainer]] for AccuDraw Ui\r\n * @beta\r\n */\r\nexport function AccuDrawWidget() {\r\n const [orientation, setOrientation] = React.useState(Orientation.Vertical);\r\n const breakpoint = 400;\r\n\r\n // istanbul ignore next - currently unable to replicate resizing in unit test\r\n const handleResize = React.useCallback((w: number, _h: number) => {\r\n setOrientation(w <= breakpoint ? Orientation.Vertical : Orientation.Horizontal);\r\n }, []);\r\n\r\n const ref = useResizeObserver<HTMLDivElement>(handleResize);\r\n\r\n return (\r\n <div ref={ref}>\r\n <AccuDrawFieldContainer orientation={orientation} />\r\n </div>\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"AccuDrawWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawWidget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,kDAAmE;AAEnE,qEAAkE;AAElE,4DAAyD;AACzD,gDAA6C;AAE7C;;GAEG;AACH,MAAa,qBAAsB,SAAQ,6BAAa;IAI/C,MAAM,KAAK,KAAK;QACrB,OAAO,yBAAW,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IACvD,CAAC;IAED,YAAY,IAA4B,EAAE,OAAY;QACpD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,CAAC,SAAS,GAAG,oBAAC,cAAc,OAAG,CAAC;IACtC,CAAC;;AAVa,wBAAE,GAAG,gBAAgB,CAAC;AAFzB,sDAAqB;AAelC;;GAEG;AACH,SAAgB,cAAc;IAC5B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,wBAAW,CAAC,QAAQ,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,GAAG,CAAC;IAEvB,6EAA6E;IAC7E,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAS,EAAE,EAAU,EAAE,EAAE;QAC/D,cAAc,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,wBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,wBAAW,CAAC,UAAU,CAAC,CAAC;IAClF,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,GAAG,GAAG,IAAA,8BAAiB,EAAiB,YAAY,CAAC,CAAC;IAE5D,OAAO,CACL,6BAAK,GAAG,EAAE,GAAG;QACX,oBAAC,+CAAsB,IAAC,WAAW,EAAE,WAAW,GAAI,CAChD,CACP,CAAC;AACJ,CAAC;AAhBD,wCAgBC","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 AccuDraw\n */\n\nimport * as React from \"react\";\nimport { Orientation, useResizeObserver } from \"@itwin/core-react\";\n\nimport { AccuDrawFieldContainer } from \"./AccuDrawFieldContainer\";\nimport { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\nimport { WidgetControl } from \"../widgets/WidgetControl\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** AccuDraw Widget Control\n * @beta\n */\nexport class AccuDrawWidgetControl extends WidgetControl {\n\n public static id = \"AccuDrawWidget\";\n\n public static get label(): string {\n return UiFramework.translate(\"accuDraw.dialogTitle\");\n }\n\n constructor(info: ConfigurableCreateInfo, options: any) {\n super(info, options);\n\n this.reactNode = <AccuDrawWidget />;\n }\n}\n\n/** AccuDraw Widget displays [[AccuDrawFieldContainer]] for AccuDraw Ui\n * @beta\n */\nexport function AccuDrawWidget() {\n const [orientation, setOrientation] = React.useState(Orientation.Vertical);\n const breakpoint = 400;\n\n // istanbul ignore next - currently unable to replicate resizing in unit test\n const handleResize = React.useCallback((w: number, _h: number) => {\n setOrientation(w <= breakpoint ? Orientation.Vertical : Orientation.Horizontal);\n }, []);\n\n const ref = useResizeObserver<HTMLDivElement>(handleResize);\n\n return (\n <div ref={ref}>\n <AccuDrawFieldContainer orientation={orientation} />\n </div>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Calculator.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/Calculator.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,6BAA2B;AAC3B,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAwG;AACxG,kDAAuE;AACvE,wDAAqD;AACrD,yDAA0E;AAC1E,iDAAiE;AACjE,oEAAqE;AAErE,mDAA4C;AA0B5C,aAAa;AACb,MAAa,UAAW,SAAQ,KAAK,CAAC,aAA+C;IASnF,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,CAAC,CAAC;QATP,aAAQ,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAC;QAC7C,mBAAc,GAAG,KAAK,CAAC;QAmBvB,wBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE;YAChD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC7D,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QAClC,CAAC,CAAC;QAEM,2BAAsB,GAAG,CAAC,QAA4B,EAAE,EAAE;YAChE,IAAI,QAAQ,KAAK,qCAAkB,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc;gBAC9D,QAAQ,GAAG,qCAAkB,CAAC,QAAQ,CAAC;YAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;YAEhC,IAAI,QAAQ,KAAK,qCAAkB,CAAC,MAAM;gBACxC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;iBACxB,IAAI,QAAQ,KAAK,qCAAkB,CAAC,QAAQ;gBAC/C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAChC,CAAC,CAAC;QAEM,cAAS,GAAG,CAAC,MAAwB,EAAQ,EAAE;YACrD,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,CAAC,CAAC;QAUM,kBAAa,GAAG,CAAC,MAAwB,EAAQ,EAAE;YACzD,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC;QAgEM,mBAAc,GAAG,CAAC,KAA0C,EAAQ,EAAE;YAC5E,QAAQ,KAAK,CAAC,GAAG,EAAE;gBACjB,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG;oBACN,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACpC,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG;oBACN,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,QAAQ,CAAC,CAAC;oBACzD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,KAAK;oBACnB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,KAAK,CAAC,CAAC;oBACtD,MAAM;gBACR,KAAK,2BAAU,CAAC,MAAM;oBACpB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,MAAM;gBACR,KAAK,2BAAU,CAAC,SAAS;oBACvB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,SAAS,CAAC,CAAC;oBAC1D,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,MAAM;oBACpB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,MAAM,CAAC,CAAC;oBACvD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,QAAQ;oBACtB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,QAAQ,CAAC,CAAC;oBACzD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,QAAQ;oBACtB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,QAAQ,CAAC,CAAC;oBACzD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,GAAG,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,OAAO;oBACrB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,OAAO,CAAC,CAAC;oBACxD,MAAM;gBACR,KAAK,GAAG;oBACN,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,MAAM,CAAC,CAAC;oBACvD,MAAM;gBACR,KAAK,2BAAU,CAAC,KAAK;oBACnB,IAAI,CAAC,IAAI,CAAC,cAAc;wBACtB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,MAAM,CAAC,CAAC;oBACzD,IAAI,CAAC,GAAG,EAAE,CAAC;oBACX,MAAM;aACT;QACH,CAAC,CAAC;QArKA,IAAI,YAAY,GAAG,GAAG,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY;YACzB,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEpF,IAAI,CAAC,KAAK,GAAG;YACX,YAAY;SACb,CAAC;IACJ,CAAC;IA0BO,GAAG;QACT,uBAAuB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC3C;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAMO,OAAO;QACb,uBAAuB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;SACvB;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IAC9B,CAAC;IAEe,iBAAiB;QAC/B,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAEe,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,wDAAwD;QAE9I,MAAM,UAAU,GAAG,IAAA,oBAAU,EAC3B,iBAAiB,EACjB,SAAS,CACV,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACxC,oBAAC,sBAAS,IAAC,kBAAkB,EAAC,2BAA2B,EACvD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAI,CAAC,CAAC;YACnF,oBAAC,qBAAK,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAC,OAAO,GAAG,CAAC;QAEzE,OAAO;QACL,iEAAiE;QACjE,mEAAmE;QACnE,gCAAS,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc;YACrG,6BAAK,SAAS,EAAC,qBAAqB,IACjC,UAAU,CACP;YACN,oBAAC,gBAAgB,IAAC,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,EAAE,IAAI,CAAC,sBAAsB,GAAI;YAC1G,6BAAK,SAAS,EAAC,gCAAgC;gBAC7C,oBAAC,sBAAM,IACL,SAAS,EAAE,IAAA,oBAAU,EAAC,8BAA8B,EAAE,2BAA2B,CAAC,EAClF,SAAS,EAAC,KAAK,EACf,OAAO,EAAE,IAAI,CAAC,SAAS;oBAEvB,oBAAC,iBAAI,IAAC,QAAQ,EAAE,oBAAC,kCAAY,OAAG,GAAI,CAC7B;gBACT,oBAAC,sBAAM,IACL,SAAS,EAAE,IAAA,oBAAU,EAAC,8BAA8B,EAAE,+BAA+B,CAAC,EACtF,OAAO,EAAE,IAAI,CAAC,aAAa;oBAE3B,oBAAC,iBAAI,IAAC,QAAQ,EAAE,oBAAC,+BAAS,OAAG,GAAI,CAC1B,CACL,CACF,CACP,CAAC;IACJ,CAAC;;AAjHD,gBAAgB;AACO,uBAAY,GAAyB;IAC1D,MAAM,EAAE,IAAI,mCAAgB,EAAE;CAC/B,AAFkC,CAEjC;AAPS,gCAAU;AA4LvB,MAAM,gBAAiB,SAAQ,KAAK,CAAC,aAAoC;IACvD,MAAM;QACpB,MAAM,QAAQ,GAAG,kCAAiB,CAAC,0BAA0B,CAAC,uBAAa,CAAC,CAAC;QAE7E,OAAO,CACL,6BAAK,SAAS,EAAE,IAAA,oBAAU,EAAC,6BAA6B,CAAC;YACvD,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,SAAqB;YAC/G,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,QAAoB;YAC3G,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;gBACzF,6BAAK,SAAS,EAAC,4BAA4B;oBACzC,oBAAC,iBAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI,CACxB,CACS;YACjB,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACtF,SAAS,EAAC,4BAA4B,aAA0B;YAElE,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACxF,SAAS,EAAC,4BAA4B,aAAyB;YAEjE,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACxF,SAAS,EAAC,4BAA4B,aAAyB;YAEjE,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACnF,SAAS,EAAC,4BAA4B,QAAuB;YAE/D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACtF,SAAS,EAAC,4BAA4B,aAA0B;YAClE,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACvF,SAAS,EAAC,4BAA4B,QAAmB;YAC3D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACtF,SAAS,EAAC,4BAA4B,QAAuB;YAC/D,iCAAQ,CACJ,CACP,CAAC;IACJ,CAAC;CACF;AASD,MAAM,WAAY,SAAQ,KAAK,CAAC,aAA+B;IAA/D;;QAEU,mBAAc,GAAG,CAAC,MAAuD,EAAE,EAAE;YACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC;IAgBJ,CAAC;IAdiB,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,wDAAwD;QAEtH,MAAM,cAAc,GAAG,IAAA,oBAAU,EAC/B,sBAAsB,EACtB,SAAS,CACV,CAAC;QAEF,OAAO,CACL,oBAAC,2BAAY,OAAK,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,IAC7E,OAAO,CACM,CACjB,CAAC;IACJ,CAAC;CACF;AASD,MAAM,cAAe,SAAQ,KAAK,CAAC,aAAkC;IAArE;;QAEU,mBAAc,GAAG,CAAC,MAAuD,EAAE,EAAE;YACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC;IAgBJ,CAAC;IAdiB,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,wDAAwD;QAEjI,MAAM,cAAc,GAAG,IAAA,oBAAU,EAC/B,sBAAsB,EACtB,SAAS,CACV,CAAC;QAEF,OAAO,CACL,oBAAC,2BAAY,OAAK,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,IAC7E,QAAQ,CACI,CAChB,CAAC;IACJ,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport \"./Calculator.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { IconSpecUtilities, OnCancelFunc, OnNumberCommitFunc, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { CommonProps, Icon, IconInput, Omit } from \"@itwin/core-react\";\r\nimport { Button, Input } from \"@itwin/itwinui-react\";\r\nimport { CalculatorEngine, CalculatorOperator } from \"./CalculatorEngine\";\r\nimport { SquareButton, SquareButtonProps } from \"./SquareButton\";\r\nimport { SvgCheckmark, SvgRemove } from \"@itwin/itwinui-icons-react\";\r\n\r\nimport backspaceIcon from \"./backspace.svg\";\r\n\r\n// cSpell:ignore plusmn\r\n\r\n/** @alpha */\r\nexport interface CalculatorProps extends CommonProps {\r\n /** Initial value */\r\n initialValue?: number;\r\n /** Icon to display beside the calculated result */\r\n resultIcon?: React.ReactNode;\r\n /** A function to be run when the OK button is clicked */\r\n onOk?: OnNumberCommitFunc;\r\n /** A function to be run when the Cancel button is clicked */\r\n onCancel?: OnCancelFunc;\r\n\r\n /** @internal Calculator state machine. */\r\n engine: CalculatorEngine;\r\n}\r\n\r\ninterface CalculatorState {\r\n displayValue: string;\r\n}\r\n\r\n/** @internal */\r\nexport type CalculatorPropsProps = Pick<CalculatorProps, \"engine\">;\r\n\r\n/** @alpha */\r\nexport class Calculator extends React.PureComponent<CalculatorProps, CalculatorState> {\r\n private _mainDiv = React.createRef<HTMLDivElement>();\r\n private _equalsClicked = false;\r\n\r\n /** @internal */\r\n public static readonly defaultProps: CalculatorPropsProps = {\r\n engine: new CalculatorEngine(),\r\n };\r\n\r\n constructor(props: CalculatorProps) {\r\n super(props);\r\n\r\n let displayValue = \"0\";\r\n if (this.props.initialValue)\r\n displayValue = this.props.engine.processValue(this.props.initialValue.toString());\r\n\r\n this.state = {\r\n displayValue,\r\n };\r\n }\r\n\r\n private _onValueButtonClick = (keyChar: string) => {\r\n const displayValue = this.props.engine.processValue(keyChar);\r\n this._mainDivFocus();\r\n this.setState({ displayValue });\r\n };\r\n\r\n private _onOperatorButtonClick = (operator: CalculatorOperator) => {\r\n if (operator === CalculatorOperator.Clear && this._equalsClicked)\r\n operator = CalculatorOperator.ClearAll;\r\n\r\n const displayValue = this.props.engine.processOperator(operator);\r\n this._mainDivFocus();\r\n this.setState({ displayValue });\r\n\r\n if (operator === CalculatorOperator.Equals)\r\n this._equalsClicked = true;\r\n else if (operator === CalculatorOperator.ClearAll)\r\n this._equalsClicked = false;\r\n };\r\n\r\n private _handleOk = (_event: React.MouseEvent): void => {\r\n this._ok();\r\n };\r\n\r\n private _ok() {\r\n // istanbul ignore else\r\n if (this.props.onOk) {\r\n this.props.onOk(this.props.engine.result);\r\n }\r\n this._clearAll();\r\n }\r\n\r\n private _handleCancel = (_event: React.MouseEvent): void => {\r\n this._cancel();\r\n };\r\n\r\n private _cancel() {\r\n // istanbul ignore else\r\n if (this.props.onCancel) {\r\n this.props.onCancel();\r\n }\r\n this._clearAll();\r\n }\r\n\r\n private _clearAll() {\r\n this.props.engine.clearAll();\r\n this._equalsClicked = false;\r\n }\r\n\r\n public override componentDidMount() {\r\n this._mainDivFocus();\r\n }\r\n\r\n private _mainDivFocus() {\r\n if (this._mainDiv.current)\r\n this._mainDiv.current.focus();\r\n }\r\n\r\n public override render() {\r\n const { className, resultIcon, onOk, onCancel, initialValue, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\r\n\r\n const classNames = classnames(\r\n \"uifw-calculator\",\r\n className,\r\n );\r\n\r\n const topSection = this.props.resultIcon ?\r\n <IconInput containerClassName=\"uifw-calculator-top-input\"\r\n value={this.state.displayValue} readOnly={true} icon={this.props.resultIcon} /> :\r\n <Input value={this.state.displayValue} readOnly={true} size=\"small\" />;\r\n\r\n return (\r\n // The event handler is only being used to capture bubbled events\r\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\r\n <div {...props} ref={this._mainDiv} tabIndex={-1} className={classNames} onKeyDown={this._handleKeyDown}>\r\n <div className=\"uifw-calculator-top\">\r\n {topSection}\r\n </div>\r\n <CalculatorKeyPad onValueClick={this._onValueButtonClick} onOperatorClick={this._onOperatorButtonClick} />\r\n <div className=\"uifw-calculator-bottom-buttons\">\r\n <Button\r\n className={classnames(\"uifw-calculator-large-button\", \"uifw-calculator-ok-button\")}\r\n styleType=\"cta\"\r\n onClick={this._handleOk}\r\n >\r\n <Icon iconSpec={<SvgCheckmark />} />\r\n </Button>\r\n <Button\r\n className={classnames(\"uifw-calculator-large-button\", \"uifw-calculator-cancel-button\")}\r\n onClick={this._handleCancel}\r\n >\r\n <Icon iconSpec={<SvgRemove />} />\r\n </Button>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n private _handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {\r\n switch (event.key) {\r\n case \"0\":\r\n case \"1\":\r\n case \"2\":\r\n case \"3\":\r\n case \"4\":\r\n case \"5\":\r\n case \"6\":\r\n case \"7\":\r\n case \"8\":\r\n case \"9\":\r\n this._onValueButtonClick(event.key);\r\n break;\r\n case \"a\":\r\n case \"A\":\r\n this._onOperatorButtonClick(CalculatorOperator.ClearAll);\r\n break;\r\n case \"c\":\r\n case \"C\":\r\n case SpecialKey.Clear:\r\n this._onOperatorButtonClick(CalculatorOperator.Clear);\r\n break;\r\n case SpecialKey.Escape:\r\n this._cancel();\r\n break;\r\n case SpecialKey.Backspace:\r\n this._onOperatorButtonClick(CalculatorOperator.Backspace);\r\n break;\r\n case \"/\":\r\n case SpecialKey.Divide:\r\n this._onOperatorButtonClick(CalculatorOperator.Divide);\r\n break;\r\n case \"*\":\r\n case SpecialKey.Multiply:\r\n this._onOperatorButtonClick(CalculatorOperator.Multiply);\r\n break;\r\n case \"-\":\r\n case SpecialKey.Subtract:\r\n this._onOperatorButtonClick(CalculatorOperator.Subtract);\r\n break;\r\n case \"+\":\r\n case SpecialKey.Add:\r\n this._onOperatorButtonClick(CalculatorOperator.Add);\r\n break;\r\n case \".\":\r\n case SpecialKey.Decimal:\r\n this._onOperatorButtonClick(CalculatorOperator.Decimal);\r\n break;\r\n case \"=\":\r\n this._onOperatorButtonClick(CalculatorOperator.Equals);\r\n break;\r\n case SpecialKey.Enter:\r\n if (!this._equalsClicked)\r\n this._onOperatorButtonClick(CalculatorOperator.Equals);\r\n this._ok();\r\n break;\r\n }\r\n };\r\n\r\n}\r\n\r\ninterface CalculatorKeyPadProps extends CommonProps {\r\n /** A function to be run when a value is clicked */\r\n onValueClick: (key: string) => void;\r\n /** A function to be run when a value is clicked */\r\n onOperatorClick: (operator: CalculatorOperator) => void;\r\n}\r\n\r\nclass CalculatorKeyPad extends React.PureComponent<CalculatorKeyPadProps> {\r\n public override render() {\r\n const iconSpec = IconSpecUtilities.createWebComponentIconSpec(backspaceIcon);\r\n\r\n return (\r\n <div className={classnames(\"uifw-calculator-button-grid\")}>\r\n <OperatorButton operator={CalculatorOperator.ClearAll} onClick={this.props.onOperatorClick}>AC</OperatorButton>\r\n <OperatorButton operator={CalculatorOperator.Clear} onClick={this.props.onOperatorClick}>C</OperatorButton>\r\n <OperatorButton operator={CalculatorOperator.Backspace} onClick={this.props.onOperatorClick}>\r\n <div className=\"uifw-calculator-button-svg\">\r\n <Icon iconSpec={iconSpec} />\r\n </div>\r\n </OperatorButton>\r\n <OperatorButton operator={CalculatorOperator.Divide} onClick={this.props.onOperatorClick}\r\n className=\"uifw-calculator-large-font\">&divide;</OperatorButton>\r\n\r\n <ValueButton keyChar=\"7\" onClick={this.props.onValueClick} />\r\n <ValueButton keyChar=\"8\" onClick={this.props.onValueClick} />\r\n <ValueButton keyChar=\"9\" onClick={this.props.onValueClick} />\r\n <OperatorButton operator={CalculatorOperator.Multiply} onClick={this.props.onOperatorClick}\r\n className=\"uifw-calculator-large-font\">&times;</OperatorButton>\r\n\r\n <ValueButton keyChar=\"4\" onClick={this.props.onValueClick} />\r\n <ValueButton keyChar=\"5\" onClick={this.props.onValueClick} />\r\n <ValueButton keyChar=\"6\" onClick={this.props.onValueClick} />\r\n <OperatorButton operator={CalculatorOperator.Subtract} onClick={this.props.onOperatorClick}\r\n className=\"uifw-calculator-large-font\">&minus;</OperatorButton>\r\n\r\n <ValueButton keyChar=\"1\" onClick={this.props.onValueClick} />\r\n <ValueButton keyChar=\"2\" onClick={this.props.onValueClick} />\r\n <ValueButton keyChar=\"3\" onClick={this.props.onValueClick} />\r\n <OperatorButton operator={CalculatorOperator.Add} onClick={this.props.onOperatorClick}\r\n className=\"uifw-calculator-large-font\">&#43;</OperatorButton>\r\n\r\n <ValueButton keyChar=\"0\" onClick={this.props.onValueClick} />\r\n <OperatorButton operator={CalculatorOperator.NegPos} onClick={this.props.onOperatorClick}\r\n className=\"uifw-calculator-large-font\">&plusmn;</OperatorButton>\r\n <OperatorButton operator={CalculatorOperator.Decimal} onClick={this.props.onOperatorClick}\r\n className=\"uifw-calculator-large-font\">.</OperatorButton>\r\n <OperatorButton operator={CalculatorOperator.Equals} onClick={this.props.onOperatorClick}\r\n className=\"uifw-calculator-large-font\">&#61;</OperatorButton>\r\n <span />\r\n </div>\r\n );\r\n }\r\n}\r\n\r\ninterface ValueButtonProps extends Omit<SquareButtonProps, \"onClick\"> {\r\n /** Key to display */\r\n keyChar: string;\r\n /** A function to be run when the element is clicked */\r\n onClick: (key: string) => void;\r\n}\r\n\r\nclass ValueButton extends React.PureComponent<ValueButtonProps> {\r\n\r\n private _handleOnClick = (_event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\r\n this.props.onClick(this.props.keyChar);\r\n };\r\n\r\n public override render() {\r\n const { className, keyChar, onClick, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\r\n\r\n const itemClassNames = classnames(\r\n \"uifw-calculator-item\",\r\n className,\r\n );\r\n\r\n return (\r\n <SquareButton {...props} className={itemClassNames} onClick={this._handleOnClick} >\r\n {keyChar}\r\n </SquareButton >\r\n );\r\n }\r\n}\r\n\r\ninterface OperatorButtonProps extends Omit<SquareButtonProps, \"onClick\"> {\r\n /** Key to display */\r\n operator: CalculatorOperator;\r\n /** A function to be run when the element is clicked */\r\n onClick: (operator: CalculatorOperator) => void;\r\n}\r\n\r\nclass OperatorButton extends React.PureComponent<OperatorButtonProps> {\r\n\r\n private _handleOnClick = (_event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\r\n this.props.onClick(this.props.operator);\r\n };\r\n\r\n public override render() {\r\n const { className, children, operator, onClick, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\r\n\r\n const itemClassNames = classnames(\r\n \"uifw-calculator-item\",\r\n className,\r\n );\r\n\r\n return (\r\n <SquareButton {...props} className={itemClassNames} onClick={this._handleOnClick}>\r\n {children}\r\n </SquareButton>\r\n );\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Calculator.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/Calculator.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,6BAA2B;AAC3B,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAwG;AACxG,kDAAuE;AACvE,wDAAqD;AACrD,yDAA0E;AAC1E,iDAAiE;AACjE,oEAAqE;AAErE,mDAA4C;AA0B5C,aAAa;AACb,MAAa,UAAW,SAAQ,KAAK,CAAC,aAA+C;IASnF,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,CAAC,CAAC;QATP,aAAQ,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAC;QAC7C,mBAAc,GAAG,KAAK,CAAC;QAmBvB,wBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE;YAChD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC7D,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QAClC,CAAC,CAAC;QAEM,2BAAsB,GAAG,CAAC,QAA4B,EAAE,EAAE;YAChE,IAAI,QAAQ,KAAK,qCAAkB,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc;gBAC9D,QAAQ,GAAG,qCAAkB,CAAC,QAAQ,CAAC;YAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;YAEhC,IAAI,QAAQ,KAAK,qCAAkB,CAAC,MAAM;gBACxC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;iBACxB,IAAI,QAAQ,KAAK,qCAAkB,CAAC,QAAQ;gBAC/C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAChC,CAAC,CAAC;QAEM,cAAS,GAAG,CAAC,MAAwB,EAAQ,EAAE;YACrD,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,CAAC,CAAC;QAUM,kBAAa,GAAG,CAAC,MAAwB,EAAQ,EAAE;YACzD,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC;QAgEM,mBAAc,GAAG,CAAC,KAA0C,EAAQ,EAAE;YAC5E,QAAQ,KAAK,CAAC,GAAG,EAAE;gBACjB,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG;oBACN,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACpC,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG;oBACN,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,QAAQ,CAAC,CAAC;oBACzD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,KAAK;oBACnB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,KAAK,CAAC,CAAC;oBACtD,MAAM;gBACR,KAAK,2BAAU,CAAC,MAAM;oBACpB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,MAAM;gBACR,KAAK,2BAAU,CAAC,SAAS;oBACvB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,SAAS,CAAC,CAAC;oBAC1D,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,MAAM;oBACpB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,MAAM,CAAC,CAAC;oBACvD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,QAAQ;oBACtB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,QAAQ,CAAC,CAAC;oBACzD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,QAAQ;oBACtB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,QAAQ,CAAC,CAAC;oBACzD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,GAAG,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,GAAG,CAAC;gBACT,KAAK,2BAAU,CAAC,OAAO;oBACrB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,OAAO,CAAC,CAAC;oBACxD,MAAM;gBACR,KAAK,GAAG;oBACN,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,MAAM,CAAC,CAAC;oBACvD,MAAM;gBACR,KAAK,2BAAU,CAAC,KAAK;oBACnB,IAAI,CAAC,IAAI,CAAC,cAAc;wBACtB,IAAI,CAAC,sBAAsB,CAAC,qCAAkB,CAAC,MAAM,CAAC,CAAC;oBACzD,IAAI,CAAC,GAAG,EAAE,CAAC;oBACX,MAAM;aACT;QACH,CAAC,CAAC;QArKA,IAAI,YAAY,GAAG,GAAG,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY;YACzB,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEpF,IAAI,CAAC,KAAK,GAAG;YACX,YAAY;SACb,CAAC;IACJ,CAAC;IA0BO,GAAG;QACT,uBAAuB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC3C;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAMO,OAAO;QACb,uBAAuB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;SACvB;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IAC9B,CAAC;IAEe,iBAAiB;QAC/B,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAEe,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,wDAAwD;QAE9I,MAAM,UAAU,GAAG,IAAA,oBAAU,EAC3B,iBAAiB,EACjB,SAAS,CACV,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACxC,oBAAC,sBAAS,IAAC,kBAAkB,EAAC,2BAA2B,EACvD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAI,CAAC,CAAC;YACnF,oBAAC,qBAAK,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAC,OAAO,GAAG,CAAC;QAEzE,OAAO;QACL,iEAAiE;QACjE,mEAAmE;QACnE,gCAAS,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc;YACrG,6BAAK,SAAS,EAAC,qBAAqB,IACjC,UAAU,CACP;YACN,oBAAC,gBAAgB,IAAC,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,EAAE,IAAI,CAAC,sBAAsB,GAAI;YAC1G,6BAAK,SAAS,EAAC,gCAAgC;gBAC7C,oBAAC,sBAAM,IACL,SAAS,EAAE,IAAA,oBAAU,EAAC,8BAA8B,EAAE,2BAA2B,CAAC,EAClF,SAAS,EAAC,KAAK,EACf,OAAO,EAAE,IAAI,CAAC,SAAS;oBAEvB,oBAAC,iBAAI,IAAC,QAAQ,EAAE,oBAAC,kCAAY,OAAG,GAAI,CAC7B;gBACT,oBAAC,sBAAM,IACL,SAAS,EAAE,IAAA,oBAAU,EAAC,8BAA8B,EAAE,+BAA+B,CAAC,EACtF,OAAO,EAAE,IAAI,CAAC,aAAa;oBAE3B,oBAAC,iBAAI,IAAC,QAAQ,EAAE,oBAAC,+BAAS,OAAG,GAAI,CAC1B,CACL,CACF,CACP,CAAC;IACJ,CAAC;;AAjHD,gBAAgB;AACO,uBAAY,GAAyB;IAC1D,MAAM,EAAE,IAAI,mCAAgB,EAAE;CAC/B,AAFkC,CAEjC;AAPS,gCAAU;AA4LvB,MAAM,gBAAiB,SAAQ,KAAK,CAAC,aAAoC;IACvD,MAAM;QACpB,MAAM,QAAQ,GAAG,kCAAiB,CAAC,0BAA0B,CAAC,uBAAa,CAAC,CAAC;QAE7E,OAAO,CACL,6BAAK,SAAS,EAAE,IAAA,oBAAU,EAAC,6BAA6B,CAAC;YACvD,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,SAAqB;YAC/G,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,QAAoB;YAC3G,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;gBACzF,6BAAK,SAAS,EAAC,4BAA4B;oBACzC,oBAAC,iBAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI,CACxB,CACS;YACjB,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACtF,SAAS,EAAC,4BAA4B,aAA0B;YAElE,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACxF,SAAS,EAAC,4BAA4B,aAAyB;YAEjE,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACxF,SAAS,EAAC,4BAA4B,aAAyB;YAEjE,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACnF,SAAS,EAAC,4BAA4B,QAAuB;YAE/D,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;YAC7D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACtF,SAAS,EAAC,4BAA4B,aAA0B;YAClE,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACvF,SAAS,EAAC,4BAA4B,QAAmB;YAC3D,oBAAC,cAAc,IAAC,QAAQ,EAAE,qCAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EACtF,SAAS,EAAC,4BAA4B,QAAuB;YAC/D,iCAAQ,CACJ,CACP,CAAC;IACJ,CAAC;CACF;AASD,MAAM,WAAY,SAAQ,KAAK,CAAC,aAA+B;IAA/D;;QAEU,mBAAc,GAAG,CAAC,MAAuD,EAAE,EAAE;YACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC;IAgBJ,CAAC;IAdiB,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,wDAAwD;QAEtH,MAAM,cAAc,GAAG,IAAA,oBAAU,EAC/B,sBAAsB,EACtB,SAAS,CACV,CAAC;QAEF,OAAO,CACL,oBAAC,2BAAY,OAAK,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,IAC7E,OAAO,CACM,CACjB,CAAC;IACJ,CAAC;CACF;AASD,MAAM,cAAe,SAAQ,KAAK,CAAC,aAAkC;IAArE;;QAEU,mBAAc,GAAG,CAAC,MAAuD,EAAE,EAAE;YACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC;IAgBJ,CAAC;IAdiB,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,wDAAwD;QAEjI,MAAM,cAAc,GAAG,IAAA,oBAAU,EAC/B,sBAAsB,EACtB,SAAS,CACV,CAAC;QAEF,OAAO,CACL,oBAAC,2BAAY,OAAK,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,IAC7E,QAAQ,CACI,CAChB,CAAC;IACJ,CAAC;CACF","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 AccuDraw\n */\n\nimport \"./Calculator.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { IconSpecUtilities, OnCancelFunc, OnNumberCommitFunc, SpecialKey } from \"@itwin/appui-abstract\";\nimport { CommonProps, Icon, IconInput, Omit } from \"@itwin/core-react\";\nimport { Button, Input } from \"@itwin/itwinui-react\";\nimport { CalculatorEngine, CalculatorOperator } from \"./CalculatorEngine\";\nimport { SquareButton, SquareButtonProps } from \"./SquareButton\";\nimport { SvgCheckmark, SvgRemove } from \"@itwin/itwinui-icons-react\";\n\nimport backspaceIcon from \"./backspace.svg\";\n\n// cSpell:ignore plusmn\n\n/** @alpha */\nexport interface CalculatorProps extends CommonProps {\n /** Initial value */\n initialValue?: number;\n /** Icon to display beside the calculated result */\n resultIcon?: React.ReactNode;\n /** A function to be run when the OK button is clicked */\n onOk?: OnNumberCommitFunc;\n /** A function to be run when the Cancel button is clicked */\n onCancel?: OnCancelFunc;\n\n /** @internal Calculator state machine. */\n engine: CalculatorEngine;\n}\n\ninterface CalculatorState {\n displayValue: string;\n}\n\n/** @internal */\nexport type CalculatorPropsProps = Pick<CalculatorProps, \"engine\">;\n\n/** @alpha */\nexport class Calculator extends React.PureComponent<CalculatorProps, CalculatorState> {\n private _mainDiv = React.createRef<HTMLDivElement>();\n private _equalsClicked = false;\n\n /** @internal */\n public static readonly defaultProps: CalculatorPropsProps = {\n engine: new CalculatorEngine(),\n };\n\n constructor(props: CalculatorProps) {\n super(props);\n\n let displayValue = \"0\";\n if (this.props.initialValue)\n displayValue = this.props.engine.processValue(this.props.initialValue.toString());\n\n this.state = {\n displayValue,\n };\n }\n\n private _onValueButtonClick = (keyChar: string) => {\n const displayValue = this.props.engine.processValue(keyChar);\n this._mainDivFocus();\n this.setState({ displayValue });\n };\n\n private _onOperatorButtonClick = (operator: CalculatorOperator) => {\n if (operator === CalculatorOperator.Clear && this._equalsClicked)\n operator = CalculatorOperator.ClearAll;\n\n const displayValue = this.props.engine.processOperator(operator);\n this._mainDivFocus();\n this.setState({ displayValue });\n\n if (operator === CalculatorOperator.Equals)\n this._equalsClicked = true;\n else if (operator === CalculatorOperator.ClearAll)\n this._equalsClicked = false;\n };\n\n private _handleOk = (_event: React.MouseEvent): void => {\n this._ok();\n };\n\n private _ok() {\n // istanbul ignore else\n if (this.props.onOk) {\n this.props.onOk(this.props.engine.result);\n }\n this._clearAll();\n }\n\n private _handleCancel = (_event: React.MouseEvent): void => {\n this._cancel();\n };\n\n private _cancel() {\n // istanbul ignore else\n if (this.props.onCancel) {\n this.props.onCancel();\n }\n this._clearAll();\n }\n\n private _clearAll() {\n this.props.engine.clearAll();\n this._equalsClicked = false;\n }\n\n public override componentDidMount() {\n this._mainDivFocus();\n }\n\n private _mainDivFocus() {\n if (this._mainDiv.current)\n this._mainDiv.current.focus();\n }\n\n public override render() {\n const { className, resultIcon, onOk, onCancel, initialValue, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\n\n const classNames = classnames(\n \"uifw-calculator\",\n className,\n );\n\n const topSection = this.props.resultIcon ?\n <IconInput containerClassName=\"uifw-calculator-top-input\"\n value={this.state.displayValue} readOnly={true} icon={this.props.resultIcon} /> :\n <Input value={this.state.displayValue} readOnly={true} size=\"small\" />;\n\n return (\n // The event handler is only being used to capture bubbled events\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div {...props} ref={this._mainDiv} tabIndex={-1} className={classNames} onKeyDown={this._handleKeyDown}>\n <div className=\"uifw-calculator-top\">\n {topSection}\n </div>\n <CalculatorKeyPad onValueClick={this._onValueButtonClick} onOperatorClick={this._onOperatorButtonClick} />\n <div className=\"uifw-calculator-bottom-buttons\">\n <Button\n className={classnames(\"uifw-calculator-large-button\", \"uifw-calculator-ok-button\")}\n styleType=\"cta\"\n onClick={this._handleOk}\n >\n <Icon iconSpec={<SvgCheckmark />} />\n </Button>\n <Button\n className={classnames(\"uifw-calculator-large-button\", \"uifw-calculator-cancel-button\")}\n onClick={this._handleCancel}\n >\n <Icon iconSpec={<SvgRemove />} />\n </Button>\n </div>\n </div>\n );\n }\n\n private _handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {\n switch (event.key) {\n case \"0\":\n case \"1\":\n case \"2\":\n case \"3\":\n case \"4\":\n case \"5\":\n case \"6\":\n case \"7\":\n case \"8\":\n case \"9\":\n this._onValueButtonClick(event.key);\n break;\n case \"a\":\n case \"A\":\n this._onOperatorButtonClick(CalculatorOperator.ClearAll);\n break;\n case \"c\":\n case \"C\":\n case SpecialKey.Clear:\n this._onOperatorButtonClick(CalculatorOperator.Clear);\n break;\n case SpecialKey.Escape:\n this._cancel();\n break;\n case SpecialKey.Backspace:\n this._onOperatorButtonClick(CalculatorOperator.Backspace);\n break;\n case \"/\":\n case SpecialKey.Divide:\n this._onOperatorButtonClick(CalculatorOperator.Divide);\n break;\n case \"*\":\n case SpecialKey.Multiply:\n this._onOperatorButtonClick(CalculatorOperator.Multiply);\n break;\n case \"-\":\n case SpecialKey.Subtract:\n this._onOperatorButtonClick(CalculatorOperator.Subtract);\n break;\n case \"+\":\n case SpecialKey.Add:\n this._onOperatorButtonClick(CalculatorOperator.Add);\n break;\n case \".\":\n case SpecialKey.Decimal:\n this._onOperatorButtonClick(CalculatorOperator.Decimal);\n break;\n case \"=\":\n this._onOperatorButtonClick(CalculatorOperator.Equals);\n break;\n case SpecialKey.Enter:\n if (!this._equalsClicked)\n this._onOperatorButtonClick(CalculatorOperator.Equals);\n this._ok();\n break;\n }\n };\n\n}\n\ninterface CalculatorKeyPadProps extends CommonProps {\n /** A function to be run when a value is clicked */\n onValueClick: (key: string) => void;\n /** A function to be run when a value is clicked */\n onOperatorClick: (operator: CalculatorOperator) => void;\n}\n\nclass CalculatorKeyPad extends React.PureComponent<CalculatorKeyPadProps> {\n public override render() {\n const iconSpec = IconSpecUtilities.createWebComponentIconSpec(backspaceIcon);\n\n return (\n <div className={classnames(\"uifw-calculator-button-grid\")}>\n <OperatorButton operator={CalculatorOperator.ClearAll} onClick={this.props.onOperatorClick}>AC</OperatorButton>\n <OperatorButton operator={CalculatorOperator.Clear} onClick={this.props.onOperatorClick}>C</OperatorButton>\n <OperatorButton operator={CalculatorOperator.Backspace} onClick={this.props.onOperatorClick}>\n <div className=\"uifw-calculator-button-svg\">\n <Icon iconSpec={iconSpec} />\n </div>\n </OperatorButton>\n <OperatorButton operator={CalculatorOperator.Divide} onClick={this.props.onOperatorClick}\n className=\"uifw-calculator-large-font\">&divide;</OperatorButton>\n\n <ValueButton keyChar=\"7\" onClick={this.props.onValueClick} />\n <ValueButton keyChar=\"8\" onClick={this.props.onValueClick} />\n <ValueButton keyChar=\"9\" onClick={this.props.onValueClick} />\n <OperatorButton operator={CalculatorOperator.Multiply} onClick={this.props.onOperatorClick}\n className=\"uifw-calculator-large-font\">&times;</OperatorButton>\n\n <ValueButton keyChar=\"4\" onClick={this.props.onValueClick} />\n <ValueButton keyChar=\"5\" onClick={this.props.onValueClick} />\n <ValueButton keyChar=\"6\" onClick={this.props.onValueClick} />\n <OperatorButton operator={CalculatorOperator.Subtract} onClick={this.props.onOperatorClick}\n className=\"uifw-calculator-large-font\">&minus;</OperatorButton>\n\n <ValueButton keyChar=\"1\" onClick={this.props.onValueClick} />\n <ValueButton keyChar=\"2\" onClick={this.props.onValueClick} />\n <ValueButton keyChar=\"3\" onClick={this.props.onValueClick} />\n <OperatorButton operator={CalculatorOperator.Add} onClick={this.props.onOperatorClick}\n className=\"uifw-calculator-large-font\">&#43;</OperatorButton>\n\n <ValueButton keyChar=\"0\" onClick={this.props.onValueClick} />\n <OperatorButton operator={CalculatorOperator.NegPos} onClick={this.props.onOperatorClick}\n className=\"uifw-calculator-large-font\">&plusmn;</OperatorButton>\n <OperatorButton operator={CalculatorOperator.Decimal} onClick={this.props.onOperatorClick}\n className=\"uifw-calculator-large-font\">.</OperatorButton>\n <OperatorButton operator={CalculatorOperator.Equals} onClick={this.props.onOperatorClick}\n className=\"uifw-calculator-large-font\">&#61;</OperatorButton>\n <span />\n </div>\n );\n }\n}\n\ninterface ValueButtonProps extends Omit<SquareButtonProps, \"onClick\"> {\n /** Key to display */\n keyChar: string;\n /** A function to be run when the element is clicked */\n onClick: (key: string) => void;\n}\n\nclass ValueButton extends React.PureComponent<ValueButtonProps> {\n\n private _handleOnClick = (_event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n this.props.onClick(this.props.keyChar);\n };\n\n public override render() {\n const { className, keyChar, onClick, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\n\n const itemClassNames = classnames(\n \"uifw-calculator-item\",\n className,\n );\n\n return (\n <SquareButton {...props} className={itemClassNames} onClick={this._handleOnClick} >\n {keyChar}\n </SquareButton >\n );\n }\n}\n\ninterface OperatorButtonProps extends Omit<SquareButtonProps, \"onClick\"> {\n /** Key to display */\n operator: CalculatorOperator;\n /** A function to be run when the element is clicked */\n onClick: (operator: CalculatorOperator) => void;\n}\n\nclass OperatorButton extends React.PureComponent<OperatorButtonProps> {\n\n private _handleOnClick = (_event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n this.props.onClick(this.props.operator);\n };\n\n public override render() {\n const { className, children, operator, onClick, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\n\n const itemClassNames = classnames(\n \"uifw-calculator-item\",\n className,\n );\n\n return (\n <SquareButton {...props} className={itemClassNames} onClick={this._handleOnClick}>\n {children}\n </SquareButton>\n );\n }\n}\n"]}
@@ -1,85 +1,85 @@
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/index";
6
-
7
- $button-size: 36px;
8
- $button-operator-size: $button-size + 10px;
9
-
10
- .uifw-position-popup.uifw-calculator-host {
11
- background-color: $buic-background-window;
12
- }
13
-
14
- .uifw-calculator {
15
- max-width: 173px;
16
-
17
- &:focus {
18
- border-color: transparent;
19
- outline: 0px;
20
- }
21
-
22
- > .uifw-calculator-top {
23
- margin-bottom: 8px;
24
-
25
- > .uifw-calculator-top-input {
26
- width: 100%;
27
- }
28
-
29
- input {
30
- text-align: right;
31
- color: var(--iui-color-text);
32
- background-color: $buic-background-control;
33
- cursor: default;
34
- }
35
- }
36
-
37
- > .uifw-calculator-button-grid {
38
- display: grid;
39
- grid-template-columns: $button-size $button-size $button-size $button-operator-size;
40
- grid-gap: 6px;
41
- gap: 6px;
42
- justify-items: end;
43
-
44
- .uifw-calculator-item {
45
- width: $button-size;
46
- height: $button-size;
47
- }
48
- }
49
-
50
- > .uifw-calculator-bottom-buttons {
51
- display: flex;
52
- justify-content: space-between;
53
- margin-top: 0;
54
-
55
- > .uifw-calculator-large-button {
56
- width: 70px;
57
- font-size: 20px;
58
- }
59
-
60
- > .uifw-calculator-cancel-button {
61
- &,
62
- &:active,
63
- &:focus {
64
- border: none;
65
- background-color: var(--iui-color-background-negative);
66
- color: var(--iui-color-white);
67
- }
68
-
69
- &:hover {
70
- background-color: var(--iui-color-background-negative-hover);
71
- color: var(--iui-color-white);
72
- }
73
- }
74
- }
75
-
76
- .uifw-calculator-button-svg {
77
- width: 100%;
78
- height: 18px;
79
- }
80
-
81
- .uifw-calculator-large-font {
82
- font-size: 22px;
83
- }
84
-
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/index";
6
+
7
+ $button-size: 36px;
8
+ $button-operator-size: $button-size + 10px;
9
+
10
+ .uifw-position-popup.uifw-calculator-host {
11
+ background-color: $buic-background-window;
12
+ }
13
+
14
+ .uifw-calculator {
15
+ max-width: 173px;
16
+
17
+ &:focus {
18
+ border-color: transparent;
19
+ outline: 0px;
20
+ }
21
+
22
+ > .uifw-calculator-top {
23
+ margin-bottom: 8px;
24
+
25
+ > .uifw-calculator-top-input {
26
+ width: 100%;
27
+ }
28
+
29
+ input {
30
+ text-align: right;
31
+ color: var(--iui-color-text);
32
+ background-color: $buic-background-control;
33
+ cursor: default;
34
+ }
35
+ }
36
+
37
+ > .uifw-calculator-button-grid {
38
+ display: grid;
39
+ grid-template-columns: $button-size $button-size $button-size $button-operator-size;
40
+ grid-gap: 6px;
41
+ gap: 6px;
42
+ justify-items: end;
43
+
44
+ .uifw-calculator-item {
45
+ width: $button-size;
46
+ height: $button-size;
47
+ }
48
+ }
49
+
50
+ > .uifw-calculator-bottom-buttons {
51
+ display: flex;
52
+ justify-content: space-between;
53
+ margin-top: 0;
54
+
55
+ > .uifw-calculator-large-button {
56
+ width: 70px;
57
+ font-size: 20px;
58
+ }
59
+
60
+ > .uifw-calculator-cancel-button {
61
+ &,
62
+ &:active,
63
+ &:focus {
64
+ border: none;
65
+ background-color: var(--iui-color-background-negative);
66
+ color: var(--iui-color-white);
67
+ }
68
+
69
+ &:hover {
70
+ background-color: var(--iui-color-background-negative-hover);
71
+ color: var(--iui-color-white);
72
+ }
73
+ }
74
+ }
75
+
76
+ .uifw-calculator-button-svg {
77
+ width: 100%;
78
+ height: 18px;
79
+ }
80
+
81
+ .uifw-calculator-large-font {
82
+ font-size: 22px;
83
+ }
84
+
85
85
  }