@itwin/appui-react 4.0.0-dev.10 → 4.0.0-dev.12
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/ConfigurableUiControl.d.ts +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.js +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.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/content/FloatingViewportContent.d.ts +2 -10
- package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/FloatingViewportContent.js +15 -14
- package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
- 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 +30 -5
- 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 +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.js +4 -3
- 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 +4 -4
- 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 +4 -4
- 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/ConfigurableUiControl.d.ts +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiControl.js +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiControl.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/content/FloatingViewportContent.d.ts +2 -10
- package/lib/esm/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
- package/lib/esm/appui-react/content/FloatingViewportContent.js +15 -14
- package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
- 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 +31 -6
- 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 +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.js +4 -3
- 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 +4 -4
- 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 +4 -4
- 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 +28 -46
- 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":"BackstageComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposer.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 Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BackstageItem, BackstageItemsManager, ConditionalBooleanValue, isStageLauncher, UiSyncEventArgs } from \"@itwin/appui-abstract\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { BackstageSeparator, Backstage as NZ_Backstage } from \"@itwin/appui-layout-react\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { BackstageComposerItem } from \"./BackstageComposerItem\";\r\nimport { useBackstageManager, useIsBackstageOpen } from \"./BackstageManager\";\r\nimport { useDefaultBackstageItems } from \"./useDefaultBackstageItems\";\r\nimport { useUiItemsProviderBackstageItems } from \"./useUiItemsProviderBackstageItems\";\r\nimport { toLayoutSafeAreaInsets } from \"../safearea/SafeAreaHelpers\";\r\n\r\n// cSpell:ignore safearea\r\n\r\n/* eslint-disable deprecation/deprecation */\r\n\r\n/** Private function to set up sync event monitoring of backstage items */\r\nfunction useBackstageItemSyncEffect(itemsManager: BackstageItemsManager, syncIdsOfInterest: string[]) {\r\n const isInitialMount = React.useRef(true);\r\n\r\n React.useEffect(() => {\r\n const handleSyncUiEvent = (args: UiSyncEventArgs) => {\r\n if (0 === syncIdsOfInterest.length)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (syncIdsOfInterest.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // process each item that has interest\r\n itemsManager.refreshAffectedItems(args.eventIds);\r\n }\r\n };\r\n\r\n if (isInitialMount.current) {\r\n isInitialMount.current = false;\r\n // initialize the display state of any items with syncIds/condition defined\r\n itemsManager.refreshAffectedItems(new Set(syncIdsOfInterest));\r\n }\r\n\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(handleSyncUiEvent);\r\n return () => {\r\n SyncUiEventDispatcher.onSyncUiEvent.removeListener(handleSyncUiEvent);\r\n };\r\n }, [itemsManager, itemsManager.items, syncIdsOfInterest]);\r\n}\r\n\r\n/** local function to combine items from Stage and from Extensions */\r\nfunction combineItems(stageItems: ReadonlyArray<BackstageItem>, addonItems: ReadonlyArray<BackstageItem>, hideSoloStageEntry: boolean) {\r\n let items: BackstageItem[] = [];\r\n if (stageItems.length) {\r\n // Walk through each and ensure no duplicate ids are added.\r\n stageItems.forEach((srcItem) => {\r\n if (-1 === items.findIndex((item) => item.id === srcItem.id)) {\r\n items.push(srcItem);\r\n }\r\n });\r\n }\r\n if (addonItems.length) {\r\n // Walk through each and ensure no duplicate ids are added.\r\n addonItems.forEach((srcItem) => {\r\n if (-1 === items.findIndex((item) => item.id === srcItem.id)) {\r\n items.push(srcItem);\r\n }\r\n });\r\n }\r\n\r\n if (hideSoloStageEntry) {\r\n // per user request don't show stage launcher if only one stage is available\r\n const numberOfFrontstageItems = items.reduce((accumulator, item) => accumulator + (isStageLauncher(item) ? 1 : 0), 0);\r\n if (1 === numberOfFrontstageItems)\r\n items = items.filter((item) => !isStageLauncher(item));\r\n }\r\n\r\n return items;\r\n}\r\n\r\n/** @internal */\r\nexport type GroupedItems = ReadonlyArray<ReadonlyArray<BackstageItem>>;\r\n\r\n/** @internal */\r\nexport const useGroupedItems = (items: ReadonlyArray<BackstageItem>): GroupedItems => {\r\n return React.useMemo(() => {\r\n const grouped = items.reduce<GroupedItems>((acc, item) => {\r\n if (ConditionalBooleanValue.getValue(item.isHidden))\r\n return acc;\r\n const groupIndex = acc.findIndex((group) => group[0].groupPriority === item.groupPriority);\r\n if (groupIndex >= 0)\r\n return [\r\n ...acc.slice(0, groupIndex),\r\n [\r\n ...acc[groupIndex],\r\n item,\r\n ],\r\n ...acc.slice(groupIndex + 1),\r\n ];\r\n return [\r\n ...acc,\r\n [\r\n item,\r\n ],\r\n ];\r\n }, []);\r\n const sortedGroups = grouped.reduce<GroupedItems>((acc, group) => {\r\n const sortedGroup = [...group].sort((a, b) => a.itemPriority - b.itemPriority);\r\n return [\r\n ...acc,\r\n sortedGroup,\r\n ];\r\n }, []);\r\n return [...sortedGroups].sort((a, b) => a[0].groupPriority - b[0].groupPriority);\r\n }, [items]);\r\n};\r\n\r\n/** Props of [[BackstageComposer]] component.\r\n * @public\r\n */\r\nexport interface BackstageComposerProps extends CommonProps {\r\n /** React node for an optional header item */\r\n readonly header?: React.ReactNode;\r\n /** Indicates whether to place an overlay over the frontstage when the backstage is displayed */\r\n readonly showOverlay?: boolean;\r\n /** List of static backstage items to show. Can be undefined in UiItemsProviders are used to populate backstage. */\r\n readonly items?: BackstageItem[];\r\n /** If true and only one stage launcher item is found, do not show entry in backstage */\r\n readonly hideSoloStageEntry?: boolean;\r\n}\r\n\r\n/** Backstage component composed from [[UiFramework.backstage]] items.\r\n * @public\r\n */\r\nexport function BackstageComposer(props: BackstageComposerProps) {\r\n const [defaultItemsManager, setDefaultItemsManager] = React.useState(new BackstageItemsManager(props.items));\r\n const initialItems = React.useRef(props.items);\r\n\r\n React.useEffect(() => {\r\n if (initialItems.current !== props.items) {\r\n initialItems.current = props.items;\r\n setDefaultItemsManager(new BackstageItemsManager(props.items));\r\n }\r\n }, [props.items]);\r\n\r\n const manager = useBackstageManager();\r\n const isOpen = useIsBackstageOpen(manager);\r\n const safeAreaInsets = React.useContext(SafeAreaContext);\r\n const handleClose = React.useCallback(() => {\r\n manager.close();\r\n }, [manager]);\r\n\r\n const defaultItems = useDefaultBackstageItems(defaultItemsManager);\r\n const syncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(defaultItems), [defaultItems]);\r\n useBackstageItemSyncEffect(defaultItemsManager, syncIdsOfInterest);\r\n\r\n const [addonItemsManager] = React.useState(new BackstageItemsManager());\r\n const addonItems = useUiItemsProviderBackstageItems(addonItemsManager);\r\n const addonSyncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(addonItems), [addonItems]);\r\n useBackstageItemSyncEffect(addonItemsManager, addonSyncIdsOfInterest);\r\n\r\n const combinedBackstageItems = React.useMemo(() => combineItems(defaultItems, addonItems, !!props.hideSoloStageEntry), [defaultItems, addonItems, props.hideSoloStageEntry]);\r\n const groups = useGroupedItems(combinedBackstageItems);\r\n\r\n return (\r\n <NZ_Backstage\r\n className={props.className}\r\n header={props.header}\r\n isOpen={isOpen}\r\n onClose={handleClose}\r\n safeAreaInsets={toLayoutSafeAreaInsets(safeAreaInsets)}\r\n showOverlay={props.showOverlay}\r\n style={props.style}\r\n >\r\n {groups.map((group, groupIndex) => (\r\n group.map((item, itemIndex) => {\r\n const composerItem = (\r\n <BackstageComposerItem\r\n item={item}\r\n key={item.id}\r\n />\r\n );\r\n return itemIndex === 0 && groupIndex > 0 ? (\r\n <React.Fragment key={groupIndex}>\r\n <BackstageSeparator />\r\n {composerItem}\r\n </React.Fragment>\r\n ) : composerItem;\r\n })\r\n ))}\r\n </NZ_Backstage>\r\n );\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"BackstageComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposer.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 Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { ConditionalBooleanValue } from \"@itwin/appui-abstract\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { BackstageSeparator, Backstage as NZ_Backstage } from \"@itwin/appui-layout-react\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { BackstageComposerItem } from \"./BackstageComposerItem\";\r\nimport { useBackstageManager, useIsBackstageOpen } from \"./BackstageManager\";\r\nimport { useDefaultBackstageItems } from \"./useDefaultBackstageItems\";\r\nimport { useUiItemsProviderBackstageItems } from \"./useUiItemsProviderBackstageItems\";\r\nimport { toLayoutSafeAreaInsets } from \"../safearea/SafeAreaHelpers\";\r\nimport { BackstageItem, isBackstageStageLauncher } from \"./BackstageItem\";\r\nimport { BackstageItemsManager } from \"./BackstageItemsManager\";\r\n\r\n// cSpell:ignore safearea\r\n\r\n/** Private function to set up sync event monitoring of backstage items */\r\nfunction useBackstageItemSyncEffect(itemsManager: BackstageItemsManager, syncIdsOfInterest: string[]) {\r\n const isInitialMount = React.useRef(true);\r\n\r\n React.useEffect(() => {\r\n if (isInitialMount.current) {\r\n isInitialMount.current = false;\r\n // initialize the display state of any items with syncIds/condition defined\r\n itemsManager.refreshAffectedItems(new Set(syncIdsOfInterest));\r\n }\r\n\r\n return SyncUiEventDispatcher.onSyncUiEvent.addListener((args) => {\r\n if (0 === syncIdsOfInterest.length)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (syncIdsOfInterest.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // process each item that has interest\r\n itemsManager.refreshAffectedItems(args.eventIds);\r\n }\r\n });\r\n }, [itemsManager, itemsManager.items, syncIdsOfInterest]);\r\n}\r\n\r\n/** local function to combine items from Stage and from Extensions */\r\nfunction combineItems(stageItems: ReadonlyArray<BackstageItem>, addonItems: ReadonlyArray<BackstageItem>, hideSoloStageEntry: boolean): ReadonlyArray<BackstageItem> {\r\n let items: Array<BackstageItem> = [];\r\n if (stageItems.length) {\r\n // Walk through each and ensure no duplicate ids are added.\r\n stageItems.forEach((srcItem) => {\r\n if (-1 === items.findIndex((item) => item.id === srcItem.id)) {\r\n items.push(srcItem);\r\n }\r\n });\r\n }\r\n if (addonItems.length) {\r\n // Walk through each and ensure no duplicate ids are added.\r\n addonItems.forEach((srcItem) => {\r\n if (-1 === items.findIndex((item) => item.id === srcItem.id)) {\r\n items.push(srcItem);\r\n }\r\n });\r\n }\r\n\r\n if (hideSoloStageEntry) {\r\n // per user request don't show stage launcher if only one stage is available\r\n const numberOfFrontstageItems = items.reduce((accumulator, item) => accumulator + (isBackstageStageLauncher(item) ? 1 : 0), 0);\r\n if (1 === numberOfFrontstageItems)\r\n items = items.filter((item) => !isBackstageStageLauncher(item));\r\n }\r\n\r\n return items;\r\n}\r\n\r\n/** @internal */\r\nexport type GroupedItems = ReadonlyArray<ReadonlyArray<BackstageItem>>;\r\n\r\n/** @internal */\r\nexport const useGroupedItems = (items: ReadonlyArray<BackstageItem>): GroupedItems => {\r\n return React.useMemo(() => {\r\n const grouped = items.reduce<GroupedItems>((acc, item) => {\r\n if (ConditionalBooleanValue.getValue(item.isHidden))\r\n return acc;\r\n const groupIndex = acc.findIndex((group) => group[0].groupPriority === item.groupPriority);\r\n if (groupIndex >= 0)\r\n return [\r\n ...acc.slice(0, groupIndex),\r\n [\r\n ...acc[groupIndex],\r\n item,\r\n ],\r\n ...acc.slice(groupIndex + 1),\r\n ];\r\n return [\r\n ...acc,\r\n [\r\n item,\r\n ],\r\n ];\r\n }, []);\r\n const sortedGroups = grouped.reduce<GroupedItems>((acc, group) => {\r\n const sortedGroup = [...group].sort((a, b) => a.itemPriority - b.itemPriority);\r\n return [\r\n ...acc,\r\n sortedGroup,\r\n ];\r\n }, []);\r\n return [...sortedGroups].sort((a, b) => a[0].groupPriority - b[0].groupPriority);\r\n }, [items]);\r\n};\r\n\r\n/** Props of [[BackstageComposer]] component.\r\n * @public\r\n */\r\nexport interface BackstageComposerProps extends CommonProps {\r\n /** React node for an optional header item */\r\n readonly header?: React.ReactNode;\r\n /** Indicates whether to place an overlay over the frontstage when the backstage is displayed */\r\n readonly showOverlay?: boolean;\r\n /** List of static backstage items to show. Can be undefined in UiItemsProviders are used to populate backstage. */\r\n readonly items?: BackstageItem[];\r\n /** If true and only one stage launcher item is found, do not show entry in backstage */\r\n readonly hideSoloStageEntry?: boolean;\r\n}\r\n\r\n/** Backstage component composed from [[UiFramework.backstage]] items.\r\n * @public\r\n */\r\nexport function BackstageComposer(props: BackstageComposerProps) {\r\n const [defaultItemsManager, setDefaultItemsManager] = React.useState(new BackstageItemsManager(props.items));\r\n const initialItems = React.useRef(props.items);\r\n\r\n React.useEffect(() => {\r\n if (initialItems.current !== props.items) {\r\n initialItems.current = props.items;\r\n setDefaultItemsManager(new BackstageItemsManager(props.items));\r\n }\r\n }, [props.items]);\r\n\r\n const manager = useBackstageManager();\r\n const isOpen = useIsBackstageOpen(manager);\r\n const safeAreaInsets = React.useContext(SafeAreaContext);\r\n const handleClose = React.useCallback(() => {\r\n manager.close();\r\n }, [manager]);\r\n\r\n const defaultItems = useDefaultBackstageItems(defaultItemsManager);\r\n const syncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(defaultItems), [defaultItems]);\r\n useBackstageItemSyncEffect(defaultItemsManager, syncIdsOfInterest);\r\n\r\n const [addonItemsManager] = React.useState(new BackstageItemsManager());\r\n const addonItems = useUiItemsProviderBackstageItems(addonItemsManager);\r\n const addonSyncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(addonItems), [addonItems]);\r\n useBackstageItemSyncEffect(addonItemsManager, addonSyncIdsOfInterest);\r\n\r\n const combinedBackstageItems = React.useMemo(() => combineItems(defaultItems, addonItems, !!props.hideSoloStageEntry), [defaultItems, addonItems, props.hideSoloStageEntry]);\r\n const groups = useGroupedItems(combinedBackstageItems);\r\n return (\r\n <NZ_Backstage\r\n className={props.className}\r\n header={props.header}\r\n isOpen={isOpen}\r\n onClose={handleClose}\r\n safeAreaInsets={toLayoutSafeAreaInsets(safeAreaInsets)}\r\n showOverlay={props.showOverlay}\r\n style={props.style}\r\n >\r\n {groups.map((group, groupIndex) => (\r\n group.map((item, itemIndex) => {\r\n const composerItem = (\r\n <BackstageComposerItem\r\n item={item}\r\n key={item.id}\r\n />\r\n );\r\n return itemIndex === 0 && groupIndex > 0 ? (\r\n <React.Fragment key={groupIndex}>\r\n <BackstageSeparator />\r\n {composerItem}\r\n </React.Fragment>\r\n ) : composerItem;\r\n })\r\n ))}\r\n </NZ_Backstage>\r\n );\r\n}\r\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @module Backstage
|
|
3
3
|
*/
|
|
4
4
|
/// <reference types="react" />
|
|
5
|
-
import { BackstageActionItem, BackstageItem, BackstageStageLauncher } from "
|
|
5
|
+
import { BackstageActionItem, BackstageItem, BackstageStageLauncher } from "./BackstageItem";
|
|
6
6
|
/** @internal */
|
|
7
7
|
export interface BackstageComposerActionItemProps {
|
|
8
8
|
readonly item: BackstageActionItem;
|
|
@@ -21,7 +21,6 @@ export declare function BackstageComposerStageLauncher({ item }: BackstageCompos
|
|
|
21
21
|
export interface BackstageComposerItemProps {
|
|
22
22
|
/** Backstage item to render */
|
|
23
23
|
readonly item: BackstageItem;
|
|
24
|
-
readonly providerId?: string;
|
|
25
24
|
}
|
|
26
25
|
/** Item of [[BackstageComposer]].
|
|
27
26
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackstageComposerItem.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposerItem.tsx"],"names":[],"mappings":"AAIA;;GAEG;;
|
|
1
|
+
{"version":3,"file":"BackstageComposerItem.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposerItem.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAUH,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,sBAAsB,EAA4B,MAAM,iBAAiB,CAAC;AAGvH,gBAAgB;AAChB,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;CACpC;AAED,gBAAgB;AAChB,wBAAgB,2BAA2B,CAAC,EAAE,IAAI,EAAE,EAAE,gCAAgC,eAsBrF;AAED,gBAAgB;AAChB,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;CACvC;AAED,gBAAgB;AAChB,wBAAgB,8BAA8B,CAAC,EAAE,IAAI,EAAE,EAAE,mCAAmC,eA0B3F;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,IAAI,EAAE,EAAE,0BAA0B,eAazE"}
|
|
@@ -16,15 +16,16 @@ const appui_layout_react_1 = require("@itwin/appui-layout-react");
|
|
|
16
16
|
const BackstageManager_1 = require("./BackstageManager");
|
|
17
17
|
const UiFramework_1 = require("../UiFramework");
|
|
18
18
|
const FrontstageDef_1 = require("../frontstage/FrontstageDef");
|
|
19
|
+
const BackstageItem_1 = require("./BackstageItem");
|
|
20
|
+
const isProviderItem_1 = require("../ui-items-provider/isProviderItem");
|
|
19
21
|
/** @internal */
|
|
20
22
|
function BackstageComposerActionItem({ item }) {
|
|
21
23
|
const manager = (0, BackstageManager_1.useBackstageManager)();
|
|
22
|
-
const iconSpec = core_react_1.IconHelper.getIconReactNode(item.icon, item.internalData);
|
|
23
24
|
const handleClick = React.useCallback(() => {
|
|
24
25
|
manager.close();
|
|
25
26
|
item.execute();
|
|
26
27
|
}, [manager, item]);
|
|
27
|
-
return (React.createElement(appui_layout_react_1.BackstageItem, { itemId: item.id, providerId: item.providerId, itemPriority: item.itemPriority, groupPriority: item.groupPriority, icon: React.createElement(core_react_1.Icon, { iconSpec:
|
|
28
|
+
return (React.createElement(appui_layout_react_1.BackstageItem, { itemId: item.id, providerId: (0, isProviderItem_1.isProviderItem)(item) ? item.providerId : undefined, itemPriority: item.itemPriority, groupPriority: item.groupPriority, icon: React.createElement(core_react_1.Icon, { iconSpec: item.icon }), isActive: appui_abstract_1.ConditionalBooleanValue.getValue(item.isActive), isDisabled: appui_abstract_1.ConditionalBooleanValue.getValue(item.isDisabled), onClick: handleClick, subtitle: appui_abstract_1.ConditionalStringValue.getValue(item.subtitle), badge: core_react_1.BadgeUtilities.getComponentForBadgeType(item.badge) }, appui_abstract_1.ConditionalStringValue.getValue(item.label)));
|
|
28
29
|
}
|
|
29
30
|
exports.BackstageComposerActionItem = BackstageComposerActionItem;
|
|
30
31
|
/** @internal */
|
|
@@ -39,15 +40,14 @@ function BackstageComposerStageLauncher({ item }) {
|
|
|
39
40
|
}, [manager, item.stageId]);
|
|
40
41
|
const activeFrontstageId = (0, FrontstageDef_1.useActiveFrontstageId)();
|
|
41
42
|
const isActive = appui_abstract_1.ConditionalBooleanValue.getValue((_a = item.isActive) !== null && _a !== void 0 ? _a : item.stageId === activeFrontstageId);
|
|
42
|
-
|
|
43
|
-
return (React.createElement(appui_layout_react_1.BackstageItem, { itemId: item.id, providerId: item.providerId, itemPriority: item.itemPriority, groupPriority: item.groupPriority, icon: React.createElement(core_react_1.Icon, { iconSpec: iconSpec }), isActive: isActive, isDisabled: appui_abstract_1.ConditionalBooleanValue.getValue(item.isDisabled), onClick: handleClick, subtitle: appui_abstract_1.ConditionalStringValue.getValue(item.subtitle), badge: core_react_1.BadgeUtilities.getComponentForBadgeType(item.badgeType) }, appui_abstract_1.ConditionalStringValue.getValue(item.label)));
|
|
43
|
+
return (React.createElement(appui_layout_react_1.BackstageItem, { itemId: item.id, providerId: (0, isProviderItem_1.isProviderItem)(item) ? item.providerId : undefined, itemPriority: item.itemPriority, groupPriority: item.groupPriority, icon: React.createElement(core_react_1.Icon, { iconSpec: item.icon }), isActive: isActive, isDisabled: appui_abstract_1.ConditionalBooleanValue.getValue(item.isDisabled), onClick: handleClick, subtitle: appui_abstract_1.ConditionalStringValue.getValue(item.subtitle), badge: core_react_1.BadgeUtilities.getComponentForBadgeType(item.badge) }, appui_abstract_1.ConditionalStringValue.getValue(item.label)));
|
|
44
44
|
}
|
|
45
45
|
exports.BackstageComposerStageLauncher = BackstageComposerStageLauncher;
|
|
46
46
|
/** Item of [[BackstageComposer]].
|
|
47
47
|
* @internal
|
|
48
48
|
*/
|
|
49
49
|
function BackstageComposerItem({ item }) {
|
|
50
|
-
if ((0,
|
|
50
|
+
if ((0, BackstageItem_1.isBackstageStageLauncher)(item)) {
|
|
51
51
|
return (React.createElement(BackstageComposerStageLauncher, { item: item }));
|
|
52
52
|
}
|
|
53
53
|
return (React.createElement(BackstageComposerActionItem, { item: item }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackstageComposerItem.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposerItem.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,sDAA6C;AAC7C,
|
|
1
|
+
{"version":3,"file":"BackstageComposerItem.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposerItem.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 Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { ConditionalBooleanValue, ConditionalStringValue } from \"@itwin/appui-abstract\";\r\nimport { BadgeUtilities, Icon } from \"@itwin/core-react\";\r\nimport { BackstageItem as NZ_BackstageItem } from \"@itwin/appui-layout-react\";\r\nimport { useBackstageManager } from \"./BackstageManager\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { useActiveFrontstageId } from \"../frontstage/FrontstageDef\";\r\nimport { BackstageActionItem, BackstageItem, BackstageStageLauncher, isBackstageStageLauncher } from \"./BackstageItem\";\r\nimport { isProviderItem } from \"../ui-items-provider/isProviderItem\";\r\n\r\n/** @internal */\r\nexport interface BackstageComposerActionItemProps {\r\n readonly item: BackstageActionItem;\r\n}\r\n\r\n/** @internal */\r\nexport function BackstageComposerActionItem({ item }: BackstageComposerActionItemProps) {\r\n const manager = useBackstageManager();\r\n const handleClick = React.useCallback(() => {\r\n manager.close();\r\n item.execute();\r\n }, [manager, item]);\r\n return (\r\n <NZ_BackstageItem\r\n itemId={item.id}\r\n providerId={isProviderItem(item) ? item.providerId : undefined}\r\n itemPriority={item.itemPriority}\r\n groupPriority={item.groupPriority}\r\n icon={<Icon iconSpec={item.icon} />}\r\n isActive={ConditionalBooleanValue.getValue(item.isActive)}\r\n isDisabled={ConditionalBooleanValue.getValue(item.isDisabled)}\r\n onClick={handleClick}\r\n subtitle={ConditionalStringValue.getValue(item.subtitle)}\r\n badge={BadgeUtilities.getComponentForBadgeType(item.badge)}\r\n >\r\n {ConditionalStringValue.getValue(item.label)}\r\n </NZ_BackstageItem>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport interface BackstageComposerStageLauncherProps {\r\n readonly item: BackstageStageLauncher;\r\n}\r\n\r\n/** @internal */\r\nexport function BackstageComposerStageLauncher({ item }: BackstageComposerStageLauncherProps) {\r\n const manager = useBackstageManager();\r\n const handleClick = React.useCallback(() => {\r\n manager.close();\r\n if (!UiFramework.frontstages.hasFrontstage(item.stageId))\r\n return Logger.logError(\"BackstageComposerStageLauncher\", `Frontstage with id '${item.stageId}' not found`);\r\n void UiFramework.frontstages.setActiveFrontstage(item.stageId);\r\n }, [manager, item.stageId]);\r\n const activeFrontstageId = useActiveFrontstageId();\r\n const isActive = ConditionalBooleanValue.getValue(item.isActive ?? item.stageId === activeFrontstageId);\r\n return (\r\n <NZ_BackstageItem\r\n itemId={item.id}\r\n providerId={isProviderItem(item) ? item.providerId : undefined}\r\n itemPriority={item.itemPriority}\r\n groupPriority={item.groupPriority}\r\n icon={<Icon iconSpec={item.icon} />}\r\n isActive={isActive}\r\n isDisabled={ConditionalBooleanValue.getValue(item.isDisabled)}\r\n onClick={handleClick}\r\n subtitle={ConditionalStringValue.getValue(item.subtitle)}\r\n badge={BadgeUtilities.getComponentForBadgeType(item.badge)}\r\n >\r\n {ConditionalStringValue.getValue(item.label)}\r\n </NZ_BackstageItem>\r\n );\r\n}\r\n\r\n/** Props of [[BackstageComposerItem]] component.\r\n * @internal\r\n */\r\nexport interface BackstageComposerItemProps {\r\n /** Backstage item to render */\r\n readonly item: BackstageItem;\r\n}\r\n\r\n/** Item of [[BackstageComposer]].\r\n * @internal\r\n */\r\nexport function BackstageComposerItem({ item }: BackstageComposerItemProps) {\r\n if (isBackstageStageLauncher(item)) {\r\n return (\r\n <BackstageComposerStageLauncher\r\n item={item}\r\n />\r\n );\r\n }\r\n return (\r\n <BackstageComposerActionItem\r\n item={item}\r\n />\r\n );\r\n}\r\n"]}
|
|
@@ -1,29 +1,60 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module Backstage
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { BadgeType, ConditionalBooleanValue, ConditionalStringValue } from "@itwin/appui-abstract";
|
|
5
|
+
import { IconSpec } from "@itwin/core-react";
|
|
5
6
|
/** Describes the data needed to insert a button into the backstage menu.
|
|
6
|
-
* @
|
|
7
|
+
* @public
|
|
7
8
|
*/
|
|
8
|
-
export
|
|
9
|
+
export interface CommonBackstageItem {
|
|
10
|
+
/** Required unique id of the item. To ensure uniqueness it is suggested that a namespace prefix of the extension name be used. */
|
|
11
|
+
readonly id: string;
|
|
12
|
+
/** Describes badge. Renders no badge if not specified. */
|
|
13
|
+
readonly badge?: BadgeType;
|
|
14
|
+
/** Specifies the item's grouping value. Items are sorted by group and then item priority. When
|
|
15
|
+
* group priority changes a separator is inserted. It is recommended using values 10 through 100, incrementing by 10. This
|
|
16
|
+
* allows extensions enough gaps to insert their own groups.
|
|
17
|
+
*/
|
|
18
|
+
readonly groupPriority: number;
|
|
19
|
+
/** Name of icon WebFont entry or if specifying an imported SVG symbol use "webSvg:" prefix to imported symbol Id. */
|
|
20
|
+
readonly icon?: IconSpec;
|
|
21
|
+
/** Describes if the item is visible or hidden. The default is for the item to be visible. */
|
|
22
|
+
readonly isHidden?: boolean | ConditionalBooleanValue;
|
|
23
|
+
/** Describes if the item is enabled or disabled. The default is for the item to be enabled. */
|
|
24
|
+
readonly isDisabled?: boolean | ConditionalBooleanValue;
|
|
25
|
+
/** Priority within a group (recommend using values 1 through 100). */
|
|
26
|
+
readonly itemPriority: number;
|
|
27
|
+
/** Label. */
|
|
28
|
+
readonly label: string | ConditionalStringValue;
|
|
29
|
+
/** Subtitle. */
|
|
30
|
+
readonly subtitle?: string | ConditionalStringValue;
|
|
31
|
+
/** Tooltip. */
|
|
32
|
+
readonly tooltip?: string | ConditionalStringValue;
|
|
33
|
+
/** Describes if the item is active. The default is for the item to be active if stageId matches activeFrontstageId */
|
|
34
|
+
readonly isActive?: boolean | ConditionalBooleanValue;
|
|
35
|
+
}
|
|
9
36
|
/** Describes the data needed to insert an action button into the backstage menu.
|
|
10
|
-
* @
|
|
37
|
+
* @public
|
|
11
38
|
*/
|
|
12
|
-
export
|
|
39
|
+
export interface BackstageActionItem extends CommonBackstageItem {
|
|
40
|
+
readonly execute: () => void;
|
|
41
|
+
}
|
|
13
42
|
/** Describes the data needed to insert an action button into the backstage menu.
|
|
14
|
-
* @
|
|
43
|
+
* @public
|
|
15
44
|
*/
|
|
16
|
-
export
|
|
45
|
+
export interface BackstageStageLauncher extends CommonBackstageItem {
|
|
46
|
+
readonly stageId: string;
|
|
47
|
+
}
|
|
17
48
|
/** Describes the data needed to insert a button into the backstage menu.
|
|
18
|
-
* @public
|
|
49
|
+
* @public
|
|
19
50
|
*/
|
|
20
|
-
export declare type BackstageItem =
|
|
51
|
+
export declare type BackstageItem = BackstageActionItem | BackstageStageLauncher;
|
|
21
52
|
/** BackstageActionItem type guard.
|
|
22
|
-
* @
|
|
53
|
+
* @public
|
|
23
54
|
*/
|
|
24
|
-
export declare function isBackstageActionItem(item: BackstageItem): item is
|
|
55
|
+
export declare function isBackstageActionItem(item: BackstageItem): item is BackstageActionItem;
|
|
25
56
|
/** BackstageStageLauncher type guard.
|
|
26
|
-
* @
|
|
57
|
+
* @public
|
|
27
58
|
*/
|
|
28
|
-
export declare function isBackstageStageLauncher(item: BackstageItem): item is
|
|
59
|
+
export declare function isBackstageStageLauncher(item: BackstageItem): item is BackstageStageLauncher;
|
|
29
60
|
//# sourceMappingURL=BackstageItem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackstageItem.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItem.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"BackstageItem.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItem.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kIAAkI;IAClI,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,qHAAqH;IACrH,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IACtD,+FAA+F;IAC/F,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IACxD,sEAAsE;IACtE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,aAAa;IACb,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,sBAAsB,CAAC;IAChD,gBAAgB;IAChB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,sBAAsB,CAAC;IACpD,eAAe;IACf,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,sBAAsB,CAAC;IACnD,sHAAsH;IACtH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,oBAAY,aAAa,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAEzE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,IAAI,mBAAmB,CAEtF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,IAAI,sBAAsB,CAE5F"}
|
|
@@ -8,19 +8,18 @@
|
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.isBackstageStageLauncher = exports.isBackstageActionItem = void 0;
|
|
11
|
-
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
12
11
|
/** BackstageActionItem type guard.
|
|
13
|
-
* @
|
|
12
|
+
* @public
|
|
14
13
|
*/
|
|
15
14
|
function isBackstageActionItem(item) {
|
|
16
|
-
return
|
|
15
|
+
return "execute" in item;
|
|
17
16
|
}
|
|
18
17
|
exports.isBackstageActionItem = isBackstageActionItem;
|
|
19
18
|
/** BackstageStageLauncher type guard.
|
|
20
|
-
* @
|
|
19
|
+
* @public
|
|
21
20
|
*/
|
|
22
21
|
function isBackstageStageLauncher(item) {
|
|
23
|
-
return
|
|
22
|
+
return "stageId" in item;
|
|
24
23
|
}
|
|
25
24
|
exports.isBackstageStageLauncher = isBackstageStageLauncher;
|
|
26
25
|
//# sourceMappingURL=BackstageItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackstageItem.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;
|
|
1
|
+
{"version":3,"file":"BackstageItem.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAuDH;;GAEG;AACH,SAAgB,qBAAqB,CAAC,IAAmB;IACvD,OAAO,SAAS,IAAI,IAAI,CAAC;AAC3B,CAAC;AAFD,sDAEC;AAED;;GAEG;AACH,SAAgB,wBAAwB,CAAC,IAAmB;IAC1D,OAAO,SAAS,IAAI,IAAI,CAAC;AAC3B,CAAC;AAFD,4DAEC","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 Backstage\r\n */\r\n\r\nimport { BadgeType, ConditionalBooleanValue, ConditionalStringValue } from \"@itwin/appui-abstract\";\r\nimport { IconSpec } from \"@itwin/core-react\";\r\n\r\n/** Describes the data needed to insert a button into the backstage menu.\r\n * @public\r\n */\r\nexport interface CommonBackstageItem {\r\n /** Required unique id of the item. To ensure uniqueness it is suggested that a namespace prefix of the extension name be used. */\r\n readonly id: string;\r\n /** Describes badge. Renders no badge if not specified. */\r\n readonly badge?: BadgeType;\r\n /** Specifies the item's grouping value. Items are sorted by group and then item priority. When\r\n * group priority changes a separator is inserted. It is recommended using values 10 through 100, incrementing by 10. This\r\n * allows extensions enough gaps to insert their own groups.\r\n */\r\n readonly groupPriority: number;\r\n /** Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id. */\r\n readonly icon?: IconSpec;\r\n /** Describes if the item is visible or hidden. The default is for the item to be visible. */\r\n readonly isHidden?: boolean | ConditionalBooleanValue;\r\n /** Describes if the item is enabled or disabled. The default is for the item to be enabled. */\r\n readonly isDisabled?: boolean | ConditionalBooleanValue;\r\n /** Priority within a group (recommend using values 1 through 100). */\r\n readonly itemPriority: number;\r\n /** Label. */\r\n readonly label: string | ConditionalStringValue;\r\n /** Subtitle. */\r\n readonly subtitle?: string | ConditionalStringValue;\r\n /** Tooltip. */\r\n readonly tooltip?: string | ConditionalStringValue;\r\n /** Describes if the item is active. The default is for the item to be active if stageId matches activeFrontstageId */\r\n readonly isActive?: boolean | ConditionalBooleanValue;\r\n}\r\n\r\n/** Describes the data needed to insert an action button into the backstage menu.\r\n * @public\r\n */\r\nexport interface BackstageActionItem extends CommonBackstageItem {\r\n readonly execute: () => void;\r\n}\r\n\r\n/** Describes the data needed to insert an action button into the backstage menu.\r\n * @public\r\n */\r\nexport interface BackstageStageLauncher extends CommonBackstageItem {\r\n readonly stageId: string;\r\n}\r\n\r\n/** Describes the data needed to insert a button into the backstage menu.\r\n * @public\r\n */\r\nexport type BackstageItem = BackstageActionItem | BackstageStageLauncher;\r\n\r\n/** BackstageActionItem type guard.\r\n * @public\r\n */\r\nexport function isBackstageActionItem(item: BackstageItem): item is BackstageActionItem {\r\n return \"execute\" in item;\r\n}\r\n\r\n/** BackstageStageLauncher type guard.\r\n * @public\r\n */\r\nexport function isBackstageStageLauncher(item: BackstageItem): item is BackstageStageLauncher {\r\n return \"stageId\" in item;\r\n}\r\n"]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Backstage
|
|
3
|
+
*/
|
|
4
|
+
import { BeEvent } from "@itwin/core-bentley";
|
|
5
|
+
import { BackstageItem } from "./BackstageItem";
|
|
6
|
+
/** Arguments of [[BackstageItemsManager.onChanged]] event.
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export interface BackstageItemsChangedArgs {
|
|
10
|
+
readonly items: ReadonlyArray<BackstageItem>;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Controls backstage items.
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export declare class BackstageItemsManager {
|
|
17
|
+
private _items;
|
|
18
|
+
constructor(items?: ReadonlyArray<BackstageItem>);
|
|
19
|
+
private loadItemsInternal;
|
|
20
|
+
/** load items but do not fire onItemsChanged
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
loadItems(items: ReadonlyArray<BackstageItem>): void;
|
|
24
|
+
/** Event raised when backstage items are changed.
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
readonly onItemsChanged: BeEvent<(args: BackstageItemsChangedArgs) => void>;
|
|
28
|
+
get items(): ReadonlyArray<BackstageItem>;
|
|
29
|
+
set items(items: ReadonlyArray<BackstageItem>);
|
|
30
|
+
/** @internal */
|
|
31
|
+
add(itemOrItems: BackstageItem | ReadonlyArray<BackstageItem>): void;
|
|
32
|
+
/** @internal */
|
|
33
|
+
remove(itemIdOrItemIds: BackstageItem["id"] | ReadonlyArray<BackstageItem["id"]>): void;
|
|
34
|
+
/** @internal */
|
|
35
|
+
static getSyncIdsOfInterest(items: readonly BackstageItem[]): string[];
|
|
36
|
+
private internalRefreshAffectedItems;
|
|
37
|
+
refreshAffectedItems(eventIds: Set<string>): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=BackstageItemsManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackstageItemsManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItemsManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CAC9C;AAED;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,MAAM,CAAoC;gBAEtC,KAAK,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC;IAMhD,OAAO,CAAC,iBAAiB;IAiBzB;;OAEG;IACI,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC;IAIpD;;OAEG;IACH,SAAgB,cAAc,iBAAsB,yBAAyB,KAAK,IAAI,EAAI;IAE1F,IAAW,KAAK,IAAI,aAAa,CAAC,aAAa,CAAC,CAE/C;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,EAInD;IAED,gBAAgB;IACT,GAAG,CAAC,WAAW,EAAE,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC;IAiBpE,gBAAgB;IACT,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAOvF,gBAAgB;WACF,oBAAoB,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,EAAE;IAc7E,OAAO,CAAC,4BAA4B;IA6B7B,oBAAoB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC;CAWlD"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*---------------------------------------------------------------------------------------------
|
|
3
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
+
*--------------------------------------------------------------------------------------------*/
|
|
6
|
+
/** @packageDocumentation
|
|
7
|
+
* @module Backstage
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.BackstageItemsManager = void 0;
|
|
11
|
+
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
12
|
+
const core_bentley_1 = require("@itwin/core-bentley");
|
|
13
|
+
/**
|
|
14
|
+
* Controls backstage items.
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
class BackstageItemsManager {
|
|
18
|
+
constructor(items) {
|
|
19
|
+
this._items = [];
|
|
20
|
+
/** Event raised when backstage items are changed.
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
this.onItemsChanged = new core_bentley_1.BeEvent();
|
|
24
|
+
// istanbul ignore else
|
|
25
|
+
if (items)
|
|
26
|
+
this.loadItemsInternal(items, true, false);
|
|
27
|
+
}
|
|
28
|
+
loadItemsInternal(items, processConditions, sendItemChanged) {
|
|
29
|
+
if (processConditions && items) {
|
|
30
|
+
const eventIds = BackstageItemsManager.getSyncIdsOfInterest(items);
|
|
31
|
+
if (0 !== eventIds.length) {
|
|
32
|
+
const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(items, new Set(eventIds));
|
|
33
|
+
// istanbul ignore else
|
|
34
|
+
if (itemsUpdated)
|
|
35
|
+
items = updatedItems;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
this._items = items;
|
|
39
|
+
if (sendItemChanged)
|
|
40
|
+
this.onItemsChanged.raiseEvent({ items });
|
|
41
|
+
}
|
|
42
|
+
/** load items but do not fire onItemsChanged
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
loadItems(items) {
|
|
46
|
+
this.loadItemsInternal(items, true, false);
|
|
47
|
+
}
|
|
48
|
+
get items() {
|
|
49
|
+
return this._items;
|
|
50
|
+
}
|
|
51
|
+
set items(items) {
|
|
52
|
+
// istanbul ignore else
|
|
53
|
+
if (items !== this._items)
|
|
54
|
+
this.loadItemsInternal(items, true, true);
|
|
55
|
+
}
|
|
56
|
+
/** @internal */
|
|
57
|
+
add(itemOrItems) {
|
|
58
|
+
let itemsToAdd;
|
|
59
|
+
if (!Array.isArray(itemOrItems))
|
|
60
|
+
itemsToAdd = [itemOrItems];
|
|
61
|
+
else {
|
|
62
|
+
itemsToAdd = itemOrItems.filter((itemToAdd, index) => itemOrItems.findIndex((item) => item.id === itemToAdd.id) === index);
|
|
63
|
+
}
|
|
64
|
+
itemsToAdd = itemsToAdd.filter((itemToAdd) => this._items.find((item) => item.id === itemToAdd.id) === undefined);
|
|
65
|
+
if (itemsToAdd.length === 0)
|
|
66
|
+
return;
|
|
67
|
+
const items = [
|
|
68
|
+
...this._items,
|
|
69
|
+
...itemsToAdd,
|
|
70
|
+
];
|
|
71
|
+
this.items = items;
|
|
72
|
+
}
|
|
73
|
+
/** @internal */
|
|
74
|
+
remove(itemIdOrItemIds) {
|
|
75
|
+
const items = this._items.filter((item) => {
|
|
76
|
+
return Array.isArray(itemIdOrItemIds) ? !itemIdOrItemIds.find((itemId) => itemId === item.id) : item.id !== itemIdOrItemIds;
|
|
77
|
+
});
|
|
78
|
+
this.items = items;
|
|
79
|
+
}
|
|
80
|
+
/** @internal */
|
|
81
|
+
static getSyncIdsOfInterest(items) {
|
|
82
|
+
const eventIds = new Set();
|
|
83
|
+
items.forEach((item) => {
|
|
84
|
+
for (const [, entry] of Object.entries(item)) {
|
|
85
|
+
if (entry instanceof appui_abstract_1.ConditionalBooleanValue) {
|
|
86
|
+
entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
|
|
87
|
+
}
|
|
88
|
+
else /* istanbul ignore else */ if (entry instanceof appui_abstract_1.ConditionalStringValue) {
|
|
89
|
+
entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
return [...eventIds.values()];
|
|
94
|
+
}
|
|
95
|
+
internalRefreshAffectedItems(items, eventIds) {
|
|
96
|
+
// istanbul ignore next
|
|
97
|
+
if (0 === eventIds.size)
|
|
98
|
+
return { itemsUpdated: false, updatedItems: [] };
|
|
99
|
+
let updateRequired = false;
|
|
100
|
+
const newItems = [];
|
|
101
|
+
for (const item of items) {
|
|
102
|
+
const updatedItem = { ...item };
|
|
103
|
+
for (const [, entry] of Object.entries(updatedItem)) {
|
|
104
|
+
if (entry instanceof appui_abstract_1.ConditionalBooleanValue) {
|
|
105
|
+
// istanbul ignore else
|
|
106
|
+
if (appui_abstract_1.ConditionalBooleanValue.refreshValue(entry, eventIds))
|
|
107
|
+
updateRequired = true;
|
|
108
|
+
}
|
|
109
|
+
else /* istanbul ignore else */ if (entry instanceof appui_abstract_1.ConditionalStringValue) {
|
|
110
|
+
// istanbul ignore else
|
|
111
|
+
if (appui_abstract_1.ConditionalStringValue.refreshValue(entry, eventIds))
|
|
112
|
+
updateRequired = true;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
newItems.push(updatedItem);
|
|
116
|
+
}
|
|
117
|
+
return { itemsUpdated: updateRequired, updatedItems: newItems };
|
|
118
|
+
}
|
|
119
|
+
refreshAffectedItems(eventIds) {
|
|
120
|
+
// istanbul ignore next
|
|
121
|
+
if (0 === eventIds.size)
|
|
122
|
+
return;
|
|
123
|
+
const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(this.items, eventIds);
|
|
124
|
+
// istanbul ignore else
|
|
125
|
+
if (itemsUpdated)
|
|
126
|
+
this.loadItemsInternal(updatedItems, false, true);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
exports.BackstageItemsManager = BackstageItemsManager;
|
|
130
|
+
//# sourceMappingURL=BackstageItemsManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackstageItemsManager.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItemsManager.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 Backstage\r\n */\r\n\r\nimport { ConditionalBooleanValue, ConditionalStringValue } from \"@itwin/appui-abstract\";\r\nimport { BeEvent } from \"@itwin/core-bentley\";\r\nimport { BackstageItem } from \"./BackstageItem\";\r\n\r\n/** Arguments of [[BackstageItemsManager.onChanged]] event.\r\n * @internal\r\n */\r\nexport interface BackstageItemsChangedArgs {\r\n readonly items: ReadonlyArray<BackstageItem>;\r\n}\r\n\r\n/**\r\n * Controls backstage items.\r\n * @internal\r\n */\r\nexport class BackstageItemsManager {\r\n private _items: ReadonlyArray<BackstageItem> = [];\r\n\r\n constructor(items?: ReadonlyArray<BackstageItem>) {\r\n // istanbul ignore else\r\n if (items)\r\n this.loadItemsInternal(items, true, false);\r\n }\r\n\r\n private loadItemsInternal(items: ReadonlyArray<BackstageItem>, processConditions: boolean, sendItemChanged: boolean) {\r\n if (processConditions && items) {\r\n const eventIds = BackstageItemsManager.getSyncIdsOfInterest(items);\r\n if (0 !== eventIds.length) {\r\n const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(items, new Set(eventIds));\r\n\r\n // istanbul ignore else\r\n if (itemsUpdated)\r\n items = updatedItems;\r\n }\r\n }\r\n\r\n this._items = items;\r\n if (sendItemChanged)\r\n this.onItemsChanged.raiseEvent({ items });\r\n }\r\n\r\n /** load items but do not fire onItemsChanged\r\n * @internal\r\n */\r\n public loadItems(items: ReadonlyArray<BackstageItem>) {\r\n this.loadItemsInternal(items, true, false);\r\n }\r\n\r\n /** Event raised when backstage items are changed.\r\n * @internal\r\n */\r\n public readonly onItemsChanged = new BeEvent<(args: BackstageItemsChangedArgs) => void>();\r\n\r\n public get items(): ReadonlyArray<BackstageItem> {\r\n return this._items;\r\n }\r\n\r\n public set items(items: ReadonlyArray<BackstageItem>) {\r\n // istanbul ignore else\r\n if (items !== this._items)\r\n this.loadItemsInternal(items, true, true);\r\n }\r\n\r\n /** @internal */\r\n public add(itemOrItems: BackstageItem | ReadonlyArray<BackstageItem>) {\r\n let itemsToAdd;\r\n if (!Array.isArray(itemOrItems))\r\n itemsToAdd = [itemOrItems];\r\n else {\r\n itemsToAdd = itemOrItems.filter((itemToAdd, index) => itemOrItems.findIndex((item) => item.id === itemToAdd.id) === index);\r\n }\r\n itemsToAdd = itemsToAdd.filter((itemToAdd) => this._items.find((item) => item.id === itemToAdd.id) === undefined);\r\n if (itemsToAdd.length === 0)\r\n return;\r\n const items = [\r\n ...this._items,\r\n ...itemsToAdd,\r\n ];\r\n this.items = items;\r\n }\r\n\r\n /** @internal */\r\n public remove(itemIdOrItemIds: BackstageItem[\"id\"] | ReadonlyArray<BackstageItem[\"id\"]>) {\r\n const items = this._items.filter((item) => {\r\n return Array.isArray(itemIdOrItemIds) ? !itemIdOrItemIds.find((itemId) => itemId === item.id) : item.id !== itemIdOrItemIds;\r\n });\r\n this.items = items;\r\n }\r\n\r\n /** @internal */\r\n public static getSyncIdsOfInterest(items: readonly BackstageItem[]): string[] {\r\n const eventIds = new Set<string>();\r\n items.forEach((item) => {\r\n for (const [, entry] of Object.entries(item)) {\r\n if (entry instanceof ConditionalBooleanValue) {\r\n entry.syncEventIds.forEach((eventId: string) => eventIds.add(eventId.toLowerCase()));\r\n } else /* istanbul ignore else */ if (entry instanceof ConditionalStringValue) {\r\n entry.syncEventIds.forEach((eventId: string) => eventIds.add(eventId.toLowerCase()));\r\n }\r\n }\r\n });\r\n return [...eventIds.values()];\r\n }\r\n\r\n private internalRefreshAffectedItems(items: readonly BackstageItem[], eventIds: Set<string>): { itemsUpdated: boolean, updatedItems: BackstageItem[] } {\r\n // istanbul ignore next\r\n if (0 === eventIds.size)\r\n return { itemsUpdated: false, updatedItems: [] };\r\n\r\n let updateRequired = false;\r\n\r\n const newItems: BackstageItem[] = [];\r\n for (const item of items) {\r\n const updatedItem = { ...item };\r\n\r\n for (const [, entry] of Object.entries(updatedItem)) {\r\n if (entry instanceof ConditionalBooleanValue) {\r\n // istanbul ignore else\r\n if (ConditionalBooleanValue.refreshValue(entry, eventIds))\r\n updateRequired = true;\r\n } else /* istanbul ignore else */ if (entry instanceof ConditionalStringValue) {\r\n // istanbul ignore else\r\n if (ConditionalStringValue.refreshValue(entry, eventIds))\r\n updateRequired = true;\r\n }\r\n }\r\n\r\n newItems.push(updatedItem);\r\n }\r\n\r\n return { itemsUpdated: updateRequired, updatedItems: newItems };\r\n }\r\n\r\n public refreshAffectedItems(eventIds: Set<string>) {\r\n // istanbul ignore next\r\n if (0 === eventIds.size)\r\n return;\r\n\r\n const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(this.items, eventIds);\r\n\r\n // istanbul ignore else\r\n if (itemsUpdated)\r\n this.loadItemsInternal(updatedItems, false, true);\r\n }\r\n}\r\n"]}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module Backstage
|
|
3
3
|
*/
|
|
4
|
-
import { BackstageItem
|
|
4
|
+
import { BackstageItem } from "./BackstageItem";
|
|
5
|
+
import { BackstageItemsManager } from "./BackstageItemsManager";
|
|
5
6
|
/** Hook that returns items from [[BackstageItemsManager]].
|
|
6
7
|
* @internal
|
|
7
8
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDefaultBackstageItems.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useDefaultBackstageItems.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"useDefaultBackstageItems.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useDefaultBackstageItems.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,wBAAwB,YAAa,qBAAqB,KAAG,SAAS,aAAa,EAgB/F,CAAC"}
|
|
@@ -23,13 +23,9 @@ const useDefaultBackstageItems = (manager) => {
|
|
|
23
23
|
}
|
|
24
24
|
}, [manager, manager.items]);
|
|
25
25
|
React.useEffect(() => {
|
|
26
|
-
|
|
26
|
+
return manager.onItemsChanged.addListener((args) => {
|
|
27
27
|
setItems(args.items);
|
|
28
|
-
};
|
|
29
|
-
manager.onItemsChanged.addListener(handleChanged);
|
|
30
|
-
return () => {
|
|
31
|
-
manager.onItemsChanged.removeListener(handleChanged);
|
|
32
|
-
};
|
|
28
|
+
});
|
|
33
29
|
}, [manager]);
|
|
34
30
|
return items;
|
|
35
31
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDefaultBackstageItems.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useDefaultBackstageItems.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;
|
|
1
|
+
{"version":3,"file":"useDefaultBackstageItems.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useDefaultBackstageItems.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAI/B;;GAEG;AACI,MAAM,wBAAwB,GAAG,CAAC,OAA8B,EAA4B,EAAE;IACnG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,cAAc,CAAC,OAAO;YACxB,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;aAC5B;YACH,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACzB;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;YACjD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhBW,QAAA,wBAAwB,4BAgBnC","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 Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BackstageItem } from \"./BackstageItem\";\r\nimport { BackstageItemsManager } from \"./BackstageItemsManager\";\r\n\r\n/** Hook that returns items from [[BackstageItemsManager]].\r\n * @internal\r\n */\r\nexport const useDefaultBackstageItems = (manager: BackstageItemsManager): readonly BackstageItem[] => {\r\n const [items, setItems] = React.useState(manager.items);\r\n const isInitialMount = React.useRef(true);\r\n React.useEffect(() => {\r\n if (isInitialMount.current)\r\n isInitialMount.current = false;\r\n else {\r\n setItems(manager.items);\r\n }\r\n }, [manager, manager.items]);\r\n React.useEffect(() => {\r\n return manager.onItemsChanged.addListener((args) => {\r\n setItems(args.items);\r\n });\r\n }, [manager]);\r\n return items;\r\n};\r\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module StatusBar
|
|
3
3
|
*/
|
|
4
|
-
import { BackstageItemsManager } from "@itwin/appui-abstract";
|
|
5
4
|
import { BackstageItem } from "./BackstageItem";
|
|
5
|
+
import { BackstageItemsManager } from "./BackstageItemsManager";
|
|
6
6
|
/** Hook that returns items from [[BackstageItemsManager]].
|
|
7
7
|
* @public
|
|
8
8
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUiItemsProviderBackstageItems.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useUiItemsProviderBackstageItems.tsx"],"names":[],"mappings":"AAIA;;GAEG;
|
|
1
|
+
{"version":3,"file":"useUiItemsProviderBackstageItems.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useUiItemsProviderBackstageItems.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,gCAAgC,YAAa,qBAAqB,KAAG,SAAS,aAAa,EAuBvG,CAAC"}
|
|
@@ -32,13 +32,9 @@ const useUiItemsProviderBackstageItems = (manager) => {
|
|
|
32
32
|
}, [manager, uiItemProviderIds]);
|
|
33
33
|
// handle item changes caused by calls to UiFramework.backstageManager
|
|
34
34
|
React.useEffect(() => {
|
|
35
|
-
|
|
35
|
+
return manager.onItemsChanged.addListener((args) => {
|
|
36
36
|
setItems(args.items);
|
|
37
|
-
};
|
|
38
|
-
manager.onItemsChanged.addListener(handleChanged);
|
|
39
|
-
return () => {
|
|
40
|
-
manager.onItemsChanged.removeListener(handleChanged);
|
|
41
|
-
};
|
|
37
|
+
});
|
|
42
38
|
}, [manager]);
|
|
43
39
|
return items;
|
|
44
40
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUiItemsProviderBackstageItems.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useUiItemsProviderBackstageItems.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;
|
|
1
|
+
{"version":3,"file":"useUiItemsProviderBackstageItems.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/useUiItemsProviderBackstageItems.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,wFAAqF;AAErF,wEAAqE;AAGrE;;GAEG;AACI,MAAM,gCAAgC,GAAG,CAAC,OAA8B,EAA4B,EAAE;IAC3G,MAAM,iBAAiB,GAAG,IAAA,2DAA4B,GAAE,CAAC;IACzD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAA,EAAE,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtC,wHAAwH;IACxH,2DAA2D;IAC3D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChD,uBAAuB;QACvB,IAAI,YAAY,CAAC,OAAO,KAAK,WAAW,EAAE;YACxC,YAAY,CAAC,OAAO,GAAG,WAAW,CAAC;YACnC,MAAM,cAAc,GAAG,+BAAc,CAAC,iBAAiB,EAAE,CAAC;YAC1D,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YAClC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACzB;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACjC,sEAAsE;IACtE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;YACjD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAvBW,QAAA,gCAAgC,oCAuB3C","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 StatusBar\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { useAvailableUiItemsProviders } from \"../hooks/useAvailableUiItemsProviders\";\r\nimport { BackstageItem } from \"./BackstageItem\";\r\nimport { UiItemsManager } from \"../ui-items-provider/UiItemsManager\";\r\nimport { BackstageItemsManager } from \"./BackstageItemsManager\";\r\n\r\n/** Hook that returns items from [[BackstageItemsManager]].\r\n * @public\r\n */\r\nexport const useUiItemsProviderBackstageItems = (manager: BackstageItemsManager): readonly BackstageItem[] => {\r\n const uiItemProviderIds = useAvailableUiItemsProviders();\r\n const [items, setItems] = React.useState(manager ? manager.items : /* istanbul ignore next */[]);\r\n const providersRef = React.useRef(\"\");\r\n // gathers items from registered extensions - dependent on when a UiItemsProvider is register or unregistered and if the\r\n // current stage's composer allows entries from extensions.\r\n React.useEffect(() => {\r\n const uiProviders = uiItemProviderIds.join(\"-\");\r\n // istanbul ignore else\r\n if (providersRef.current !== uiProviders) {\r\n providersRef.current = uiProviders;\r\n const backstageItems = UiItemsManager.getBackstageItems();\r\n manager.loadItems(backstageItems);\r\n setItems(manager.items);\r\n }\r\n }, [manager, uiItemProviderIds]);\r\n // handle item changes caused by calls to UiFramework.backstageManager\r\n React.useEffect(() => {\r\n return manager.onItemsChanged.addListener((args) => {\r\n setItems(args.items);\r\n });\r\n }, [manager]);\r\n return items;\r\n};\r\n"]}
|