@itwin/appui-react 4.1.0-dev.1 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -1
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/_variables.scss +11 -11
- package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawDialog.scss +14 -14
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.scss +27 -27
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +55 -55
- package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawUiSettings.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.scss +84 -84
- package/lib/cjs/appui-react/accudraw/CalculatorEngine.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/MenuButton.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/MenuButton.scss +18 -18
- package/lib/cjs/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/SquareButton.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/SquareButton.scss +29 -29
- package/lib/cjs/appui-react/accudraw/backspace.svg +9 -9
- package/lib/cjs/appui-react/accudraw/constraint-2d.svg +11 -11
- package/lib/cjs/appui-react/accudraw/height-2.svg +10 -10
- package/lib/cjs/appui-react/accudraw/height.svg +11 -11
- package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItem.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageManager.js.map +1 -1
- package/lib/cjs/appui-react/backstage/InternalBackstageManager.js.map +1 -1
- package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
- package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/CopyStyles.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +21 -21
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.scss +14 -14
- package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/PopoutWidget.scss +10 -10
- package/lib/cjs/appui-react/configurableui/ActivityTracker.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/configurableui.scss +74 -74
- package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentLayout.scss +127 -127
- package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
- package/lib/cjs/appui-react/content/DefaultViewOverlay.scss +46 -46
- package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
- package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
- package/lib/cjs/appui-react/content/StageContentLayout.js.map +1 -1
- package/lib/cjs/appui-react/content/ViewStateHelper.js.map +1 -1
- package/lib/cjs/appui-react/content/ViewportContentControl.js.map +1 -1
- package/lib/cjs/appui-react/content/split-pane/Pane.js.map +1 -1
- package/lib/cjs/appui-react/content/split-pane/Resizer.js.map +1 -1
- package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
- package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.scss +34 -34
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.scss +30 -30
- package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ContentDialog.scss +25 -25
- package/lib/cjs/appui-react/dialog/ContentDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ModalDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ModelessDialog.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ModelessDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/StandardMessageBox.js.map +1 -1
- package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ValidationTextbox.scss +50 -50
- package/lib/cjs/appui-react/framework/FrameworkBackstage.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkChildWindows.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkControls.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkVisibility.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.scss +80 -80
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.scss +11 -11
- package/lib/cjs/appui-react/frontstage/NestedFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StageUsage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveStageId.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
- package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
- package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/HollowIcon.js.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.scss +82 -82
- package/lib/cjs/appui-react/messages/MessageLabel.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageSpan.js.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.scss +42 -42
- package/lib/cjs/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
- package/lib/cjs/appui-react/messages/StatusMessageManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/getToastCategory.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.scss +67 -67
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.scss +72 -72
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.scss +13 -13
- package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.scss +305 -305
- package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.scss +25 -25
- package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.scss +30 -30
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/PositionPopup.scss +28 -28
- package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/cjs/appui-react/redux/FrameworkState.js.map +1 -1
- package/lib/cjs/appui-react/redux/ReducerRegistry.js.map +1 -1
- package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
- package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
- package/lib/cjs/appui-react/redux/connectIModel.js.map +1 -1
- package/lib/cjs/appui-react/redux/redux-ts.js.map +1 -1
- package/lib/cjs/appui-react/safearea/SafeAreaContext.js.map +1 -1
- package/lib/cjs/appui-react/safearea/SafeAreaHelpers.js.map +1 -1
- package/lib/cjs/appui-react/safearea/SafeAreaInsets.js.map +1 -1
- package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
- package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.scss +119 -119
- package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.scss +65 -65
- package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
- package/lib/cjs/appui-react/shared/AnyItemDef.js.map +1 -1
- package/lib/cjs/appui-react/shared/AnyToolbarItemDef.js.map +1 -1
- package/lib/cjs/appui-react/shared/CommandItemDef.js.map +1 -1
- package/lib/cjs/appui-react/shared/CustomItemDef.js.map +1 -1
- package/lib/cjs/appui-react/shared/CustomItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/GroupItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
- package/lib/cjs/appui-react/shared/ItemMap.js.map +1 -1
- package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/MenuItem.js.map +1 -1
- package/lib/cjs/appui-react/shared/SelectionScope.js.map +1 -1
- package/lib/cjs/appui-react/shared/ToolItemDef.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelSection.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Field.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Field.scss +109 -109
- package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/LabelIndicator.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/LabelIndicator.scss +43 -43
- package/lib/cjs/appui-react/statusbar/Overflow.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Overflow.scss +27 -27
- package/lib/cjs/appui-react/statusbar/OverflowPanel.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/OverflowPanel.scss +22 -22
- package/lib/cjs/appui-react/statusbar/Popup.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Separator.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Separator.scss +12 -12
- package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.scss +41 -41
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItem.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/dialog/Button.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/dialog/Dialog.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/dialog/TitleBar.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.scss +35 -35
- package/lib/cjs/appui-react/statusfields/SelectionCount.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionCount.scss +12 -12
- package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.scss +46 -46
- package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.scss +10 -10
- package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +45 -45
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +194 -194
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
- package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
- package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/DragInteraction.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
- package/lib/cjs/appui-react/tools/KeyinPaletteTools.js.map +1 -1
- package/lib/cjs/appui-react/tools/OpenSettingsTool.js.map +1 -1
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
- package/lib/cjs/appui-react/tools/ToolSettingsTools.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/ToolInformation.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/ProviderItem.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/isProviderItem.js.map +1 -1
- package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +212 -212
- package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
- package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
- package/lib/cjs/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
- package/lib/cjs/appui-react/utils/ViewUtilities.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/FloatingWidget.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.scss +19 -19
- package/lib/cjs/appui-react/widget-panels/FrontstageContent.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.scss +10 -10
- package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Tab.scss +14 -14
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +41 -41
- package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Toolbars.scss +20 -20
- package/lib/cjs/appui-react/widget-panels/useTransientState.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/StableWidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolSettingsContent.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetControl.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetState.js.map +1 -1
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/_variables.scss +11 -11
- package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawDialog.scss +14 -14
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.scss +27 -27
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +55 -55
- package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawUiSettings.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.scss +84 -84
- package/lib/esm/appui-react/accudraw/CalculatorEngine.js.map +1 -1
- package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/esm/appui-react/accudraw/MenuButton.js.map +1 -1
- package/lib/esm/appui-react/accudraw/MenuButton.scss +18 -18
- package/lib/esm/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
- package/lib/esm/appui-react/accudraw/SquareButton.js.map +1 -1
- package/lib/esm/appui-react/accudraw/SquareButton.scss +29 -29
- package/lib/esm/appui-react/accudraw/backspace.svg +9 -9
- package/lib/esm/appui-react/accudraw/constraint-2d.svg +11 -11
- package/lib/esm/appui-react/accudraw/height-2.svg +10 -10
- package/lib/esm/appui-react/accudraw/height.svg +11 -11
- package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItem.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemsManager.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageManager.js.map +1 -1
- package/lib/esm/appui-react/backstage/InternalBackstageManager.js.map +1 -1
- package/lib/esm/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
- package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
- package/lib/esm/appui-react/childwindow/CopyStyles.js.map +1 -1
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +21 -21
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.scss +14 -14
- package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +1 -1
- package/lib/esm/appui-react/childwindow/PopoutWidget.scss +10 -10
- package/lib/esm/appui-react/configurableui/ActivityTracker.js.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
- package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
- package/lib/esm/appui-react/configurableui/configurableui.scss +74 -74
- package/lib/esm/appui-react/configurableui/state.js.map +1 -1
- package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
- package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/esm/appui-react/content/ContentLayout.scss +127 -127
- package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
- package/lib/esm/appui-react/content/DefaultViewOverlay.scss +46 -46
- package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
- package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
- package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
- package/lib/esm/appui-react/content/StageContentLayout.js.map +1 -1
- package/lib/esm/appui-react/content/ViewStateHelper.js.map +1 -1
- package/lib/esm/appui-react/content/ViewportContentControl.js.map +1 -1
- package/lib/esm/appui-react/content/split-pane/Pane.js.map +1 -1
- package/lib/esm/appui-react/content/split-pane/Resizer.js.map +1 -1
- package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
- package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.scss +34 -34
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.scss +30 -30
- package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
- package/lib/esm/appui-react/dialog/ContentDialog.scss +25 -25
- package/lib/esm/appui-react/dialog/ContentDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/ModalDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/ModelessDialog.js.map +1 -1
- package/lib/esm/appui-react/dialog/ModelessDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/StandardMessageBox.js.map +1 -1
- package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
- package/lib/esm/appui-react/feedback/ValidationTextbox.scss +50 -50
- package/lib/esm/appui-react/framework/FrameworkBackstage.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkChildWindows.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkControls.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkVisibility.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageConfig.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalFrontstage.scss +80 -80
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.scss +11 -11
- package/lib/esm/appui-react/frontstage/NestedFrontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StageUsage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveStageId.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
- package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
- package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
- package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
- package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
- package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
- package/lib/esm/appui-react/messages/HollowIcon.js.map +1 -1
- package/lib/esm/appui-react/messages/InputField.js.map +1 -1
- package/lib/esm/appui-react/messages/InputField.scss +82 -82
- package/lib/esm/appui-react/messages/MessageLabel.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageSpan.js.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.scss +42 -42
- package/lib/esm/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
- package/lib/esm/appui-react/messages/StatusMessageManager.js.map +1 -1
- package/lib/esm/appui-react/messages/getToastCategory.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.scss +67 -67
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.scss +72 -72
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.scss +13 -13
- package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.scss +305 -305
- package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.scss +25 -25
- package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.scss +30 -30
- package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
- package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/PositionPopup.scss +28 -28
- package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/esm/appui-react/redux/FrameworkState.js.map +1 -1
- package/lib/esm/appui-react/redux/ReducerRegistry.js.map +1 -1
- package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
- package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
- package/lib/esm/appui-react/redux/connectIModel.js.map +1 -1
- package/lib/esm/appui-react/redux/redux-ts.js.map +1 -1
- package/lib/esm/appui-react/safearea/SafeAreaContext.js.map +1 -1
- package/lib/esm/appui-react/safearea/SafeAreaHelpers.js.map +1 -1
- package/lib/esm/appui-react/safearea/SafeAreaInsets.js.map +1 -1
- package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
- package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.scss +119 -119
- package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.scss +65 -65
- package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
- package/lib/esm/appui-react/shared/AnyItemDef.js.map +1 -1
- package/lib/esm/appui-react/shared/AnyToolbarItemDef.js.map +1 -1
- package/lib/esm/appui-react/shared/CommandItemDef.js.map +1 -1
- package/lib/esm/appui-react/shared/CustomItemDef.js.map +1 -1
- package/lib/esm/appui-react/shared/CustomItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/GroupItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
- package/lib/esm/appui-react/shared/ItemMap.js.map +1 -1
- package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/MenuItem.js.map +1 -1
- package/lib/esm/appui-react/shared/SelectionScope.js.map +1 -1
- package/lib/esm/appui-react/shared/ToolItemDef.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelSection.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Field.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Field.scss +109 -109
- package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
- package/lib/esm/appui-react/statusbar/LabelIndicator.js.map +1 -1
- package/lib/esm/appui-react/statusbar/LabelIndicator.scss +43 -43
- package/lib/esm/appui-react/statusbar/Overflow.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Overflow.scss +27 -27
- package/lib/esm/appui-react/statusbar/OverflowPanel.js.map +1 -1
- package/lib/esm/appui-react/statusbar/OverflowPanel.scss +22 -22
- package/lib/esm/appui-react/statusbar/Popup.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Separator.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Separator.scss +12 -12
- package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.scss +41 -41
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItem.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
- package/lib/esm/appui-react/statusbar/dialog/Button.js.map +1 -1
- package/lib/esm/appui-react/statusbar/dialog/Dialog.js.map +1 -1
- package/lib/esm/appui-react/statusbar/dialog/TitleBar.js.map +1 -1
- package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
- package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.scss +35 -35
- package/lib/esm/appui-react/statusfields/SelectionCount.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionCount.scss +12 -12
- package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.scss +46 -46
- package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.scss +10 -10
- package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
- package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +45 -45
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +194 -194
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
- package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
- package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
- package/lib/esm/appui-react/toolbar/DragInteraction.js.map +1 -1
- package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/esm/appui-react/toolbar/toUIAToolbarItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
- package/lib/esm/appui-react/tools/KeyinPaletteTools.js.map +1 -1
- package/lib/esm/appui-react/tools/OpenSettingsTool.js.map +1 -1
- package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
- package/lib/esm/appui-react/tools/ToolSettingsTools.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/ToolInformation.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/ProviderItem.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/isProviderItem.js.map +1 -1
- package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +212 -212
- package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
- package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
- package/lib/esm/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
- package/lib/esm/appui-react/utils/ViewUtilities.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/FloatingWidget.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.scss +19 -19
- package/lib/esm/appui-react/widget-panels/FrontstageContent.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.scss +10 -10
- package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Tab.scss +14 -14
- package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.scss +41 -41
- package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Toolbars.scss +20 -20
- package/lib/esm/appui-react/widget-panels/useTransientState.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/StableWidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolSettingsContent.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetControl.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetState.js.map +1 -1
- package/lib/esm/appui-react.js.map +1 -1
- package/lib/public/locales/en/UiFramework.json +333 -333
- package/package.json +9 -9
|
@@ -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":["/*---------------------------------------------------------------------------------------------\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 type { 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
|
+
{"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 type { 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 +1 @@
|
|
|
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 type { XAndY } from \"@itwin/core-geometry\";\nimport { AngleDescription, LengthDescription } from \"@itwin/core-frontend\";\nimport type { AbstractMenuItemProps, OnCancelFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"@itwin/appui-abstract\";\nimport { IconSpecUtilities } from \"@itwin/appui-abstract\";\n\nimport type { PopupInfo} from \"../popup/PopupManager\";\nimport { 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
|
+
{"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 type { XAndY } from \"@itwin/core-geometry\";\r\nimport { AngleDescription, LengthDescription } from \"@itwin/core-frontend\";\r\nimport type { AbstractMenuItemProps, OnCancelFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"@itwin/appui-abstract\";\r\nimport { IconSpecUtilities } from \"@itwin/appui-abstract\";\r\n\r\nimport type { PopupInfo} from \"../popup/PopupManager\";\r\nimport { 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 +1 @@
|
|
|
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 type { ColorDef } from \"@itwin/core-common\";\nimport type { 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
|
+
{"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 type { ColorDef } from \"@itwin/core-common\";\r\nimport type { 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 +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":["/*---------------------------------------------------------------------------------------------\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 type { 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
|
+
{"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 type { 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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calculator.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/Calculator.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 \"./Calculator.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { OnCancelFunc, OnNumberCommitFunc} from \"@itwin/appui-abstract\";\nimport { IconSpecUtilities, SpecialKey } from \"@itwin/appui-abstract\";\nimport type { CommonProps, Omit } from \"@itwin/core-react\";\nimport { Icon, IconInput } from \"@itwin/core-react\";\nimport { Button, Input } from \"@itwin/itwinui-react\";\nimport { CalculatorEngine, CalculatorOperator } from \"./CalculatorEngine\";\nimport type { SquareButtonProps } from \"./SquareButton\";\nimport { SquareButton } 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\">÷</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\">×</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\">−</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\">+</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\">±</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\">=</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
|
+
{"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;AAE/B,0DAAsE;AAEtE,kDAAoD;AACpD,wDAAqD;AACrD,yDAA0E;AAE1E,iDAA8C;AAC9C,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 type { OnCancelFunc, OnNumberCommitFunc} from \"@itwin/appui-abstract\";\r\nimport { IconSpecUtilities, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport type { CommonProps, Omit } from \"@itwin/core-react\";\r\nimport { Icon, IconInput } from \"@itwin/core-react\";\r\nimport { Button, Input } from \"@itwin/itwinui-react\";\r\nimport { CalculatorEngine, CalculatorOperator } from \"./CalculatorEngine\";\r\nimport type { SquareButtonProps } from \"./SquareButton\";\r\nimport { SquareButton } 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\">÷</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\">×</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\">−</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\">+</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\">±</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\">=</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,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
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalculatorEngine.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/CalculatorEngine.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module AccuDraw\n */\n\n/** @internal */\nexport enum CalculatorOperator { // eslint-disable-line: completed-docs\n None,\n Clear,\n ClearAll,\n Backspace,\n Add,\n Subtract,\n Multiply,\n Divide,\n NegPos,\n Decimal,\n Equals,\n}\n\n/** @internal */\nexport enum CalculatorKeyType {\n None,\n Operator,\n Equals,\n}\n\n/** @internal */\nexport class CalculatorEngine {\n private _displayValue: string = \"0\";\n private _operator?: CalculatorOperator;\n private _previousKeyType: CalculatorKeyType = CalculatorKeyType.None;\n private _firstValue: string = \"\";\n private _modValue: string = \"\";\n\n constructor() {\n this.clearAll();\n }\n\n public clearAll(): void {\n this._displayValue = \"0\";\n this._previousKeyType = CalculatorKeyType.None;\n this._firstValue = \"\";\n this._modValue = \"\";\n this._operator = undefined;\n }\n\n public get result(): number {\n return parseFloat(this._displayValue);\n }\n\n public get displayValue(): string {\n return this._displayValue;\n }\n\n public processValue(value: string): string {\n let resultString: string;\n\n if (\n this._displayValue === \"0\" ||\n this._previousKeyType === CalculatorKeyType.Operator ||\n this._previousKeyType === CalculatorKeyType.Equals\n ) {\n resultString = value;\n } else {\n resultString = this._displayValue + value;\n }\n\n this._displayValue = resultString;\n this._previousKeyType = CalculatorKeyType.None;\n\n return resultString;\n }\n\n public processOperator(operator: CalculatorOperator): string {\n const displayedNum = this._displayValue;\n const resultString = this._createResultString(operator, displayedNum);\n\n this._displayValue = resultString;\n\n this._updateCalculatorState(operator, resultString, displayedNum);\n\n return resultString;\n }\n\n private _createResultString = (operator: CalculatorOperator, displayedNum: string) => {\n let resultString = displayedNum;\n\n if (this._isMathOperator(operator)) {\n const firstValue = this._firstValue;\n const savedOperator = this._operator;\n\n resultString = (firstValue && savedOperator &&\n this._previousKeyType !== CalculatorKeyType.Operator && this._previousKeyType !== CalculatorKeyType.Equals)\n ? this._calculate(firstValue, savedOperator, displayedNum)\n : displayedNum;\n\n } else {\n switch (operator) {\n case CalculatorOperator.Clear:\n resultString = \"0\";\n break;\n\n case CalculatorOperator.ClearAll:\n resultString = \"0\";\n break;\n\n case CalculatorOperator.Backspace:\n resultString = resultString.slice(0, -1);\n if (resultString.length === 0)\n resultString = \"0\";\n break;\n\n case CalculatorOperator.Decimal:\n if (!resultString.includes(\".\"))\n resultString = `${displayedNum}.`;\n else if (this._previousKeyType === CalculatorKeyType.Operator || this._previousKeyType === CalculatorKeyType.Equals)\n resultString = \"0.\";\n break;\n\n case CalculatorOperator.NegPos:\n if (displayedNum.length > 0 && displayedNum[0] === \"-\")\n resultString = displayedNum.substring(1);\n else\n resultString = `-${displayedNum}`;\n break;\n\n case CalculatorOperator.Equals: {\n const firstValue = this._firstValue;\n const savedOperator = this._operator;\n const modValue = this._modValue;\n\n if (firstValue && savedOperator) {\n resultString = this._previousKeyType === CalculatorKeyType.Equals\n ? this._calculate(displayedNum, savedOperator, modValue)\n : this._calculate(firstValue, savedOperator, displayedNum);\n } else {\n resultString = displayedNum;\n }\n break;\n }\n }\n }\n\n return resultString;\n };\n\n private _isMathOperator = (operator: CalculatorOperator): boolean => {\n switch (operator) {\n case CalculatorOperator.Add:\n case CalculatorOperator.Subtract:\n case CalculatorOperator.Multiply:\n case CalculatorOperator.Divide:\n return true;\n }\n return false;\n };\n\n private _calculate = (n1Str: string, operator: CalculatorOperator, n2Str: string): string => {\n let result = 0;\n const n1 = parseFloat(n1Str);\n const n2 = parseFloat(n2Str);\n\n switch (operator) {\n case CalculatorOperator.Add:\n result = n1 + n2;\n break;\n case CalculatorOperator.Subtract:\n result = n1 - n2;\n break;\n case CalculatorOperator.Multiply:\n result = n1 * n2;\n break;\n case CalculatorOperator.Divide:\n const displayValue = n2;\n if (displayValue !== 0)\n result = n1 / displayValue;\n else\n result = 0;\n break;\n }\n\n return result.toString();\n };\n\n private _updateCalculatorState = (operator: CalculatorOperator, resultString: string, displayedNum: string): void => {\n let keyType = CalculatorKeyType.None;\n\n if (this._isMathOperator(operator)) {\n if (this._firstValue && this._operator && this._previousKeyType === CalculatorKeyType.None) {\n this._firstValue = resultString;\n } else {\n this._firstValue = displayedNum;\n }\n\n this._operator = operator;\n keyType = CalculatorKeyType.Operator;\n\n } else {\n switch (operator) {\n case CalculatorOperator.ClearAll:\n this.clearAll();\n break;\n\n case CalculatorOperator.Equals: {\n let secondValue = displayedNum;\n\n if (this._firstValue) {\n if (this._previousKeyType === CalculatorKeyType.Equals) {\n secondValue = this._modValue;\n }\n }\n\n this._modValue = secondValue;\n\n keyType = CalculatorKeyType.Equals;\n }\n }\n }\n\n this._previousKeyType = keyType;\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"CalculatorEngine.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/CalculatorEngine.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\n/** @internal */\r\nexport enum CalculatorOperator { // eslint-disable-line: completed-docs\r\n None,\r\n Clear,\r\n ClearAll,\r\n Backspace,\r\n Add,\r\n Subtract,\r\n Multiply,\r\n Divide,\r\n NegPos,\r\n Decimal,\r\n Equals,\r\n}\r\n\r\n/** @internal */\r\nexport enum CalculatorKeyType {\r\n None,\r\n Operator,\r\n Equals,\r\n}\r\n\r\n/** @internal */\r\nexport class CalculatorEngine {\r\n private _displayValue: string = \"0\";\r\n private _operator?: CalculatorOperator;\r\n private _previousKeyType: CalculatorKeyType = CalculatorKeyType.None;\r\n private _firstValue: string = \"\";\r\n private _modValue: string = \"\";\r\n\r\n constructor() {\r\n this.clearAll();\r\n }\r\n\r\n public clearAll(): void {\r\n this._displayValue = \"0\";\r\n this._previousKeyType = CalculatorKeyType.None;\r\n this._firstValue = \"\";\r\n this._modValue = \"\";\r\n this._operator = undefined;\r\n }\r\n\r\n public get result(): number {\r\n return parseFloat(this._displayValue);\r\n }\r\n\r\n public get displayValue(): string {\r\n return this._displayValue;\r\n }\r\n\r\n public processValue(value: string): string {\r\n let resultString: string;\r\n\r\n if (\r\n this._displayValue === \"0\" ||\r\n this._previousKeyType === CalculatorKeyType.Operator ||\r\n this._previousKeyType === CalculatorKeyType.Equals\r\n ) {\r\n resultString = value;\r\n } else {\r\n resultString = this._displayValue + value;\r\n }\r\n\r\n this._displayValue = resultString;\r\n this._previousKeyType = CalculatorKeyType.None;\r\n\r\n return resultString;\r\n }\r\n\r\n public processOperator(operator: CalculatorOperator): string {\r\n const displayedNum = this._displayValue;\r\n const resultString = this._createResultString(operator, displayedNum);\r\n\r\n this._displayValue = resultString;\r\n\r\n this._updateCalculatorState(operator, resultString, displayedNum);\r\n\r\n return resultString;\r\n }\r\n\r\n private _createResultString = (operator: CalculatorOperator, displayedNum: string) => {\r\n let resultString = displayedNum;\r\n\r\n if (this._isMathOperator(operator)) {\r\n const firstValue = this._firstValue;\r\n const savedOperator = this._operator;\r\n\r\n resultString = (firstValue && savedOperator &&\r\n this._previousKeyType !== CalculatorKeyType.Operator && this._previousKeyType !== CalculatorKeyType.Equals)\r\n ? this._calculate(firstValue, savedOperator, displayedNum)\r\n : displayedNum;\r\n\r\n } else {\r\n switch (operator) {\r\n case CalculatorOperator.Clear:\r\n resultString = \"0\";\r\n break;\r\n\r\n case CalculatorOperator.ClearAll:\r\n resultString = \"0\";\r\n break;\r\n\r\n case CalculatorOperator.Backspace:\r\n resultString = resultString.slice(0, -1);\r\n if (resultString.length === 0)\r\n resultString = \"0\";\r\n break;\r\n\r\n case CalculatorOperator.Decimal:\r\n if (!resultString.includes(\".\"))\r\n resultString = `${displayedNum}.`;\r\n else if (this._previousKeyType === CalculatorKeyType.Operator || this._previousKeyType === CalculatorKeyType.Equals)\r\n resultString = \"0.\";\r\n break;\r\n\r\n case CalculatorOperator.NegPos:\r\n if (displayedNum.length > 0 && displayedNum[0] === \"-\")\r\n resultString = displayedNum.substring(1);\r\n else\r\n resultString = `-${displayedNum}`;\r\n break;\r\n\r\n case CalculatorOperator.Equals: {\r\n const firstValue = this._firstValue;\r\n const savedOperator = this._operator;\r\n const modValue = this._modValue;\r\n\r\n if (firstValue && savedOperator) {\r\n resultString = this._previousKeyType === CalculatorKeyType.Equals\r\n ? this._calculate(displayedNum, savedOperator, modValue)\r\n : this._calculate(firstValue, savedOperator, displayedNum);\r\n } else {\r\n resultString = displayedNum;\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return resultString;\r\n };\r\n\r\n private _isMathOperator = (operator: CalculatorOperator): boolean => {\r\n switch (operator) {\r\n case CalculatorOperator.Add:\r\n case CalculatorOperator.Subtract:\r\n case CalculatorOperator.Multiply:\r\n case CalculatorOperator.Divide:\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n private _calculate = (n1Str: string, operator: CalculatorOperator, n2Str: string): string => {\r\n let result = 0;\r\n const n1 = parseFloat(n1Str);\r\n const n2 = parseFloat(n2Str);\r\n\r\n switch (operator) {\r\n case CalculatorOperator.Add:\r\n result = n1 + n2;\r\n break;\r\n case CalculatorOperator.Subtract:\r\n result = n1 - n2;\r\n break;\r\n case CalculatorOperator.Multiply:\r\n result = n1 * n2;\r\n break;\r\n case CalculatorOperator.Divide:\r\n const displayValue = n2;\r\n if (displayValue !== 0)\r\n result = n1 / displayValue;\r\n else\r\n result = 0;\r\n break;\r\n }\r\n\r\n return result.toString();\r\n };\r\n\r\n private _updateCalculatorState = (operator: CalculatorOperator, resultString: string, displayedNum: string): void => {\r\n let keyType = CalculatorKeyType.None;\r\n\r\n if (this._isMathOperator(operator)) {\r\n if (this._firstValue && this._operator && this._previousKeyType === CalculatorKeyType.None) {\r\n this._firstValue = resultString;\r\n } else {\r\n this._firstValue = displayedNum;\r\n }\r\n\r\n this._operator = operator;\r\n keyType = CalculatorKeyType.Operator;\r\n\r\n } else {\r\n switch (operator) {\r\n case CalculatorOperator.ClearAll:\r\n this.clearAll();\r\n break;\r\n\r\n case CalculatorOperator.Equals: {\r\n let secondValue = displayedNum;\r\n\r\n if (this._firstValue) {\r\n if (this._previousKeyType === CalculatorKeyType.Equals) {\r\n secondValue = this._modValue;\r\n }\r\n }\r\n\r\n this._modValue = secondValue;\r\n\r\n keyType = CalculatorKeyType.Equals;\r\n }\r\n }\r\n }\r\n\r\n this._previousKeyType = keyType;\r\n };\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalculatorPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/CalculatorPopup.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAG/B,kDAAoE;AAEpE,wDAAqD;AACrD,0DAA6E;AAC7E,6CAA0C;AAe1C;;GAEG;AACH,MAAa,eAAgB,SAAQ,KAAK,CAAC,aAAyD;IAApG;;QACE,gBAAgB;QACS,UAAK,GAAG;YAC/B,IAAI,EAAE,IAAI,iBAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACvB,CAAC;QAEM,iBAAY,GAAG,CAAC,OAAkB,EAAE,EAAE;YAC5C,uBAAuB;YACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;gBAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,iBAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;IAyBJ,CAAC;IAvBC,gBAAgB;IACA,MAAM;QACpB,MAAM,KAAK,GAAG,2BAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9G,OAAO,CACL,oBAAC,6BAAa,IAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAC/B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAC,sBAAsB,EAChC,WAAW,EAAE,IAAI,CAAC,YAAY;YAE9B,oBAAC,gCAAmB,IAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACtD,oBAAC,oCAAoB;oBACnB,oBAAC,uBAAU,IACT,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACrC,UAAU,EAAE,oBAAC,iBAAI,IAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAI,EACrD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EACrB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAI,CACd,CACH,CACR,CACjB,CAAC;IACJ,CAAC;CAEF;AAnCD,0CAmCC","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 type { OnCancelFunc, OnNumberCommitFunc } from \"@itwin/appui-abstract\";\nimport type { SizeProps } from \"@itwin/core-react\";\nimport { DivWithOutsideClick, Icon, Size } from \"@itwin/core-react\";\nimport type { PopupPropsBase } from \"../popup/PopupManager\";\nimport { PopupManager } from \"../popup/PopupManager\";\nimport { PositionPopup, PositionPopupContent } from \"../popup/PositionPopup\";\nimport { Calculator } from \"./Calculator\";\n\n/** @alpha */\nexport interface CalculatorPopupProps extends PopupPropsBase {\n initialValue: number;\n resultIcon: string;\n onOk: OnNumberCommitFunc;\n onCancel: OnCancelFunc;\n}\n\n/** @internal */\ninterface CalculatorPopupState {\n size: Size;\n}\n\n/** Popup component for Calculator\n * @alpha\n */\nexport class CalculatorPopup extends React.PureComponent<CalculatorPopupProps, CalculatorPopupState> {\n /** @internal */\n public override readonly state = {\n size: new Size(-1, -1),\n };\n\n private _onSizeKnown = (newSize: SizeProps) => {\n // istanbul ignore else\n if (!this.state.size.equals(newSize))\n this.setState({ size: Size.create(newSize) });\n };\n\n /** @internal */\n public override render() {\n const point = PopupManager.getPopupPosition(this.props.el, this.props.pt, this.props.offset, this.state.size);\n\n return (\n <PositionPopup key={this.props.id}\n point={point}\n className=\"uifw-calculator-host\"\n onSizeKnown={this._onSizeKnown}\n >\n <DivWithOutsideClick onOutsideClick={this.props.onCancel}>\n <PositionPopupContent>\n <Calculator\n initialValue={this.props.initialValue}\n resultIcon={<Icon iconSpec={this.props.resultIcon} />}\n onOk={this.props.onOk}\n onCancel={this.props.onCancel} />\n </PositionPopupContent>\n </DivWithOutsideClick>\n </PositionPopup>\n );\n }\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"CalculatorPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/CalculatorPopup.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAG/B,kDAAoE;AAEpE,wDAAqD;AACrD,0DAA6E;AAC7E,6CAA0C;AAe1C;;GAEG;AACH,MAAa,eAAgB,SAAQ,KAAK,CAAC,aAAyD;IAApG;;QACE,gBAAgB;QACS,UAAK,GAAG;YAC/B,IAAI,EAAE,IAAI,iBAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACvB,CAAC;QAEM,iBAAY,GAAG,CAAC,OAAkB,EAAE,EAAE;YAC5C,uBAAuB;YACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;gBAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,iBAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;IAyBJ,CAAC;IAvBC,gBAAgB;IACA,MAAM;QACpB,MAAM,KAAK,GAAG,2BAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9G,OAAO,CACL,oBAAC,6BAAa,IAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAC/B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAC,sBAAsB,EAChC,WAAW,EAAE,IAAI,CAAC,YAAY;YAE9B,oBAAC,gCAAmB,IAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACtD,oBAAC,oCAAoB;oBACnB,oBAAC,uBAAU,IACT,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACrC,UAAU,EAAE,oBAAC,iBAAI,IAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAI,EACrD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EACrB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAI,CACd,CACH,CACR,CACjB,CAAC;IACJ,CAAC;CAEF;AAnCD,0CAmCC","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 type { OnCancelFunc, OnNumberCommitFunc } from \"@itwin/appui-abstract\";\r\nimport type { SizeProps } from \"@itwin/core-react\";\r\nimport { DivWithOutsideClick, Icon, Size } from \"@itwin/core-react\";\r\nimport type { PopupPropsBase } from \"../popup/PopupManager\";\r\nimport { PopupManager } from \"../popup/PopupManager\";\r\nimport { PositionPopup, PositionPopupContent } from \"../popup/PositionPopup\";\r\nimport { Calculator } from \"./Calculator\";\r\n\r\n/** @alpha */\r\nexport interface CalculatorPopupProps extends PopupPropsBase {\r\n initialValue: number;\r\n resultIcon: string;\r\n onOk: OnNumberCommitFunc;\r\n onCancel: OnCancelFunc;\r\n}\r\n\r\n/** @internal */\r\ninterface CalculatorPopupState {\r\n size: Size;\r\n}\r\n\r\n/** Popup component for Calculator\r\n * @alpha\r\n */\r\nexport class CalculatorPopup extends React.PureComponent<CalculatorPopupProps, CalculatorPopupState> {\r\n /** @internal */\r\n public override readonly state = {\r\n size: new Size(-1, -1),\r\n };\r\n\r\n private _onSizeKnown = (newSize: SizeProps) => {\r\n // istanbul ignore else\r\n if (!this.state.size.equals(newSize))\r\n this.setState({ size: Size.create(newSize) });\r\n };\r\n\r\n /** @internal */\r\n public override render() {\r\n const point = PopupManager.getPopupPosition(this.props.el, this.props.pt, this.props.offset, this.state.size);\r\n\r\n return (\r\n <PositionPopup key={this.props.id}\r\n point={point}\r\n className=\"uifw-calculator-host\"\r\n onSizeKnown={this._onSizeKnown}\r\n >\r\n <DivWithOutsideClick onOutsideClick={this.props.onCancel}>\r\n <PositionPopupContent>\r\n <Calculator\r\n initialValue={this.props.initialValue}\r\n resultIcon={<Icon iconSpec={this.props.resultIcon} />}\r\n onOk={this.props.onOk}\r\n onCancel={this.props.onCancel} />\r\n </PositionPopupContent>\r\n </DivWithOutsideClick>\r\n </PositionPopup>\r\n );\r\n }\r\n\r\n}\r\n"]}
|