@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":"SheetsModalFrontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAa,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"SheetsModalFrontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAa,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,WAAW,EAA2B,QAAQ,EAAiC,MAAM,mBAAmB,CAAC;AAClH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,GAAG,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,OAAO,CAAC,qBAAqB,CAAC;CAAI;AAEzE;;GAEG;AACH,qBAAa,qBAAsB,YAAW,mBAAmB;IACxD,KAAK,EAAE,MAAM,CAAgE;IACpF,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,WAAW,CAAmB;IACtC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAc;IAElC;;;;OAIG;gBACS,MAAM,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM;IAMnF;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAM3B,wBAAwB;IACxB,IAAW,OAAO,IAAI,KAAK,CAAC,SAAS,CAEpC;IAED,kDAAkD;IAClD,IAAW,WAAW,IAAI,KAAK,CAAC,SAAS,CAIxC;IAED,0CAA0C;IAE1C,OAAO,CAAC,yBAAyB,CAG/B;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC;IACpE,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAA8C;IAE/E,kCAAkC;IAClC,WAAkB,mBAAmB,IAAI,iBAAiB,CAA6C;IAEvG,gBAAgB;IACA,MAAM;IAyBtB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAUhB;;;OAGG;YACW,mBAAmB;CAYlC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;gBAChE,KAAK,EAAE,cAAc;IAKjC,OAAO,CAAC,QAAQ,CAEd;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,aAAa,CAGnB;IAEc,MAAM;CAsBvB"}
|
|
@@ -15,6 +15,7 @@ const core_frontend_1 = require("@itwin/core-frontend");
|
|
|
15
15
|
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
16
16
|
const core_react_1 = require("@itwin/core-react");
|
|
17
17
|
const UiFramework_1 = require("../UiFramework");
|
|
18
|
+
const itwinui_icons_react_1 = require("@itwin/itwinui-icons-react");
|
|
18
19
|
/** Class for CardSelectedEvent
|
|
19
20
|
* @alpha
|
|
20
21
|
*/
|
|
@@ -50,7 +51,7 @@ class SheetsModalFrontstage {
|
|
|
50
51
|
*/
|
|
51
52
|
_storeSheetsAsCards(sheets) {
|
|
52
53
|
sheets.forEach((sheet, index) => {
|
|
53
|
-
this._cards.push({ index, label: sheet.name, iconSpec:
|
|
54
|
+
this._cards.push({ index, label: sheet.name, iconSpec: React.createElement(itwinui_icons_react_1.SvgDocument, null), viewId: sheet.viewId, isActive: index === this._currentIndex });
|
|
54
55
|
});
|
|
55
56
|
}
|
|
56
57
|
/** Gets set of cards */
|
|
@@ -74,12 +75,11 @@ class CardContainer extends React.Component {
|
|
|
74
75
|
return (React.createElement(core_react_1.ScrollView, { className: this.props.className, style: this.props.style },
|
|
75
76
|
React.createElement(core_react_1.FlexWrapContainer, null, this.props.cards.map((card, _index) => {
|
|
76
77
|
let includeCard = true;
|
|
77
|
-
const iconClassName = (typeof card.iconSpec === "string") ? card.iconSpec : /* istanbul ignore next */ "icon-placeholder";
|
|
78
78
|
if (this.props.searchValue) {
|
|
79
79
|
includeCard = this.contains(card.label, this.props.searchValue);
|
|
80
80
|
}
|
|
81
81
|
if (includeCard) {
|
|
82
|
-
return (React.createElement(SheetCard, { key: card.label, label: card.label, index: card.index, iconSpec:
|
|
82
|
+
return (React.createElement(SheetCard, { key: card.label, label: card.label, index: card.index, iconSpec: card.iconSpec, isActive: card.isActive, onClick: async () => this._handleCardSelected(card) }));
|
|
83
83
|
}
|
|
84
84
|
return null;
|
|
85
85
|
}))));
|
|
@@ -134,15 +134,17 @@ class SheetCard extends React.Component {
|
|
|
134
134
|
this.state = { isActive: this.props.isActive, isPressed: false };
|
|
135
135
|
}
|
|
136
136
|
render() {
|
|
137
|
-
const { label, index
|
|
137
|
+
const { label, index } = this.props;
|
|
138
138
|
const className = (0, classnames_1.default)("uifw-sheet-card", this.state.isActive && "is-active", this.state.isPressed && "is-pressed");
|
|
139
|
-
const
|
|
139
|
+
const iconSpec = this.props.iconSpec ? this.props.iconSpec : React.createElement(itwinui_icons_react_1.SvgPlaceholder, null);
|
|
140
140
|
return (
|
|
141
141
|
// eslint-disable-next-line jsx-a11y/click-events-have-key-events
|
|
142
142
|
React.createElement("div", { className: className, onClick: this._onClick, onMouseDown: this._onMouseDown, onMouseLeave: this._onMouseLeave, role: "button", tabIndex: -1 },
|
|
143
143
|
label,
|
|
144
144
|
React.createElement("div", { className: "sheet-image-container" },
|
|
145
|
-
React.createElement("div", { className:
|
|
145
|
+
React.createElement("div", { className: "icon" },
|
|
146
|
+
" ",
|
|
147
|
+
React.createElement(core_react_1.Icon, { iconSpec: iconSpec }))),
|
|
146
148
|
React.createElement("div", { className: "sheet-index" }, index + 1)));
|
|
147
149
|
}
|
|
148
150
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SheetsModalFrontstage.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,wCAAsC;AACtC,2CAAoC;AACpC,+BAA+B;AAC/B,wDAAmE;AACnE,0DAAgD;AAChD,kDAAkG;AAElG,gDAA6C;AAsB7C;;GAEG;AACH,MAAa,iBAAkB,SAAQ,wBAA8B;CAAI;AAAzE,8CAAyE;AAEzE;;GAEG;AACH,MAAa,qBAAqB;IAOhC;;;;OAIG;IACH,YAAY,MAAmB,EAAE,UAA4B,EAAE,YAAoB;QAX5E,UAAK,GAAW,yBAAW,CAAC,SAAS,CAAC,qCAAqC,CAAC,CAAC;QAC5E,WAAM,GAAe,EAAE,CAAC;QAGxB,iBAAY,GAAW,EAAE,CAAC;QAmClC,0CAA0C;QAC1C,uBAAuB;QACf,8BAAyB,GAAG,CAAC,KAAa,EAAQ,EAAE;YAC1D,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,yBAAW,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC;QAClD,CAAC,CAAC;QAhCA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED;;;OAGG;IACK,mBAAmB,CAAC,MAAmB;QAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,KAAgB,EAAE,KAAa,EAAE,EAAE;YACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC1I,CAAC,CAAC,CAAC;IACL,CAAC;IAED,wBAAwB;IACxB,IAAW,OAAO;QAChB,OAAO,oBAAC,aAAa,IAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,GAAI,CAAC;IAC7G,CAAC;IAED,kDAAkD;IAClD,IAAW,WAAW;QACpB,OAAO,CACL,oBAAC,sBAAS,IAAC,WAAW,EAAE,mBAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,yBAAyB,EAAE,iBAAiB,EAAE,GAAG,GAAI,CACvI,CAAC;IACJ,CAAC;CAQF;AA9CD,sDA8CC;AAWD;;GAEG;AACH,MAAa,aAAc,SAAQ,KAAK,CAAC,SAA6B;IAGpE,kCAAkC;IAC3B,MAAM,KAAK,mBAAmB,KAAwB,OAAO,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEvG,gBAAgB;IACA,MAAM;QACpB,OAAO,CACL,oBAAC,uBAAU,IAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YAClE,oBAAC,8BAAiB,QAEd,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAc,EAAE,MAAc,EAAE,EAAE;gBACtD,IAAI,WAAW,GAAG,IAAI,CAAC;gBACvB,MAAM,aAAa,GAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,kBAAkB,CAAC;gBAE1H,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;oBAC1B,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;iBACjE;gBAED,IAAI,WAAW,EAAE;oBACf,OAAO,CACL,oBAAC,SAAS,IAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAI,CAC5K,CAAC;iBACH;gBAED,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAEc,CACT,CACd,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACK,QAAQ,CAAC,MAAc,EAAE,MAAc;QAC7C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;YACpB,OAAO,KAAK,CAAC;QAEf,IAAI,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;YAC/B,OAAO,KAAK,CAAC;QAEf,OAAO,MAAM,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAClF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,mBAAmB,CAAC,IAAc;QAC9C,qBAAqB;QACrB,IAAI,yBAAS,CAAC,WAAW,IAAI,yBAAS,CAAC,WAAW,CAAC,YAAY,EAAE;YAC/D,MAAM,EAAE,GAAG,yBAAS,CAAC,WAAW,CAAC,YAAY,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;SAC1B;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,yBAAW,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;QAC/C,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACjF,CAAC;;AAjEH,sCAkEC;AAjEgB,gCAAkB,GAAsB,IAAI,iBAAiB,EAAE,CAAC;AAsFjF;;GAEG;AACH,MAAa,SAAU,SAAQ,KAAK,CAAC,SAAyC;IAC5E,YAAY,KAAqB;QAC/B,KAAK,CAAC,KAAK,CAAC,CAAC;QAIP,aAAQ,GAAG,GAAG,EAAE;YACtB,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC;QAEM,iBAAY,GAAG,GAAG,EAAE;YAC1B,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC;QAEM,kBAAa,GAAG,GAAG,EAAE;YAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS;gBACtB,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC;QAdA,IAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACnE,CAAC;IAee,MAAM;QACpB,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE9C,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,iBAAiB,EACjB,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,WAAW,EAClC,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,YAAY,CACrC,CAAC;QAEF,MAAM,aAAa,GAAG,IAAA,oBAAU,EAC9B,MAAM,EACN,CAAC,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,kBAAkB,CAC1F,CAAC;QAEF,OAAO;QACL,iEAAiE;QACjE,6BAAK,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,CAAC;YAC5I,KAAK;YACN,6BAAK,SAAS,EAAC,uBAAuB;gBACpC,6BAAK,SAAS,EAAE,aAAa,GAAI,CAC5B;YACP,6BAAK,SAAS,EAAC,aAAa,IAAE,KAAK,GAAG,CAAC,CAAO,CACzC,CACR,CAAC;IACJ,CAAC;CACF;AA5CD,8BA4CC","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 NavigationAids\r\n */\r\n\r\nimport \"./SheetsModalFrontstage.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { IModelApp, IModelConnection } from \"@itwin/core-frontend\";\r\nimport { UiEvent } from \"@itwin/appui-abstract\";\r\nimport { CommonProps, FlexWrapContainer, ScrollView, SearchBox, UiCore } from \"@itwin/core-react\";\r\nimport { ModalFrontstageInfo } from \"../framework/FrameworkFrontstages\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { SheetData } from \"./SheetNavigationAid\";\r\n\r\n/** Data about a sheet card\r\n * @alpha\r\n */\r\nexport interface CardInfo {\r\n index: number;\r\n label: string;\r\n iconSpec: string;\r\n isActive: boolean;\r\n viewId: any;\r\n}\r\n\r\n/** Arguments for CardSelectedEvent\r\n * @alpha\r\n */\r\nexport interface CardSelectedEventArgs {\r\n id: any;\r\n index: number;\r\n}\r\n\r\n/** Class for CardSelectedEvent\r\n * @alpha\r\n */\r\nexport class CardSelectedEvent extends UiEvent<CardSelectedEventArgs> { }\r\n\r\n/** Modal frontstage displaying sheet information in cards.\r\n * @alpha\r\n */\r\nexport class SheetsModalFrontstage implements ModalFrontstageInfo {\r\n public title: string = UiFramework.translate(\"navigationAid.sheetsModalFrontstage\");\r\n private _cards: CardInfo[] = [];\r\n private _connection: IModelConnection;\r\n private _currentIndex: number;\r\n private _searchValue: string = \"\";\r\n\r\n /**\r\n * Creates a SheetsModalFrontstage\r\n * @param sheets Collection of sheets available in SheetNavigationAid\r\n * @param connection IModelConnection to query for sheet ViewState\r\n */\r\n constructor(sheets: SheetData[], connection: IModelConnection, currentIndex: number) {\r\n this._connection = connection;\r\n this._currentIndex = currentIndex;\r\n this._storeSheetsAsCards(sheets);\r\n }\r\n\r\n /**\r\n * Gathers card info from available sheets\r\n * @param sheets SheetData from available sheets\r\n */\r\n private _storeSheetsAsCards(sheets: SheetData[]) {\r\n sheets.forEach((sheet: SheetData, index: number) => {\r\n this._cards.push({ index, label: sheet.name, iconSpec: \"icon-document\", viewId: sheet.viewId, isActive: index === this._currentIndex });\r\n });\r\n }\r\n\r\n /** Gets set of cards */\r\n public get content(): React.ReactNode {\r\n return <CardContainer cards={this._cards} searchValue={this._searchValue} connection={this._connection} />;\r\n }\r\n\r\n /** Gets components to be placed in the app bar */\r\n public get appBarRight(): React.ReactNode {\r\n return (\r\n <SearchBox placeholder={UiCore.translate(\"general.search\")} onValueChanged={this._handleSearchValueChanged} valueChangedDelay={250} />\r\n );\r\n }\r\n\r\n /** Updates stage based on search value */\r\n // istanbul ignore next\r\n private _handleSearchValueChanged = (value: string): void => {\r\n this._searchValue = value;\r\n UiFramework.frontstages.updateModalFrontstage();\r\n };\r\n}\r\n\r\n/** Properties for [[CardContainer]]\r\n * @alpha\r\n */\r\nexport interface CardContainerProps extends CommonProps {\r\n cards: CardInfo[];\r\n searchValue: string;\r\n connection: IModelConnection;\r\n}\r\n\r\n/** Displays cards in SheetModalFrontstage\r\n * @alpha\r\n */\r\nexport class CardContainer extends React.Component<CardContainerProps> {\r\n private static _cardSelectedEvent: CardSelectedEvent = new CardSelectedEvent();\r\n\r\n /** Get CardSelectedEvent event */\r\n public static get onCardSelectedEvent(): CardSelectedEvent { return CardContainer._cardSelectedEvent; }\r\n\r\n /** @internal */\r\n public override render() {\r\n return (\r\n <ScrollView className={this.props.className} style={this.props.style}>\r\n <FlexWrapContainer>\r\n {\r\n this.props.cards.map((card: CardInfo, _index: number) => {\r\n let includeCard = true;\r\n const iconClassName = (typeof card.iconSpec === \"string\") ? card.iconSpec : /* istanbul ignore next */ \"icon-placeholder\";\r\n\r\n if (this.props.searchValue) {\r\n includeCard = this.contains(card.label, this.props.searchValue);\r\n }\r\n\r\n if (includeCard) {\r\n return (\r\n <SheetCard key={card.label} label={card.label} index={card.index} iconSpec={iconClassName} isActive={card.isActive} onClick={async () => this._handleCardSelected(card)} />\r\n );\r\n }\r\n\r\n return null;\r\n })\r\n }\r\n </FlexWrapContainer>\r\n </ScrollView>\r\n );\r\n }\r\n\r\n /**\r\n * Determines if string contains a substring\r\n * @param valueA The string to search through\r\n * @param valueB The value to search for\r\n * @return True if valueB can be found in valueA, false otherwise\r\n */\r\n private contains(valueA: string, valueB: string): boolean {\r\n if (!valueA || !valueB)\r\n return false;\r\n\r\n if (valueB.length > valueA.length)\r\n return false;\r\n\r\n return valueA.toLocaleUpperCase().indexOf(valueB.toLocaleUpperCase(), 0) !== -1;\r\n }\r\n\r\n /**\r\n * Updates view with ViewState for selected card.\r\n * @param card Data about the sheet card selected.\r\n */\r\n private async _handleCardSelected(card: CardInfo) {\r\n // istanbul ignore if\r\n if (IModelApp.viewManager && IModelApp.viewManager.selectedView) {\r\n const vp = IModelApp.viewManager.selectedView;\r\n const viewState = await this.props.connection.views.load(card.viewId);\r\n vp.changeView(viewState);\r\n }\r\n\r\n card.isActive = true;\r\n UiFramework.frontstages.closeModalFrontstage();\r\n CardContainer.onCardSelectedEvent.emit({ id: card.viewId, index: card.index });\r\n }\r\n}\r\n\r\n/** Properties for [[SheetCard]]\r\n * @alpha\r\n */\r\nexport interface SheetCardProps {\r\n label: string;\r\n index: number;\r\n iconSpec: string;\r\n isActive: boolean;\r\n onClick: () => void;\r\n}\r\n\r\n/** State for [[SheetCard]]\r\n * @internal\r\n */\r\ninterface SheetCardState {\r\n isActive: boolean;\r\n isPressed: boolean;\r\n}\r\n\r\n/** Displays information about an individual sheet\r\n * @alpha\r\n */\r\nexport class SheetCard extends React.Component<SheetCardProps, SheetCardState> {\r\n constructor(props: SheetCardProps) {\r\n super(props);\r\n this.state = { isActive: this.props.isActive, isPressed: false };\r\n }\r\n\r\n private _onClick = () => {\r\n this.setState({ isActive: true }, () => this.props.onClick());\r\n };\r\n\r\n private _onMouseDown = () => {\r\n this.setState({ isPressed: true });\r\n };\r\n\r\n private _onMouseLeave = () => {\r\n if (this.state.isPressed)\r\n this.setState({ isPressed: false });\r\n };\r\n\r\n public override render() {\r\n const { label, index, iconSpec } = this.props;\r\n\r\n const className = classnames(\r\n \"uifw-sheet-card\",\r\n this.state.isActive && \"is-active\",\r\n this.state.isPressed && \"is-pressed\",\r\n );\r\n\r\n const iconClassName = classnames(\r\n \"icon\",\r\n (typeof iconSpec === \"string\") ? iconSpec : /* istanbul ignore next */ \"icon-placeholder\",\r\n );\r\n\r\n return (\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n <div className={className} onClick={this._onClick} onMouseDown={this._onMouseDown} onMouseLeave={this._onMouseLeave} role=\"button\" tabIndex={-1} >\r\n {label}\r\n <div className=\"sheet-image-container\">\r\n <div className={iconClassName} />\r\n </div >\r\n <div className=\"sheet-index\">{index + 1}</div>\r\n </div >\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"SheetsModalFrontstage.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.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 NavigationAids\r\n */\r\n\r\nimport \"./SheetsModalFrontstage.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { IModelApp, IModelConnection } from \"@itwin/core-frontend\";\r\nimport { UiEvent } from \"@itwin/appui-abstract\";\r\nimport { CommonProps, FlexWrapContainer, Icon, IconSpec, ScrollView, SearchBox, UiCore } from \"@itwin/core-react\";\r\nimport { ModalFrontstageInfo } from \"../framework/FrameworkFrontstages\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { SheetData } from \"./SheetNavigationAid\";\r\nimport { SvgDocument, SvgPlaceholder } from \"@itwin/itwinui-icons-react\";\r\n\r\n/** Data about a sheet card\r\n * @alpha\r\n */\r\nexport interface CardInfo {\r\n index: number;\r\n label: string;\r\n iconSpec: IconSpec;\r\n isActive: boolean;\r\n viewId: any;\r\n}\r\n\r\n/** Arguments for CardSelectedEvent\r\n * @alpha\r\n */\r\nexport interface CardSelectedEventArgs {\r\n id: any;\r\n index: number;\r\n}\r\n\r\n/** Class for CardSelectedEvent\r\n * @alpha\r\n */\r\nexport class CardSelectedEvent extends UiEvent<CardSelectedEventArgs> { }\r\n\r\n/** Modal frontstage displaying sheet information in cards.\r\n * @alpha\r\n */\r\nexport class SheetsModalFrontstage implements ModalFrontstageInfo {\r\n public title: string = UiFramework.translate(\"navigationAid.sheetsModalFrontstage\");\r\n private _cards: CardInfo[] = [];\r\n private _connection: IModelConnection;\r\n private _currentIndex: number;\r\n private _searchValue: string = \"\";\r\n\r\n /**\r\n * Creates a SheetsModalFrontstage\r\n * @param sheets Collection of sheets available in SheetNavigationAid\r\n * @param connection IModelConnection to query for sheet ViewState\r\n */\r\n constructor(sheets: SheetData[], connection: IModelConnection, currentIndex: number) {\r\n this._connection = connection;\r\n this._currentIndex = currentIndex;\r\n this._storeSheetsAsCards(sheets);\r\n }\r\n\r\n /**\r\n * Gathers card info from available sheets\r\n * @param sheets SheetData from available sheets\r\n */\r\n private _storeSheetsAsCards(sheets: SheetData[]) {\r\n sheets.forEach((sheet: SheetData, index: number) => {\r\n this._cards.push({ index, label: sheet.name, iconSpec: <SvgDocument />, viewId: sheet.viewId, isActive: index === this._currentIndex });\r\n });\r\n }\r\n\r\n /** Gets set of cards */\r\n public get content(): React.ReactNode {\r\n return <CardContainer cards={this._cards} searchValue={this._searchValue} connection={this._connection} />;\r\n }\r\n\r\n /** Gets components to be placed in the app bar */\r\n public get appBarRight(): React.ReactNode {\r\n return (\r\n <SearchBox placeholder={UiCore.translate(\"general.search\")} onValueChanged={this._handleSearchValueChanged} valueChangedDelay={250} />\r\n );\r\n }\r\n\r\n /** Updates stage based on search value */\r\n // istanbul ignore next\r\n private _handleSearchValueChanged = (value: string): void => {\r\n this._searchValue = value;\r\n UiFramework.frontstages.updateModalFrontstage();\r\n };\r\n}\r\n\r\n/** Properties for [[CardContainer]]\r\n * @alpha\r\n */\r\nexport interface CardContainerProps extends CommonProps {\r\n cards: CardInfo[];\r\n searchValue: string;\r\n connection: IModelConnection;\r\n}\r\n\r\n/** Displays cards in SheetModalFrontstage\r\n * @alpha\r\n */\r\nexport class CardContainer extends React.Component<CardContainerProps> {\r\n private static _cardSelectedEvent: CardSelectedEvent = new CardSelectedEvent();\r\n\r\n /** Get CardSelectedEvent event */\r\n public static get onCardSelectedEvent(): CardSelectedEvent { return CardContainer._cardSelectedEvent; }\r\n\r\n /** @internal */\r\n public override render() {\r\n return (\r\n <ScrollView className={this.props.className} style={this.props.style}>\r\n <FlexWrapContainer>\r\n {\r\n this.props.cards.map((card: CardInfo, _index: number) => {\r\n let includeCard = true;\r\n if (this.props.searchValue) {\r\n includeCard = this.contains(card.label, this.props.searchValue);\r\n }\r\n\r\n if (includeCard) {\r\n return (\r\n <SheetCard key={card.label} label={card.label} index={card.index} iconSpec={card.iconSpec} isActive={card.isActive} onClick={async () => this._handleCardSelected(card)} />\r\n );\r\n }\r\n\r\n return null;\r\n })\r\n }\r\n </FlexWrapContainer>\r\n </ScrollView>\r\n );\r\n }\r\n\r\n /**\r\n * Determines if string contains a substring\r\n * @param valueA The string to search through\r\n * @param valueB The value to search for\r\n * @return True if valueB can be found in valueA, false otherwise\r\n */\r\n private contains(valueA: string, valueB: string): boolean {\r\n if (!valueA || !valueB)\r\n return false;\r\n\r\n if (valueB.length > valueA.length)\r\n return false;\r\n\r\n return valueA.toLocaleUpperCase().indexOf(valueB.toLocaleUpperCase(), 0) !== -1;\r\n }\r\n\r\n /**\r\n * Updates view with ViewState for selected card.\r\n * @param card Data about the sheet card selected.\r\n */\r\n private async _handleCardSelected(card: CardInfo) {\r\n // istanbul ignore if\r\n if (IModelApp.viewManager && IModelApp.viewManager.selectedView) {\r\n const vp = IModelApp.viewManager.selectedView;\r\n const viewState = await this.props.connection.views.load(card.viewId);\r\n vp.changeView(viewState);\r\n }\r\n\r\n card.isActive = true;\r\n UiFramework.frontstages.closeModalFrontstage();\r\n CardContainer.onCardSelectedEvent.emit({ id: card.viewId, index: card.index });\r\n }\r\n}\r\n\r\n/** Properties for [[SheetCard]]\r\n * @alpha\r\n */\r\nexport interface SheetCardProps {\r\n label: string;\r\n index: number;\r\n iconSpec: IconSpec;\r\n isActive: boolean;\r\n onClick: () => void;\r\n}\r\n\r\n/** State for [[SheetCard]]\r\n * @internal\r\n */\r\ninterface SheetCardState {\r\n isActive: boolean;\r\n isPressed: boolean;\r\n}\r\n\r\n/** Displays information about an individual sheet\r\n * @alpha\r\n */\r\nexport class SheetCard extends React.Component<SheetCardProps, SheetCardState> {\r\n constructor(props: SheetCardProps) {\r\n super(props);\r\n this.state = { isActive: this.props.isActive, isPressed: false };\r\n }\r\n\r\n private _onClick = () => {\r\n this.setState({ isActive: true }, () => this.props.onClick());\r\n };\r\n\r\n private _onMouseDown = () => {\r\n this.setState({ isPressed: true });\r\n };\r\n\r\n private _onMouseLeave = () => {\r\n if (this.state.isPressed)\r\n this.setState({ isPressed: false });\r\n };\r\n\r\n public override render() {\r\n const { label, index } = this.props;\r\n\r\n const className = classnames(\r\n \"uifw-sheet-card\",\r\n this.state.isActive && \"is-active\",\r\n this.state.isPressed && \"is-pressed\",\r\n );\r\n\r\n const iconSpec = this.props.iconSpec ? this.props.iconSpec : <SvgPlaceholder />;\r\n\r\n return (\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n <div className={className} onClick={this._onClick} onMouseDown={this._onMouseDown} onMouseLeave={this._onMouseLeave} role=\"button\" tabIndex={-1} >\r\n {label}\r\n <div className=\"sheet-image-container\">\r\n <div className=\"icon\"> <Icon iconSpec={iconSpec} /></div>\r\n </div >\r\n <div className=\"sheet-index\">{index + 1}</div>\r\n </div >\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import "./StandardRotationNavigationAid.scss";
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import { StandardViewId } from "@itwin/core-frontend";
|
|
7
|
-
import { CommonProps } from "@itwin/core-react";
|
|
7
|
+
import { CommonProps, IconSpec } from "@itwin/core-react";
|
|
8
8
|
import { ConfigurableCreateInfo } from "../configurableui/ConfigurableUiControl";
|
|
9
9
|
import { NavigationAidControl } from "./NavigationAidControl";
|
|
10
10
|
/** A 3D Standard Rotation Navigation Aid control.
|
|
@@ -17,7 +17,7 @@ export declare class StandardRotationNavigationAidControl extends NavigationAidC
|
|
|
17
17
|
/** @internal */
|
|
18
18
|
export interface RotationData {
|
|
19
19
|
label: string;
|
|
20
|
-
|
|
20
|
+
iconsSpec?: IconSpec;
|
|
21
21
|
}
|
|
22
22
|
/** @internal */
|
|
23
23
|
interface StandardRotationNavigationAidState {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardRotationNavigationAid.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/StandardRotationNavigationAid.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,sCAAsC,CAAC;AAE9C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"StandardRotationNavigationAid.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/StandardRotationNavigationAid.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,sCAAsC,CAAC;AAE9C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,WAAW,EAAQ,QAAQ,EAAS,MAAM,mBAAmB,CAAC;AAEvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAW9D;;GAEG;AACH,qBAAa,oCAAqC,SAAQ,oBAAoB;IAC5E,OAAc,eAAe,SAAmC;gBAEpD,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,GAAG;CAIvD;AAED,gBAAgB;AAChB,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,QAAQ,CAAC;CACtB;AAED,gBAAgB;AAChB,UAAU,kCAAkC;IAC1C,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,kCAAkC,CAAC;IACjH,OAAO,CAAC,MAAM,CAAgE;IAE9E,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,kCAAkC,CAAC,CAAC;gBAEjE,KAAK,EAAE,GAAG;IAqCN,MAAM,IAAI,KAAK,CAAC,SAAS;IAoCzC,OAAO,CAAC,UAAU,CAEhB;IAEF,OAAO,CAAC,iBAAiB,CAEvB;IAEF,OAAO,CAAC,iBAAiB,CAEvB;IAEF,OAAO,CAAC,sBAAsB,CAO5B;IAEF,OAAO,CAAC,kBAAkB;CAyB3B"}
|
|
@@ -19,6 +19,14 @@ const appui_layout_react_1 = require("@itwin/appui-layout-react");
|
|
|
19
19
|
const UiFramework_1 = require("../UiFramework");
|
|
20
20
|
const NavigationAidControl_1 = require("./NavigationAidControl");
|
|
21
21
|
const components_react_1 = require("@itwin/components-react");
|
|
22
|
+
const top_svg_1 = require("@bentley/icons-generic/icons/cube-faces/top.svg");
|
|
23
|
+
const bottom_svg_1 = require("@bentley/icons-generic/icons/cube-faces/bottom.svg");
|
|
24
|
+
const left_svg_1 = require("@bentley/icons-generic/icons/cube-faces/left.svg");
|
|
25
|
+
const right_svg_1 = require("@bentley/icons-generic/icons/cube-faces/right.svg");
|
|
26
|
+
const front_svg_1 = require("@bentley/icons-generic/icons/cube-faces/front.svg");
|
|
27
|
+
const rear_svg_1 = require("@bentley/icons-generic/icons/cube-faces/rear.svg");
|
|
28
|
+
const iso_left_svg_1 = require("@bentley/icons-generic/icons/cube-faces/iso-left.svg");
|
|
29
|
+
const iso_right_svg_1 = require("@bentley/icons-generic/icons/cube-faces/iso-right.svg");
|
|
22
30
|
/** A 3D Standard Rotation Navigation Aid control.
|
|
23
31
|
* @alpha
|
|
24
32
|
*/
|
|
@@ -53,28 +61,28 @@ class StandardRotationNavigationAid extends React.Component {
|
|
|
53
61
|
const list = [
|
|
54
62
|
{
|
|
55
63
|
label: UiFramework_1.UiFramework.translate("rotations.top"),
|
|
56
|
-
|
|
64
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(top_svg_1.default),
|
|
57
65
|
}, {
|
|
58
66
|
label: UiFramework_1.UiFramework.translate("rotations.bottom"),
|
|
59
|
-
|
|
67
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(bottom_svg_1.default),
|
|
60
68
|
}, {
|
|
61
69
|
label: UiFramework_1.UiFramework.translate("rotations.left"),
|
|
62
|
-
|
|
70
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(left_svg_1.default),
|
|
63
71
|
}, {
|
|
64
72
|
label: UiFramework_1.UiFramework.translate("rotations.right"),
|
|
65
|
-
|
|
73
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(right_svg_1.default),
|
|
66
74
|
}, {
|
|
67
75
|
label: UiFramework_1.UiFramework.translate("rotations.front"),
|
|
68
|
-
|
|
76
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(front_svg_1.default),
|
|
69
77
|
}, {
|
|
70
78
|
label: UiFramework_1.UiFramework.translate("rotations.rear"),
|
|
71
|
-
|
|
79
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(rear_svg_1.default),
|
|
72
80
|
}, {
|
|
73
81
|
label: UiFramework_1.UiFramework.translate("rotations.isoLeft"),
|
|
74
|
-
|
|
82
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(iso_left_svg_1.default),
|
|
75
83
|
}, {
|
|
76
84
|
label: UiFramework_1.UiFramework.translate("rotations.isoRight"),
|
|
77
|
-
|
|
85
|
+
iconsSpec: appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(iso_right_svg_1.default),
|
|
78
86
|
},
|
|
79
87
|
];
|
|
80
88
|
this.state = {
|
|
@@ -88,7 +96,8 @@ class StandardRotationNavigationAid extends React.Component {
|
|
|
88
96
|
const className = (0, classnames_1.default)("uifw-standard-rotation-navigation", this.props.className);
|
|
89
97
|
return (React.createElement("div", { className: className, style: this.props.style, ref: this._handleRef },
|
|
90
98
|
React.createElement(appui_layout_react_1.ExpandableButton, { className: "expandable" },
|
|
91
|
-
React.createElement(appui_layout_react_1.ToolbarIcon, { className: "icon-button", icon: React.createElement("span", { className: (0, classnames_1.default)("three-d-icon", "icon"
|
|
99
|
+
React.createElement(appui_layout_react_1.ToolbarIcon, { className: "icon-button", icon: React.createElement("span", { className: (0, classnames_1.default)("three-d-icon", "icon") },
|
|
100
|
+
React.createElement(core_react_1.Icon, { iconSpec: this.state.list[this.state.selected].iconsSpec })), onClick: this._toggleIsExpanded, title: this._title })),
|
|
92
101
|
React.createElement(core_react_1.Popup, { isOpen: this.state.isExpanded, offset: 0, onClose: this._handlePopupClose, position: appui_abstract_1.RelativePosition.Bottom, target: this.state.element }, this.getExpandedContent())));
|
|
93
102
|
}
|
|
94
103
|
getExpandedContent() {
|
|
@@ -97,7 +106,7 @@ class StandardRotationNavigationAid extends React.Component {
|
|
|
97
106
|
return (React.createElement(components_react_1.Panel, null,
|
|
98
107
|
React.createElement(components_react_1.Columns, null,
|
|
99
108
|
React.createElement(components_react_1.GroupColumn, null, this.state.list.map((item, itemIndex) => {
|
|
100
|
-
return (React.createElement(components_react_1.GroupTool, { key: itemIndex.toString(), label: item.label, icon: React.createElement(core_react_1.Icon, { iconSpec: item.
|
|
109
|
+
return (React.createElement(components_react_1.GroupTool, { key: itemIndex.toString(), label: item.label, icon: React.createElement(core_react_1.Icon, { iconSpec: item.iconsSpec }), isActive: this.state.selected === itemIndex, onClick: () => this._handleListItemClicked(itemIndex), item: appui_abstract_1.ToolbarItemUtilities.createActionButton("", 0, "", "", () => { }) }));
|
|
101
110
|
})))));
|
|
102
111
|
}
|
|
103
112
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardRotationNavigationAid.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/StandardRotationNavigationAid.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 NavigationAids\r\n */\r\n\r\nimport \"./StandardRotationNavigationAid.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { StandardViewId } from \"@itwin/core-frontend\";\r\nimport { RelativePosition, ToolbarItemUtilities } from \"@itwin/appui-abstract\";\r\nimport { ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps, Icon, Popup } from \"@itwin/core-react\";\r\nimport { ExpandableButton as NZ_Expandable, ToolbarIcon as NZ_Icon } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { NavigationAidControl } from \"./NavigationAidControl\";\r\nimport { Columns, GroupColumn, GroupTool, Panel } from \"@itwin/components-react\";\r\n\r\n/** A 3D Standard Rotation Navigation Aid control.\r\n * @alpha\r\n */\r\nexport class StandardRotationNavigationAidControl extends NavigationAidControl {\r\n public static navigationAidId = \"StandardRotationNavigationAid\";\r\n\r\n constructor(info: ConfigurableCreateInfo, options: any) {\r\n super(info, options);\r\n this.reactNode = <StandardRotationNavigationAid />;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport interface RotationData {\r\n label: string;\r\n iconClassName: string;\r\n}\r\n\r\n/** @internal */\r\ninterface StandardRotationNavigationAidState {\r\n element: HTMLDivElement | null;\r\n isExpanded: boolean;\r\n list: RotationData[];\r\n selected: StandardViewId;\r\n}\r\n\r\n/** A 3D Standard Rotation Navigation Aid.\r\n * @alpha\r\n */\r\nexport class StandardRotationNavigationAid extends React.Component<CommonProps, StandardRotationNavigationAidState> {\r\n private _title = UiFramework.translate(\"standardRotationNavigationAid.title\");\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<StandardRotationNavigationAidState>;\r\n\r\n constructor(props: any) {\r\n super(props);\r\n const list: RotationData[] = [\r\n {\r\n label: UiFramework.translate(\"rotations.top\"),\r\n iconClassName: \"icon-cube-faces-top\",\r\n }, {\r\n label: UiFramework.translate(\"rotations.bottom\"),\r\n iconClassName: \"icon-cube-faces-bottom\",\r\n }, {\r\n label: UiFramework.translate(\"rotations.left\"),\r\n iconClassName: \"icon-cube-faces-left\",\r\n }, {\r\n label: UiFramework.translate(\"rotations.right\"),\r\n iconClassName: \"icon-cube-faces-right\",\r\n }, {\r\n label: UiFramework.translate(\"rotations.front\"),\r\n iconClassName: \"icon-cube-faces-front\",\r\n }, {\r\n label: UiFramework.translate(\"rotations.rear\"),\r\n iconClassName: \"icon-cube-faces-rear\",\r\n }, {\r\n label: UiFramework.translate(\"rotations.isoLeft\"),\r\n iconClassName: \"icon-cube-faces-iso-left\",\r\n }, {\r\n label: UiFramework.translate(\"rotations.isoRight\"),\r\n iconClassName: \"icon-cube-faces-iso-right\",\r\n },\r\n ];\r\n this.state = {\r\n element: null,\r\n isExpanded: false,\r\n list,\r\n selected: StandardViewId.Top,\r\n };\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const className = classnames(\r\n \"uifw-standard-rotation-navigation\",\r\n this.props.className,\r\n );\r\n\r\n return (\r\n <div className={className} style={this.props.style}\r\n ref={this._handleRef}\r\n >\r\n <NZ_Expandable\r\n className={\"expandable\"}\r\n >\r\n <NZ_Icon\r\n className={\"icon-button\"}\r\n icon={\r\n <span className={classnames(\"three-d-icon\", \"icon\", this.state.list[this.state.selected].iconClassName)} />\r\n }\r\n onClick={this._toggleIsExpanded}\r\n title={this._title}\r\n >\r\n </NZ_Icon>\r\n </NZ_Expandable>\r\n <Popup\r\n isOpen={this.state.isExpanded}\r\n offset={0}\r\n onClose={this._handlePopupClose}\r\n position={RelativePosition.Bottom}\r\n target={this.state.element}\r\n >\r\n {this.getExpandedContent()}\r\n </Popup>\r\n </div>\r\n );\r\n }\r\n\r\n private _handleRef = (element: HTMLDivElement | null) => {\r\n this.setState(() => ({ element }));\r\n };\r\n\r\n private _handlePopupClose = () => {\r\n this.setState(() => ({ isExpanded: false }));\r\n };\r\n\r\n private _toggleIsExpanded = () => {\r\n this.setState((prevState) => ({ isExpanded: !prevState.isExpanded }));\r\n };\r\n\r\n private _handleListItemClicked = (item: number) => {\r\n const selected = item;\r\n\r\n this.setState(\r\n () => ({ isExpanded: false, selected }),\r\n () => ViewportComponentEvents.setStandardRotation(selected),\r\n );\r\n };\r\n\r\n private getExpandedContent(): React.ReactNode {\r\n if (!this.state.isExpanded)\r\n return undefined;\r\n\r\n return (\r\n <Panel>\r\n <Columns>\r\n <GroupColumn>\r\n {this.state.list.map((item, itemIndex) => {\r\n return (\r\n <GroupTool\r\n key={itemIndex.toString()}\r\n label={item.label}\r\n icon={<Icon iconSpec={item.iconClassName} />}\r\n isActive={this.state.selected === itemIndex}\r\n onClick={() => this._handleListItemClicked(itemIndex)}\r\n item={ToolbarItemUtilities.createActionButton(\"\", 0, \"\", \"\", () => { })}\r\n />\r\n );\r\n })}\r\n </GroupColumn>\r\n </Columns>\r\n </Panel>\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"StandardRotationNavigationAid.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/StandardRotationNavigationAid.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,gDAA8C;AAC9C,2CAAoC;AACpC,+BAA+B;AAC/B,wDAAsD;AACtD,0DAAkG;AAClG,4EAAyE;AACzE,kDAAuE;AACvE,kEAAsG;AAEtG,gDAA6C;AAC7C,iEAA8D;AAC9D,8DAAiF;AACjF,6EAA8E;AAC9E,mFAAoF;AACpF,+EAAgF;AAChF,iFAAkF;AAClF,iFAAkF;AAClF,+EAAgF;AAChF,uFAAuF;AACvF,yFAAyF;AAEzF;;GAEG;AACH,MAAa,oCAAqC,SAAQ,2CAAoB;IAG5E,YAAY,IAA4B,EAAE,OAAY;QACpD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,oBAAC,6BAA6B,OAAG,CAAC;IACrD,CAAC;;AANH,oFAOC;AANe,oDAAe,GAAG,+BAA+B,CAAC;AAsBlE;;GAEG;AACH,MAAa,6BAA8B,SAAQ,KAAK,CAAC,SAA0D;IAMjH,YAAY,KAAU;QACpB,KAAK,CAAC,KAAK,CAAC,CAAC;QANP,WAAM,GAAG,yBAAW,CAAC,SAAS,CAAC,qCAAqC,CAAC,CAAC;QA8EtE,eAAU,GAAG,CAAC,OAA8B,EAAE,EAAE;YACtD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC;QAEM,sBAAiB,GAAG,GAAG,EAAE;YAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC;QAEM,sBAAiB,GAAG,GAAG,EAAE;YAC/B,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC;QAEM,2BAAsB,GAAG,CAAC,IAAY,EAAE,EAAE;YAChD,MAAM,QAAQ,GAAG,IAAI,CAAC;YAEtB,IAAI,CAAC,QAAQ,CACX,GAAG,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EACvC,GAAG,EAAE,CAAC,iDAAuB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAC5D,CAAC;QACJ,CAAC,CAAC;QA1FA,MAAM,IAAI,GAAmB;YAC3B;gBACE,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,eAAe,CAAC;gBAC7C,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,iBAAe,CAAC;aACzE,EAAE;gBACD,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,kBAAkB,CAAC;gBAChD,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,oBAAkB,CAAC;aAC5E,EAAE;gBACD,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC;gBAC9C,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,kBAAgB,CAAC;aAC1E,EAAE;gBACD,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBAC/C,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,mBAAiB,CAAC;aAC3E,EAAE;gBACD,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBAC/C,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,mBAAiB,CAAC;aAC3E,EAAE;gBACD,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC;gBAC9C,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,kBAAgB,CAAC;aAC1E,EAAE;gBACD,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,mBAAmB,CAAC;gBACjD,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,sBAAmB,CAAC;aAC7E,EAAE;gBACD,KAAK,EAAE,yBAAW,CAAC,SAAS,CAAC,oBAAoB,CAAC;gBAClD,SAAS,EAAE,kCAAiB,CAAC,0BAA0B,CAAC,uBAAoB,CAAC;aAC9E;SACF,CAAC;QACF,IAAI,CAAC,KAAK,GAAG;YACX,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,KAAK;YACjB,IAAI;YACJ,QAAQ,EAAE,8BAAc,CAAC,GAAG;SAC7B,CAAC;IACJ,CAAC;IAEe,MAAM;QACpB,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,mCAAmC,EACnC,IAAI,CAAC,KAAK,CAAC,SAAS,CACrB,CAAC;QAEF,OAAO,CACL,6BAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAChD,GAAG,EAAE,IAAI,CAAC,UAAU;YAEpB,oBAAC,qCAAa,IACZ,SAAS,EAAE,YAAY;gBAEvB,oBAAC,gCAAO,IACN,SAAS,EAAE,aAAa,EACxB,IAAI,EACF,8BAAM,SAAS,EAAE,IAAA,oBAAU,EAAC,cAAc,EAAE,MAAM,CAAC;wBAAE,oBAAC,iBAAI,IAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,GAAG,CAAO,EAE/H,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,KAAK,EAAE,IAAI,CAAC,MAAM,GAEV,CACI;YAChB,oBAAC,kBAAK,IACJ,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAC7B,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,QAAQ,EAAE,iCAAgB,CAAC,MAAM,EACjC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,IAEzB,IAAI,CAAC,kBAAkB,EAAE,CACpB,CACJ,CACP,CAAC;IACJ,CAAC;IAuBO,kBAAkB;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU;YACxB,OAAO,SAAS,CAAC;QAEnB,OAAO,CACL,oBAAC,wBAAK;YACJ,oBAAC,0BAAO;gBACN,oBAAC,8BAAW,QACT,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;oBACvC,OAAO,CACL,oBAAC,4BAAS,IACR,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,EACzB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,oBAAC,iBAAI,IAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,GAAI,EACxC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,EAC3C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,EACrD,IAAI,EAAE,qCAAoB,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,GACvE,CACH,CAAC;gBACJ,CAAC,CAAC,CACU,CACN,CACJ,CACT,CAAC;IACJ,CAAC;CACF;AA7HD,sEA6HC","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 NavigationAids\r\n */\r\n\r\nimport \"./StandardRotationNavigationAid.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { StandardViewId } from \"@itwin/core-frontend\";\r\nimport { IconSpecUtilities, RelativePosition, ToolbarItemUtilities } from \"@itwin/appui-abstract\";\r\nimport { ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps, Icon, IconSpec, Popup } from \"@itwin/core-react\";\r\nimport { ExpandableButton as NZ_Expandable, ToolbarIcon as NZ_Icon } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { NavigationAidControl } from \"./NavigationAidControl\";\r\nimport { Columns, GroupColumn, GroupTool, Panel } from \"@itwin/components-react\";\r\nimport svgCubeFacesTop from \"@bentley/icons-generic/icons/cube-faces/top.svg\";\r\nimport svgCubeFacesBottom from \"@bentley/icons-generic/icons/cube-faces/bottom.svg\";\r\nimport svgCubeFacesLeft from \"@bentley/icons-generic/icons/cube-faces/left.svg\";\r\nimport svgCubeFacesRight from \"@bentley/icons-generic/icons/cube-faces/right.svg\";\r\nimport svgCubeFacesFront from \"@bentley/icons-generic/icons/cube-faces/front.svg\";\r\nimport svgCubeFacesRear from \"@bentley/icons-generic/icons/cube-faces/rear.svg\";\r\nimport svgCubeFacesIsoLeft from \"@bentley/icons-generic/icons/cube-faces/iso-left.svg\";\r\nimport svgCubeFacesIsoRight from \"@bentley/icons-generic/icons/cube-faces/iso-right.svg\";\r\n\r\n/** A 3D Standard Rotation Navigation Aid control.\r\n * @alpha\r\n */\r\nexport class StandardRotationNavigationAidControl extends NavigationAidControl {\r\n public static navigationAidId = \"StandardRotationNavigationAid\";\r\n\r\n constructor(info: ConfigurableCreateInfo, options: any) {\r\n super(info, options);\r\n this.reactNode = <StandardRotationNavigationAid />;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport interface RotationData {\r\n label: string;\r\n iconsSpec?: IconSpec;\r\n}\r\n\r\n/** @internal */\r\ninterface StandardRotationNavigationAidState {\r\n element: HTMLDivElement | null;\r\n isExpanded: boolean;\r\n list: RotationData[];\r\n selected: StandardViewId;\r\n}\r\n\r\n/** A 3D Standard Rotation Navigation Aid.\r\n * @alpha\r\n */\r\nexport class StandardRotationNavigationAid extends React.Component<CommonProps, StandardRotationNavigationAidState> {\r\n private _title = UiFramework.translate(\"standardRotationNavigationAid.title\");\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<StandardRotationNavigationAidState>;\r\n\r\n constructor(props: any) {\r\n super(props);\r\n const list: RotationData[] = [\r\n {\r\n label: UiFramework.translate(\"rotations.top\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesTop),\r\n }, {\r\n label: UiFramework.translate(\"rotations.bottom\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesBottom),\r\n }, {\r\n label: UiFramework.translate(\"rotations.left\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesLeft),\r\n }, {\r\n label: UiFramework.translate(\"rotations.right\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesRight),\r\n }, {\r\n label: UiFramework.translate(\"rotations.front\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesFront),\r\n }, {\r\n label: UiFramework.translate(\"rotations.rear\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesRear),\r\n }, {\r\n label: UiFramework.translate(\"rotations.isoLeft\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesIsoLeft),\r\n }, {\r\n label: UiFramework.translate(\"rotations.isoRight\"),\r\n iconsSpec: IconSpecUtilities.createWebComponentIconSpec(svgCubeFacesIsoRight),\r\n },\r\n ];\r\n this.state = {\r\n element: null,\r\n isExpanded: false,\r\n list,\r\n selected: StandardViewId.Top,\r\n };\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const className = classnames(\r\n \"uifw-standard-rotation-navigation\",\r\n this.props.className,\r\n );\r\n\r\n return (\r\n <div className={className} style={this.props.style}\r\n ref={this._handleRef}\r\n >\r\n <NZ_Expandable\r\n className={\"expandable\"}\r\n >\r\n <NZ_Icon\r\n className={\"icon-button\"}\r\n icon={\r\n <span className={classnames(\"three-d-icon\", \"icon\")}><Icon iconSpec={this.state.list[this.state.selected].iconsSpec}/></span>\r\n }\r\n onClick={this._toggleIsExpanded}\r\n title={this._title}\r\n >\r\n </NZ_Icon>\r\n </NZ_Expandable>\r\n <Popup\r\n isOpen={this.state.isExpanded}\r\n offset={0}\r\n onClose={this._handlePopupClose}\r\n position={RelativePosition.Bottom}\r\n target={this.state.element}\r\n >\r\n {this.getExpandedContent()}\r\n </Popup>\r\n </div>\r\n );\r\n }\r\n\r\n private _handleRef = (element: HTMLDivElement | null) => {\r\n this.setState(() => ({ element }));\r\n };\r\n\r\n private _handlePopupClose = () => {\r\n this.setState(() => ({ isExpanded: false }));\r\n };\r\n\r\n private _toggleIsExpanded = () => {\r\n this.setState((prevState) => ({ isExpanded: !prevState.isExpanded }));\r\n };\r\n\r\n private _handleListItemClicked = (item: number) => {\r\n const selected = item;\r\n\r\n this.setState(\r\n () => ({ isExpanded: false, selected }),\r\n () => ViewportComponentEvents.setStandardRotation(selected),\r\n );\r\n };\r\n\r\n private getExpandedContent(): React.ReactNode {\r\n if (!this.state.isExpanded)\r\n return undefined;\r\n\r\n return (\r\n <Panel>\r\n <Columns>\r\n <GroupColumn>\r\n {this.state.list.map((item, itemIndex) => {\r\n return (\r\n <GroupTool\r\n key={itemIndex.toString()}\r\n label={item.label}\r\n icon={<Icon iconSpec={item.iconsSpec} />}\r\n isActive={this.state.selected === itemIndex}\r\n onClick={() => this._handleListItemClicked(itemIndex)}\r\n item={ToolbarItemUtilities.createActionButton(\"\", 0, \"\", \"\", () => { })}\r\n />\r\n );\r\n })}\r\n </GroupColumn>\r\n </Columns>\r\n </Panel>\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -66,7 +66,7 @@ export interface ExpandableSectionProps extends CommonProps {
|
|
|
66
66
|
interface ExpandableSectionState {
|
|
67
67
|
expanded: boolean;
|
|
68
68
|
}
|
|
69
|
-
/** Expandable Section React component
|
|
69
|
+
/** Expandable Section React component
|
|
70
70
|
* @beta
|
|
71
71
|
*/
|
|
72
72
|
export declare class ExpandableSection extends React.PureComponent<ExpandableSectionProps, ExpandableSectionState> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListPicker.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAQ,SAAS,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ListPicker.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAQ,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAKjE;;GAEG;AACH,oBAAY,YAAY;IACtB,IAAI,IAAI;IACR,SAAS,IAAI;IACb,SAAS,IAAI;CACd;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACpC,UAAU,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,KAAK,GAAG,CAAC;IACtD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC;IAC1E,6BAA6B;IACb,MAAM;CAmBvB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,UAAU,sBAAsB;IAC9B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK,CAAC,aAAa,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACxG,mCAAmC;gBACvB,KAAK,EAAE,sBAAsB;IAKzC,OAAO,CAAC,QAAQ,CAEd;IAEF,gCAAgC;IAChB,MAAM;CA4BvB;AAED,YAAY;AACZ,wBAAgB,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,CAAC,SAAS,CA8DpE;AAyBD;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,KAAK,CAAC,SAAS,CAAC,uBAAuB,CAAC;IACtE,WAAkB,OAAO,WAAiB;IAC1C,WAAkB,QAAQ,WAAiB;IAC3C,WAAkB,UAAU,WAAiB;IAC7C,WAAkB,aAAa,WAAiB;IAEhD,2BAA2B;gBACf,KAAK,EAAE,uBAAuB;IAK1C,OAAO,CAAC,WAAW;IA0BnB;;;OAGG;IACI,aAAa,CAAC,IAAI,EAAE,QAAQ;IAMnC,OAAO,CAAC,WAAW,CA0BjB;IAEF,yBAAyB;IACT,MAAM;CAYvB"}
|
|
@@ -15,6 +15,7 @@ const components_react_1 = require("@itwin/components-react");
|
|
|
15
15
|
const core_react_1 = require("@itwin/core-react");
|
|
16
16
|
const DragInteraction_1 = require("../toolbar/DragInteraction");
|
|
17
17
|
const UiFramework_1 = require("../UiFramework");
|
|
18
|
+
const itwinui_icons_react_1 = require("@itwin/itwinui-icons-react");
|
|
18
19
|
/** Enum for the list picker item type
|
|
19
20
|
* @beta
|
|
20
21
|
*/
|
|
@@ -40,7 +41,7 @@ class ListPickerItem extends React.PureComponent {
|
|
|
40
41
|
}
|
|
41
42
|
}
|
|
42
43
|
exports.ListPickerItem = ListPickerItem;
|
|
43
|
-
/** Expandable Section React component
|
|
44
|
+
/** Expandable Section React component
|
|
44
45
|
* @beta
|
|
45
46
|
*/
|
|
46
47
|
class ExpandableSection extends React.PureComponent {
|
|
@@ -55,7 +56,7 @@ class ExpandableSection extends React.PureComponent {
|
|
|
55
56
|
/** Renders ExpandableSection */
|
|
56
57
|
render() {
|
|
57
58
|
const className = (0, classnames_1.default)("nz-toolbar-item-expandable-group-group", this.props.className);
|
|
58
|
-
const icon = this.state.expanded ? React.createElement(
|
|
59
|
+
const icon = this.state.expanded ? React.createElement(core_react_1.Icon, { iconSpec: React.createElement(itwinui_icons_react_1.SvgChevronDown, null) }) : React.createElement(core_react_1.Icon, { iconSpec: React.createElement(itwinui_icons_react_1.SvgChevronRight, null) });
|
|
59
60
|
return (React.createElement(components_react_1.Panel, { className: className, style: this.props.style, key: this.props.title },
|
|
60
61
|
React.createElement("div", { onClick: this._onClick, className: this.state.expanded ? "ListPickerInnerContainer-header-expanded" : "ListPickerInnerContainer-header", role: "button", tabIndex: -1, "aria-expanded": this.state.expanded },
|
|
61
62
|
React.createElement("div", { className: "ListPickerInnerContainer-header-content" },
|
|
@@ -108,7 +109,7 @@ exports.getListPanel = getListPanel;
|
|
|
108
109
|
*/
|
|
109
110
|
function ListPickerPopupItem(props) {
|
|
110
111
|
const icon = props.iconSpec ? ( /* istanbul ignore next */typeof props.iconSpec === "string" ? React.createElement(core_react_1.Icon, { iconSpec: props.iconSpec }) :
|
|
111
|
-
React.createElement("i", { className: "icon uifw-item-svg-icon" }, props.iconSpec)) : React.createElement(core_react_1.Icon, { iconSpec:
|
|
112
|
+
React.createElement("i", { className: "icon uifw-item-svg-icon" }, props.iconSpec)) : React.createElement(core_react_1.Icon, { iconSpec: React.createElement(itwinui_icons_react_1.SvgList, null) });
|
|
112
113
|
return (React.createElement(DragInteraction_1.ToolbarDragInteractionContext.Consumer, null, (isEnabled) => {
|
|
113
114
|
return React.createElement(components_react_1.PopupItem, { hideIndicator: isEnabled, icon: icon, title: props.title, panel: getListPanel(props) });
|
|
114
115
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListPicker.js","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.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 Picker\r\n */\r\n\r\nimport \"./ListPicker.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { Columns, GroupColumn, Panel, PopupItem, Title } from \"@itwin/components-react\";\r\nimport { CommonProps, Icon, SizeProps } from \"@itwin/core-react\";\r\nimport { ToolbarDragInteractionContext } from \"../toolbar/DragInteraction\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for the list picker item type\r\n * @beta\r\n */\r\nexport enum ListItemType {\r\n Item = 0, // eslint-disable-line @typescript-eslint/no-shadow\r\n Separator = 1,\r\n Container = 2,\r\n}\r\n\r\n/** List picker item\r\n * @beta\r\n */\r\nexport interface ListItem {\r\n [key: string]: any;\r\n id?: string;\r\n name?: string;\r\n enabled: boolean;\r\n type?: ListItemType;\r\n children?: ListItem[];\r\n}\r\n\r\n/** Properties for the [[ListPicker]] component\r\n * @beta\r\n */\r\nexport interface ListPickerProps {\r\n title: string;\r\n items: ListItem[];\r\n iconSpec?: string | React.ReactNode;\r\n setEnabled: (item: ListItem, enabled: boolean) => any;\r\n onExpanded?: (expand: boolean) => void;\r\n onSizeKnown?: (size: SizeProps) => void;\r\n}\r\n\r\n/** Properties for the [[ListPickerItem]] component\r\n * @beta\r\n */\r\nexport interface ListPickerItemProps extends CommonProps {\r\n key: any;\r\n isActive?: boolean;\r\n isFocused?: boolean;\r\n onClick?: () => void;\r\n label?: string;\r\n}\r\n\r\n/** List Picker Item React component\r\n * @beta\r\n */\r\nexport class ListPickerItem extends React.PureComponent<ListPickerItemProps> {\r\n /** Renders ListPickerItem */\r\n public override render() {\r\n const itemClassName = classnames(\r\n \"ListPicker-item\",\r\n this.props.isActive && \"is-active\",\r\n this.props.isFocused && \"is-focused\",\r\n this.props.className,\r\n );\r\n // TODO - if cut off, show a title\r\n const title: string | undefined = (this.props.label && this.props.label.length > 25) ? this.props.label : undefined;\r\n\r\n return (\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n <div className={itemClassName} onClick={this.props.onClick} role=\"button\" tabIndex={-1}>\r\n <div className=\"label\" title={title}>\r\n {this.props.label}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the [[ExpandableSection]] component\r\n * @beta\r\n */\r\nexport interface ExpandableSectionProps extends CommonProps {\r\n title?: string;\r\n expanded?: boolean;\r\n /** Content */\r\n children?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[ExpandableSection]] component\r\n * @internal\r\n */\r\ninterface ExpandableSectionState {\r\n expanded: boolean;\r\n}\r\n\r\n/** Expandable Section React component used by [[ListPickerBase]]\r\n * @beta\r\n */\r\nexport class ExpandableSection extends React.PureComponent<ExpandableSectionProps, ExpandableSectionState> {\r\n /** Creates an ExpandableSection */\r\n constructor(props: ExpandableSectionProps) {\r\n super(props);\r\n this.state = { expanded: !!this.props.expanded };\r\n }\r\n\r\n private _onClick = () => {\r\n this.setState((prevState) => ({ expanded: !prevState.expanded }));\r\n };\r\n\r\n /** Renders ExpandableSection */\r\n public override render() {\r\n const className = classnames(\r\n \"nz-toolbar-item-expandable-group-group\",\r\n this.props.className,\r\n );\r\n\r\n const icon = this.state.expanded ? <i className=\"icon icon-chevron-down\" /> : <i className=\"icon icon-chevron-right\" />;\r\n\r\n return (\r\n <Panel className={className} style={this.props.style} key={this.props.title}>\r\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\r\n <div onClick={this._onClick}\r\n className={this.state.expanded ? \"ListPickerInnerContainer-header-expanded\" : \"ListPickerInnerContainer-header\"}\r\n role=\"button\" tabIndex={-1} aria-expanded={this.state.expanded}\r\n >\r\n <div className=\"ListPickerInnerContainer-header-content\">\r\n <div className=\"ListPickerInnerContainer-expander\">{icon}</div>\r\n <div className=\"ListPickerInnerContainer-title\">{this.props.title}</div>\r\n </div>\r\n </div>\r\n {this.state.expanded ?\r\n <GroupColumn>\r\n {this.props.children}\r\n </GroupColumn> : <div />\r\n }\r\n </Panel>\r\n );\r\n }\r\n}\r\n\r\n/** @beta */\r\nexport function getListPanel(props: ListPickerProps): React.ReactNode {\r\n const expandSingleSection = (): boolean => {\r\n const populatedContainers = props.items.filter((item: ListItem) => {\r\n return (item.type === ListItemType.Container && item.children!.length !== 0);\r\n });\r\n return populatedContainers.length === 1;\r\n };\r\n\r\n const listItemToElement = (item: ListItem, itemIndex: number) => {\r\n switch (item.type) {\r\n case ListItemType.Item:\r\n return (\r\n <ListPickerItem\r\n {...props}\r\n key={itemIndex.toString()}\r\n label={item.name}\r\n isActive={item.enabled}\r\n onClick={\r\n // istanbul ignore next\r\n () => { props.setEnabled(item, !item.enabled); }\r\n }\r\n />\r\n );\r\n case ListItemType.Separator:\r\n return (\r\n <div key={itemIndex.toString()} className=\"ListPicker-separator\" />\r\n );\r\n case ListItemType.Container:\r\n if (item.children!.length !== 0) {\r\n return (\r\n <ExpandableSection\r\n key={itemIndex.toString()}\r\n title={item.name}\r\n className=\"ListPickerInnerContainer\"\r\n expanded={expandSingleSection()}\r\n >\r\n <GroupColumn>\r\n {item.children!.map(listItemToElement)}\r\n </GroupColumn>\r\n </ExpandableSection>\r\n );\r\n } else {\r\n return (<div key={itemIndex.toString()} />);\r\n }\r\n // istanbul ignore next\r\n default:\r\n return (<div key={itemIndex.toString()} />);\r\n }\r\n };\r\n\r\n return (\r\n <Panel className=\"ListPickerContainer\">\r\n <Title>\r\n {props.title}\r\n </Title>\r\n <Columns>\r\n <GroupColumn className=\"ListPicker-column\">\r\n {props.items.map(listItemToElement)}\r\n </GroupColumn>\r\n </Columns>\r\n </Panel>\r\n );\r\n}\r\n\r\n/**\r\n * List picker toolbar popup item.\r\n * Used to provide an expandable list of items to enable/disable items.\r\n * @beta\r\n */\r\nfunction ListPickerPopupItem(props: ListPickerProps) {\r\n const icon = props.iconSpec ? (/* istanbul ignore next */ typeof props.iconSpec === \"string\" ? <Icon iconSpec={props.iconSpec} /> :\r\n <i className=\"icon uifw-item-svg-icon\">{props.iconSpec}</i>) : <Icon iconSpec=\"icon-list\" />;\r\n\r\n return (\r\n <ToolbarDragInteractionContext.Consumer>\r\n {(isEnabled) => {\r\n return <PopupItem\r\n hideIndicator={isEnabled}\r\n icon={icon}\r\n title={props.title}\r\n panel={getListPanel(props)}\r\n />;\r\n }}\r\n </ToolbarDragInteractionContext.Consumer>\r\n );\r\n}\r\n\r\n/** Properties for the [[ListPicker]] component\r\n * @beta\r\n */\r\nexport interface ListPickerPropsExtended extends ListPickerProps {\r\n enableAllFunc?: () => void;\r\n disableAllFunc?: () => void;\r\n invertFunc?: () => void;\r\n}\r\n\r\n/**\r\n * List Picker that lets the user pick from a list of items to enable/disable\r\n * It also provides options to enable all, disable all and invert selection\r\n * @beta\r\n */\r\nexport class ListPicker extends React.Component<ListPickerPropsExtended> {\r\n public static get Key_All() { return -3; }\r\n public static get Key_None() { return -2; }\r\n public static get Key_Invert() { return -1; }\r\n public static get Key_Separator() { return -4; }\r\n\r\n /** Creates a ListPicker */\r\n constructor(props: ListPickerPropsExtended) {\r\n super(props);\r\n }\r\n\r\n // Creates an array of items containing the separator and special requests (all, none, invert)\r\n private createItems(items: ListItem[]): ListItem[] {\r\n const newItems: ListItem[] = [];\r\n\r\n // Create special buttons (All/None/Invert)\r\n if (this.props.enableAllFunc) {\r\n let allEnabled = true;\r\n items.map((item: ListItem) => { allEnabled = allEnabled && item.enabled; });\r\n newItems.push({ key: ListPicker.Key_All, name: UiFramework.translate(\"pickerButtons.all\"), enabled: allEnabled, type: ListItemType.Item });\r\n }\r\n if (this.props.disableAllFunc) {\r\n let allDisabled = false;\r\n items.map((item: ListItem) => { allDisabled = allDisabled || item.enabled; });\r\n newItems.push({ key: ListPicker.Key_None, name: UiFramework.translate(\"pickerButtons.none\"), enabled: !allDisabled, type: ListItemType.Item });\r\n }\r\n if (this.props.invertFunc) {\r\n newItems.push({ key: ListPicker.Key_Invert, name: UiFramework.translate(\"pickerButtons.invert\"), enabled: false, type: ListItemType.Item });\r\n }\r\n if (this.props.enableAllFunc || this.props.disableAllFunc || this.props.invertFunc) {\r\n newItems.push({ key: ListPicker.Key_Separator, name: UiFramework.translate(\"pickerButtons.separator\"), enabled: false, type: ListItemType.Separator });\r\n }\r\n\r\n // Push items\r\n items.map((item) => { newItems.push(item); });\r\n return newItems;\r\n }\r\n\r\n /**\r\n * Checks if item is a special item.\r\n * @param item Item to check\r\n */\r\n public isSpecialItem(item: ListItem) {\r\n return item.key === ListPicker.Key_All || item.key === ListPicker.Key_Invert || item.key === ListPicker.Key_None || item.type !== ListItemType.Item || item.key === ListPicker.Key_Separator;\r\n }\r\n\r\n // Handle enabling/disabling the items\r\n // This will call the this.props.setEnabled function to provide the parent with a chance to process it\r\n private _setEnabled = (item: ListItem, enabled: boolean) => {\r\n if (this.isSpecialItem(item)) {\r\n switch (item.key) {\r\n case ListPicker.Key_All: {\r\n // istanbul ignore else\r\n if (this.props.enableAllFunc)\r\n this.props.enableAllFunc();\r\n return;\r\n }\r\n case ListPicker.Key_None: {\r\n // istanbul ignore else\r\n if (this.props.disableAllFunc)\r\n this.props.disableAllFunc();\r\n return;\r\n }\r\n case ListPicker.Key_Invert: {\r\n // istanbul ignore else\r\n if (this.props.invertFunc)\r\n this.props.invertFunc();\r\n return;\r\n }\r\n }\r\n }\r\n\r\n // Call on parent to do processing of the item\r\n this.props.setEnabled(item, enabled);\r\n };\r\n\r\n /** Renders ListPicker */\r\n public override render() {\r\n return (\r\n <ListPickerPopupItem\r\n {...this.props}\r\n title={this.props.title}\r\n setEnabled={this._setEnabled}\r\n onExpanded={this.props.onExpanded}\r\n items={this.createItems(this.props.items)}\r\n iconSpec={this.props.iconSpec}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ListPicker.js","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.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 Picker\r\n */\r\n\r\nimport \"./ListPicker.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { Columns, GroupColumn, Panel, PopupItem, Title } from \"@itwin/components-react\";\r\nimport { CommonProps, Icon, SizeProps } from \"@itwin/core-react\";\r\nimport { ToolbarDragInteractionContext } from \"../toolbar/DragInteraction\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { SvgChevronDown, SvgChevronRight, SvgList } from \"@itwin/itwinui-icons-react\";\r\n\r\n/** Enum for the list picker item type\r\n * @beta\r\n */\r\nexport enum ListItemType {\r\n Item = 0, // eslint-disable-line @typescript-eslint/no-shadow\r\n Separator = 1,\r\n Container = 2,\r\n}\r\n\r\n/** List picker item\r\n * @beta\r\n */\r\nexport interface ListItem {\r\n [key: string]: any;\r\n id?: string;\r\n name?: string;\r\n enabled: boolean;\r\n type?: ListItemType;\r\n children?: ListItem[];\r\n}\r\n\r\n/** Properties for the [[ListPicker]] component\r\n * @beta\r\n */\r\nexport interface ListPickerProps {\r\n title: string;\r\n items: ListItem[];\r\n iconSpec?: string | React.ReactNode;\r\n setEnabled: (item: ListItem, enabled: boolean) => any;\r\n onExpanded?: (expand: boolean) => void;\r\n onSizeKnown?: (size: SizeProps) => void;\r\n}\r\n\r\n/** Properties for the [[ListPickerItem]] component\r\n * @beta\r\n */\r\nexport interface ListPickerItemProps extends CommonProps {\r\n key: any;\r\n isActive?: boolean;\r\n isFocused?: boolean;\r\n onClick?: () => void;\r\n label?: string;\r\n}\r\n\r\n/** List Picker Item React component\r\n * @beta\r\n */\r\nexport class ListPickerItem extends React.PureComponent<ListPickerItemProps> {\r\n /** Renders ListPickerItem */\r\n public override render() {\r\n const itemClassName = classnames(\r\n \"ListPicker-item\",\r\n this.props.isActive && \"is-active\",\r\n this.props.isFocused && \"is-focused\",\r\n this.props.className,\r\n );\r\n // TODO - if cut off, show a title\r\n const title: string | undefined = (this.props.label && this.props.label.length > 25) ? this.props.label : undefined;\r\n\r\n return (\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n <div className={itemClassName} onClick={this.props.onClick} role=\"button\" tabIndex={-1}>\r\n <div className=\"label\" title={title}>\r\n {this.props.label}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the [[ExpandableSection]] component\r\n * @beta\r\n */\r\nexport interface ExpandableSectionProps extends CommonProps {\r\n title?: string;\r\n expanded?: boolean;\r\n /** Content */\r\n children?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[ExpandableSection]] component\r\n * @internal\r\n */\r\ninterface ExpandableSectionState {\r\n expanded: boolean;\r\n}\r\n\r\n/** Expandable Section React component\r\n * @beta\r\n */\r\nexport class ExpandableSection extends React.PureComponent<ExpandableSectionProps, ExpandableSectionState> {\r\n /** Creates an ExpandableSection */\r\n constructor(props: ExpandableSectionProps) {\r\n super(props);\r\n this.state = { expanded: !!this.props.expanded };\r\n }\r\n\r\n private _onClick = () => {\r\n this.setState((prevState) => ({ expanded: !prevState.expanded }));\r\n };\r\n\r\n /** Renders ExpandableSection */\r\n public override render() {\r\n const className = classnames(\r\n \"nz-toolbar-item-expandable-group-group\",\r\n this.props.className,\r\n );\r\n\r\n const icon = this.state.expanded ? <Icon iconSpec={<SvgChevronDown />} /> : <Icon iconSpec={<SvgChevronRight />} />;\r\n\r\n return (\r\n <Panel className={className} style={this.props.style} key={this.props.title}>\r\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\r\n <div onClick={this._onClick}\r\n className={this.state.expanded ? \"ListPickerInnerContainer-header-expanded\" : \"ListPickerInnerContainer-header\"}\r\n role=\"button\" tabIndex={-1} aria-expanded={this.state.expanded}\r\n >\r\n <div className=\"ListPickerInnerContainer-header-content\">\r\n <div className=\"ListPickerInnerContainer-expander\">{icon}</div>\r\n <div className=\"ListPickerInnerContainer-title\">{this.props.title}</div>\r\n </div>\r\n </div>\r\n {this.state.expanded ?\r\n <GroupColumn>\r\n {this.props.children}\r\n </GroupColumn> : <div />\r\n }\r\n </Panel>\r\n );\r\n }\r\n}\r\n\r\n/** @beta */\r\nexport function getListPanel(props: ListPickerProps): React.ReactNode {\r\n const expandSingleSection = (): boolean => {\r\n const populatedContainers = props.items.filter((item: ListItem) => {\r\n return (item.type === ListItemType.Container && item.children!.length !== 0);\r\n });\r\n return populatedContainers.length === 1;\r\n };\r\n\r\n const listItemToElement = (item: ListItem, itemIndex: number) => {\r\n switch (item.type) {\r\n case ListItemType.Item:\r\n return (\r\n <ListPickerItem\r\n {...props}\r\n key={itemIndex.toString()}\r\n label={item.name}\r\n isActive={item.enabled}\r\n onClick={\r\n // istanbul ignore next\r\n () => { props.setEnabled(item, !item.enabled); }\r\n }\r\n />\r\n );\r\n case ListItemType.Separator:\r\n return (\r\n <div key={itemIndex.toString()} className=\"ListPicker-separator\" />\r\n );\r\n case ListItemType.Container:\r\n if (item.children!.length !== 0) {\r\n return (\r\n <ExpandableSection\r\n key={itemIndex.toString()}\r\n title={item.name}\r\n className=\"ListPickerInnerContainer\"\r\n expanded={expandSingleSection()}\r\n >\r\n <GroupColumn>\r\n {item.children!.map(listItemToElement)}\r\n </GroupColumn>\r\n </ExpandableSection>\r\n );\r\n } else {\r\n return (<div key={itemIndex.toString()} />);\r\n }\r\n // istanbul ignore next\r\n default:\r\n return (<div key={itemIndex.toString()} />);\r\n }\r\n };\r\n\r\n return (\r\n <Panel className=\"ListPickerContainer\">\r\n <Title>\r\n {props.title}\r\n </Title>\r\n <Columns>\r\n <GroupColumn className=\"ListPicker-column\">\r\n {props.items.map(listItemToElement)}\r\n </GroupColumn>\r\n </Columns>\r\n </Panel>\r\n );\r\n}\r\n\r\n/**\r\n * List picker toolbar popup item.\r\n * Used to provide an expandable list of items to enable/disable items.\r\n * @beta\r\n */\r\nfunction ListPickerPopupItem(props: ListPickerProps) {\r\n const icon = props.iconSpec ? (/* istanbul ignore next */ typeof props.iconSpec === \"string\" ? <Icon iconSpec={props.iconSpec} /> :\r\n <i className=\"icon uifw-item-svg-icon\">{props.iconSpec}</i>) : <Icon iconSpec={<SvgList />} />;\r\n\r\n return (\r\n <ToolbarDragInteractionContext.Consumer>\r\n {(isEnabled) => {\r\n return <PopupItem\r\n hideIndicator={isEnabled}\r\n icon={icon}\r\n title={props.title}\r\n panel={getListPanel(props)}\r\n />;\r\n }}\r\n </ToolbarDragInteractionContext.Consumer>\r\n );\r\n}\r\n\r\n/** Properties for the [[ListPicker]] component\r\n * @beta\r\n */\r\nexport interface ListPickerPropsExtended extends ListPickerProps {\r\n enableAllFunc?: () => void;\r\n disableAllFunc?: () => void;\r\n invertFunc?: () => void;\r\n}\r\n\r\n/**\r\n * List Picker that lets the user pick from a list of items to enable/disable\r\n * It also provides options to enable all, disable all and invert selection\r\n * @beta\r\n */\r\nexport class ListPicker extends React.Component<ListPickerPropsExtended> {\r\n public static get Key_All() { return -3; }\r\n public static get Key_None() { return -2; }\r\n public static get Key_Invert() { return -1; }\r\n public static get Key_Separator() { return -4; }\r\n\r\n /** Creates a ListPicker */\r\n constructor(props: ListPickerPropsExtended) {\r\n super(props);\r\n }\r\n\r\n // Creates an array of items containing the separator and special requests (all, none, invert)\r\n private createItems(items: ListItem[]): ListItem[] {\r\n const newItems: ListItem[] = [];\r\n\r\n // Create special buttons (All/None/Invert)\r\n if (this.props.enableAllFunc) {\r\n let allEnabled = true;\r\n items.map((item: ListItem) => { allEnabled = allEnabled && item.enabled; });\r\n newItems.push({ key: ListPicker.Key_All, name: UiFramework.translate(\"pickerButtons.all\"), enabled: allEnabled, type: ListItemType.Item });\r\n }\r\n if (this.props.disableAllFunc) {\r\n let allDisabled = false;\r\n items.map((item: ListItem) => { allDisabled = allDisabled || item.enabled; });\r\n newItems.push({ key: ListPicker.Key_None, name: UiFramework.translate(\"pickerButtons.none\"), enabled: !allDisabled, type: ListItemType.Item });\r\n }\r\n if (this.props.invertFunc) {\r\n newItems.push({ key: ListPicker.Key_Invert, name: UiFramework.translate(\"pickerButtons.invert\"), enabled: false, type: ListItemType.Item });\r\n }\r\n if (this.props.enableAllFunc || this.props.disableAllFunc || this.props.invertFunc) {\r\n newItems.push({ key: ListPicker.Key_Separator, name: UiFramework.translate(\"pickerButtons.separator\"), enabled: false, type: ListItemType.Separator });\r\n }\r\n\r\n // Push items\r\n items.map((item) => { newItems.push(item); });\r\n return newItems;\r\n }\r\n\r\n /**\r\n * Checks if item is a special item.\r\n * @param item Item to check\r\n */\r\n public isSpecialItem(item: ListItem) {\r\n return item.key === ListPicker.Key_All || item.key === ListPicker.Key_Invert || item.key === ListPicker.Key_None || item.type !== ListItemType.Item || item.key === ListPicker.Key_Separator;\r\n }\r\n\r\n // Handle enabling/disabling the items\r\n // This will call the this.props.setEnabled function to provide the parent with a chance to process it\r\n private _setEnabled = (item: ListItem, enabled: boolean) => {\r\n if (this.isSpecialItem(item)) {\r\n switch (item.key) {\r\n case ListPicker.Key_All: {\r\n // istanbul ignore else\r\n if (this.props.enableAllFunc)\r\n this.props.enableAllFunc();\r\n return;\r\n }\r\n case ListPicker.Key_None: {\r\n // istanbul ignore else\r\n if (this.props.disableAllFunc)\r\n this.props.disableAllFunc();\r\n return;\r\n }\r\n case ListPicker.Key_Invert: {\r\n // istanbul ignore else\r\n if (this.props.invertFunc)\r\n this.props.invertFunc();\r\n return;\r\n }\r\n }\r\n }\r\n\r\n // Call on parent to do processing of the item\r\n this.props.setEnabled(item, enabled);\r\n };\r\n\r\n /** Renders ListPicker */\r\n public override render() {\r\n return (\r\n <ListPickerPopupItem\r\n {...this.props}\r\n title={this.props.title}\r\n setEnabled={this._setEnabled}\r\n onExpanded={this.props.onExpanded}\r\n items={this.createItems(this.props.items)}\r\n iconSpec={this.props.iconSpec}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -12,7 +12,7 @@ $no-shadow: none;
|
|
|
12
12
|
$shadow: drop-shadow(0 1px 0 $buic-text-color-reverse);
|
|
13
13
|
$space-after-label: 16px;
|
|
14
14
|
$space-before-label: 16px;
|
|
15
|
-
$label-color:
|
|
15
|
+
$label-color: var(--iui-color-text);
|
|
16
16
|
$border-color: $buic-background-control-stroke;
|
|
17
17
|
$item-height: 32px;
|
|
18
18
|
|
|
@@ -85,7 +85,7 @@ $item-height: 32px;
|
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
.ListPicker-item {
|
|
88
|
-
$label-color:
|
|
88
|
+
$label-color: var(--iui-color-text);
|
|
89
89
|
$pressed-label-color: $buic-foreground-activehover;
|
|
90
90
|
$hovered-label-color: $buic-foreground-primary-tone;
|
|
91
91
|
$focused-label-color: $buic-foreground-primary-tone;
|
|
@@ -135,7 +135,7 @@ $item-height: 32px;
|
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
&:active {
|
|
138
|
-
background:
|
|
138
|
+
background: var(--iui-color-background-hover);
|
|
139
139
|
color: $pressed-label-color;
|
|
140
140
|
|
|
141
141
|
> .icon,
|
|
@@ -187,7 +187,7 @@ $item-height: 32px;
|
|
|
187
187
|
}
|
|
188
188
|
|
|
189
189
|
.ListPickerWidget-item {
|
|
190
|
-
$label-color:
|
|
190
|
+
$label-color: var(--iui-color-text);
|
|
191
191
|
$pressed-label-color: $buic-foreground-activehover;
|
|
192
192
|
$hovered-label-color: $buic-foreground-primary;
|
|
193
193
|
$focused-label-color: $buic-foreground-primary;
|
|
@@ -289,7 +289,7 @@ $item-height: 32px;
|
|
|
289
289
|
|
|
290
290
|
white-space: nowrap;
|
|
291
291
|
text-align: center;
|
|
292
|
-
color:
|
|
292
|
+
color: var(--iui-color-text);
|
|
293
293
|
filter: drop-shadow(0 1px 0 $buic-text-color-reverse);
|
|
294
294
|
margin-bottom: 9px;
|
|
295
295
|
margin-left: $horizontal-margin;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewSelector.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ViewSelector.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAa,gBAAgB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,
|
|
1
|
+
{"version":3,"file":"ViewSelector.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ViewSelector.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAa,gBAAgB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAqB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAKnE,OAAO,EAAE,QAAQ,EAA4B,MAAM,cAAc,CAAC;AAKlE;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,EAAE,UAAU,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,OAAO,CAAC,4BAA4B,CAAC;CAAI;AAEvF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,oBAAY,wBAAwB,GAAG,IAAI,CAAC,iBAAiB,EAAE,cAAc,GAAG,cAAc,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;AAe/H;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK,CAAC,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAErF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAqC;IAC3F,OAAO,CAAC,yBAAyB,CAAC,CAAa;IAC/C,OAAO,CAAC,UAAU,CAAS;IAE3B,gBAAuB,YAAY,EAAE,wBAAwB,CAK3D;IAEF,4CAA4C;IAC5C,gBAAuB,0BAA0B,2BAAkC;IAEnF;OACG;WACW,kBAAkB,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,GAAG,IAAI;IAI/H,6BAA6B;gBACjB,KAAK,EAAE,iBAAiB;IAcd,iBAAiB;IAQjB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;IAMrD,oBAAoB;IAOpC,OAAO,CAAC,kCAAkC,CAMxC;IAEF,OAAO,CAAC,kBAAkB;IAoD1B;;OAEG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCvC;;;OAGG;IAEU,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBrD,OAAO,CAAC,WAAW,CAkDjB;IAIF,OAAO,CAAC,WAAW,CAGjB;IAEF;;OAEG;IACa,MAAM;CAkBvB;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,oEAAoD,CAAC"}
|
|
@@ -16,6 +16,7 @@ const connectIModel_1 = require("../redux/connectIModel");
|
|
|
16
16
|
const UiFramework_1 = require("../UiFramework");
|
|
17
17
|
const ViewUtilities_1 = require("../utils/ViewUtilities");
|
|
18
18
|
const ListPicker_1 = require("./ListPicker");
|
|
19
|
+
const saved_view_svg_1 = require("@bentley/icons-generic/icons/saved-view.svg");
|
|
19
20
|
/** ViewSelector Changed Event class.
|
|
20
21
|
* @beta
|
|
21
22
|
*/
|
|
@@ -230,8 +231,9 @@ class ViewSelector extends React.Component {
|
|
|
230
231
|
render() {
|
|
231
232
|
if (!this.state.initialized)
|
|
232
233
|
return null;
|
|
234
|
+
const iconSpec = appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(saved_view_svg_1.default);
|
|
233
235
|
const { imodel, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
234
|
-
return (React.createElement(ListPicker_1.ListPicker, { ...props, title: this.state.title, setEnabled: this._setEnabled, items: this.state.items, iconSpec:
|
|
236
|
+
return (React.createElement(ListPicker_1.ListPicker, { ...props, title: this.state.title, setEnabled: this._setEnabled, items: this.state.items, iconSpec: iconSpec, onExpanded: this._onExpanded }));
|
|
235
237
|
}
|
|
236
238
|
}
|
|
237
239
|
exports.ViewSelector = ViewSelector;
|