@itwin/appui-react 4.0.0-dev.10 → 4.0.0-dev.11
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/lib/cjs/appui-react/_variables.scss +4 -5
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +2 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +4 -10
- package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.js +3 -2
- package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.scss +12 -14
- package/lib/cjs/appui-react/accudraw/MenuButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/MenuButton.js +2 -1
- package/lib/cjs/appui-react/accudraw/MenuButton.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/SquareButton.scss +10 -25
- package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposer.js +16 -19
- package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts +1 -2
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +5 -5
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItem.d.ts +44 -13
- package/lib/cjs/appui-react/backstage/BackstageItem.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItem.js +4 -5
- package/lib/cjs/appui-react/backstage/BackstageItem.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemsManager.d.ts +39 -0
- package/lib/cjs/appui-react/backstage/BackstageItemsManager.d.ts.map +1 -0
- package/lib/cjs/appui-react/backstage/BackstageItemsManager.js +130 -0
- package/lib/cjs/appui-react/backstage/BackstageItemsManager.js.map +1 -0
- package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.d.ts +2 -1
- package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.js +2 -6
- package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
- package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts +1 -1
- package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js +2 -6
- package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/configurableui.scss +0 -3
- package/lib/cjs/appui-react/content/ContentLayout.scss +4 -4
- package/lib/cjs/appui-react/content/DefaultViewOverlay.scss +10 -7
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.scss +3 -3
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js +2 -1
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.scss +1 -1
- package/lib/cjs/appui-react/feedback/ValidationTextbox.d.ts.map +1 -1
- package/lib/cjs/appui-react/feedback/ValidationTextbox.js +2 -1
- package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ValidationTextbox.scss +3 -6
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.js +4 -2
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.scss +9 -12
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +2 -2
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.scss +1 -3
- package/lib/cjs/appui-react/frontstage/NestedFrontstage.d.ts +1 -0
- package/lib/cjs/appui-react/frontstage/NestedFrontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/NestedFrontstage.js +4 -1
- package/lib/cjs/appui-react/frontstage/NestedFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StageUsage.d.ts +9 -8
- package/lib/cjs/appui-react/frontstage/StageUsage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/StageUsage.js +10 -3
- package/lib/cjs/appui-react/frontstage/StageUsage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +3 -3
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +4 -4
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.js +5 -9
- package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
- package/lib/cjs/appui-react/messages/ActivityMessage.js +1 -1
- package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.js +8 -7
- package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.scss +8 -8
- package/lib/cjs/appui-react/messages/MessageManager.d.ts +10 -1
- package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.js +28 -3
- package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.js +1 -1
- package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.scss +6 -6
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +5 -2
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.scss +1 -21
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +3 -3
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +8 -6
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.d.ts +2 -2
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js +19 -10
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.js +3 -2
- package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.scss +5 -5
- package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.js +3 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.js +2 -2
- package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.scss +1 -1
- package/lib/cjs/appui-react/popup/PositionPopup.scss +1 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts +3 -2
- package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.js +3 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/cjs/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +20 -10
- package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.scss +2 -2
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.scss +3 -4
- package/lib/cjs/appui-react/shared/ItemProps.d.ts +2 -2
- package/lib/cjs/appui-react/shared/ItemProps.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/ToolItemDef.d.ts +1 -1
- package/lib/cjs/appui-react/shared/ToolItemDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/ToolItemDef.js +2 -2
- package/lib/cjs/appui-react/shared/ToolItemDef.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +27 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelLocation.d.ts +7 -7
- package/lib/cjs/appui-react/stagepanels/StagePanelLocation.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelLocation.js +8 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelSection.d.ts +5 -7
- package/lib/cjs/appui-react/stagepanels/StagePanelSection.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelSection.js +6 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelSection.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Indicator.scss +14 -15
- package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts +1 -1
- package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/LabelIndicator.js +2 -3
- package/lib/cjs/appui-react/statusbar/LabelIndicator.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Separator.scss +1 -3
- package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +1 -0
- package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.js +2 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.scss +1 -3
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts +2 -2
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +34 -35
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItem.d.ts +71 -39
- package/lib/cjs/appui-react/statusbar/StatusBarItem.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItem.js +33 -20
- package/lib/cjs/appui-react/statusbar/StatusBarItem.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.d.ts +5 -14
- package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.js +28 -20
- package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts +40 -0
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js +135 -0
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -0
- package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.d.ts +3 -2
- package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js +2 -7
- package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts +3 -3
- package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/ActivityCenter.js +5 -3
- package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.js +5 -2
- package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.js +4 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.scss +3 -4
- package/lib/cjs/appui-react/statusfields/SelectionInfo.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionInfo.js +2 -1
- package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.scss +1 -1
- package/lib/cjs/appui-react/statusfields/SnapMode.d.ts +2 -0
- package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/SnapMode.js +40 -2
- package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.js +2 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +5 -4
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +12 -12
- package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js +1 -2
- package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts +2 -3
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +29 -32
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.d.ts +6 -10
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +8 -18
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts +77 -26
- package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItem.js +22 -11
- package/lib/cjs/appui-react/toolbar/ToolbarItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.d.ts +6 -4
- package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.js +31 -6
- package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.d.ts +46 -0
- package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -0
- package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js +248 -0
- package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js.map +1 -0
- package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.d.ts +8 -0
- package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.d.ts.map +1 -0
- package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.js +26 -0
- package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.js.map +1 -0
- package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.d.ts +3 -2
- package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.js +2 -6
- package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts +3 -3
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -7
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +13 -8
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
- package/lib/cjs/appui-react/tools/KeyinPaletteTools.js +3 -1
- package/lib/cjs/appui-react/tools/KeyinPaletteTools.js.map +1 -1
- package/lib/cjs/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
- package/lib/cjs/appui-react/tools/OpenSettingsTool.js +3 -1
- package/lib/cjs/appui-react/tools/OpenSettingsTool.js.map +1 -1
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.js +4 -2
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts +20 -3
- package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js +58 -4
- package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/ProviderItem.d.ts +4 -3
- package/lib/cjs/appui-react/ui-items-provider/ProviderItem.d.ts.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.d.ts +6 -4
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +9 -65
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +5 -3
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +6 -5
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +4 -3
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +8 -34
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +3 -2
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +4 -4
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +4 -3
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +7 -43
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +3 -2
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +10 -17
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +73 -5
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +162 -3
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.d.ts +21 -3
- package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.d.ts.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.d.ts +7 -0
- package/lib/cjs/appui-react/ui-items-provider/isProviderItem.d.ts.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/isProviderItem.js +16 -0
- package/lib/cjs/appui-react/ui-items-provider/isProviderItem.js.map +1 -0
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +2 -3
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -1
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/cjs/appui-react/utils/PropsHelper.d.ts +3 -2
- package/lib/cjs/appui-react/utils/PropsHelper.d.ts.map +1 -1
- package/lib/cjs/appui-react/utils/PropsHelper.js +2 -1
- package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Content.js +10 -12
- package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +7 -5
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.js +3 -2
- package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts +2 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts +3 -3
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js +2 -2
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts +3 -3
- package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js +2 -2
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts +2 -2
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js +4 -4
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolSettingsContent.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js +2 -2
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/Widget.d.ts +39 -0
- package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -0
- package/lib/cjs/appui-react/widgets/{WidgetProps.js → Widget.js} +1 -1
- package/lib/cjs/appui-react/widgets/Widget.js.map +1 -0
- package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts +4 -14
- package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetControl.d.ts +1 -1
- package/lib/cjs/appui-react/widgets/WidgetControl.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetControl.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +7 -5
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +30 -42
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.js +2 -15
- package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetState.d.ts +8 -7
- package/lib/cjs/appui-react/widgets/WidgetState.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetState.js +9 -3
- package/lib/cjs/appui-react/widgets/WidgetState.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +4 -4
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +4 -4
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/_variables.scss +4 -5
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +2 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +4 -10
- package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.js +3 -2
- package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.scss +12 -14
- package/lib/esm/appui-react/accudraw/MenuButton.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/MenuButton.js +2 -1
- package/lib/esm/appui-react/accudraw/MenuButton.js.map +1 -1
- package/lib/esm/appui-react/accudraw/SquareButton.scss +10 -25
- package/lib/esm/appui-react/backstage/BackstageComposer.d.ts +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposer.js +12 -15
- package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts +1 -2
- package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js +7 -7
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItem.d.ts +44 -13
- package/lib/esm/appui-react/backstage/BackstageItem.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItem.js +4 -5
- package/lib/esm/appui-react/backstage/BackstageItem.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemsManager.d.ts +39 -0
- package/lib/esm/appui-react/backstage/BackstageItemsManager.d.ts.map +1 -0
- package/lib/esm/appui-react/backstage/BackstageItemsManager.js +126 -0
- package/lib/esm/appui-react/backstage/BackstageItemsManager.js.map +1 -0
- package/lib/esm/appui-react/backstage/useDefaultBackstageItems.d.ts +2 -1
- package/lib/esm/appui-react/backstage/useDefaultBackstageItems.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/useDefaultBackstageItems.js +2 -6
- package/lib/esm/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
- package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts +1 -1
- package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js +2 -6
- package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
- package/lib/esm/appui-react/configurableui/configurableui.scss +0 -3
- package/lib/esm/appui-react/content/ContentLayout.scss +4 -4
- package/lib/esm/appui-react/content/DefaultViewOverlay.scss +10 -7
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.scss +3 -3
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js +3 -2
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.scss +1 -1
- package/lib/esm/appui-react/feedback/ValidationTextbox.d.ts.map +1 -1
- package/lib/esm/appui-react/feedback/ValidationTextbox.js +2 -1
- package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
- package/lib/esm/appui-react/feedback/ValidationTextbox.scss +3 -6
- package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalFrontstage.js +5 -3
- package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalFrontstage.scss +9 -12
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +3 -3
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.scss +1 -3
- package/lib/esm/appui-react/frontstage/NestedFrontstage.d.ts +1 -0
- package/lib/esm/appui-react/frontstage/NestedFrontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/NestedFrontstage.js +4 -1
- package/lib/esm/appui-react/frontstage/NestedFrontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StageUsage.d.ts +9 -8
- package/lib/esm/appui-react/frontstage/StageUsage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/StageUsage.js +10 -3
- package/lib/esm/appui-react/frontstage/StageUsage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +3 -3
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +4 -4
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.js +5 -9
- package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
- package/lib/esm/appui-react/messages/ActivityMessage.js +2 -2
- package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
- package/lib/esm/appui-react/messages/InputField.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/InputField.js +9 -8
- package/lib/esm/appui-react/messages/InputField.js.map +1 -1
- package/lib/esm/appui-react/messages/InputField.scss +8 -8
- package/lib/esm/appui-react/messages/MessageManager.d.ts +10 -1
- package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.js +29 -4
- package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.js +2 -2
- package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.scss +6 -6
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +6 -3
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.scss +1 -21
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +3 -3
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +9 -7
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.d.ts +2 -2
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js +20 -11
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.js +3 -2
- package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.scss +5 -5
- package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ViewSelector.js +4 -2
- package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.js +3 -3
- package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.scss +1 -1
- package/lib/esm/appui-react/popup/PositionPopup.scss +1 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.d.ts +3 -2
- package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.js +3 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/esm/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
- package/lib/esm/appui-react/selection/SelectionContextItemDef.js +21 -11
- package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.scss +2 -2
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.scss +3 -4
- package/lib/esm/appui-react/shared/ItemProps.d.ts +2 -2
- package/lib/esm/appui-react/shared/ItemProps.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/ToolItemDef.d.ts +1 -1
- package/lib/esm/appui-react/shared/ToolItemDef.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/ToolItemDef.js +2 -2
- package/lib/esm/appui-react/shared/ToolItemDef.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +27 -0
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelLocation.d.ts +7 -7
- package/lib/esm/appui-react/stagepanels/StagePanelLocation.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelLocation.js +8 -3
- package/lib/esm/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelSection.d.ts +5 -7
- package/lib/esm/appui-react/stagepanels/StagePanelSection.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelSection.js +6 -3
- package/lib/esm/appui-react/stagepanels/StagePanelSection.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Indicator.scss +14 -15
- package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts +1 -1
- package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/LabelIndicator.js +2 -3
- package/lib/esm/appui-react/statusbar/LabelIndicator.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Separator.scss +1 -3
- package/lib/esm/appui-react/statusbar/StatusBar.d.ts +1 -0
- package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.js +2 -1
- package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.scss +1 -3
- package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts +2 -2
- package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js +17 -18
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItem.d.ts +71 -39
- package/lib/esm/appui-react/statusbar/StatusBarItem.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItem.js +32 -18
- package/lib/esm/appui-react/statusbar/StatusBarItem.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.d.ts +5 -14
- package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.js +28 -19
- package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts +40 -0
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts.map +1 -0
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js +131 -0
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -0
- package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.d.ts +3 -2
- package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js +2 -7
- package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
- package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts +3 -3
- package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/ActivityCenter.js +6 -4
- package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.js +5 -2
- package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.js +4 -1
- package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.scss +3 -4
- package/lib/esm/appui-react/statusfields/SelectionInfo.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionInfo.js +2 -1
- package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.scss +1 -1
- package/lib/esm/appui-react/statusfields/SnapMode.d.ts +2 -0
- package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/SnapMode.js +40 -2
- package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.js +2 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +6 -5
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +12 -12
- package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.js +1 -2
- package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts +2 -3
- package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js +25 -28
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarHelper.d.ts +6 -10
- package/lib/esm/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarHelper.js +9 -19
- package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts +77 -26
- package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItem.js +22 -11
- package/lib/esm/appui-react/toolbar/ToolbarItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.d.ts +6 -4
- package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.js +31 -6
- package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarItemsManager.d.ts +46 -0
- package/lib/esm/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -0
- package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js +244 -0
- package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js.map +1 -0
- package/lib/esm/appui-react/toolbar/toUIAToolbarItem.d.ts +8 -0
- package/lib/esm/appui-react/toolbar/toUIAToolbarItem.d.ts.map +1 -0
- package/lib/esm/appui-react/toolbar/toUIAToolbarItem.js +22 -0
- package/lib/esm/appui-react/toolbar/toUIAToolbarItem.js.map +1 -0
- package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.d.ts +3 -2
- package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.js +2 -6
- package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts +3 -3
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -7
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js +13 -8
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
- package/lib/esm/appui-react/tools/KeyinPaletteTools.js +3 -1
- package/lib/esm/appui-react/tools/KeyinPaletteTools.js.map +1 -1
- package/lib/esm/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
- package/lib/esm/appui-react/tools/OpenSettingsTool.js +3 -1
- package/lib/esm/appui-react/tools/OpenSettingsTool.js.map +1 -1
- package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
- package/lib/esm/appui-react/tools/RestoreLayoutTool.js +4 -2
- package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts +20 -3
- package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js +58 -4
- package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/ProviderItem.d.ts +4 -3
- package/lib/esm/appui-react/ui-items-provider/ProviderItem.d.ts.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.d.ts +6 -4
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +7 -63
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +5 -3
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +4 -3
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +4 -3
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +6 -32
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +3 -2
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +4 -4
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +4 -3
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +5 -41
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +3 -2
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +10 -17
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +73 -5
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +162 -3
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.d.ts +21 -3
- package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.d.ts.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.d.ts +7 -0
- package/lib/esm/appui-react/ui-items-provider/isProviderItem.d.ts.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/isProviderItem.js +12 -0
- package/lib/esm/appui-react/ui-items-provider/isProviderItem.js.map +1 -0
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +2 -3
- package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -1
- package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/esm/appui-react/utils/PropsHelper.d.ts +3 -2
- package/lib/esm/appui-react/utils/PropsHelper.d.ts.map +1 -1
- package/lib/esm/appui-react/utils/PropsHelper.js +2 -1
- package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Content.js +10 -12
- package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +7 -5
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.js +3 -2
- package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts +2 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts +3 -3
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.js +1 -1
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts +3 -3
- package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.js +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts +2 -2
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js +3 -3
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolSettingsContent.js.map +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/Widget.d.ts +39 -0
- package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -0
- package/lib/esm/appui-react/widgets/{WidgetProps.js → Widget.js} +1 -1
- package/lib/esm/appui-react/widgets/Widget.js.map +1 -0
- package/lib/esm/appui-react/widgets/WidgetConfig.d.ts +4 -14
- package/lib/esm/appui-react/widgets/WidgetConfig.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetControl.d.ts +1 -1
- package/lib/esm/appui-react/widgets/WidgetControl.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetControl.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts +7 -5
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +22 -34
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetManager.js +2 -15
- package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetState.d.ts +8 -7
- package/lib/esm/appui-react/widgets/WidgetState.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetState.js +9 -3
- package/lib/esm/appui-react/widgets/WidgetState.js.map +1 -1
- package/lib/esm/appui-react.d.ts +4 -4
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +4 -4
- package/lib/esm/appui-react.js.map +1 -1
- package/package.json +19 -31
- package/lib/cjs/appui-react/widgets/WidgetProps.d.ts +0 -12
- package/lib/cjs/appui-react/widgets/WidgetProps.d.ts.map +0 -1
- package/lib/cjs/appui-react/widgets/WidgetProps.js.map +0 -1
- package/lib/esm/appui-react/widgets/WidgetProps.d.ts +0 -12
- package/lib/esm/appui-react/widgets/WidgetProps.d.ts.map +0 -1
- package/lib/esm/appui-react/widgets/WidgetProps.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/popup/CardPopup.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,4BAA0B;AAC1B,+BAA+B;AAC/B,2CAAoC;AACpC,0DAA0I;AAC1I,kDAAwG;AACxG,
|
|
1
|
+
{"version":3,"file":"CardPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/popup/CardPopup.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 Popup\r\n */\r\n\r\nimport \"./CardPopup.scss\";\r\nimport * as React from \"react\";\r\nimport classnames from \"classnames\";\r\nimport { CommonToolbarItem, OnCancelFunc, OnItemExecutedFunc, PropertyRecord, RelativePosition, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { DivWithOutsideClick, FocusTrap, Orientation, Point, Size, SizeProps } from \"@itwin/core-react\";\r\nimport { Text } from \"@itwin/itwinui-react\";\r\nimport { CursorPopup } from \"../cursor/cursorpopup/CursorPopup\";\r\nimport { isReactContent, PopupContentType, PopupManager, PopupPropsBase } from \"./PopupManager\";\r\nimport { PositionPopup } from \"./PositionPopup\";\r\nimport { MessageDiv } from \"../messages/MessageSpan\";\r\nimport { Direction, PropertyValueRendererManager, ToolbarOpacitySetting, ToolbarPanelAlignment, ToolbarWithOverflow } from \"@itwin/components-react\";\r\n\r\n/** Props for defining a CardPopup editor\r\n * @beta */\r\nexport interface CardPopupProps extends PopupPropsBase {\r\n content: PopupContentType;\r\n title: string | PropertyRecord | undefined;\r\n items: CommonToolbarItem[] | undefined;\r\n relativePosition: RelativePosition;\r\n orientation: Orientation;\r\n onCancel: OnCancelFunc;\r\n onItemExecuted: OnItemExecutedFunc;\r\n}\r\n\r\n/** @internal */\r\ninterface CardPopupState {\r\n size: Size;\r\n}\r\n\r\n/** Popup component for Input Editor\r\n * @beta\r\n */\r\nexport class CardPopup extends React.PureComponent<CardPopupProps, CardPopupState> {\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 private _handleKeyDown = (event: React.KeyboardEvent): void => {\r\n switch (event.key) {\r\n case SpecialKey.Escape:\r\n this._cancel();\r\n break;\r\n }\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 }\r\n\r\n public override render() {\r\n let point = PopupManager.getPopupPosition(this.props.el, this.props.pt, new Point(), this.state.size);\r\n const popupRect = CursorPopup.getPopupRect(point, this.props.offset, this.state.size, this.props.relativePosition);\r\n point = new Point(popupRect.left, popupRect.top);\r\n\r\n return (\r\n <PositionPopup key={this.props.id}\r\n className={classnames(\"uifw-no-border\", \"uifw-card\")}\r\n point={point}\r\n onSizeKnown={this._onSizeKnown}\r\n >\r\n <DivWithOutsideClick onOutsideClick={this.props.onCancel} onKeyDown={this._handleKeyDown}>\r\n <FocusTrap active={true} returnFocusOnDeactivate={true}>\r\n <Card content={this.props.content} title={this.props.title} items={this.props.items}\r\n onItemExecuted={this.props.onItemExecuted} />\r\n </FocusTrap>\r\n </DivWithOutsideClick>\r\n </PositionPopup>\r\n );\r\n }\r\n}\r\n\r\n/** Props defining a Card component\r\n * @beta */\r\nexport interface CardProps {\r\n content: PopupContentType;\r\n title: string | PropertyRecord | undefined;\r\n items: CommonToolbarItem[] | undefined;\r\n onItemExecuted: OnItemExecutedFunc;\r\n}\r\n\r\n/** Card component\r\n * @beta */\r\nexport function Card(props: CardProps) {\r\n let titleNode: React.ReactNode;\r\n // istanbul ignore else\r\n if (props.title) {\r\n if (typeof props.title === \"string\")\r\n titleNode = <Text variant=\"leading\">{props.title}</Text>;\r\n else {\r\n const propertyValueRendererManager = PropertyValueRendererManager.defaultManager;\r\n const titleValue = propertyValueRendererManager.render(props.title);\r\n titleNode = <Text variant=\"leading\">{titleValue}</Text>;\r\n }\r\n }\r\n\r\n const content = isReactContent(props.content) ? props.content.reactNode : <MessageDiv message={props.content} />;\r\n\r\n return (\r\n <>\r\n <div className=\"uifw-card-content\">\r\n {props.title &&\r\n <>\r\n {titleNode}\r\n <div className=\"uifw-card-gap\" />\r\n </>\r\n }\r\n {content}\r\n </div>\r\n {props.items &&\r\n <>\r\n <div className=\"uifw-card-separator\" />\r\n <ToolbarWithOverflow\r\n expandsTo={Direction.Bottom}\r\n panelAlignment={ToolbarPanelAlignment.Start}\r\n items={props.items}\r\n useDragInteraction={true}\r\n toolbarOpacitySetting={ToolbarOpacitySetting.Transparent}\r\n onItemExecuted={props.onItemExecuted}\r\n />\r\n </>\r\n }\r\n </>\r\n );\r\n}\r\n"]}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
width: $uifw-popup-border-width;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
background-color:
|
|
15
|
+
background-color: hsl(var(--iui-color-background-hsl) / $uifw-popup-opacity);
|
|
16
16
|
position: fixed;
|
|
17
17
|
height: fit-content;
|
|
18
18
|
width: fit-content;
|
|
@@ -2,13 +2,14 @@
|
|
|
2
2
|
* @module Popup
|
|
3
3
|
*/
|
|
4
4
|
import * as React from "react";
|
|
5
|
-
import {
|
|
5
|
+
import { OnCancelFunc, OnItemExecutedFunc, RelativePosition } from "@itwin/appui-abstract";
|
|
6
6
|
import { Orientation, Size } from "@itwin/core-react";
|
|
7
7
|
import { PopupPropsBase } from "./PopupManager";
|
|
8
|
+
import { ToolbarItem } from "../toolbar/ToolbarItem";
|
|
8
9
|
/** Props for a popup toolbar
|
|
9
10
|
* @beta */
|
|
10
11
|
export interface ToolbarPopupProps extends PopupPropsBase {
|
|
11
|
-
items:
|
|
12
|
+
items: ToolbarItem[];
|
|
12
13
|
relativePosition: RelativePosition;
|
|
13
14
|
orientation: Orientation;
|
|
14
15
|
onCancel: OnCancelFunc;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarPopup.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/popup/ToolbarPopup.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ToolbarPopup.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/popup/ToolbarPopup.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAc,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAkC,WAAW,EAAS,IAAI,EAAa,MAAM,mBAAmB,CAAC;AAGxG,OAAO,EAAgB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD;WACW;AACX,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,YAAY,CAAC;IACvB,cAAc,EAAE,kBAAkB,CAAC;CACpC;AAED,gBAAgB;AAChB,UAAU,iBAAiB;IACzB,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK,CAAC,aAAa,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACzF,gBAAgB;IAChB,SAAyB,KAAK;;MAE5B;IAEF,OAAO,CAAC,YAAY,CAIlB;IAEF,OAAO,CAAC,cAAc,CAMpB;IAEF,OAAO,CAAC,OAAO;IAOC,MAAM;CA0BvB"}
|
|
@@ -15,6 +15,7 @@ const components_react_1 = require("@itwin/components-react");
|
|
|
15
15
|
const CursorPopup_1 = require("../cursor/cursorpopup/CursorPopup");
|
|
16
16
|
const PopupManager_1 = require("./PopupManager");
|
|
17
17
|
const PositionPopup_1 = require("./PositionPopup");
|
|
18
|
+
const toUIAToolbarItem_1 = require("../toolbar/toUIAToolbarItem");
|
|
18
19
|
/** Popup component for Toolbar
|
|
19
20
|
* @beta
|
|
20
21
|
*/
|
|
@@ -48,10 +49,11 @@ class ToolbarPopup extends React.PureComponent {
|
|
|
48
49
|
let point = PopupManager_1.PopupManager.getPopupPosition(this.props.el, this.props.pt, new core_react_1.Point(), this.state.size);
|
|
49
50
|
const popupRect = CursorPopup_1.CursorPopup.getPopupRect(point, this.props.offset, this.state.size, this.props.relativePosition);
|
|
50
51
|
point = new core_react_1.Point(popupRect.left, popupRect.top);
|
|
52
|
+
const items = this.props.items.map((item) => (0, toUIAToolbarItem_1.toUIAToolbarItem)(item));
|
|
51
53
|
return (React.createElement(PositionPopup_1.PositionPopup, { key: this.props.id, className: "uifw-no-border", point: point, onSizeKnown: this._onSizeKnown },
|
|
52
54
|
React.createElement(core_react_1.DivWithOutsideClick, { onOutsideClick: this.props.onCancel, onKeyDown: this._handleKeyDown },
|
|
53
55
|
React.createElement(core_react_1.FocusTrap, { active: true, returnFocusOnDeactivate: true },
|
|
54
|
-
React.createElement(components_react_1.Toolbar, { expandsTo: components_react_1.Direction.Bottom, panelAlignment: components_react_1.ToolbarPanelAlignment.Start, items:
|
|
56
|
+
React.createElement(components_react_1.Toolbar, { expandsTo: components_react_1.Direction.Bottom, panelAlignment: components_react_1.ToolbarPanelAlignment.Start, items: items, useDragInteraction: true, toolbarOpacitySetting: components_react_1.ToolbarOpacitySetting.Defaults, onItemExecuted: this.props.onItemExecuted })))));
|
|
55
57
|
}
|
|
56
58
|
}
|
|
57
59
|
exports.ToolbarPopup = ToolbarPopup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/popup/ToolbarPopup.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"ToolbarPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/popup/ToolbarPopup.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,0DAAuG;AACvG,kDAAwG;AACxG,8DAA2G;AAC3G,mEAAgE;AAChE,iDAA8D;AAC9D,mDAAgD;AAEhD,kEAA+D;AAiB/D;;GAEG;AACH,MAAa,YAAa,SAAQ,KAAK,CAAC,aAAmD;IAA3F;;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;QAEM,mBAAc,GAAG,CAAC,KAA0C,EAAQ,EAAE;YAC5E,QAAQ,KAAK,CAAC,GAAG,EAAE;gBACjB,KAAK,2BAAU,CAAC,MAAM;oBACpB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,MAAM;aACT;QACH,CAAC,CAAC;IAmCJ,CAAC;IAjCS,OAAO;QACb,uBAAuB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;SACvB;IACH,CAAC;IAEe,MAAM;QACpB,IAAI,KAAK,GAAG,2BAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,kBAAK,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACtG,MAAM,SAAS,GAAG,yBAAW,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACnH,KAAK,GAAG,IAAI,kBAAK,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,mCAAgB,EAAC,IAAI,CAAC,CAAC,CAAC;QACrE,OAAO,CACL,oBAAC,6BAAa,IAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAC/B,SAAS,EAAC,gBAAgB,EAC1B,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,IAAI,CAAC,YAAY;YAE9B,oBAAC,gCAAmB,IAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc;gBACtF,oBAAC,sBAAS,IAAC,MAAM,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI;oBACpD,oBAAC,0BAAO,IACN,SAAS,EAAE,4BAAS,CAAC,MAAM,EAC3B,cAAc,EAAE,wCAAqB,CAAC,KAAK,EAC3C,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,IAAI,EACxB,qBAAqB,EAAE,wCAAqB,CAAC,QAAQ,EACrD,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,GACzC,CACQ,CACQ,CACR,CACjB,CAAC;IACJ,CAAC;CACF;AArDD,oCAqDC","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 Popup\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { OnCancelFunc, OnItemExecutedFunc, RelativePosition, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { DivWithOutsideClick, FocusTrap, Orientation, Point, Size, SizeProps } from \"@itwin/core-react\";\r\nimport { Direction, Toolbar, ToolbarOpacitySetting, ToolbarPanelAlignment } from \"@itwin/components-react\";\r\nimport { CursorPopup } from \"../cursor/cursorpopup/CursorPopup\";\r\nimport { PopupManager, PopupPropsBase } from \"./PopupManager\";\r\nimport { PositionPopup } from \"./PositionPopup\";\r\nimport { ToolbarItem } from \"../toolbar/ToolbarItem\";\r\nimport { toUIAToolbarItem } from \"../toolbar/toUIAToolbarItem\";\r\n\r\n/** Props for a popup toolbar\r\n * @beta */\r\nexport interface ToolbarPopupProps extends PopupPropsBase {\r\n items: ToolbarItem[];\r\n relativePosition: RelativePosition;\r\n orientation: Orientation;\r\n onCancel: OnCancelFunc;\r\n onItemExecuted: OnItemExecutedFunc;\r\n}\r\n\r\n/** @internal */\r\ninterface ToolbarPopupState {\r\n size: Size;\r\n}\r\n\r\n/** Popup component for Toolbar\r\n * @beta\r\n */\r\nexport class ToolbarPopup extends React.PureComponent<ToolbarPopupProps, ToolbarPopupState> {\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 private _handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {\r\n switch (event.key) {\r\n case SpecialKey.Escape:\r\n this._cancel();\r\n break;\r\n }\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 }\r\n\r\n public override render() {\r\n let point = PopupManager.getPopupPosition(this.props.el, this.props.pt, new Point(), this.state.size);\r\n const popupRect = CursorPopup.getPopupRect(point, this.props.offset, this.state.size, this.props.relativePosition);\r\n point = new Point(popupRect.left, popupRect.top);\r\n const items = this.props.items.map((item) => toUIAToolbarItem(item));\r\n return (\r\n <PositionPopup key={this.props.id}\r\n className=\"uifw-no-border\"\r\n point={point}\r\n onSizeKnown={this._onSizeKnown}\r\n >\r\n <DivWithOutsideClick onOutsideClick={this.props.onCancel} onKeyDown={this._handleKeyDown}>\r\n <FocusTrap active={true} returnFocusOnDeactivate={true}>\r\n <Toolbar\r\n expandsTo={Direction.Bottom}\r\n panelAlignment={ToolbarPanelAlignment.Start}\r\n items={items}\r\n useDragInteraction={true}\r\n toolbarOpacitySetting={ToolbarOpacitySetting.Defaults}\r\n onItemExecuted={this.props.onItemExecuted}\r\n />\r\n </FocusTrap>\r\n </DivWithOutsideClick>\r\n </PositionPopup>\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectionContextItemDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/selection/SelectionContextItemDef.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"SelectionContextItemDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/selection/SelectionContextItemDef.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAqB,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAcpD;;GAEG;AACH,wBAAgB,8BAA8B,IAAI,MAAM,EAAE,CAEzD;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,EAAE,CAE1D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAY7C;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,OAAO,CAOrD;AAED;;GAEG;AACH,wBAAgB,mCAAmC,IAAI,uBAAuB,CAE7E;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,uBAAuB,CAEzE;AAED;;GAEG;AAEH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,aAAa,CAS7F;AAED;;GAEG;AAEH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,aAAa,CAWvF;AAED;;GAEG;AAEH,qBAAa,+BAA+B;IAE1C,WAAkB,+BAA+B,mBAOhD;IAED,WAAkB,mCAAmC,mBAOpD;IAED,WAAkB,sBAAsB,mBAQvC;IAED,WAAkB,yBAAyB,iBAS1C;IAED,WAAkB,4BAA4B,mBAO7C;IAED,WAAkB,gCAAgC,mBAOjD;IAED,WAAkB,mBAAmB,mBAQpC;IAED,WAAkB,oBAAoB,iBASrC;IAED,WAAkB,wBAAwB,mBAQzC;IAED,WAAkB,wCAAwC,mBAYzD;CAEF"}
|
|
@@ -15,6 +15,16 @@ const SyncUiEventDispatcher_1 = require("../syncui/SyncUiEventDispatcher");
|
|
|
15
15
|
const GroupItem_1 = require("../toolbar/GroupItem");
|
|
16
16
|
const UiFramework_1 = require("../UiFramework");
|
|
17
17
|
const HideIsolateEmphasizeManager_1 = require("./HideIsolateEmphasizeManager");
|
|
18
|
+
const model_isolate_svg_1 = require("@bentley/icons-generic/icons/model-isolate.svg");
|
|
19
|
+
const layers_isolate_svg_1 = require("@bentley/icons-generic/icons/layers-isolate.svg");
|
|
20
|
+
const asset_isolate_svg_1 = require("@bentley/icons-generic/icons/asset-isolate.svg");
|
|
21
|
+
const isolate_svg_1 = require("@bentley/icons-generic/icons/isolate.svg");
|
|
22
|
+
const model_hide_svg_1 = require("@bentley/icons-generic/icons/model-hide.svg");
|
|
23
|
+
const layers_hide_svg_1 = require("@bentley/icons-generic/icons/layers-hide.svg");
|
|
24
|
+
const asset_classification_hide_svg_1 = require("@bentley/icons-generic/icons/asset-classification-hide.svg");
|
|
25
|
+
const visibility_semi_transparent_svg_1 = require("@bentley/icons-generic/icons/visibility-semi-transparent.svg");
|
|
26
|
+
const visibility_hide_2_svg_1 = require("@bentley/icons-generic/icons/visibility-hide_2.svg");
|
|
27
|
+
const visibility_svg_1 = require("@bentley/icons-generic/icons/visibility.svg");
|
|
18
28
|
/** return SyncEventIds that trigger selection state function refresh.
|
|
19
29
|
* @beta
|
|
20
30
|
*/
|
|
@@ -106,7 +116,7 @@ class SelectionContextToolDefinitions {
|
|
|
106
116
|
static get isolateModelsInSelectionItemDef() {
|
|
107
117
|
return new CommandItemDef_1.CommandItemDef({
|
|
108
118
|
commandId: "UiFramework.IsolateModel",
|
|
109
|
-
iconSpec:
|
|
119
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(model_isolate_svg_1.default),
|
|
110
120
|
labelKey: "UiFramework:tools.isolateModels",
|
|
111
121
|
execute: async () => UiFramework_1.UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelectedElementsModel(),
|
|
112
122
|
});
|
|
@@ -114,7 +124,7 @@ class SelectionContextToolDefinitions {
|
|
|
114
124
|
static get isolateCategoriesInSelectionItemDef() {
|
|
115
125
|
return new CommandItemDef_1.CommandItemDef({
|
|
116
126
|
commandId: "UiFramework.IsolateCategory",
|
|
117
|
-
iconSpec:
|
|
127
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(layers_isolate_svg_1.default),
|
|
118
128
|
labelKey: "UiFramework:tools.isolateCategories",
|
|
119
129
|
execute: async () => UiFramework_1.UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelectedElementsCategory(),
|
|
120
130
|
});
|
|
@@ -122,7 +132,7 @@ class SelectionContextToolDefinitions {
|
|
|
122
132
|
static get isolateElementsItemDef() {
|
|
123
133
|
return new CommandItemDef_1.CommandItemDef({
|
|
124
134
|
commandId: "UiFramework.IsolateSelected",
|
|
125
|
-
iconSpec:
|
|
135
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(asset_isolate_svg_1.default),
|
|
126
136
|
labelKey: "UiFramework:tools.isolateSelected",
|
|
127
137
|
isHidden: getIsHiddenIfSelectionNotActive(),
|
|
128
138
|
execute: async () => UiFramework_1.UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelected(),
|
|
@@ -132,7 +142,7 @@ class SelectionContextToolDefinitions {
|
|
|
132
142
|
return new GroupItem_1.GroupItemDef({
|
|
133
143
|
groupId: "UiFramework.IsolateSelectionGroup",
|
|
134
144
|
labelKey: "UiFramework:tools.isolate",
|
|
135
|
-
iconSpec:
|
|
145
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(isolate_svg_1.default),
|
|
136
146
|
isHidden: getIsHiddenIfSelectionNotActive(),
|
|
137
147
|
items: [this.isolateElementsItemDef, this.isolateCategoriesInSelectionItemDef, this.isolateModelsInSelectionItemDef],
|
|
138
148
|
itemsInColumn: 3,
|
|
@@ -141,7 +151,7 @@ class SelectionContextToolDefinitions {
|
|
|
141
151
|
static get hideModelsInSelectionItemDef() {
|
|
142
152
|
return new CommandItemDef_1.CommandItemDef({
|
|
143
153
|
commandId: "UiFramework.HideModel",
|
|
144
|
-
iconSpec:
|
|
154
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(model_hide_svg_1.default),
|
|
145
155
|
labelKey: "UiFramework:tools.hideModels",
|
|
146
156
|
execute: async () => UiFramework_1.UiFramework.hideIsolateEmphasizeActionHandler.processHideSelectedElementsModel(),
|
|
147
157
|
});
|
|
@@ -149,7 +159,7 @@ class SelectionContextToolDefinitions {
|
|
|
149
159
|
static get hideCategoriesInSelectionItemDef() {
|
|
150
160
|
return new CommandItemDef_1.CommandItemDef({
|
|
151
161
|
commandId: "UiFramework.HideCategory",
|
|
152
|
-
iconSpec:
|
|
162
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(layers_hide_svg_1.default),
|
|
153
163
|
labelKey: "UiFramework:tools.hideCategories",
|
|
154
164
|
execute: async () => UiFramework_1.UiFramework.hideIsolateEmphasizeActionHandler.processHideSelectedElementsCategory(),
|
|
155
165
|
});
|
|
@@ -157,7 +167,7 @@ class SelectionContextToolDefinitions {
|
|
|
157
167
|
static get hideElementsItemDef() {
|
|
158
168
|
return new CommandItemDef_1.CommandItemDef({
|
|
159
169
|
commandId: "UiFramework.HideSelected",
|
|
160
|
-
iconSpec:
|
|
170
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(asset_classification_hide_svg_1.default),
|
|
161
171
|
labelKey: "UiFramework:tools.hideSelected",
|
|
162
172
|
isHidden: getIsHiddenIfSelectionNotActive(),
|
|
163
173
|
execute: async () => UiFramework_1.UiFramework.hideIsolateEmphasizeActionHandler.processHideSelected(),
|
|
@@ -167,7 +177,7 @@ class SelectionContextToolDefinitions {
|
|
|
167
177
|
return new GroupItem_1.GroupItemDef({
|
|
168
178
|
groupId: "UiFramework.HideSelectionGroup",
|
|
169
179
|
labelKey: "UiFramework:tools.hide",
|
|
170
|
-
iconSpec:
|
|
180
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(visibility_hide_2_svg_1.default),
|
|
171
181
|
isHidden: getIsHiddenIfSelectionNotActive(),
|
|
172
182
|
items: [this.hideElementsItemDef, this.hideCategoriesInSelectionItemDef, this.hideModelsInSelectionItemDef],
|
|
173
183
|
itemsInColumn: 3,
|
|
@@ -176,7 +186,7 @@ class SelectionContextToolDefinitions {
|
|
|
176
186
|
static get emphasizeElementsItemDef() {
|
|
177
187
|
return new CommandItemDef_1.CommandItemDef({
|
|
178
188
|
commandId: "UiFramework.EmphasizeSelected",
|
|
179
|
-
iconSpec:
|
|
189
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(visibility_semi_transparent_svg_1.default),
|
|
180
190
|
labelKey: "UiFramework:tools.emphasizeSelected",
|
|
181
191
|
isHidden: getIsHiddenIfSelectionNotActive(),
|
|
182
192
|
execute: async () => UiFramework_1.UiFramework.hideIsolateEmphasizeActionHandler.processEmphasizeSelected(),
|
|
@@ -185,7 +195,7 @@ class SelectionContextToolDefinitions {
|
|
|
185
195
|
static get clearHideIsolateEmphasizeElementsItemDef() {
|
|
186
196
|
return new CommandItemDef_1.CommandItemDef({
|
|
187
197
|
commandId: "UiFramework.ClearHideIsolateEmphasize",
|
|
188
|
-
iconSpec:
|
|
198
|
+
iconSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(visibility_svg_1.default),
|
|
189
199
|
labelKey: "UiFramework:tools.clearVisibility",
|
|
190
200
|
isHidden: getIsHiddenIfFeatureOverridesActive(),
|
|
191
201
|
execute: async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectionContextItemDef.js","sourceRoot":"","sources":["../../../../src/appui-react/selection/SelectionContextItemDef.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 Tools\r\n */\r\n\r\nimport { ConditionalBooleanValue } from \"@itwin/appui-abstract\";\r\nimport { SessionStateActionId } from \"../redux/SessionState\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { BaseItemState } from \"../shared/ItemDefBase\";\r\nimport { SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { GroupItemDef } from \"../toolbar/GroupItem\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { HideIsolateEmphasizeActionHandler } from \"./HideIsolateEmphasizeManager\";\r\n\r\n/** return SyncEventIds that trigger selection state function refresh.\r\n * @beta\r\n */\r\nexport function getFeatureOverrideSyncEventIds(): string[] {\r\n return [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, HideIsolateEmphasizeActionHandler.hideIsolateEmphasizeUiSyncId];\r\n}\r\n\r\n/** return SyncEventIds that trigger selection state function refresh.\r\n * @beta\r\n */\r\nexport function getSelectionContextSyncEventIds(): string[] {\r\n return [SyncUiEventId.SelectionSetChanged, SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SessionStateActionId.SetNumItemsSelected];\r\n}\r\n\r\n/** return SyncEventIds that trigger selection state function refresh.\r\n * @beta\r\n */\r\nexport function isNoSelectionActive(): boolean {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n let selectionCount = 0;\r\n // istanbul ignore if\r\n if (!UiFramework.frameworkStateKey)\r\n selectionCount = UiFramework.store.getState()[UiFramework.frameworkStateKey].frameworkState.sessionState.numItemsSelected;\r\n\r\n // istanbul ignore if\r\n if (activeContentControl && /* istanbul ignore next */ activeContentControl.viewport\r\n && (/* istanbul ignore next */ activeContentControl.viewport.view.iModel.selectionSet.size > 0 || /* istanbul ignore next */ selectionCount > 0))\r\n return false;\r\n return true;\r\n}\r\n\r\n/** return ConditionalBooleanValue object used to show items if selection set is active.\r\n * @beta\r\n */\r\nexport function areNoFeatureOverridesActive(): boolean {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n // istanbul ignore next\r\n if (activeContentControl && activeContentControl.viewport)\r\n return !UiFramework.hideIsolateEmphasizeActionHandler.areFeatureOverridesActive(activeContentControl.viewport);\r\n\r\n return true;\r\n}\r\n\r\n/** return ConditionalBooleanValue object used to show item if feature overrides are active.\r\n * @beta\r\n */\r\nexport function getIsHiddenIfFeatureOverridesActive(): ConditionalBooleanValue {\r\n return new ConditionalBooleanValue(areNoFeatureOverridesActive, getFeatureOverrideSyncEventIds());\r\n}\r\n\r\n/** return ConditionalBooleanValue object used to show items if selection set is active.\r\n * @beta\r\n */\r\nexport function getIsHiddenIfSelectionNotActive(): ConditionalBooleanValue {\r\n return new ConditionalBooleanValue(isNoSelectionActive, getSelectionContextSyncEventIds());\r\n}\r\n\r\n/** return state with isVisible set to true is SectionSet is active.\r\n * @beta\r\n */\r\n// istanbul ignore next\r\nexport function featureOverridesActiveStateFunc(state: Readonly<BaseItemState>): BaseItemState {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n let isVisible = false;\r\n\r\n // istanbul ignore next\r\n if (activeContentControl && activeContentControl.viewport)\r\n isVisible = UiFramework.hideIsolateEmphasizeActionHandler.areFeatureOverridesActive(activeContentControl.viewport);\r\n\r\n return { ...state, isVisible };\r\n}\r\n\r\n/** return state with isVisible set to true is SectionSet is active.\r\n * @beta\r\n */\r\n// istanbul ignore next\r\nexport function selectionContextStateFunc(state: Readonly<BaseItemState>): BaseItemState {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n let isVisible = false;\r\n\r\n let selectionCount = 0;\r\n if (!UiFramework.frameworkStateKey)\r\n selectionCount = UiFramework.store.getState()[UiFramework.frameworkStateKey].frameworkState.sessionState.numItemsSelected;\r\n\r\n if (activeContentControl && activeContentControl.viewport && (activeContentControl.viewport.view.iModel.selectionSet.size > 0 || selectionCount > 0))\r\n isVisible = true;\r\n return { ...state, isVisible };\r\n}\r\n\r\n/** Utility Class that provides definitions for tools dependent on current selection. These definitions can be used to populate toolbars.\r\n * @public\r\n */\r\n// istanbul ignore next\r\nexport class SelectionContextToolDefinitions {\r\n\r\n public static get isolateModelsInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.IsolateModel\",\r\n iconSpec: \"icon-model-isolate\",\r\n labelKey: \"UiFramework:tools.isolateModels\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelectedElementsModel(),\r\n });\r\n }\r\n\r\n public static get isolateCategoriesInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.IsolateCategory\",\r\n iconSpec: \"icon-layers-isolate\",\r\n labelKey: \"UiFramework:tools.isolateCategories\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelectedElementsCategory(),\r\n });\r\n }\r\n\r\n public static get isolateElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.IsolateSelected\",\r\n iconSpec: \"icon-asset-isolate\",\r\n labelKey: \"UiFramework:tools.isolateSelected\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelected(),\r\n });\r\n }\r\n\r\n public static get isolateSelectionToolGroup() {\r\n return new GroupItemDef({\r\n groupId: \"UiFramework.IsolateSelectionGroup\",\r\n labelKey: \"UiFramework:tools.isolate\",\r\n iconSpec: \"icon-isolate\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n items: [this.isolateElementsItemDef, this.isolateCategoriesInSelectionItemDef, this.isolateModelsInSelectionItemDef],\r\n itemsInColumn: 3,\r\n });\r\n }\r\n\r\n public static get hideModelsInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.HideModel\",\r\n iconSpec: \"icon-model-hide\",\r\n labelKey: \"UiFramework:tools.hideModels\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processHideSelectedElementsModel(),\r\n });\r\n }\r\n\r\n public static get hideCategoriesInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.HideCategory\",\r\n iconSpec: \"icon-layers-hide\",\r\n labelKey: \"UiFramework:tools.hideCategories\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processHideSelectedElementsCategory(),\r\n });\r\n }\r\n\r\n public static get hideElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.HideSelected\",\r\n iconSpec: \"icon-asset-classification-hide\",\r\n labelKey: \"UiFramework:tools.hideSelected\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processHideSelected(),\r\n });\r\n }\r\n\r\n public static get hideSectionToolGroup() {\r\n return new GroupItemDef({\r\n groupId: \"UiFramework.HideSelectionGroup\",\r\n labelKey: \"UiFramework:tools.hide\",\r\n iconSpec: \"icon-visibility-hide-2\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n items: [this.hideElementsItemDef, this.hideCategoriesInSelectionItemDef, this.hideModelsInSelectionItemDef],\r\n itemsInColumn: 3,\r\n });\r\n }\r\n\r\n public static get emphasizeElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.EmphasizeSelected\",\r\n iconSpec: \"icon-visibility-semi-transparent\",\r\n labelKey: \"UiFramework:tools.emphasizeSelected\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processEmphasizeSelected(),\r\n });\r\n }\r\n\r\n public static get clearHideIsolateEmphasizeElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.ClearHideIsolateEmphasize\",\r\n iconSpec: \"icon-visibility\",\r\n labelKey: \"UiFramework:tools.clearVisibility\",\r\n isHidden: getIsHiddenIfFeatureOverridesActive(),\r\n execute: async () => {\r\n await UiFramework.hideIsolateEmphasizeActionHandler.processClearEmphasize();\r\n await UiFramework.hideIsolateEmphasizeActionHandler.processClearOverrideModels();\r\n await UiFramework.hideIsolateEmphasizeActionHandler.processClearOverrideCategories();\r\n },\r\n });\r\n }\r\n\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"SelectionContextItemDef.js","sourceRoot":"","sources":["../../../../src/appui-react/selection/SelectionContextItemDef.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 Tools\r\n */\r\n\r\nimport { ConditionalBooleanValue, IconSpecUtilities } from \"@itwin/appui-abstract\";\r\nimport { SessionStateActionId } from \"../redux/SessionState\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { BaseItemState } from \"../shared/ItemDefBase\";\r\nimport { SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { GroupItemDef } from \"../toolbar/GroupItem\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { HideIsolateEmphasizeActionHandler } from \"./HideIsolateEmphasizeManager\";\r\nimport svgModelIsolate from \"@bentley/icons-generic/icons/model-isolate.svg\";\r\nimport svgLayersIsolate from \"@bentley/icons-generic/icons/layers-isolate.svg\";\r\nimport svgAssetIsolate from \"@bentley/icons-generic/icons/asset-isolate.svg\";\r\nimport svgIsolate from \"@bentley/icons-generic/icons/isolate.svg\";\r\nimport svgModelHide from \"@bentley/icons-generic/icons/model-hide.svg\";\r\nimport svgLayersHide from \"@bentley/icons-generic/icons/layers-hide.svg\";\r\nimport svgAssetClassificationHide from \"@bentley/icons-generic/icons/asset-classification-hide.svg\";\r\nimport svgVisibilitySemiTransparent from \"@bentley/icons-generic/icons/visibility-semi-transparent.svg\";\r\nimport svgVisibilityHide from \"@bentley/icons-generic/icons/visibility-hide_2.svg\";\r\nimport svgVisibility from \"@bentley/icons-generic/icons/visibility.svg\";\r\n\r\n/** return SyncEventIds that trigger selection state function refresh.\r\n * @beta\r\n */\r\nexport function getFeatureOverrideSyncEventIds(): string[] {\r\n return [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, HideIsolateEmphasizeActionHandler.hideIsolateEmphasizeUiSyncId];\r\n}\r\n\r\n/** return SyncEventIds that trigger selection state function refresh.\r\n * @beta\r\n */\r\nexport function getSelectionContextSyncEventIds(): string[] {\r\n return [SyncUiEventId.SelectionSetChanged, SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SessionStateActionId.SetNumItemsSelected];\r\n}\r\n\r\n/** return SyncEventIds that trigger selection state function refresh.\r\n * @beta\r\n */\r\nexport function isNoSelectionActive(): boolean {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n let selectionCount = 0;\r\n // istanbul ignore if\r\n if (!UiFramework.frameworkStateKey)\r\n selectionCount = UiFramework.store.getState()[UiFramework.frameworkStateKey].frameworkState.sessionState.numItemsSelected;\r\n\r\n // istanbul ignore if\r\n if (activeContentControl && /* istanbul ignore next */ activeContentControl.viewport\r\n && (/* istanbul ignore next */ activeContentControl.viewport.view.iModel.selectionSet.size > 0 || /* istanbul ignore next */ selectionCount > 0))\r\n return false;\r\n return true;\r\n}\r\n\r\n/** return ConditionalBooleanValue object used to show items if selection set is active.\r\n * @beta\r\n */\r\nexport function areNoFeatureOverridesActive(): boolean {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n // istanbul ignore next\r\n if (activeContentControl && activeContentControl.viewport)\r\n return !UiFramework.hideIsolateEmphasizeActionHandler.areFeatureOverridesActive(activeContentControl.viewport);\r\n\r\n return true;\r\n}\r\n\r\n/** return ConditionalBooleanValue object used to show item if feature overrides are active.\r\n * @beta\r\n */\r\nexport function getIsHiddenIfFeatureOverridesActive(): ConditionalBooleanValue {\r\n return new ConditionalBooleanValue(areNoFeatureOverridesActive, getFeatureOverrideSyncEventIds());\r\n}\r\n\r\n/** return ConditionalBooleanValue object used to show items if selection set is active.\r\n * @beta\r\n */\r\nexport function getIsHiddenIfSelectionNotActive(): ConditionalBooleanValue {\r\n return new ConditionalBooleanValue(isNoSelectionActive, getSelectionContextSyncEventIds());\r\n}\r\n\r\n/** return state with isVisible set to true is SectionSet is active.\r\n * @beta\r\n */\r\n// istanbul ignore next\r\nexport function featureOverridesActiveStateFunc(state: Readonly<BaseItemState>): BaseItemState {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n let isVisible = false;\r\n\r\n // istanbul ignore next\r\n if (activeContentControl && activeContentControl.viewport)\r\n isVisible = UiFramework.hideIsolateEmphasizeActionHandler.areFeatureOverridesActive(activeContentControl.viewport);\r\n\r\n return { ...state, isVisible };\r\n}\r\n\r\n/** return state with isVisible set to true is SectionSet is active.\r\n * @beta\r\n */\r\n// istanbul ignore next\r\nexport function selectionContextStateFunc(state: Readonly<BaseItemState>): BaseItemState {\r\n const activeContentControl = UiFramework.content.getActiveContentControl();\r\n let isVisible = false;\r\n\r\n let selectionCount = 0;\r\n if (!UiFramework.frameworkStateKey)\r\n selectionCount = UiFramework.store.getState()[UiFramework.frameworkStateKey].frameworkState.sessionState.numItemsSelected;\r\n\r\n if (activeContentControl && activeContentControl.viewport && (activeContentControl.viewport.view.iModel.selectionSet.size > 0 || selectionCount > 0))\r\n isVisible = true;\r\n return { ...state, isVisible };\r\n}\r\n\r\n/** Utility Class that provides definitions for tools dependent on current selection. These definitions can be used to populate toolbars.\r\n * @public\r\n */\r\n// istanbul ignore next\r\nexport class SelectionContextToolDefinitions {\r\n\r\n public static get isolateModelsInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.IsolateModel\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgModelIsolate),\r\n labelKey: \"UiFramework:tools.isolateModels\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelectedElementsModel(),\r\n });\r\n }\r\n\r\n public static get isolateCategoriesInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.IsolateCategory\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgLayersIsolate),\r\n labelKey: \"UiFramework:tools.isolateCategories\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelectedElementsCategory(),\r\n });\r\n }\r\n\r\n public static get isolateElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.IsolateSelected\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgAssetIsolate),\r\n labelKey: \"UiFramework:tools.isolateSelected\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processIsolateSelected(),\r\n });\r\n }\r\n\r\n public static get isolateSelectionToolGroup() {\r\n return new GroupItemDef({\r\n groupId: \"UiFramework.IsolateSelectionGroup\",\r\n labelKey: \"UiFramework:tools.isolate\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgIsolate),\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n items: [this.isolateElementsItemDef, this.isolateCategoriesInSelectionItemDef, this.isolateModelsInSelectionItemDef],\r\n itemsInColumn: 3,\r\n });\r\n }\r\n\r\n public static get hideModelsInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.HideModel\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgModelHide),\r\n labelKey: \"UiFramework:tools.hideModels\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processHideSelectedElementsModel(),\r\n });\r\n }\r\n\r\n public static get hideCategoriesInSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.HideCategory\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgLayersHide),\r\n labelKey: \"UiFramework:tools.hideCategories\",\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processHideSelectedElementsCategory(),\r\n });\r\n }\r\n\r\n public static get hideElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.HideSelected\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgAssetClassificationHide),\r\n labelKey: \"UiFramework:tools.hideSelected\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processHideSelected(),\r\n });\r\n }\r\n\r\n public static get hideSectionToolGroup() {\r\n return new GroupItemDef({\r\n groupId: \"UiFramework.HideSelectionGroup\",\r\n labelKey: \"UiFramework:tools.hide\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgVisibilityHide),\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n items: [this.hideElementsItemDef, this.hideCategoriesInSelectionItemDef, this.hideModelsInSelectionItemDef],\r\n itemsInColumn: 3,\r\n });\r\n }\r\n\r\n public static get emphasizeElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.EmphasizeSelected\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgVisibilitySemiTransparent),\r\n labelKey: \"UiFramework:tools.emphasizeSelected\",\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => UiFramework.hideIsolateEmphasizeActionHandler.processEmphasizeSelected(),\r\n });\r\n }\r\n\r\n public static get clearHideIsolateEmphasizeElementsItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.ClearHideIsolateEmphasize\",\r\n iconSpec: IconSpecUtilities.createWebComponentIconSpec(svgVisibility),\r\n labelKey: \"UiFramework:tools.clearVisibility\",\r\n isHidden: getIsHiddenIfFeatureOverridesActive(),\r\n execute: async () => {\r\n await UiFramework.hideIsolateEmphasizeActionHandler.processClearEmphasize();\r\n await UiFramework.hideIsolateEmphasizeActionHandler.processClearOverrideModels();\r\n await UiFramework.hideIsolateEmphasizeActionHandler.processClearOverrideCategories();\r\n },\r\n });\r\n }\r\n\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityFormat.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/settings/quantityformatting/QuantityFormat.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,uBAAuB,CAAC;AAG/B,OAAO,EACoE,eAAe,EACzF,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAA8B,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGjF,OAAO,EACyB,gBAAgB,EAE/C,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"QuantityFormat.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/settings/quantityformatting/QuantityFormat.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,uBAAuB,CAAC;AAG/B,OAAO,EACoE,eAAe,EACzF,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAA8B,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGjF,OAAO,EACyB,gBAAgB,EAE/C,MAAM,mBAAmB,CAAC;AAW3B;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,mBAAmB,EAAE,eAAe,CAAC;IACrC,oBAAoB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,sCAAsC,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,gCAAgC,CAAC,GAAG,gBAAgB,CAa/I;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,EAAE,gCAAgC,eAoKzH"}
|
|
@@ -18,6 +18,7 @@ const core_react_1 = require("@itwin/core-react");
|
|
|
18
18
|
const UiFramework_1 = require("../../UiFramework");
|
|
19
19
|
const UnitSystemSelector_1 = require("./UnitSystemSelector");
|
|
20
20
|
const itwinui_react_1 = require("@itwin/itwinui-react");
|
|
21
|
+
const itwinui_icons_react_1 = require("@itwin/itwinui-icons-react");
|
|
21
22
|
function formatAreEqual(obj1, obj2) {
|
|
22
23
|
const compare = new core_geometry_1.DeepCompare();
|
|
23
24
|
return compare.compare(obj1, obj2);
|
|
@@ -36,7 +37,7 @@ function getQuantityFormatsSettingsManagerEntry(itemPriority, opts) {
|
|
|
36
37
|
subLabel: UiFramework_1.UiFramework.translate("settings.quantity-formatting.subLabel"),
|
|
37
38
|
page: React.createElement(QuantityFormatSettingsPage, { initialQuantityType: initialQuantityType !== null && initialQuantityType !== void 0 ? initialQuantityType : core_frontend_1.QuantityType.Length, availableUnitSystems: availableUnitSystems !== null && availableUnitSystems !== void 0 ? availableUnitSystems : new Set(["metric", "imperial", "usCustomary", "usSurvey"]) }),
|
|
38
39
|
isDisabled: false,
|
|
39
|
-
icon:
|
|
40
|
+
icon: React.createElement(itwinui_icons_react_1.SvgMeasure, null),
|
|
40
41
|
tooltip: UiFramework_1.UiFramework.translate("settings.quantity-formatting.tooltip"),
|
|
41
42
|
pageWillHandleCloseRequest: true,
|
|
42
43
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityFormat.js","sourceRoot":"","sources":["../../../../../src/appui-react/settings/quantityformatting/QuantityFormat.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 Settings\r\n */\r\n\r\nimport \"./QuantityFormat.scss\";\r\nimport * as React from \"react\";\r\nimport { DeepCompare } from \"@itwin/core-geometry\";\r\nimport {\r\n getQuantityTypeKey, IModelApp, QuantityFormatsChangedArgs, QuantityType, QuantityTypeArg, QuantityTypeKey,\r\n} from \"@itwin/core-frontend\";\r\nimport { FormatProps, FormatterSpec, UnitSystemKey } from \"@itwin/core-quantity\";\r\nimport { DialogButtonType } from \"@itwin/appui-abstract\";\r\nimport { FormatSample, QuantityFormatPanel } from \"@itwin/imodel-components-react\";\r\nimport {\r\n Dialog, Listbox, ListboxItem, SettingsTabEntry,\r\n useSaveBeforeActivatingNewSettingsTab, useSaveBeforeClosingSettingsContainer,\r\n} from \"@itwin/core-react\";\r\nimport { UiFramework } from \"../../UiFramework\";\r\nimport { UnitSystemSelector } from \"./UnitSystemSelector\";\r\nimport { Button } from \"@itwin/itwinui-react\";\r\n\r\nfunction formatAreEqual(obj1: FormatProps, obj2: FormatProps) {\r\n const compare = new DeepCompare();\r\n return compare.compare(obj1, obj2);\r\n}\r\n\r\n/** Options to initialize the settings page that allows users to set Quantity formatting overrides.\r\n * @beta\r\n */\r\nexport interface QuantityFormatterSettingsOptions {\r\n initialQuantityType: QuantityTypeArg;\r\n availableUnitSystems: Set<UnitSystemKey>;\r\n}\r\n\r\n/**\r\n * Return a SettingsTabEntry that can be used to define the available settings that can be set for an application.\r\n * @param itemPriority - Used to define the order of the entry in the Settings Stage\r\n * @param opts - Options to initialize the settings page that allows users to set Quantity formatting overrides.\r\n * @beta\r\n */\r\nexport function getQuantityFormatsSettingsManagerEntry(itemPriority: number, opts?: Partial<QuantityFormatterSettingsOptions>): SettingsTabEntry {\r\n const { availableUnitSystems, initialQuantityType } = { ...opts };\r\n return {\r\n itemPriority, tabId: \"uifw:Quantity\",\r\n label: UiFramework.translate(\"settings.quantity-formatting.label\"),\r\n subLabel: UiFramework.translate(\"settings.quantity-formatting.subLabel\"),\r\n page: <QuantityFormatSettingsPage initialQuantityType={initialQuantityType ?? QuantityType.Length}\r\n availableUnitSystems={availableUnitSystems ?? new Set([\"metric\", \"imperial\", \"usCustomary\", \"usSurvey\"])} />,\r\n isDisabled: false,\r\n icon: \"icon-measure\",\r\n tooltip: UiFramework.translate(\"settings.quantity-formatting.tooltip\"),\r\n pageWillHandleCloseRequest: true,\r\n };\r\n}\r\n\r\n/** UI Component shown in settings page to set the active Presentation Unit System and to set format overrides.\r\n * @beta\r\n */\r\nexport function QuantityFormatSettingsPage({ initialQuantityType, availableUnitSystems }: QuantityFormatterSettingsOptions) {\r\n const [activeUnitSystemKey, setActiveUnitSystemKey] = React.useState(IModelApp.quantityFormatter.activeUnitSystem);\r\n const [activeQuantityType, setActiveQuantityType] = React.useState(getQuantityTypeKey(initialQuantityType));\r\n const [activeFormatterSpec, setActiveFormatterSpec] = React.useState<FormatterSpec | undefined>(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(getQuantityTypeKey(activeQuantityType)));\r\n const [saveEnabled, setSaveEnabled] = React.useState(false);\r\n const [clearEnabled, setClearEnabled] = React.useState(IModelApp.quantityFormatter.hasActiveOverride(initialQuantityType, true));\r\n const newQuantityTypeRef = React.useRef<QuantityTypeKey>();\r\n const formatSectionLabel = React.useRef(UiFramework.translate(\"settings.quantity-formatting.formatSectionLabel\"));\r\n const setButtonLabel = React.useRef(UiFramework.translate(\"settings.quantity-formatting.setButtonLabel\"));\r\n const clearButtonLabel = React.useRef(UiFramework.translate(\"settings.quantity-formatting.clearButtonLabel\"));\r\n\r\n React.useEffect(() => {\r\n const handleUnitSystemChanged = ((): void => {\r\n // istanbul ignore else\r\n if (activeUnitSystemKey !== IModelApp.quantityFormatter.activeUnitSystem) {\r\n setActiveUnitSystemKey(IModelApp.quantityFormatter.activeUnitSystem);\r\n setActiveFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType));\r\n setSaveEnabled(false);\r\n setClearEnabled(IModelApp.quantityFormatter.hasActiveOverride(activeQuantityType, true));\r\n }\r\n });\r\n\r\n IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(handleUnitSystemChanged);\r\n return () => {\r\n IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.removeListener(handleUnitSystemChanged);\r\n };\r\n }, [activeQuantityType, activeUnitSystemKey]);\r\n\r\n React.useEffect(() => {\r\n const handleFormatChanged = ((args: QuantityFormatsChangedArgs): void => {\r\n if (!newQuantityTypeRef.current) {\r\n const quantityKey = IModelApp.quantityFormatter.getQuantityTypeKey(activeQuantityType);\r\n // istanbul ignore else\r\n if (args.quantityType === quantityKey) {\r\n setActiveFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType));\r\n setSaveEnabled(false);\r\n setClearEnabled(IModelApp.quantityFormatter.hasActiveOverride(activeQuantityType, true));\r\n }\r\n }\r\n newQuantityTypeRef.current = undefined;\r\n });\r\n IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener(handleFormatChanged);\r\n return () => {\r\n IModelApp.quantityFormatter.onQuantityFormatsChanged.removeListener(handleFormatChanged);\r\n };\r\n }, [activeQuantityType]);\r\n\r\n const saveChanges = React.useCallback((afterSaveFunction: (args: any) => void, args?: any) => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const formatProps = activeFormatterSpec.format.toJSON();\r\n const formatPropsInUse = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType)!.format.toJSON();\r\n if (formatPropsInUse && !formatAreEqual(formatProps, formatPropsInUse)) {\r\n UiFramework.dialogs.modal.open(<SaveFormatModalDialog formatProps={formatProps} quantityType={activeQuantityType} onDialogCloseArgs={args} onDialogClose={afterSaveFunction} />, \"saveQuantityFormat\");\r\n return;\r\n }\r\n }\r\n afterSaveFunction(args);\r\n }, [activeFormatterSpec, activeQuantityType]);\r\n\r\n useSaveBeforeActivatingNewSettingsTab(UiFramework.settingsManager, saveChanges);\r\n useSaveBeforeClosingSettingsContainer(UiFramework.settingsManager, saveChanges);\r\n\r\n const processListboxValueChange = React.useCallback((newQuantityType: QuantityTypeKey) => {\r\n const volumeFormatterSpec = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(newQuantityType);\r\n setActiveFormatterSpec(volumeFormatterSpec);\r\n setActiveQuantityType(newQuantityType);\r\n setSaveEnabled(false);\r\n setClearEnabled(IModelApp.quantityFormatter.hasActiveOverride(newQuantityType, true));\r\n }, []);\r\n\r\n const onListboxValueChange = React.useCallback((newQuantityType: string) => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const formatProps = activeFormatterSpec.format.toJSON();\r\n const formatPropsInUse = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType)!.format.toJSON();\r\n if (formatPropsInUse && !formatAreEqual(formatProps, formatPropsInUse)) {\r\n newQuantityTypeRef.current = newQuantityType;\r\n UiFramework.dialogs.modal.open(<SaveFormatModalDialog formatProps={formatProps} quantityType={activeQuantityType} onDialogCloseArgs={newQuantityType} onDialogClose={processListboxValueChange} />, \"saveQuantityFormat\");\r\n return;\r\n }\r\n }\r\n processListboxValueChange(newQuantityType);\r\n }, [activeFormatterSpec, activeQuantityType, processListboxValueChange]);\r\n\r\n const handleOnFormatChanged = React.useCallback(async (formatProps: FormatProps) => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const newSpec = await IModelApp.quantityFormatter.generateFormatterSpecByType(activeQuantityType, formatProps);\r\n const formatPropsInUse = IModelApp.quantityFormatter.getFormatPropsByQuantityType(activeQuantityType);\r\n // istanbul ignore else\r\n if (formatPropsInUse)\r\n setSaveEnabled(!formatAreEqual(formatProps, formatPropsInUse));\r\n setActiveFormatterSpec(newSpec);\r\n }\r\n }, [activeFormatterSpec, activeQuantityType]);\r\n\r\n const handleOnFormatSave = React.useCallback(async () => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const format = activeFormatterSpec.format.toJSON();\r\n await IModelApp.quantityFormatter.setOverrideFormat(activeQuantityType, format);\r\n setClearEnabled(true);\r\n }\r\n }, [activeFormatterSpec, activeQuantityType]);\r\n\r\n const handleOnFormatReset = React.useCallback(async () => {\r\n await IModelApp.quantityFormatter.clearOverrideFormats(activeQuantityType);\r\n setClearEnabled(false);\r\n }, [activeQuantityType]);\r\n\r\n const processNewUnitSystem = React.useCallback(async (unitSystem: UnitSystemKey) => {\r\n await IModelApp.quantityFormatter.setActiveUnitSystem(unitSystem);\r\n }, []);\r\n\r\n const handleUnitSystemSelected = React.useCallback(async (unitSystem: UnitSystemKey) => {\r\n if (unitSystem === activeUnitSystemKey)\r\n return;\r\n saveChanges(processNewUnitSystem, unitSystem);\r\n }, [activeUnitSystemKey, processNewUnitSystem, saveChanges]);\r\n\r\n return (\r\n <div className=\"quantity-formatting-container\">\r\n <UnitSystemSelector selectedUnitSystemKey={activeUnitSystemKey} availableUnitSystems={availableUnitSystems} onUnitSystemSelected={handleUnitSystemSelected} />\r\n <span className=\"uifw-quantity-format-section-label\">{formatSectionLabel.current}</span>\r\n <div className=\"uifw-quantity-types-container\">\r\n <div className=\"left-panel\">\r\n <Listbox id=\"uifw-quantity-types-list\" className=\"uifw-quantity-types\"\r\n onListboxValueChange={onListboxValueChange} selectedValue={activeQuantityType} >\r\n {\r\n [...IModelApp.quantityFormatter.quantityTypesRegistry.keys()].map((key) => {\r\n const entry = IModelApp.quantityFormatter.quantityTypesRegistry.get(key)!;\r\n const description = entry.description;\r\n const label = entry.label;\r\n return (\r\n <ListboxItem key={entry.key} className=\"quantity-type-list-entry\" value={entry.key}>\r\n <span className=\"map-source-list-entry-name\" title={description}>{label}</span>\r\n </ListboxItem>\r\n );\r\n })\r\n }\r\n </Listbox>\r\n </div>\r\n <div className=\"right-panel\">\r\n {activeFormatterSpec &&\r\n <>\r\n <div className=\"uifw-quantity-types-right-top\">\r\n <div className=\"uifw-quantity-types-right-top-sample\">\r\n <FormatSample formatSpec={activeFormatterSpec} initialMagnitude={1234.56} hideLabels />\r\n </div>\r\n </div>\r\n <div className=\"uifw-quantity-types-formats\">\r\n <QuantityFormatPanel onFormatChange={handleOnFormatChanged} quantityType={activeQuantityType} />\r\n </div>\r\n <div className=\"components-button-panel\">\r\n <Button styleType=\"cta\" onClick={handleOnFormatSave} disabled={!saveEnabled}>{setButtonLabel.current}</Button>\r\n <Button styleType=\"default\" onClick={handleOnFormatReset} disabled={!clearEnabled}>{clearButtonLabel.current}</Button>\r\n </div>\r\n </>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\nfunction SaveFormatModalDialog({ formatProps, quantityType, onDialogCloseArgs, onDialogClose }: { formatProps: FormatProps, quantityType: QuantityTypeKey, onDialogCloseArgs?: any, onDialogClose: (args?: any) => void }) {\r\n const [isOpen, setIsOpen] = React.useState(true);\r\n\r\n const handleClose = React.useCallback(() => {\r\n setIsOpen(false);\r\n UiFramework.dialogs.modal.close();\r\n onDialogClose && onDialogClose(onDialogCloseArgs);\r\n }, [onDialogClose, onDialogCloseArgs]);\r\n\r\n const handleOK = React.useCallback(() => {\r\n IModelApp.quantityFormatter.setOverrideFormat(quantityType, formatProps); // eslint-disable-line @typescript-eslint/no-floating-promises\r\n handleClose();\r\n }, [formatProps, handleClose, quantityType]);\r\n\r\n const handleCancel = React.useCallback(() => {\r\n handleClose();\r\n }, [handleClose]);\r\n\r\n return (\r\n <Dialog\r\n title={\"Save Format Changes\"}\r\n opened={isOpen}\r\n resizable={false}\r\n movable={false}\r\n modal={true}\r\n buttonCluster={[\r\n { type: DialogButtonType.Yes, onClick: handleOK },\r\n { type: DialogButtonType.No, onClick: handleCancel },\r\n ]}\r\n onEscape={handleCancel}\r\n onClose={handleCancel}\r\n onOutsideClick={handleCancel}\r\n minHeight={150}\r\n maxHeight={400}\r\n maxWidth={400}\r\n minWidth={200}\r\n >\r\n <div className=\"modal-dialog2\">\r\n Do you want to save changes to format before changing to another type?\r\n </div>\r\n </Dialog >\r\n );\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"QuantityFormat.js","sourceRoot":"","sources":["../../../../../src/appui-react/settings/quantityformatting/QuantityFormat.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 Settings\r\n */\r\n\r\nimport \"./QuantityFormat.scss\";\r\nimport * as React from \"react\";\r\nimport { DeepCompare } from \"@itwin/core-geometry\";\r\nimport {\r\n getQuantityTypeKey, IModelApp, QuantityFormatsChangedArgs, QuantityType, QuantityTypeArg, QuantityTypeKey,\r\n} from \"@itwin/core-frontend\";\r\nimport { FormatProps, FormatterSpec, UnitSystemKey } from \"@itwin/core-quantity\";\r\nimport { DialogButtonType } from \"@itwin/appui-abstract\";\r\nimport { FormatSample, QuantityFormatPanel } from \"@itwin/imodel-components-react\";\r\nimport {\r\n Dialog, Listbox, ListboxItem, SettingsTabEntry,\r\n useSaveBeforeActivatingNewSettingsTab, useSaveBeforeClosingSettingsContainer,\r\n} from \"@itwin/core-react\";\r\nimport { UiFramework } from \"../../UiFramework\";\r\nimport { UnitSystemSelector } from \"./UnitSystemSelector\";\r\nimport { Button } from \"@itwin/itwinui-react\";\r\nimport { SvgMeasure } from \"@itwin/itwinui-icons-react\";\r\n\r\nfunction formatAreEqual(obj1: FormatProps, obj2: FormatProps) {\r\n const compare = new DeepCompare();\r\n return compare.compare(obj1, obj2);\r\n}\r\n\r\n/** Options to initialize the settings page that allows users to set Quantity formatting overrides.\r\n * @beta\r\n */\r\nexport interface QuantityFormatterSettingsOptions {\r\n initialQuantityType: QuantityTypeArg;\r\n availableUnitSystems: Set<UnitSystemKey>;\r\n}\r\n\r\n/**\r\n * Return a SettingsTabEntry that can be used to define the available settings that can be set for an application.\r\n * @param itemPriority - Used to define the order of the entry in the Settings Stage\r\n * @param opts - Options to initialize the settings page that allows users to set Quantity formatting overrides.\r\n * @beta\r\n */\r\nexport function getQuantityFormatsSettingsManagerEntry(itemPriority: number, opts?: Partial<QuantityFormatterSettingsOptions>): SettingsTabEntry {\r\n const { availableUnitSystems, initialQuantityType } = { ...opts };\r\n return {\r\n itemPriority, tabId: \"uifw:Quantity\",\r\n label: UiFramework.translate(\"settings.quantity-formatting.label\"),\r\n subLabel: UiFramework.translate(\"settings.quantity-formatting.subLabel\"),\r\n page: <QuantityFormatSettingsPage initialQuantityType={initialQuantityType ?? QuantityType.Length}\r\n availableUnitSystems={availableUnitSystems ?? new Set([\"metric\", \"imperial\", \"usCustomary\", \"usSurvey\"])} />,\r\n isDisabled: false,\r\n icon: <SvgMeasure />,\r\n tooltip: UiFramework.translate(\"settings.quantity-formatting.tooltip\"),\r\n pageWillHandleCloseRequest: true,\r\n };\r\n}\r\n\r\n/** UI Component shown in settings page to set the active Presentation Unit System and to set format overrides.\r\n * @beta\r\n */\r\nexport function QuantityFormatSettingsPage({ initialQuantityType, availableUnitSystems }: QuantityFormatterSettingsOptions) {\r\n const [activeUnitSystemKey, setActiveUnitSystemKey] = React.useState(IModelApp.quantityFormatter.activeUnitSystem);\r\n const [activeQuantityType, setActiveQuantityType] = React.useState(getQuantityTypeKey(initialQuantityType));\r\n const [activeFormatterSpec, setActiveFormatterSpec] = React.useState<FormatterSpec | undefined>(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(getQuantityTypeKey(activeQuantityType)));\r\n const [saveEnabled, setSaveEnabled] = React.useState(false);\r\n const [clearEnabled, setClearEnabled] = React.useState(IModelApp.quantityFormatter.hasActiveOverride(initialQuantityType, true));\r\n const newQuantityTypeRef = React.useRef<QuantityTypeKey>();\r\n const formatSectionLabel = React.useRef(UiFramework.translate(\"settings.quantity-formatting.formatSectionLabel\"));\r\n const setButtonLabel = React.useRef(UiFramework.translate(\"settings.quantity-formatting.setButtonLabel\"));\r\n const clearButtonLabel = React.useRef(UiFramework.translate(\"settings.quantity-formatting.clearButtonLabel\"));\r\n\r\n React.useEffect(() => {\r\n const handleUnitSystemChanged = ((): void => {\r\n // istanbul ignore else\r\n if (activeUnitSystemKey !== IModelApp.quantityFormatter.activeUnitSystem) {\r\n setActiveUnitSystemKey(IModelApp.quantityFormatter.activeUnitSystem);\r\n setActiveFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType));\r\n setSaveEnabled(false);\r\n setClearEnabled(IModelApp.quantityFormatter.hasActiveOverride(activeQuantityType, true));\r\n }\r\n });\r\n\r\n IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(handleUnitSystemChanged);\r\n return () => {\r\n IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.removeListener(handleUnitSystemChanged);\r\n };\r\n }, [activeQuantityType, activeUnitSystemKey]);\r\n\r\n React.useEffect(() => {\r\n const handleFormatChanged = ((args: QuantityFormatsChangedArgs): void => {\r\n if (!newQuantityTypeRef.current) {\r\n const quantityKey = IModelApp.quantityFormatter.getQuantityTypeKey(activeQuantityType);\r\n // istanbul ignore else\r\n if (args.quantityType === quantityKey) {\r\n setActiveFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType));\r\n setSaveEnabled(false);\r\n setClearEnabled(IModelApp.quantityFormatter.hasActiveOverride(activeQuantityType, true));\r\n }\r\n }\r\n newQuantityTypeRef.current = undefined;\r\n });\r\n IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener(handleFormatChanged);\r\n return () => {\r\n IModelApp.quantityFormatter.onQuantityFormatsChanged.removeListener(handleFormatChanged);\r\n };\r\n }, [activeQuantityType]);\r\n\r\n const saveChanges = React.useCallback((afterSaveFunction: (args: any) => void, args?: any) => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const formatProps = activeFormatterSpec.format.toJSON();\r\n const formatPropsInUse = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType)!.format.toJSON();\r\n if (formatPropsInUse && !formatAreEqual(formatProps, formatPropsInUse)) {\r\n UiFramework.dialogs.modal.open(<SaveFormatModalDialog formatProps={formatProps} quantityType={activeQuantityType} onDialogCloseArgs={args} onDialogClose={afterSaveFunction} />, \"saveQuantityFormat\");\r\n return;\r\n }\r\n }\r\n afterSaveFunction(args);\r\n }, [activeFormatterSpec, activeQuantityType]);\r\n\r\n useSaveBeforeActivatingNewSettingsTab(UiFramework.settingsManager, saveChanges);\r\n useSaveBeforeClosingSettingsContainer(UiFramework.settingsManager, saveChanges);\r\n\r\n const processListboxValueChange = React.useCallback((newQuantityType: QuantityTypeKey) => {\r\n const volumeFormatterSpec = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(newQuantityType);\r\n setActiveFormatterSpec(volumeFormatterSpec);\r\n setActiveQuantityType(newQuantityType);\r\n setSaveEnabled(false);\r\n setClearEnabled(IModelApp.quantityFormatter.hasActiveOverride(newQuantityType, true));\r\n }, []);\r\n\r\n const onListboxValueChange = React.useCallback((newQuantityType: string) => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const formatProps = activeFormatterSpec.format.toJSON();\r\n const formatPropsInUse = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(activeQuantityType)!.format.toJSON();\r\n if (formatPropsInUse && !formatAreEqual(formatProps, formatPropsInUse)) {\r\n newQuantityTypeRef.current = newQuantityType;\r\n UiFramework.dialogs.modal.open(<SaveFormatModalDialog formatProps={formatProps} quantityType={activeQuantityType} onDialogCloseArgs={newQuantityType} onDialogClose={processListboxValueChange} />, \"saveQuantityFormat\");\r\n return;\r\n }\r\n }\r\n processListboxValueChange(newQuantityType);\r\n }, [activeFormatterSpec, activeQuantityType, processListboxValueChange]);\r\n\r\n const handleOnFormatChanged = React.useCallback(async (formatProps: FormatProps) => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const newSpec = await IModelApp.quantityFormatter.generateFormatterSpecByType(activeQuantityType, formatProps);\r\n const formatPropsInUse = IModelApp.quantityFormatter.getFormatPropsByQuantityType(activeQuantityType);\r\n // istanbul ignore else\r\n if (formatPropsInUse)\r\n setSaveEnabled(!formatAreEqual(formatProps, formatPropsInUse));\r\n setActiveFormatterSpec(newSpec);\r\n }\r\n }, [activeFormatterSpec, activeQuantityType]);\r\n\r\n const handleOnFormatSave = React.useCallback(async () => {\r\n // istanbul ignore else\r\n if (activeFormatterSpec) {\r\n const format = activeFormatterSpec.format.toJSON();\r\n await IModelApp.quantityFormatter.setOverrideFormat(activeQuantityType, format);\r\n setClearEnabled(true);\r\n }\r\n }, [activeFormatterSpec, activeQuantityType]);\r\n\r\n const handleOnFormatReset = React.useCallback(async () => {\r\n await IModelApp.quantityFormatter.clearOverrideFormats(activeQuantityType);\r\n setClearEnabled(false);\r\n }, [activeQuantityType]);\r\n\r\n const processNewUnitSystem = React.useCallback(async (unitSystem: UnitSystemKey) => {\r\n await IModelApp.quantityFormatter.setActiveUnitSystem(unitSystem);\r\n }, []);\r\n\r\n const handleUnitSystemSelected = React.useCallback(async (unitSystem: UnitSystemKey) => {\r\n if (unitSystem === activeUnitSystemKey)\r\n return;\r\n saveChanges(processNewUnitSystem, unitSystem);\r\n }, [activeUnitSystemKey, processNewUnitSystem, saveChanges]);\r\n\r\n return (\r\n <div className=\"quantity-formatting-container\">\r\n <UnitSystemSelector selectedUnitSystemKey={activeUnitSystemKey} availableUnitSystems={availableUnitSystems} onUnitSystemSelected={handleUnitSystemSelected} />\r\n <span className=\"uifw-quantity-format-section-label\">{formatSectionLabel.current}</span>\r\n <div className=\"uifw-quantity-types-container\">\r\n <div className=\"left-panel\">\r\n <Listbox id=\"uifw-quantity-types-list\" className=\"uifw-quantity-types\"\r\n onListboxValueChange={onListboxValueChange} selectedValue={activeQuantityType} >\r\n {\r\n [...IModelApp.quantityFormatter.quantityTypesRegistry.keys()].map((key) => {\r\n const entry = IModelApp.quantityFormatter.quantityTypesRegistry.get(key)!;\r\n const description = entry.description;\r\n const label = entry.label;\r\n return (\r\n <ListboxItem key={entry.key} className=\"quantity-type-list-entry\" value={entry.key}>\r\n <span className=\"map-source-list-entry-name\" title={description}>{label}</span>\r\n </ListboxItem>\r\n );\r\n })\r\n }\r\n </Listbox>\r\n </div>\r\n <div className=\"right-panel\">\r\n {activeFormatterSpec &&\r\n <>\r\n <div className=\"uifw-quantity-types-right-top\">\r\n <div className=\"uifw-quantity-types-right-top-sample\">\r\n <FormatSample formatSpec={activeFormatterSpec} initialMagnitude={1234.56} hideLabels />\r\n </div>\r\n </div>\r\n <div className=\"uifw-quantity-types-formats\">\r\n <QuantityFormatPanel onFormatChange={handleOnFormatChanged} quantityType={activeQuantityType} />\r\n </div>\r\n <div className=\"components-button-panel\">\r\n <Button styleType=\"cta\" onClick={handleOnFormatSave} disabled={!saveEnabled}>{setButtonLabel.current}</Button>\r\n <Button styleType=\"default\" onClick={handleOnFormatReset} disabled={!clearEnabled}>{clearButtonLabel.current}</Button>\r\n </div>\r\n </>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\nfunction SaveFormatModalDialog({ formatProps, quantityType, onDialogCloseArgs, onDialogClose }: { formatProps: FormatProps, quantityType: QuantityTypeKey, onDialogCloseArgs?: any, onDialogClose: (args?: any) => void }) {\r\n const [isOpen, setIsOpen] = React.useState(true);\r\n\r\n const handleClose = React.useCallback(() => {\r\n setIsOpen(false);\r\n UiFramework.dialogs.modal.close();\r\n onDialogClose && onDialogClose(onDialogCloseArgs);\r\n }, [onDialogClose, onDialogCloseArgs]);\r\n\r\n const handleOK = React.useCallback(() => {\r\n IModelApp.quantityFormatter.setOverrideFormat(quantityType, formatProps); // eslint-disable-line @typescript-eslint/no-floating-promises\r\n handleClose();\r\n }, [formatProps, handleClose, quantityType]);\r\n\r\n const handleCancel = React.useCallback(() => {\r\n handleClose();\r\n }, [handleClose]);\r\n\r\n return (\r\n <Dialog\r\n title={\"Save Format Changes\"}\r\n opened={isOpen}\r\n resizable={false}\r\n movable={false}\r\n modal={true}\r\n buttonCluster={[\r\n { type: DialogButtonType.Yes, onClick: handleOK },\r\n { type: DialogButtonType.No, onClick: handleCancel },\r\n ]}\r\n onEscape={handleCancel}\r\n onClose={handleCancel}\r\n onOutsideClick={handleCancel}\r\n minHeight={150}\r\n maxHeight={400}\r\n maxWidth={400}\r\n minWidth={200}\r\n >\r\n <div className=\"modal-dialog2\">\r\n Do you want to save changes to format before changing to another type?\r\n </div>\r\n </Dialog >\r\n );\r\n}\r\n"]}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
flex-direction: column;
|
|
12
12
|
height: 100%;
|
|
13
13
|
width: 100%;
|
|
14
|
-
background:
|
|
14
|
+
background: var(--iui-color-background);
|
|
15
15
|
|
|
16
16
|
*,
|
|
17
17
|
*:before,
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
.uifw-quantity-types-formats {
|
|
100
100
|
display: flex;
|
|
101
101
|
flex-direction: column;
|
|
102
|
-
border: 1px solid
|
|
102
|
+
border: 1px solid var(--iui-color-border-subtle);
|
|
103
103
|
border-radius: var(--iui-border-radius-1);
|
|
104
104
|
height: auto;
|
|
105
105
|
overflow-y: auto;
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
3
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
4
|
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
@import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
|
|
6
5
|
@import "~@itwin/core-react/lib/cjs/core-react/base/base";
|
|
7
6
|
|
|
8
7
|
// cspell:ignore leftpanel rightpanel
|
|
@@ -16,8 +15,8 @@ $settings-rightpanel-width: 220px;
|
|
|
16
15
|
}
|
|
17
16
|
|
|
18
17
|
.uifw-settings {
|
|
19
|
-
background:
|
|
20
|
-
color:
|
|
18
|
+
background: var(--iui-color-background);
|
|
19
|
+
color: var(--iui-color-text);
|
|
21
20
|
border-radius: var(--iui-border-radius-1);
|
|
22
21
|
font-size: var(--iui-font-size-1);
|
|
23
22
|
display: flex;
|
|
@@ -45,7 +44,7 @@ $settings-rightpanel-width: 220px;
|
|
|
45
44
|
> .description {
|
|
46
45
|
margin-top: 10px;
|
|
47
46
|
font-size: 12px;
|
|
48
|
-
color:
|
|
47
|
+
color: var(--iui-color-text-muted);
|
|
49
48
|
}
|
|
50
49
|
}
|
|
51
50
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @module Item
|
|
3
3
|
*/
|
|
4
4
|
import { BadgeType, CommandHandler, ConditionalBooleanValue, ConditionalStringValue, StringGetter } from "@itwin/appui-abstract";
|
|
5
|
-
import { IconProps } from "@itwin/core-react";
|
|
5
|
+
import { IconProps, IconSpec } from "@itwin/core-react";
|
|
6
6
|
/** Definition that specifies properties shared between many ConfigurableUi components.
|
|
7
7
|
* @public
|
|
8
8
|
*/
|
|
@@ -20,7 +20,7 @@ export interface ItemProps extends IconProps {
|
|
|
20
20
|
/** Badge to be overlaid on the item. */
|
|
21
21
|
badgeType?: BadgeType;
|
|
22
22
|
/** abstract icon definition, used when create itemDef from abstract item (ie. MenuItem) */
|
|
23
|
-
icon?:
|
|
23
|
+
icon?: IconSpec;
|
|
24
24
|
/** if set, it is used to explicitly set the label shown by a component. */
|
|
25
25
|
label?: string | StringGetter | ConditionalStringValue;
|
|
26
26
|
/** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ItemProps.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemProps.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACjI,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ItemProps.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemProps.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACjI,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAC7C,6DAA6D;IAC7D,UAAU,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAC/C,2GAA2G;IAC3G,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2KAA2K;IAC3K,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8DAA8D;IAC9D,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,wCAAwC;IACxC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,2FAA2F;IAC3F,IAAI,CAAC,EAAE,QAAQ,CAAC;IAEhB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,sBAAsB,CAAC;IACvD,6IAA6I;IAC7I,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,sBAAsB,CAAC;IAC7D,mJAAmJ;IACnJ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,sBAAsB,CAAC;IACzD,6IAA6I;IAC7I,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,SAAS,EAAE,cAAc;IAC9D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS,EAAE,cAAc;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ItemProps.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemProps.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 Item\r\n */\r\n\r\nimport { BadgeType, CommandHandler, ConditionalBooleanValue, ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\r\nimport { IconProps } from \"@itwin/core-react\";\r\n\r\n/** Definition that specifies properties shared between many ConfigurableUi components.\r\n * @public\r\n */\r\nexport interface ItemProps extends IconProps {\r\n /** if true component will be hidden - defaults to false */\r\n isHidden?: boolean | ConditionalBooleanValue;\r\n /** if true component will be disabled - defaults to false */\r\n isDisabled?: boolean | ConditionalBooleanValue;\r\n /** if set, component will be considered \"active\" an will display an \"active stripe\" - defaults to false */\r\n isActive?: boolean;\r\n /** if set, component will be considered selected but will NOT display an \"active stripe\" - defaults to false. Typically used by buttons that toggle between two states. */\r\n isPressed?: boolean;\r\n /** can be used by application to store miscellaneous data. */\r\n applicationData?: any;\r\n /** Badge to be overlaid on the item. */\r\n badgeType?: BadgeType;\r\n /** abstract icon definition, used when create itemDef from abstract item (ie. MenuItem) */\r\n icon?:
|
|
1
|
+
{"version":3,"file":"ItemProps.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemProps.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 Item\r\n */\r\n\r\nimport { BadgeType, CommandHandler, ConditionalBooleanValue, ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\r\nimport { IconProps, IconSpec } from \"@itwin/core-react\";\r\n\r\n/** Definition that specifies properties shared between many ConfigurableUi components.\r\n * @public\r\n */\r\nexport interface ItemProps extends IconProps {\r\n /** if true component will be hidden - defaults to false */\r\n isHidden?: boolean | ConditionalBooleanValue;\r\n /** if true component will be disabled - defaults to false */\r\n isDisabled?: boolean | ConditionalBooleanValue;\r\n /** if set, component will be considered \"active\" an will display an \"active stripe\" - defaults to false */\r\n isActive?: boolean;\r\n /** if set, component will be considered selected but will NOT display an \"active stripe\" - defaults to false. Typically used by buttons that toggle between two states. */\r\n isPressed?: boolean;\r\n /** can be used by application to store miscellaneous data. */\r\n applicationData?: any;\r\n /** Badge to be overlaid on the item. */\r\n badgeType?: BadgeType;\r\n /** abstract icon definition, used when create itemDef from abstract item (ie. MenuItem) */\r\n icon?: IconSpec;\r\n\r\n /** if set, it is used to explicitly set the label shown by a component. */\r\n label?: string | StringGetter | ConditionalStringValue;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n labelKey?: string;\r\n\r\n /** if set, it is used to explicitly set the description shown by a component. */\r\n description?: string | StringGetter | ConditionalStringValue;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if description is not explicitly set. */\r\n descriptionKey?: string;\r\n /** used to explicitly set the tooltip shown by a component. */\r\n tooltip?: string | StringGetter | ConditionalStringValue;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n tooltipKey?: string;\r\n}\r\n\r\n/** Properties for a Tool item with a tool id.\r\n * @public\r\n */\r\nexport interface ToolItemProps extends ItemProps, CommandHandler {\r\n toolId: string;\r\n}\r\n\r\n/** Properties for a Command item.\r\n * @public\r\n */\r\nexport interface CommandItemProps extends ItemProps, CommandHandler {\r\n commandId?: string;\r\n}\r\n"]}
|
|
@@ -13,6 +13,6 @@ export declare class ToolItemDef extends ActionButtonItemDef {
|
|
|
13
13
|
constructor(toolItemProps: ToolItemProps, onItemExecuted?: OnItemExecutedFunc);
|
|
14
14
|
get id(): string;
|
|
15
15
|
/** Create a ToolItemDef that will run a registered tool. */
|
|
16
|
-
static getItemDefForTool(tool: typeof Tool,
|
|
16
|
+
static getItemDefForTool(tool: typeof Tool, icon?: string, ...args: any[]): ToolItemDef;
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=ToolItemDef.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolItemDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/shared/ToolItemDef.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAa,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;GAEG;AACH,qBAAa,WAAY,SAAQ,mBAAmB;IAC3C,MAAM,EAAE,MAAM,CAAM;gBAEf,aAAa,EAAE,aAAa,EAAE,cAAc,CAAC,EAAE,kBAAkB;IAU7E,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,4DAA4D;WAC9C,iBAAiB,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"ToolItemDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/shared/ToolItemDef.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAa,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;GAEG;AACH,qBAAa,WAAY,SAAQ,mBAAmB;IAC3C,MAAM,EAAE,MAAM,CAAM;gBAEf,aAAa,EAAE,aAAa,EAAE,cAAc,CAAC,EAAE,kBAAkB;IAU7E,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,4DAA4D;WAC9C,iBAAiB,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,WAAW;CAS/F"}
|
|
@@ -26,10 +26,10 @@ class ToolItemDef extends ActionButtonItemDef_1.ActionButtonItemDef {
|
|
|
26
26
|
return this.toolId;
|
|
27
27
|
}
|
|
28
28
|
/** Create a ToolItemDef that will run a registered tool. */
|
|
29
|
-
static getItemDefForTool(tool,
|
|
29
|
+
static getItemDefForTool(tool, icon, ...args) {
|
|
30
30
|
return new ToolItemDef({
|
|
31
31
|
toolId: tool.toolId,
|
|
32
|
-
|
|
32
|
+
icon: icon ? icon : (tool.iconSpec && tool.iconSpec.length > 0) ? tool.iconSpec : undefined,
|
|
33
33
|
label: () => tool.flyover,
|
|
34
34
|
description: () => tool.description,
|
|
35
35
|
execute: async () => core_frontend_1.IModelApp.tools.run(tool.toolId, ...args),
|