@itwin/appui-react 4.11.0 → 4.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -1
- package/lib/cjs/appui-react/UiFramework.d.ts +4 -1
- package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/cjs/appui-react/UiFramework.js +13 -14
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/UiFramework.json +345 -0
- package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.js +3 -1
- package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposer.js +2 -1
- package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +3 -4
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
- package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
- package/lib/cjs/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
- package/lib/cjs/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +11 -5
- package/lib/cjs/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
- package/lib/{esm/appui-react/childwindow/PopoutWidget.scss → cjs/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +25 -33
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
- package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +5 -18
- package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
- package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentControl.d.ts +2 -0
- package/lib/cjs/appui-react/content/ContentControl.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentControl.js +1 -0
- package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentLayout.d.ts +2 -0
- package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentLayout.js +14 -14
- package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
- package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
- package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts +2 -2
- package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/FloatingViewportContent.js +2 -3
- package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.js +7 -8
- package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
- package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
- package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts +5 -5
- package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/InternalContentViewManager.js +5 -7
- package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
- package/lib/cjs/appui-react/content/split-pane/SplitPane.js +10 -12
- package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
- package/lib/cjs/appui-react/cursor/CursorInformation.d.ts +2 -0
- package/lib/cjs/appui-react/cursor/CursorInformation.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/CursorInformation.js +2 -0
- package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +4 -24
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
- package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ContentDialog.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/ContentDialog.js +8 -7
- package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
- package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +5 -2
- package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/DialogManagerBase.js +6 -3
- package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
- package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js +1 -2
- package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
- package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js +2 -2
- package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
- package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js +1 -2
- package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/ModelessDialog.js +3 -1
- package/lib/cjs/appui-react/dialog/ModelessDialog.js.map +1 -1
- package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js +3 -1
- package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +2 -0
- package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.js +6 -2
- package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkContent.d.ts +5 -0
- package/lib/cjs/appui-react/framework/FrameworkContent.d.ts.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkContent.js +4 -0
- package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts +2 -0
- package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkDialogs.js +4 -0
- package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.js +8 -0
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
- package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkToolSettings.js +1 -0
- package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +24 -22
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +45 -50
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +8 -6
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +4 -4
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +4 -5
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js +1 -0
- package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveStageId.js +2 -1
- package/lib/cjs/appui-react/hooks/useActiveStageId.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveViewport.js +2 -0
- package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
- package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
- package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
- package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useTranslation.d.ts +7 -0
- package/lib/cjs/appui-react/hooks/useTranslation.d.ts.map +1 -0
- package/lib/cjs/appui-react/{useTranslation.js → hooks/useTranslation.js} +15 -6
- package/lib/cjs/appui-react/hooks/useTranslation.js.map +1 -0
- package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useUiVisibility.js +1 -0
- package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
- package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
- package/lib/cjs/appui-react/layout/StandardLayout.scss +1 -1
- package/lib/cjs/appui-react/layout/base/DragManager.js +1 -2
- package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
- package/lib/cjs/appui-react/layout/base/NineZone.js +1 -1
- package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
- package/lib/cjs/appui-react/layout/footer/_variables.scss +0 -2
- package/lib/cjs/appui-react/layout/outline/TabOutline.js +1 -1
- package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
- package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +1 -1
- package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/NineZoneAction.d.ts +3 -2
- package/lib/cjs/appui-react/layout/state/NineZoneAction.d.ts.map +1 -1
- package/lib/cjs/appui-react/layout/state/NineZoneAction.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.d.ts.map +1 -1
- package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +14 -15
- package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/PanelState.d.ts +2 -5
- package/lib/cjs/appui-react/layout/state/PanelState.d.ts.map +1 -1
- package/lib/cjs/appui-react/layout/state/PanelState.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
- package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.d.ts +4 -3
- package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js +12 -10
- package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
- package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
- package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
- package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -1
- package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
- package/lib/cjs/appui-react/layout/tool-settings/Docked.js +2 -2
- package/lib/cjs/appui-react/layout/tool-settings/Docked.js.map +1 -1
- package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +3 -13
- package/lib/cjs/appui-react/layout/tool-settings/Handle.scss +2 -2
- package/lib/cjs/appui-react/layout/tool-settings/Setting.js +1 -1
- package/lib/cjs/appui-react/layout/tool-settings/Setting.js.map +1 -1
- package/lib/cjs/appui-react/layout/tool-settings/Setting.scss +1 -2
- package/lib/cjs/appui-react/layout/widget/Button.d.ts +3 -2
- package/lib/cjs/appui-react/layout/widget/Button.d.ts.map +1 -1
- package/lib/cjs/appui-react/layout/widget/Button.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/ContentContainer.js +1 -1
- package/lib/cjs/appui-react/layout/widget/ContentContainer.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts +3 -3
- package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/layout/widget/ContentManager.js +7 -1
- package/lib/cjs/appui-react/layout/widget/ContentManager.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +2 -2
- package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/FloatingTab.js +5 -6
- package/lib/cjs/appui-react/layout/widget/FloatingTab.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +2 -4
- package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/PanelWidget.js +1 -1
- package/lib/cjs/appui-react/layout/widget/PanelWidget.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/Tab.js +4 -4
- package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/Widget.js +2 -2
- package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
- package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +5 -8
- package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
- package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.js +2 -1
- package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.d.ts +12 -0
- package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.js +18 -10
- package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageRenderer.js +8 -9
- package/lib/cjs/appui-react/messages/MessageRenderer.js.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -0
- package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.js +7 -9
- package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js +1 -0
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +2 -0
- package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.js +3 -1
- package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +2 -0
- package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.js +8 -13
- package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.js +2 -3
- package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/ComponentPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/ComponentPopup.js +1 -1
- package/lib/cjs/appui-react/popup/ComponentPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +8 -5
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/PopupManager.d.ts +5 -1
- package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/PopupManager.js +24 -24
- package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/cjs/appui-react/popup/PositionPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/PositionPopup.js +1 -0
- package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.js +2 -3
- package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +7 -0
- package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
- package/lib/cjs/appui-react/preview/PreviewFeatures.js +8 -6
- package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
- package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
- package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
- package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
- package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/Badge.d.ts.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/Badge.js +2 -2
- package/lib/cjs/appui-react/preview/new-toolbars/Badge.js.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js +2 -2
- package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/Item.js +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/Item.js.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
- package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
- package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +40 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
- package/lib/{esm/appui-react/layout/footer/message-center/_variables.scss → cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +25 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +26 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +45 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +28 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +18 -0
- package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
- package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
- package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
- package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
- 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 +9 -4
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +2 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts +23 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +10 -7
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +38 -27
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
- package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Overflow.js +1 -1
- package/lib/cjs/appui-react/statusbar/Overflow.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +1 -3
- package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.js +21 -13
- package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.scss +18 -0
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -0
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/ActivityCenter.js +4 -2
- package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.js +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.js +2 -2
- package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.scss +2 -2
- package/lib/cjs/appui-react/statusfields/SnapMode.js +1 -1
- package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js +91 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js +28 -0
- package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
- package/lib/{esm/appui-react/layout/footer/message-center/Message.scss → cjs/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +12 -6
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
- package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
- package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts +2 -0
- package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
- package/lib/cjs/appui-react/syncui/UiSyncEvent.js +2 -0
- package/lib/cjs/appui-react/syncui/UiSyncEvent.js.map +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js +2 -2
- package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
- package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +2 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +7 -5
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +10 -17
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
- package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
- package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
- package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js +2 -1
- package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -4
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +11 -15
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
- package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
- package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
- package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
- package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +7 -9
- package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/AppUiSettings.js +1 -0
- package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -0
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +3 -3
- package/lib/cjs/appui-react/utils/InternalUiShowHideManager.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 +12 -11
- package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts +13 -0
- package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
- package/lib/cjs/appui-react/widget-panels/DockedBar.js +18 -0
- package/lib/cjs/appui-react/widget-panels/DockedBar.js.map +1 -0
- package/lib/cjs/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +17 -19
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
- package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts +0 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.js +2 -5
- package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Tab.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Tab.js +2 -3
- package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +0 -12
- package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js +29 -54
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +4 -27
- package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
- package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js +2 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +8 -5
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
- package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
- package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +2 -0
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +10 -11
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
- package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.d.ts +1 -6
- package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.js +2 -8
- package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/cjs/appui-react/widgets/useWidget.js +1 -1
- package/lib/cjs/appui-react/widgets/useWidget.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +1 -1
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +1 -1
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.d.ts +4 -1
- package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/esm/appui-react/UiFramework.js +13 -14
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.json +345 -0
- package/lib/esm/appui-react/accudraw/AccuDrawDialog.js +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.js +3 -1
- package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/esm/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposer.js +2 -1
- package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js +4 -5
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
- package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
- package/lib/esm/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
- package/lib/esm/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
- package/lib/esm/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
- package/lib/esm/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +9 -3
- package/lib/esm/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
- package/lib/{cjs/appui-react/childwindow/PopoutWidget.scss → esm/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +25 -33
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
- package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
- package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +4 -15
- package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
- package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
- package/lib/esm/appui-react/content/ContentControl.d.ts +2 -0
- package/lib/esm/appui-react/content/ContentControl.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentControl.js +1 -0
- package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
- package/lib/esm/appui-react/content/ContentLayout.d.ts +2 -0
- package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentLayout.js +14 -14
- package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
- package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
- package/lib/esm/appui-react/content/FloatingViewportContent.d.ts +2 -2
- package/lib/esm/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
- package/lib/esm/appui-react/content/FloatingViewportContent.js +2 -3
- package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
- package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
- package/lib/esm/appui-react/content/IModelViewport.js +7 -8
- package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
- package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
- package/lib/esm/appui-react/content/InternalContentViewManager.d.ts +5 -5
- package/lib/esm/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
- package/lib/esm/appui-react/content/InternalContentViewManager.js +6 -8
- package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
- package/lib/esm/appui-react/content/split-pane/SplitPane.js +10 -12
- package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
- package/lib/esm/appui-react/cursor/CursorInformation.d.ts +2 -0
- package/lib/esm/appui-react/cursor/CursorInformation.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/CursorInformation.js +2 -0
- package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +5 -23
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
- package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
- package/lib/esm/appui-react/dialog/ContentDialog.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/ContentDialog.js +8 -7
- package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +5 -2
- package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.js +6 -3
- package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
- package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/InternalContentDialogManager.js +2 -3
- package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
- package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/InternalModalDialogManager.js +2 -2
- package/lib/esm/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
- package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js +2 -3
- package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/ModelessDialog.js +3 -1
- package/lib/esm/appui-react/dialog/ModelessDialog.js.map +1 -1
- package/lib/esm/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js +3 -1
- package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +2 -0
- package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.js +6 -2
- package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkContent.d.ts +5 -0
- package/lib/esm/appui-react/framework/FrameworkContent.d.ts.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkContent.js +4 -0
- package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts +2 -0
- package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkDialogs.js +4 -0
- package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
- package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkFrontstages.js +8 -0
- package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
- package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkToolSettings.js +1 -0
- package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +24 -22
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +46 -51
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +8 -6
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +4 -4
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +4 -5
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveIModelConnection.js +1 -0
- package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveStageId.js +2 -1
- package/lib/esm/appui-react/hooks/useActiveStageId.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveViewport.js +2 -0
- package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
- package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
- package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
- package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
- package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useTranslation.d.ts +7 -0
- package/lib/esm/appui-react/hooks/useTranslation.d.ts.map +1 -0
- package/lib/esm/appui-react/hooks/useTranslation.js +25 -0
- package/lib/esm/appui-react/hooks/useTranslation.js.map +1 -0
- package/lib/esm/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useUiVisibility.js +1 -0
- package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
- package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
- package/lib/esm/appui-react/layout/StandardLayout.scss +1 -1
- package/lib/esm/appui-react/layout/base/DragManager.js +1 -2
- package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
- package/lib/esm/appui-react/layout/base/NineZone.js +1 -1
- package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
- package/lib/esm/appui-react/layout/footer/_variables.scss +0 -2
- package/lib/esm/appui-react/layout/outline/TabOutline.js +1 -1
- package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
- package/lib/esm/appui-react/layout/outline/WidgetOutline.js +1 -1
- package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
- package/lib/esm/appui-react/layout/state/NineZoneAction.d.ts +3 -2
- package/lib/esm/appui-react/layout/state/NineZoneAction.d.ts.map +1 -1
- package/lib/esm/appui-react/layout/state/NineZoneAction.js.map +1 -1
- package/lib/esm/appui-react/layout/state/NineZoneStateReducer.d.ts.map +1 -1
- package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +15 -16
- package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
- package/lib/esm/appui-react/layout/state/PanelState.d.ts +2 -5
- package/lib/esm/appui-react/layout/state/PanelState.d.ts.map +1 -1
- package/lib/esm/appui-react/layout/state/PanelState.js.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
- package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.d.ts +4 -3
- package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js +10 -8
- package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
- package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
- package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
- package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -1
- package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
- package/lib/esm/appui-react/layout/tool-settings/Docked.js +2 -2
- package/lib/esm/appui-react/layout/tool-settings/Docked.js.map +1 -1
- package/lib/esm/appui-react/layout/tool-settings/Docked.scss +3 -13
- package/lib/esm/appui-react/layout/tool-settings/Handle.scss +2 -2
- package/lib/esm/appui-react/layout/tool-settings/Setting.js +1 -1
- package/lib/esm/appui-react/layout/tool-settings/Setting.js.map +1 -1
- package/lib/esm/appui-react/layout/tool-settings/Setting.scss +1 -2
- package/lib/esm/appui-react/layout/widget/Button.d.ts +3 -2
- package/lib/esm/appui-react/layout/widget/Button.d.ts.map +1 -1
- package/lib/esm/appui-react/layout/widget/Button.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/ContentContainer.js +1 -1
- package/lib/esm/appui-react/layout/widget/ContentContainer.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/ContentManager.d.ts +3 -3
- package/lib/esm/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
- package/lib/esm/appui-react/layout/widget/ContentManager.js +7 -1
- package/lib/esm/appui-react/layout/widget/ContentManager.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/ContentRenderer.js +2 -2
- package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/FloatingTab.js +5 -6
- package/lib/esm/appui-react/layout/widget/FloatingTab.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/FloatingWidget.js +2 -4
- package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/PanelWidget.js +1 -1
- package/lib/esm/appui-react/layout/widget/PanelWidget.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/Tab.js +4 -4
- package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/Widget.js +2 -2
- package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
- package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
- package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +5 -8
- package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
- package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
- package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
- package/lib/esm/appui-react/messages/InputField.js +2 -1
- package/lib/esm/appui-react/messages/InputField.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.d.ts +12 -0
- package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.js +18 -10
- package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageRenderer.js +8 -9
- package/lib/esm/appui-react/messages/MessageRenderer.js.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.d.ts +2 -0
- package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.js +7 -9
- package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.js +1 -0
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +2 -0
- package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.js +3 -1
- package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/esm/appui-react/pickers/ViewSelector.d.ts +2 -0
- package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ViewSelector.js +9 -14
- package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.js +2 -3
- package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/ComponentPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/ComponentPopup.js +1 -1
- package/lib/esm/appui-react/popup/ComponentPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js +8 -5
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePopup.js +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
- package/lib/esm/appui-react/popup/PopupManager.d.ts +5 -1
- package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/PopupManager.js +24 -24
- package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/esm/appui-react/popup/PositionPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/PositionPopup.js +1 -0
- package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.js +2 -3
- package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +7 -0
- package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
- package/lib/esm/appui-react/preview/PreviewFeatures.js +8 -6
- package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
- package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
- package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
- package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
- package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/Badge.d.ts.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/Badge.js +3 -3
- package/lib/esm/appui-react/preview/new-toolbars/Badge.js.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js +2 -2
- package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/Item.js +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/Item.js.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
- package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
- package/lib/esm/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +36 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
- package/lib/{cjs/appui-react/layout/footer/message-center/_variables.scss → esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +21 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +22 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +41 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +25 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +14 -0
- package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
- package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
- package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
- package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
- 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 +9 -4
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +2 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts +23 -3
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +10 -7
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +37 -25
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
- package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Overflow.js +1 -1
- package/lib/esm/appui-react/statusbar/Overflow.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.d.ts +1 -3
- package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.js +21 -13
- package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.scss +18 -0
- package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -0
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/ActivityCenter.js +4 -2
- package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.js +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.js +3 -3
- package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.scss +2 -2
- package/lib/esm/appui-react/statusfields/SnapMode.js +1 -1
- package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js +87 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js +24 -0
- package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
- package/lib/{cjs/appui-react/layout/footer/message-center/Message.scss → esm/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -7
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
- package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
- package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts +2 -0
- package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
- package/lib/esm/appui-react/syncui/UiSyncEvent.js +2 -0
- package/lib/esm/appui-react/syncui/UiSyncEvent.js.map +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.js +2 -2
- package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
- package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js +3 -2
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarHelper.js +7 -5
- package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js +10 -17
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
- package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
- package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
- package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
- package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/ToolUiProvider.js +2 -1
- package/lib/esm/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +2 -3
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +11 -15
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
- package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
- package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
- package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
- package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +7 -9
- package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/AppUiSettings.js +1 -0
- package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -0
- package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +3 -3
- package/lib/esm/appui-react/utils/InternalUiShowHideManager.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 +12 -11
- package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/DockedBar.d.ts +13 -0
- package/lib/esm/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
- package/lib/esm/appui-react/widget-panels/DockedBar.js +14 -0
- package/lib/esm/appui-react/widget-panels/DockedBar.js.map +1 -0
- package/lib/esm/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +17 -19
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
- package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.d.ts +0 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.js +2 -5
- package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Tab.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Tab.js +3 -4
- package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +0 -12
- package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.js +28 -52
- package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.scss +4 -27
- package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
- package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.js +2 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +8 -5
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
- package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
- package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts +2 -0
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +10 -11
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
- package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetManager.d.ts +1 -6
- package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetManager.js +1 -6
- package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/esm/appui-react/widgets/useWidget.js +1 -1
- package/lib/esm/appui-react/widgets/useWidget.js.map +1 -1
- package/lib/esm/appui-react.d.ts +1 -1
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +1 -1
- package/lib/esm/appui-react.js.map +1 -1
- package/lib/public/locales/en/UiFramework.json +1 -1
- package/package.json +13 -39
- package/lib/cjs/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
- package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +0 -1
- package/lib/cjs/appui-react/layout/footer/Footer.d.ts +0 -33
- package/lib/cjs/appui-react/layout/footer/Footer.d.ts.map +0 -1
- package/lib/cjs/appui-react/layout/footer/Footer.js +0 -30
- package/lib/cjs/appui-react/layout/footer/Footer.js.map +0 -1
- package/lib/cjs/appui-react/layout/footer/Footer.scss +0 -61
- package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
- package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js +0 -32
- package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Dialog.scss +0 -64
- package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
- package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js +0 -33
- package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Indicator.scss +0 -106
- package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts +0 -22
- package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Message.js +0 -26
- package/lib/cjs/appui-react/layout/footer/message-center/Message.js.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
- package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Tab.js +0 -26
- package/lib/cjs/appui-react/layout/footer/message-center/Tab.js.map +0 -1
- package/lib/cjs/appui-react/layout/footer/message-center/Tab.scss +0 -60
- package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +0 -46
- package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.js +0 -132
- package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +0 -1
- package/lib/cjs/appui-react/useTranslation.d.ts +0 -10
- package/lib/cjs/appui-react/useTranslation.d.ts.map +0 -1
- package/lib/cjs/appui-react/useTranslation.js.map +0 -1
- package/lib/esm/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
- package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +0 -1
- package/lib/esm/appui-react/layout/footer/Footer.d.ts +0 -33
- package/lib/esm/appui-react/layout/footer/Footer.d.ts.map +0 -1
- package/lib/esm/appui-react/layout/footer/Footer.js +0 -26
- package/lib/esm/appui-react/layout/footer/Footer.js.map +0 -1
- package/lib/esm/appui-react/layout/footer/Footer.scss +0 -61
- package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
- package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Dialog.js +0 -28
- package/lib/esm/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Dialog.scss +0 -64
- package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
- package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Indicator.js +0 -29
- package/lib/esm/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Indicator.scss +0 -106
- package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts +0 -22
- package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Message.js +0 -22
- package/lib/esm/appui-react/layout/footer/message-center/Message.js.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
- package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Tab.js +0 -22
- package/lib/esm/appui-react/layout/footer/message-center/Tab.js.map +0 -1
- package/lib/esm/appui-react/layout/footer/message-center/Tab.scss +0 -60
- package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +0 -46
- package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.js +0 -128
- package/lib/esm/appui-react/statusfields/MessageCenter.js.map +0 -1
- package/lib/esm/appui-react/useTranslation.d.ts +0 -10
- package/lib/esm/appui-react/useTranslation.d.ts.map +0 -1
- package/lib/esm/appui-react/useTranslation.js +0 -16
- package/lib/esm/appui-react/useTranslation.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NineZoneStateReducer.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/state/NineZoneStateReducer.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAE5E,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,OAAO,EACL,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,aAAa,EACb,MAAM,EACN,cAAc,EACd,qBAAqB,EACrB,SAAS,EACT,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,4BAA4B,EAC5B,aAAa,EACb,YAAY,EACZ,8BAA8B,GAC/B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,0BAA0B,EAC1B,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,yBAAyB,GAE1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAE5E,gBAAgB;AAChB,MAAM,UAAU,oBAAoB,CAClC,KAAoB,EACpB,MAAsB;;IAEtB,QAAQ,MAAM,CAAC,IAAI,EAAE;QACnB,KAAK,QAAQ,CAAC,CAAC;YACb,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC/B,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE;gBAC7C,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACvD,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACnD,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,EAAE,EAAE;oBAC3C,MAAM,EAAE,eAAe,CAAC,OAAO,EAAE;iBAClC,CAAC,CAAC;aACJ;YACD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;gBAC7B,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC9C,MAAM,IAAI,GAAG,YAAY,CACvB,KAAK,CAAC,IAAI,EACV,IAAI,EACJ,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,IAAI,CACX,CAAC;oBACF,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;gBACpB,CAAC,CAAC,CAAC;aACJ;YACD,OAAO,KAAK,CAAC;SACd;QACD,KAAK,wBAAwB,CAAC,CAAC;YAC7B,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,KAAK,CAAC,SAAS,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;YACrC,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,qBAAqB,CAAC,CAAC;YAC1B,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YACrC,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,gBAAgB,CAAC,CAAC;YACrB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;YAE7C,OAAO,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC7C,MAAM,IAAI,GAAG,YAAY,CACvB,aAAa,EACb,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,IAAI,CACX,CAAC;gBACF,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,oBAAoB,CAAC,CAAC;YACzB,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,MAAM,IAAI,GAAG,YAAY,CACvB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAI,EACV,MAAM,CAAC,OAAO,EACd,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,IAAI,CACX,CAAC;gBAEF,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC/B,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,oBAAoB,CAAC,CAAC;YACzB,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,MAAM,IAAI,GAAG,YAAY,CACvB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,OAAO,EACb,MAAM,CAAC,OAAO,EACd,KAAK,CAAC,IAAI,CACX,CAAC;gBAEF,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC/B,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,qBAAqB,CAAC,CAAC;YAC1B,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YACrC,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,0BAA0B,CAAC,CAAC;YAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACnE,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,KAAK,CAAC,eAAe,GAAG,eAAe,CAAC;YAC1C,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,mBAAmB,CAAC,CAAC;YACxB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YACxB,OAAO,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC7C,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAC3B,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,kBAAkB,CAAC,CAAC;YACvB,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,qBAAqB,CAAC,CAAC;YAC1B,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;YAC/B,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,kBAAkB,CAAC,CAAC;YACvB,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,MAAM,IAAI,GAAG,YAAY,CACvB,MAAM,CAAC,IAAI,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,IAAI,CACX,CAAC;gBACF,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,yBAAyB,CAAC,CAAC;YAC9B,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAC;YAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAChD,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,OAAO,iBAAiB,CACtB,KAAK,EACL,mBAAmB,EACnB,MAAM,CAAC,IAAI,EACX;gBACE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE;gBACjD,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,EAAE,EAAE,MAAM,CAAC,mBAAmB;gBAC9B,IAAI,EAAE;oBACJ,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,QAAQ,EAAE,EAAE;oBACZ,WAAW;iBACZ;aACF,EACD;gBACE,GAAG,MAAM;gBACT,SAAS,EAAE,KAAK;aACjB,CACF,CAAC;SACH;QACD,KAAK,aAAa,CAAC,CAAC;YAClB,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YAC5C,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACpE,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACzE,OAAO,yBAAyB,CAAC,KAAK,EAAE,gBAAgB,EAAE;gBACxD,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE;aAC5B,CAAC,CAAC;SACJ;QACD,KAAK,iBAAiB,CAAC,CAAC;YACtB,wDAAwD;YACxD,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC;YAC5C,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACpE,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;YAE9D,IAAI,uBAAuB,CAAC,MAAM,CAAC,EAAE;gBACnC,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtD,IAAI,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACxD,IAAI,aAAa,CAAC,SAAS,EAAE;oBAC3B,MAAM,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBACpE,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC;iBAC9D;qBAAM;oBACL,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;iBAC3C;gBACD,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,gBAAgB,EAAE;oBACzD,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE;iBAC5B,CAAC,CAAC;gBACH,OAAO,0BAA0B,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;aAC5D;YAED,KAAK,GAAG,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;YACtD,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE;gBAChC,KAAK,GAAG,8BAA8B,CACpC,KAAK,EACL,MAAM,CAAC,QAAQ,EACf,cAAc,CAAC,IAAI,CACpB,CAAC;gBACF,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5D,MAAM,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;gBACvD,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;oBAChD,IAAI;iBACL,CAAC,CAAC;aACJ;iBAAM,IAAI,wBAAwB,CAAC,MAAM,CAAC,EAAE;gBAC3C,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;oBACrD,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;oBACjE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,KAAK,GAAG,cAAc,CACpB,KAAK,EACL,MAAM,CAAC,WAAW,EAClB,aAAa,CAAC,IAAI,EAClB,aAAa,CACd,CAAC;aACH;iBAAM,IAAI,uBAAuB,CAAC,MAAM,CAAC,EAAE;gBAC1C,KAAK,GAAG,8BAA8B,CACpC,KAAK,EACL,MAAM,CAAC,QAAQ,EACf,cAAc,CAAC,IAAI,CACpB,CAAC;gBACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACzD,IAAI,MAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;oBAC3C,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;wBACrD,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;oBAC1B,CAAC,CAAC,CAAC;iBACJ;gBACD,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5D,MAAM,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;gBAChE,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;oBAChD,IAAI;iBACL,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC/D,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;oBACrD,KAAK,CAAC,OAAO,GAAG,CAAC,cAAc,CAAC,CAAC;oBACjC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,aAAa,CAAC,IAAI,EAAE;oBAChE,GAAG,aAAa;oBAChB,SAAS,EAAE,KAAK;iBACjB,CAAC,CAAC;aACJ;YACD,OAAO,KAAK,CAAC;SACd;QACD,KAAK,wBAAwB,CAAC,CAAC;YAC7B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;YAC5B,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAEhD,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7D,oEAAoE;YACpE,uBAAuB;YACvB,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE;gBACnD,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;oBAClD,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;aACJ;YAED,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,MAAM,SAAS,GAAG,GAAG,CAAC;YACtB,IAAI,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAExD,0BAA0B;YAC1B,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,GAAG,QAAQ,CAAC;YAC3C,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC;YAE5C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;YAC5C,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YAExE,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC;YAC3C,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,GAAG,SAAS,CAAC;YAE5C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACrE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YACrD,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAEpD,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;gBAClD,MAAM,EAAE,SAAS;aAClB,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC3C,IAAI,GAAG,CAAC,yBAAyB,EAAE;gBACjC,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;gBACjC,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC1D,aAAa,CAAC,KAAK,EAAE,6BAA6B,EAAE,IAAI,CAAC,CAAC;oBAC1D,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;gBACzB,CAAC,CAAC,CAAC;aACJ;YAED,OAAO,KAAK,CAAC;SACd;QACD,KAAK,4BAA4B,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACnE,OAAO,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;gBACjD,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE;aACzB,CAAC,CAAC;SACJ;QACD,KAAK,kCAAkC,CAAC,CAAC;YACvC,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC9B,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7D,cAAc,CAAC,SAAS,GAAG,KAAK,CAAC;gBACjC,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC3C,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;YACxB,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,gCAAgC,CAAC,CAAC;YACrC,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC9B,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7D,cAAc,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YAC9C,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,gCAAgC,CAAC,CAAC;YACrC,OAAO,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SACrD;QACD,KAAK,2BAA2B,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAEjE,kCAAkC;YAClC,IAAI,iBAAiB,CAAC,QAAQ,EAAE;gBAC9B,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;gBACpE,MAAM,IAAI,GAAG,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACzD,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,CAAC,EAAE,EAAE;oBACrD,IAAI;iBACL,CAAC,CAAC;gBACH,OAAO,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;aACvC;YAED,MAAM,YAAY,GAAG,MAAA,iBAAiB,CAAC,YAAY,mCAAI,CAAC,CAAC;YACzD,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;YACxD,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ;gBACvC,CAAC,CAAC,IAAI,CAAC,QAAQ;gBACf,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAErD,kCAAkC;YAClC,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACvC,OAAO,iBAAiB,CACtB,KAAK,EACL,iBAAiB,CAAC,IAAI,EACtB,mBAAmB,EACnB,MAAM,CAAC,IAAI,EACX,YAAY,CACb,CAAC;SACH;QACD,KAAK,yBAAyB,CAAC,CAAC;YAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;YAE/B,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAEvC,6BAA6B;YAC7B,IAAI,cAAuC,CAAC;YAC5C,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,EAAE;gBAClC,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC/C;iBAAM,IAAI,yBAAyB,CAAC,IAAI,CAAC,EAAE;gBAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtC,MAAM,cAAc,GAAG,uBAAuB,CAC5C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,CACjB,CAAC;gBACF,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAE/C,2DAA2D;gBAC3D,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,cAAc,EAAE;oBACnE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,KAAK,CAAC,cAAc,GAAG,CAAC,EACxB,IAAI,CAAC,WAAW,CACjB,CAAC;oBACF,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;oBAC9C,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;iBAC3C;aACF;YAED,6BAA6B;YAC7B,IAAI,cAAc,EAAE;gBAClB,MAAM,IAAI,GAAG,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtD,OAAO,iBAAiB,CAAC,KAAK,EAAE,cAAc,CAAC,EAAE,EAAE;oBACjD,IAAI;iBACL,CAAC,CAAC;aACJ;YAED,8BAA8B;YAC9B,IAAI,yBAAyB,CAAC,IAAI,CAAC,EAAE;gBACnC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ;oBAC7B,CAAC,CAAC,IAAI,CAAC,QAAQ;oBACf,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBACzD,OAAO,iBAAiB,CACtB,KAAK,EACL,IAAI,CAAC,IAAI,EACT,SAAS,EACT,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,EAChB,IAAI,CAAC,WAAW,CACjB,CAAC;aACH;YAED,6BAA6B;YAC7B,OAAO,iBAAiB,CACtB,KAAK,EACL,IAAI,CAAC,QAAQ,EACb,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,cAAc,CACpB,CAAC;SACH;QACD,KAAK,kBAAkB,CAAC,CAAC;YACvB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;YAChC,KAAK,GAAG,oBAAoB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAClD,OAAO,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE;gBACxC,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;SACJ;QACD,KAAK,yBAAyB,CAAC,CAAC;YAC9B,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;YAExD,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,WAAW,CAAC;YAChD,IAAI,CAAC,MAAM;gBAAE,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAEtE,OAAO,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;gBACzC,SAAS,EAAE,CAAC,MAAM,CAAC,SAAS;aAC7B,CAAC,CAAC;SACJ;QACD,KAAK,uBAAuB,CAAC,CAAC;YAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;YACxB,IAAI,IAA6B,CAAC;YAClC,IAAI,MAAM,CAAC,gBAAgB,EAAE;gBAC3B,MAAM,cAAc,GAClB,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACtD,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;aAC5B;iBAAM;gBACL,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC3D,IAAI,GAAG;oBACL,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,WAAW;iBACZ,CAAC;aACH;YACD,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC/B,KAAK,CAAC,UAAU,GAAG,qBAAqB,CAAC,KAAK,EAAE;oBAC9C,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;oBACjD,IAAI;iBACL,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SAC1C;QACD,KAAK,iBAAiB,CAAC,CAAC;YACtB,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;gBACpC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gBACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CACvD,MAAM,CAAC,MAAM,CACd,CAAC;gBACF,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,qBAAqB,CAAC,CAAC;YAC1B,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE;gBAChC,KAAK,GAAG,8BAA8B,CACpC,KAAK,EACL,MAAM,CAAC,QAAQ,EACf,KAAK,CAAC,UAAU,CAAC,IAAI,CACtB,CAAC;gBACF,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;gBACjC,MAAM,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;gBACpC,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE;oBAChD,IAAI;iBACL,CAAC,CAAC;aACJ;iBAAM,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBACzC,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;oBACrD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBACvC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;aAChE;iBAAM,IAAI,wBAAwB,CAAC,MAAM,CAAC,EAAE;gBAC3C,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;oBACrD,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;oBACjE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;aAChE;iBAAM,IAAI,uBAAuB,CAAC,MAAM,CAAC,EAAE;gBAC1C,8BAA8B,CAC5B,KAAK,EACL,MAAM,CAAC,QAAQ,EACf,KAAK,CAAC,UAAU,CAAC,IAAI,CACtB,CAAC;gBACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACzD,IAAI,MAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;oBAC3C,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;wBACrD,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;oBAC1B,CAAC,CAAC,CAAC;iBACJ;gBACD,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC1C,MAAM,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;gBACpC,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE;oBAChD,IAAI;iBACL,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC/C,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtD,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc,CACrC,GAAG,CAAC,2BAA2B,IAAI,MAAM,CAAC,IAAI,CAC/C,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACpC,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACnD,MAAM,SAAS,GACb,GAAG,CAAC,SAAS;oBACb,CAAC,GAAG,CAAC,yBAAyB;wBAC5B,0BAA0B,CAAC,CAAC,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;gBAElE,KAAK,GAAG,iBAAiB,CACvB,KAAK,EACL,MAAM,CAAC,mBAAmB,EAC1B,CAAC,MAAM,CAAC,EAAE,CAAC,EACX;oBACE,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI;oBAC3B,SAAS;iBACV,CACF,CAAC;aACH;YACD,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC9B,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;YAC/B,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,mBAAmB,CAAC,CAAC;YACxB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YACtC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,QAAQ,IAAI,mBAAmB,CAAC,QAAQ,CAAC;gBAAE,OAAO,KAAK,CAAC;YAE5D,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE1C,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE3B,IAAI,aAAa,GAAG,GAAG,CAAC;YACxB,IAAI,YAAY,GAAG,GAAG,CAAC;YAEvB,IAAI,GAAG,CAAC,2BAA2B,EAAE;gBACnC,YAAY,GAAG,GAAG,CAAC,2BAA2B,CAAC,KAAK,CAAC;gBACrD,aAAa,GAAG,GAAG,CAAC,2BAA2B,CAAC,MAAM,CAAC;aACxD;iBAAM;gBACL,MAAM,sBAAsB,GAAG,QAAQ,CAAC,cAAc,CACpD,qBAAqB,EAAE,EAAE,CAC1B,CAAC;gBACF,IAAI,sBAAsB,KAAK,IAAI,EAAE;oBACnC,YAAY,GAAG,sBAAsB,CAAC,WAAW,GAAG,EAAE,CAAC;oBACvD,aAAa,GAAG,sBAAsB,CAAC,YAAY,GAAG,EAAE,CAAC;iBAC1D;aACF;YAED,IAAI,eAAe,GAAG,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY;gBAC1C,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACzC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC;oBACvB,MAAM,EAAE,aAAa;oBACrB,KAAK,EAAE,YAAY;iBACpB,CAAC,CAAC;YACP,IAAI,IAAI;gBAAE,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1D,IAAI,QAAQ;gBAAE,eAAe,GAAG,eAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAEtE,MAAM,cAAc,GAAG,WAAW,EAAE,CAAC;YACrC,IAAI,IAA2C,CAAC;YAChD,IAAI,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE;gBAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC7D,IAAI,GAAG;oBACL,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,WAAW;iBACZ,CAAC;aACH;iBAAM,IAAI,QAAQ,IAAI,qBAAqB,CAAC,QAAQ,CAAC,EAAE;gBACtD,MAAM,cAAc,GAClB,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBACxD,IAAI,GAAG;oBACL,QAAQ,EAAE,cAAc,CAAC,EAAE;oBAC3B,cAAc;iBACf,CAAC;aACH;YAED,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvC,OAAO,eAAe,CAAC,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,EAAE;gBAClD,MAAM,EAAE,eAAe,CAAC,OAAO,EAAE;gBACjC,IAAI;aACL,CAAC,CAAC;SACJ;QACD,KAAK,iBAAiB,CAAC,CAAC;YACtB,OAAO,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SAClC;QACD,KAAK,mBAAmB,CAAC,CAAC;YACxB,kBAAkB;YAClB,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAClC,cAAc;YACd,OAAO,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SACpC;QACD,KAAK,sBAAsB,CAAC,CAAC;YAC3B,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChD,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC7B,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,iBAAiB,CAAC,CAAC;YACtB,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SACxC;QACD,KAAK,kBAAkB,CAAC,CAAC;YACvB,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC;YACtB,IACE,CAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,KAAK,MAAK,EAAE;gBAChC,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,QAAQ,EACpC;gBACA,OAAO,KAAK,CAAC;aACd;YAED,IAAI,QAAqB,CAAC;YAC1B,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAEzC,kEAAkE;YAClE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChD,uBAAuB;YACvB,IAAI,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE;gBAChE,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;oBAC1C,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;aACJ;YACD,OAAO,KAAK,CAAC;SACd;QACD,KAAK,kBAAkB,CAAC,CAAC;YACvB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAEtC,IAAI,QAAqB,CAAC;YAC1B,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAEzC,IAAI,qBAAqB,CAAC,QAAQ,CAAC;gBAAE,OAAO,KAAK,CAAC;YAElD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3B,MAAM,aAAa,GAAG,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GACxB,GAAG,CAAC,2BAA2B,mCAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;YACjE,MAAM,iBAAiB,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;YACxD,MAAM,eAAe,GACnB,SAAS,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACpE,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtD,MAAM,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAE5D,MAAM,SAAS,GACb,GAAG,CAAC,SAAS;gBACb,CAAC,GAAG,CAAC,yBAAyB;oBAC5B,0BAA0B,CAAC,CAAC,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;YAElE,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE;gBAChC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAE7D,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC1C,aAAa,CAAC,KAAK,EAAE,6BAA6B,EAAE,aAAa,CAAC,CAAC;gBACrE,CAAC,CAAC,CAAC;gBACH,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACvC,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE;oBACzC,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;wBAC3B,WAAW;qBACZ;oBACD,SAAS;iBACV,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;gBAC/C,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC9D,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC7C,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;gBAElD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;gBACnC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;gBAE/B,KAAK,GAAG,iBAAiB,CACvB,KAAK,EACL,cAAc,EACd,CAAC,EAAE,CAAC,EACJ;oBACE,MAAM;oBACN,IAAI,EAAE,yBAAyB,CAAC,IAAI,CAAC;wBACnC,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI;iBAC7B,EACD,MAAM,CACP,CAAC;aACH;YAED,MAAM,cAAc,GAAG,CAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,KAAK,MAAK,EAAE,CAAC;YACxD,IAAI,cAAc,EAAE;gBAClB,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC/B,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC7B,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC;gBACrC,CAAC,CAAC,CAAC;aACJ;YAED,OAAO,KAAK,CAAC;SACd;QACD,KAAK,8BAA8B,CAAC,CAAC;YACnC,OAAO,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;gBACrD,kBAAkB,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,iBAAiB,CAAC,CAAC;YACtB,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SACxC;QACD,KAAK,mBAAmB,CAAC,CAAC;YACxB,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAClC,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChD,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YACxB,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,mBAAmB,CAAC,CAAC;YACxB,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAClD,uBAAuB;YACvB,IAAI,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE;gBAC5C,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;oBACvD,KAAK,CAAC,eAAe;wBACnB,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;4BAC/D,CAAC,CAAC,GAAG;4BACL,CAAC,CAAC,CAAC,CAAC;gBACV,CAAC,CAAC,CAAC;aACJ;YACD,OAAO,KAAK,CAAC;SACd;QACD,KAAK,mBAAmB,CAAC,CAAC;YACxB,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChD,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;oBACxD,KAAa,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;iBAC3B;YACH,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,0BAA0B,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,YAAY;gBAAE,OAAO,KAAK,CAAC;YACtC,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAEvD,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAC;YACvC,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC;YAEvC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,2BAA2B,IAAI;gBAC9C,MAAM,EAAE,GAAG;gBACX,KAAK,EAAE,GAAG;aACX,CAAC;YACF,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,EAAE,CAAC,KAAK,CAAC,EAAE;gBAC7D,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;aACjD,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC9B,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC7B,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC;YACrC,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,oBAAoB,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,YAAY;gBAAE,OAAO,KAAK,CAAC;YACtC,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAEvD,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC7D,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC9B,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC7B,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC;YACrC,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,gBAAgB,CAAC,CAAC;YACrB,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAEnD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACjD,IAAI,QAAQ,EAAE;gBACZ,0BAA0B;gBAC1B,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;aACxC;YAED,4BAA4B;YAC5B,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE;gBAClC,sCAAsC;gBACtC,IAAI,MAAM,CAAC,cAAc,CAAC,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE;oBAC7C,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;iBACnE;gBAED,MAAM,IAAI,GAAG,MAAA,MAAA,MAAM,CAAC,SAAS,0CAAE,2BAA2B,mCAAI;oBAC5D,MAAM,EAAE,GAAG;oBACX,KAAK,EAAE,GAAG;iBACX,CAAC;gBACF,MAAM,QAAQ,GAAG,MAAA,MAAM,CAAC,cAAc,CAAC,iBAAiB,mCAAI;oBAC1D,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;oBACtC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzC,CAAC;gBACF,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtD,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC/D,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAEnD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAA,MAAA,MAAM,CAAC,SAAS,0CAAE,2BAA2B,CAAA,CAAC;gBAClE,OAAO,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;oBACrE,MAAM,EAAE,eAAe,CAAC,OAAO,EAAE;oBACjC,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI;wBAC9B,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE;wBAChC,WAAW,EAAE,CAAC;qBACf;oBACD,SAAS;iBACV,CAAC,CAAC;aACJ;YAED,0BAA0B;YAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC;YACtC,oCAAoC;YACpC,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE;gBAC3C,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;aACjE;YAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,8BAA8B;YAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,EAAE;gBAC/C,OAAO,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;aACzE;YAED,yDAAyD;YACzD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,MAAM,CAAC,YAAY,CAAC,KAAK,EACzB,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CACzB,CAAC;YACF,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACtD,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;SAC5D;QACD,KAAK,8BAA8B,CAAC,CAAC;YACnC,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YACnD,OAAO,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SAChD;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CAAC,KAAoB,EAAE,EAAkB;;IAC7D,IACE,CAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,KAAK,MAAK,EAAE;QAChC,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,QAAQ,EACpC;QACA,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,KAAK,CAAC,YAAa,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YAC9C,KAAK,CAAC,YAAa,CAAC,MAAM,GAAG,KAAK,CAAC;QACrC,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,QAAqB,CAAC;IAC1B,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEzC,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC;QAExB,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE;YAChC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;YACxB,uBAAuB;YACvB,IAAI,SAAS,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,EAAE;gBAChD,KAAK,CAAC,IAAI,GAAG,MAAA,KAAK,CAAC,OAAO,mCAAI,GAAG,CAAC;aACnC;SACF;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,KAAoB,EAAE,EAAkB;IAC7D,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE;QAClD,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IACH,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE;QAChC,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACvD,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;QAC1B,CAAC,CAAC,CAAC;KACJ;IACD,IAAI,qBAAqB,CAAC,QAAQ,CAAC,EAAE;QACnC,KAAK,GAAG,0BAA0B,CAAC,KAAK,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;KACtE;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,KAAoB,EAAE,EAAkB;IACzD,IAAI,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,QAAQ,EAAE;QACb,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjC,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACrC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;KACpB;IACD,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;QAC1C,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;IACzB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAU,CAAC;AACpC,CAAC;AAED,SAAS,OAAO,CAAC,KAAoB,EAAE,EAAkB;IACvD,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,IAAI,CAAC,KAAK,CAAC,YAAY;YAAE,OAAO;QAEhC,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,KAAK,EAAE,CAAC;QACvD,IAAI,cAAc,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC1D,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC;SAClC;IACH,CAAC,CAAC,CAAC;IAEH,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;QAC1C,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1D,IAAI,qBAAqB,CAAC,QAAQ,CAAC,EAAE;QACnC,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,+DAA+D;QAC/D,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/C,KAAK,CAAC,IAAI,GAAG;gBACX,QAAQ;gBACR,QAAQ;gBACR,cAAc;aACf,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;SAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE;QACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjE,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/C,KAAK,CAAC,IAAI,GAAG;gBACX,QAAQ;gBACR,IAAI;gBACJ,WAAW;gBACX,QAAQ;aACT,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Base\n */\n\nimport { produce } from \"immer\";\nimport { Point, Rectangle } from \"@itwin/core-react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport type { TabState } from \"./TabState\";\nimport { getWidgetLocation, isPanelWidgetLocation } from \"./WidgetLocation\";\nimport type { NineZoneAction } from \"./NineZoneAction\";\nimport {\n isPanelDropTargetState,\n isSectionDropTargetState,\n isTabDropTargetState,\n isWidgetDropTargetState,\n isWindowDropTargetState,\n} from \"./DropTargetState\";\nimport { getWidgetPanelSectionId } from \"./PanelState\";\nimport type { NineZoneState } from \"./NineZoneState\";\nimport type { PopoutWidgetState, WidgetState } from \"./WidgetState\";\nimport {\n addPanelWidget,\n getPanelSize,\n insertPanelWidget,\n updatePanelState,\n} from \"./internal/PanelStateHelpers\";\nimport {\n addRemovedTab,\n addTab,\n addTabToWidget,\n createDraggedTabState,\n removeTab,\n removeTabFromWidget,\n updateSavedTabState,\n updateTabState,\n} from \"./internal/TabStateHelpers\";\nimport {\n initRectangleProps,\n initSizeProps,\n isToolSettingsFloatingWidget,\n setPointProps,\n setSizeProps,\n updateHomeOfToolSettingsWidget,\n} from \"./internal/NineZoneStateHelpers\";\nimport {\n addFloatingWidget,\n addPopoutWidget,\n addWidgetState,\n floatingWidgetBringToFront,\n getWidgetState,\n removeFloatingWidget,\n removePanelWidget,\n removePopoutWidget,\n removeWidget,\n setWidgetActiveTabId,\n updateFloatingWidgetState,\n updateWidgetState,\n} from \"./internal/WidgetStateHelpers\";\nimport { getSendBackHomeState } from \"../widget/SendBack\";\nimport { panelSides } from \"../widget-panels/Panel\";\nimport type { TabLocation } from \"./TabLocation\";\nimport {\n getTabLocation,\n isFloatingTabLocation,\n isPanelTabLocation,\n isPopoutTabLocation,\n} from \"./TabLocation\";\nimport { getUniqueId } from \"../base/NineZone\";\nimport {\n isPanelWidgetRestoreState,\n type PanelWidgetRestoreState,\n} from \"./WidgetRestoreState\";\nimport { addDockedToolSettings } from \"./internal/ToolSettingsStateHelpers\";\n\n/** @internal */\nexport function NineZoneStateReducer(\n state: NineZoneState,\n action: NineZoneAction\n): NineZoneState {\n switch (action.type) {\n case \"RESIZE\": {\n state = produce(state, (draft) => {\n setSizeProps(draft.size, action.size);\n });\n const nzBounds = Rectangle.createFromSize(action.size);\n for (const id of state.floatingWidgets.allIds) {\n const floatingWidget = state.floatingWidgets.byId[id];\n const bounds = Rectangle.create(floatingWidget.bounds);\n const containedBounds = bounds.containIn(nzBounds);\n state = updateFloatingWidgetState(state, id, {\n bounds: containedBounds.toProps(),\n });\n }\n for (const side of panelSides) {\n state = updatePanelState(state, side, (draft) => {\n const size = getPanelSize(\n draft.size,\n side,\n draft.minSize,\n draft.maxSize,\n state.size\n );\n draft.size = size;\n });\n }\n return state;\n }\n case \"PANEL_TOGGLE_COLLAPSED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.collapsed = !draft.collapsed;\n });\n }\n case \"PANEL_SET_COLLAPSED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.collapsed = action.collapsed;\n });\n }\n case \"PANEL_SET_SIZE\": {\n const { side, size: preferredSize } = action;\n\n return updatePanelState(state, side, (draft) => {\n const size = getPanelSize(\n preferredSize,\n draft.side,\n draft.minSize,\n draft.maxSize,\n state.size\n );\n draft.size = size;\n });\n }\n case \"PANEL_SET_MIN_SIZE\": {\n return updatePanelState(state, action.side, (draft) => {\n const size = getPanelSize(\n draft.size,\n draft.side,\n action.minSize,\n draft.maxSize,\n state.size\n );\n\n draft.minSize = action.minSize;\n draft.size = size;\n });\n }\n case \"PANEL_SET_MAX_SIZE\": {\n return updatePanelState(state, action.side, (draft) => {\n const size = getPanelSize(\n draft.size,\n draft.side,\n draft.minSize,\n action.maxSize,\n state.size\n );\n\n draft.maxSize = action.maxSize;\n draft.size = size;\n });\n }\n case \"PANEL_SET_RESIZABLE\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.resizable = action.resizable;\n });\n }\n case \"PANEL_SET_SPLITTER_VALUE\": {\n const splitterPercent = Math.min(Math.max(action.percent, 0), 100);\n return updatePanelState(state, action.side, (draft) => {\n draft.splitterPercent = splitterPercent;\n });\n }\n case \"PANEL_TOGGLE_SPAN\": {\n const { side } = action;\n return updatePanelState(state, side, (draft) => {\n draft.span = !draft.span;\n });\n }\n case \"PANEL_SET_PINNED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.pinned = action.pinned;\n });\n }\n case \"PANEL_TOGGLE_PINNED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.pinned = !draft.pinned;\n });\n }\n case \"PANEL_INITIALIZE\": {\n return updatePanelState(state, action.side, (draft) => {\n const size = getPanelSize(\n action.size,\n draft.side,\n draft.minSize,\n draft.maxSize,\n state.size\n );\n draft.size = size;\n });\n }\n case \"PANEL_WIDGET_DRAG_START\": {\n const { side, newFloatingWidgetId } = action;\n const panel = state.panels[side];\n const widgetIndex = panel.widgets.indexOf(action.id);\n const widget = getWidgetState(state, action.id);\n state = removePanelWidget(state, action.id);\n return addFloatingWidget(\n state,\n newFloatingWidgetId,\n widget.tabs,\n {\n bounds: Rectangle.create(action.bounds).toProps(),\n userSized: action.userSized,\n id: action.newFloatingWidgetId,\n home: {\n side: action.side,\n widgetId: \"\",\n widgetIndex,\n },\n },\n {\n ...widget,\n minimized: false,\n }\n );\n }\n case \"WIDGET_DRAG\": {\n const { floatingWidgetId, dragBy } = action;\n const floatingWidget = state.floatingWidgets.byId[floatingWidgetId];\n const newBounds = Rectangle.create(floatingWidget.bounds).offset(dragBy);\n return updateFloatingWidgetState(state, floatingWidgetId, {\n bounds: newBounds.toProps(),\n });\n }\n case \"WIDGET_DRAG_END\": {\n // TODO: handle duplicates in WIDGET_TAB_DRAG_END action\n const { target, floatingWidgetId } = action;\n const floatingWidget = state.floatingWidgets.byId[floatingWidgetId];\n const draggedWidget = getWidgetState(state, floatingWidgetId);\n\n if (isWindowDropTargetState(target)) {\n const nzBounds = Rectangle.createFromSize(state.size);\n let newBounds = Rectangle.create(floatingWidget.bounds);\n if (draggedWidget.minimized) {\n const containedBounds = newBounds.setHeight(35).containIn(nzBounds);\n newBounds = newBounds.setPosition(containedBounds.topLeft());\n } else {\n newBounds = newBounds.containIn(nzBounds);\n }\n state = updateFloatingWidgetState(state, floatingWidgetId, {\n bounds: newBounds.toProps(),\n });\n return floatingWidgetBringToFront(state, floatingWidgetId);\n }\n\n state = removeFloatingWidget(state, floatingWidgetId);\n if (isTabDropTargetState(target)) {\n state = updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n floatingWidget.home\n );\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabs = [...targetWidget.tabs];\n tabs.splice(target.tabIndex, 0, ...draggedWidget.tabs);\n state = updateWidgetState(state, target.widgetId, {\n tabs,\n });\n } else if (isSectionDropTargetState(target)) {\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets.splice(target.sectionIndex, 0, target.newWidgetId);\n draft.collapsed = false;\n });\n state = addWidgetState(\n state,\n target.newWidgetId,\n draggedWidget.tabs,\n draggedWidget\n );\n } else if (isWidgetDropTargetState(target)) {\n state = updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n floatingWidget.home\n );\n const widget = getWidgetLocation(state, target.widgetId);\n if (widget && isPanelWidgetLocation(widget)) {\n state = updatePanelState(state, widget.side, (draft) => {\n draft.collapsed = false;\n });\n }\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabs = [...targetWidget.tabs];\n tabs.splice(targetWidget.tabs.length, 0, ...draggedWidget.tabs);\n state = updateWidgetState(state, target.widgetId, {\n tabs,\n });\n } else {\n const panelSectionId = getWidgetPanelSectionId(target.side, 0);\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets = [panelSectionId];\n draft.collapsed = false;\n });\n state = addWidgetState(state, panelSectionId, draggedWidget.tabs, {\n ...draggedWidget,\n minimized: false,\n });\n }\n return state;\n }\n case \"FLOATING_WIDGET_RESIZE\": {\n const { resizeBy } = action;\n const widget = getWidgetState(state, action.id);\n\n const floatingWidget = state.floatingWidgets.byId[action.id];\n // if this is not a tool settings widget then set the userSized flag\n // istanbul ignore else\n if (!isToolSettingsFloatingWidget(state, action.id)) {\n state = updateFloatingWidgetState(state, action.id, {\n userSized: true,\n });\n }\n\n const minWidth = 200;\n const minHeight = 120;\n let newBounds = Rectangle.create(floatingWidget.bounds);\n\n // Resize top-left corner.\n const maxLeft = newBounds.right - minWidth;\n const maxTop = newBounds.bottom - minHeight;\n\n newBounds = newBounds.inset(-resizeBy.left, -resizeBy.top, 0, 0);\n const left = Math.min(maxLeft, newBounds.left);\n const top = Math.min(maxTop, newBounds.top);\n newBounds = new Rectangle(left, top, newBounds.right, newBounds.bottom);\n\n // Resize bottom-right corner.\n const minRight = newBounds.left + minWidth;\n const minBottom = newBounds.top + minHeight;\n\n newBounds = newBounds.inset(0, 0, -resizeBy.right, -resizeBy.bottom);\n const right = Math.max(minRight, newBounds.right);\n const bottom = Math.max(minBottom, newBounds.bottom);\n newBounds = new Rectangle(left, top, right, bottom);\n\n state = updateFloatingWidgetState(state, action.id, {\n bounds: newBounds,\n });\n\n const tab = state.tabs[widget.activeTabId];\n if (tab.isFloatingWidgetResizable) {\n const size = newBounds.getSize();\n state = updateTabState(state, widget.activeTabId, (draft) => {\n initSizeProps(draft, \"preferredFloatingWidgetSize\", size);\n draft.userSized = true;\n });\n }\n\n return state;\n }\n case \"FLOATING_WIDGET_SET_BOUNDS\": {\n const nzBounds = Rectangle.createFromSize(state.size);\n const bounds = Rectangle.create(action.bounds).containIn(nzBounds);\n return updateFloatingWidgetState(state, action.id, {\n bounds: bounds.toProps(),\n });\n }\n case \"FLOATING_WIDGET_CLEAR_USER_SIZED\": {\n return produce(state, (draft) => {\n const floatingWidget = draft.floatingWidgets.byId[action.id];\n floatingWidget.userSized = false;\n const widget = getWidgetState(draft, action.id);\n const tab = draft.tabs[widget.activeTabId];\n tab.userSized = false;\n });\n }\n case \"FLOATING_WIDGET_SET_USER_SIZED\": {\n return produce(state, (draft) => {\n const floatingWidget = draft.floatingWidgets.byId[action.id];\n floatingWidget.userSized = action.userSized;\n });\n }\n case \"FLOATING_WIDGET_BRING_TO_FRONT\": {\n return floatingWidgetBringToFront(state, action.id);\n }\n case \"FLOATING_WIDGET_SEND_BACK\": {\n const widget = getWidgetState(state, action.id);\n const sendBackHomeState = getSendBackHomeState(state, action.id);\n\n // Add tabs to an existing widget.\n if (sendBackHomeState.widgetId) {\n const destinationWidget = state.widgets[sendBackHomeState.widgetId];\n const tabs = [...destinationWidget.tabs, ...widget.tabs];\n state = updateWidgetState(state, destinationWidget.id, {\n tabs,\n });\n return removeWidget(state, widget.id);\n }\n\n const sectionIndex = sendBackHomeState.sectionIndex ?? 0;\n const home = state.floatingWidgets.byId[action.id].home;\n const destinationWidgetId = home.widgetId\n ? home.widgetId\n : getWidgetPanelSectionId(home.side, sectionIndex);\n\n // Add tabs to a new panel widget.\n state = removeWidget(state, widget.id);\n return insertPanelWidget(\n state,\n sendBackHomeState.side,\n destinationWidgetId,\n widget.tabs,\n sectionIndex\n );\n }\n case \"POPOUT_WIDGET_SEND_BACK\": {\n const popoutWidget = state.popoutWidgets.byId[action.id];\n const widget = getWidgetState(state, action.id);\n const home = popoutWidget.home;\n\n state = removeWidget(state, widget.id);\n\n // Determine existing widget.\n let existingWidget: WidgetState | undefined;\n if (home.widgetId in state.widgets) {\n existingWidget = state.widgets[home.widgetId];\n } else if (isPanelWidgetRestoreState(home)) {\n const panel = state.panels[home.side];\n const panelSectionId = getWidgetPanelSectionId(\n home.side,\n home.widgetIndex\n );\n existingWidget = state.widgets[panelSectionId];\n\n // Can not add additional sections, add to an existing one.\n if (!existingWidget && panel.widgets.length >= panel.maxWidgetCount) {\n const sectionIndex = Math.min(\n panel.maxWidgetCount - 1,\n home.widgetIndex\n );\n const sectionId = panel.widgets[sectionIndex];\n existingWidget = state.widgets[sectionId];\n }\n }\n\n // Add to an existing widget.\n if (existingWidget) {\n const tabs = [...existingWidget.tabs, ...widget.tabs];\n return updateWidgetState(state, existingWidget.id, {\n tabs,\n });\n }\n\n // Insert a new panel section.\n if (isPanelWidgetRestoreState(home)) {\n const sectionId = home.widgetId\n ? home.widgetId\n : getWidgetPanelSectionId(home.side, home.widgetIndex);\n return insertPanelWidget(\n state,\n home.side,\n sectionId,\n [...widget.tabs],\n home.widgetIndex\n );\n }\n\n // Add a new floating widget.\n return addFloatingWidget(\n state,\n home.widgetId,\n widget.tabs,\n home.floatingWidget\n );\n }\n case \"WIDGET_TAB_CLICK\": {\n const { id, widgetId } = action;\n state = setWidgetActiveTabId(state, widgetId, id);\n return updateWidgetState(state, widgetId, {\n minimized: false,\n });\n }\n case \"WIDGET_TAB_DOUBLE_CLICK\": {\n if (action.floatingWidgetId === undefined) return state;\n\n const widget = getWidgetState(state, action.widgetId);\n const active = action.id === widget.activeTabId;\n if (!active) return setWidgetActiveTabId(state, widget.id, action.id);\n\n return updateWidgetState(state, widget.id, {\n minimized: !widget.minimized,\n });\n }\n case \"WIDGET_TAB_DRAG_START\": {\n const tabId = action.id;\n let home: PanelWidgetRestoreState;\n if (action.floatingWidgetId) {\n const floatingWidget =\n state.floatingWidgets.byId[action.floatingWidgetId];\n home = floatingWidget.home;\n } else {\n assert(!!action.side);\n const panel = state.panels[action.side];\n const widgetIndex = panel.widgets.indexOf(action.widgetId);\n home = {\n side: action.side,\n widgetId: action.widgetId,\n widgetIndex,\n };\n }\n state = produce(state, (draft) => {\n draft.draggedTab = createDraggedTabState(tabId, {\n position: Point.create(action.position).toProps(),\n home,\n });\n });\n return removeTabFromWidget(state, tabId);\n }\n case \"WIDGET_TAB_DRAG\": {\n return produce(state, (draft) => {\n const draggedTab = draft.draggedTab;\n assert(!!draggedTab);\n const position = Point.create(draggedTab.position).offset(\n action.dragBy\n );\n setPointProps(draggedTab.position, position);\n });\n }\n case \"WIDGET_TAB_DRAG_END\": {\n assert(!!state.draggedTab);\n const target = action.target;\n if (isTabDropTargetState(target)) {\n state = updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n state.draggedTab.home\n );\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabIndex = target.tabIndex;\n const tabs = [...targetWidget.tabs];\n tabs.splice(tabIndex, 0, action.id);\n state = updateWidgetState(state, targetWidget.id, {\n tabs,\n });\n } else if (isPanelDropTargetState(target)) {\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets.push(target.newWidgetId);\n draft.collapsed = false;\n });\n state = addWidgetState(state, target.newWidgetId, [action.id]);\n } else if (isSectionDropTargetState(target)) {\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets.splice(target.sectionIndex, 0, target.newWidgetId);\n draft.collapsed = false;\n });\n state = addWidgetState(state, target.newWidgetId, [action.id]);\n } else if (isWidgetDropTargetState(target)) {\n updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n state.draggedTab.home\n );\n const widget = getWidgetLocation(state, target.widgetId);\n if (widget && isPanelWidgetLocation(widget)) {\n state = updatePanelState(state, widget.side, (draft) => {\n draft.collapsed = false;\n });\n }\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabIndex = targetWidget.tabs.length;\n const tabs = [...targetWidget.tabs];\n tabs.splice(tabIndex, 0, action.id);\n state = updateWidgetState(state, targetWidget.id, {\n tabs,\n });\n } else {\n const tab = state.tabs[state.draggedTab.tabId];\n const nzBounds = Rectangle.createFromSize(state.size);\n const bounds = Rectangle.createFromSize(\n tab.preferredFloatingWidgetSize || target.size\n ).offset(state.draggedTab.position);\n const containedBounds = bounds.containIn(nzBounds);\n const userSized =\n tab.userSized ||\n (tab.isFloatingWidgetResizable &&\n /* istanbul ignore next */ !!tab.preferredFloatingWidgetSize);\n\n state = addFloatingWidget(\n state,\n target.newFloatingWidgetId,\n [action.id],\n {\n bounds: containedBounds,\n home: state.draggedTab.home,\n userSized,\n }\n );\n }\n return produce(state, (draft) => {\n draft.draggedTab = undefined;\n });\n }\n case \"WIDGET_TAB_POPOUT\": {\n const { id, position, size } = action;\n const location = getTabLocation(state, id);\n if (location && isPopoutTabLocation(location)) return state;\n\n const savedTab = state.savedTabs.byId[id];\n\n const tab = state.tabs[id];\n\n let contentHeight = 800;\n let contentWidth = 600;\n\n if (tab.preferredFloatingWidgetSize) {\n contentWidth = tab.preferredFloatingWidgetSize.width;\n contentHeight = tab.preferredFloatingWidgetSize.height;\n } else {\n const popoutContentContainer = document.getElementById(\n `content-container:${id}`\n );\n if (popoutContentContainer !== null) {\n contentWidth = popoutContentContainer.offsetWidth + 20;\n contentHeight = popoutContentContainer.offsetHeight + 20;\n }\n }\n\n let preferredBounds = savedTab?.popoutBounds\n ? Rectangle.create(savedTab.popoutBounds)\n : Rectangle.createFromSize({\n height: contentHeight,\n width: contentWidth,\n });\n if (size) preferredBounds = preferredBounds.setSize(size);\n if (position) preferredBounds = preferredBounds.setPosition(position);\n\n const popoutWidgetId = getUniqueId();\n let home: PopoutWidgetState[\"home\"] | undefined;\n if (location && isPanelTabLocation(location)) {\n const panel = state.panels[location.side];\n const widgetIndex = panel.widgets.indexOf(location.widgetId);\n home = {\n side: location.side,\n widgetId: location.widgetId,\n widgetIndex,\n };\n } else if (location && isFloatingTabLocation(location)) {\n const floatingWidget =\n state.floatingWidgets.byId[location.floatingWidgetId];\n home = {\n widgetId: floatingWidget.id,\n floatingWidget,\n };\n }\n\n state = removeTabFromWidget(state, id);\n return addPopoutWidget(state, popoutWidgetId, [id], {\n bounds: preferredBounds.toProps(),\n home,\n });\n }\n case \"WIDGET_TAB_HIDE\": {\n return hideTab(state, action.id);\n }\n case \"WIDGET_TAB_REMOVE\": {\n // Save tab state.\n state = hideTab(state, action.id);\n // Remove tab.\n return removeTab(state, action.id);\n }\n case \"WIDGET_TAB_SET_LABEL\": {\n return updateTabState(state, action.id, (draft) => {\n draft.label = action.label;\n });\n }\n case \"WIDGET_TAB_OPEN\": {\n return openWidgetTab(state, action.id);\n }\n case \"WIDGET_TAB_CLOSE\": {\n const { id } = action;\n if (\n state.toolSettings?.tabId === id &&\n state.toolSettings.type === \"docked\"\n ) {\n return state;\n }\n\n let location: TabLocation;\n [state, location] = unhideTab(state, id);\n\n // TODO: should change activeTabId of a widget with multiple tabs.\n const widget = state.widgets[location.widgetId];\n // istanbul ignore else\n if (isFloatingTabLocation(location) && id === widget.activeTabId) {\n state = updateWidgetState(state, widget.id, {\n minimized: true,\n });\n }\n return state;\n }\n case \"WIDGET_TAB_FLOAT\": {\n const { id, position, size } = action;\n\n let location: TabLocation;\n [state, location] = unhideTab(state, id);\n\n if (isFloatingTabLocation(location)) return state;\n\n const tab = state.tabs[id];\n const preferredSize = size ??\n tab.preferredFloatingWidgetSize ?? { height: 400, width: 400 };\n const preferredPosition = position ?? { x: 50, y: 100 };\n const preferredBounds =\n Rectangle.createFromSize(preferredSize).offset(preferredPosition);\n const nzBounds = Rectangle.createFromSize(state.size);\n const containedBounds = preferredBounds.containIn(nzBounds);\n\n const userSized =\n tab.userSized ||\n (tab.isFloatingWidgetResizable &&\n /* istanbul ignore next */ !!tab.preferredFloatingWidgetSize);\n\n if (isPanelTabLocation(location)) {\n const panel = state.panels[location.side];\n const widgetIndex = panel.widgets.indexOf(location.widgetId);\n\n state = updateTabState(state, id, (draft) => {\n initSizeProps(draft, \"preferredFloatingWidgetSize\", preferredSize);\n });\n state = removeTabFromWidget(state, id);\n state = addFloatingWidget(state, id, [id], {\n bounds: containedBounds,\n home: {\n side: location.side,\n widgetId: location.widgetId,\n widgetIndex,\n },\n userSized,\n });\n } else {\n const popoutWidgetId = location.popoutWidgetId;\n const popoutWidget = state.popoutWidgets.byId[popoutWidgetId];\n const widget = state.widgets[popoutWidgetId];\n state = removePopoutWidget(state, popoutWidgetId);\n\n const bounds = popoutWidget.bounds;\n const home = popoutWidget.home;\n\n state = addFloatingWidget(\n state,\n popoutWidgetId,\n [id],\n {\n bounds,\n home: isPanelWidgetRestoreState(home)\n ? home\n : home.floatingWidget.home,\n },\n widget\n );\n }\n\n const isToolSettings = state.toolSettings?.tabId === id;\n if (isToolSettings) {\n state = produce(state, (draft) => {\n assert(!!draft.toolSettings);\n draft.toolSettings.type = \"widget\";\n });\n }\n\n return state;\n }\n case \"WIDGET_TAB_SET_POPOUT_BOUNDS\": {\n return updateSavedTabState(state, action.id, (draft) => {\n initRectangleProps(draft, \"popoutBounds\", action.bounds);\n });\n }\n case \"WIDGET_TAB_SHOW\": {\n return showWidgetTab(state, action.id);\n }\n case \"WIDGET_TAB_UNLOAD\": {\n state = hideTab(state, action.id);\n return updateTabState(state, action.id, (draft) => {\n draft.unloaded = true;\n });\n }\n case \"WIDGET_TAB_EXPAND\": {\n state = showWidgetTab(state, action.id);\n const location = getTabLocation(state, action.id);\n // istanbul ignore else\n if (location && isPanelTabLocation(location)) {\n state = updatePanelState(state, location.side, (draft) => {\n draft.splitterPercent =\n draft.widgets.findIndex((wId) => wId === location.widgetId) === 0\n ? 100\n : 0;\n });\n }\n return state;\n }\n case \"WIDGET_TAB_UPDATE\": {\n return updateTabState(state, action.id, (draft) => {\n for (const [key, val] of Object.entries(action.overrides)) {\n (draft as any)[key] = val;\n }\n });\n }\n case \"TOOL_SETTINGS_DRAG_START\": {\n if (!state.toolSettings) return state;\n if (state.toolSettings.type === \"widget\") return state;\n\n const { newFloatingWidgetId } = action;\n const tabId = state.toolSettings.tabId;\n\n const tab = state.tabs[tabId];\n const size = tab.preferredFloatingWidgetSize || {\n height: 200,\n width: 300,\n };\n state = addFloatingWidget(state, newFloatingWidgetId, [tabId], {\n bounds: Rectangle.createFromSize(size).toProps(),\n });\n return produce(state, (draft) => {\n assert(!!draft.toolSettings);\n draft.toolSettings.type = \"widget\";\n });\n }\n case \"TOOL_SETTINGS_DOCK\": {\n if (!state.toolSettings) return state;\n if (state.toolSettings.type === \"docked\") return state;\n\n state = removeTabFromWidget(state, state.toolSettings.tabId);\n return produce(state, (draft) => {\n assert(!!draft.toolSettings);\n draft.toolSettings.type = \"docked\";\n });\n }\n case \"WIDGET_DEF_ADD\": {\n state = addTab(state, action.id, action.overrides);\n\n const savedTab = state.savedTabs.byId[action.id];\n if (savedTab) {\n // Restore to saved state.\n return addRemovedTab(state, action.id);\n }\n\n // Add to a floating widget.\n if (action.location === \"floating\") {\n // Add to an existing floating widget.\n if (action.floatingWidget.id in state.widgets) {\n return addTabToWidget(state, action.id, action.floatingWidget.id);\n }\n\n const size = action.overrides?.preferredFloatingWidgetSize ?? {\n height: 200,\n width: 300,\n };\n const position = action.floatingWidget.preferredPosition ?? {\n x: (state.size.width - size.width) / 2,\n y: (state.size.height - size.height) / 2,\n };\n const nzBounds = Rectangle.createFromSize(state.size);\n const bounds = Rectangle.createFromSize(size).offset(position);\n const containedBounds = bounds.containIn(nzBounds);\n\n const userSized = !!action.overrides?.preferredFloatingWidgetSize;\n return addFloatingWidget(state, action.floatingWidget.id, [action.id], {\n bounds: containedBounds.toProps(),\n home: {\n side: action.panelSection.side,\n widgetId: action.panelSection.id,\n widgetIndex: 0,\n },\n userSized,\n });\n }\n\n // Add to a panel section.\n const side = action.panelSection.side;\n // Add to an existing panel section.\n if (action.panelSection.id in state.widgets) {\n return addTabToWidget(state, action.id, action.panelSection.id);\n }\n\n const panel = state.panels[side];\n // Add to a new panel section.\n if (panel.widgets.length < panel.maxWidgetCount) {\n return addPanelWidget(state, side, action.panelSection.id, [action.id]);\n }\n\n // Can't add additional sections, add to an existing one.\n const sectionIndex = Math.min(\n action.panelSection.index,\n panel.widgets.length - 1\n );\n const existingSectionId = panel.widgets[sectionIndex];\n return addTabToWidget(state, action.id, existingSectionId);\n }\n case \"WIDGET_DEF_ADD_TOOL_SETTINGS\": {\n state = addTab(state, action.id, action.overrides);\n return addDockedToolSettings(state, action.id);\n }\n }\n return state;\n}\n\nfunction openWidgetTab(state: NineZoneState, id: TabState[\"id\"]) {\n if (\n state.toolSettings?.tabId === id &&\n state.toolSettings.type === \"docked\"\n ) {\n return produce(state, (draft) => {\n assert(draft.toolSettings!.type === \"docked\");\n draft.toolSettings!.hidden = false;\n });\n }\n\n let location: TabLocation;\n [state, location] = unhideTab(state, id);\n\n return produce(state, (draft) => {\n const widget = draft.widgets[location.widgetId];\n widget.minimized = false;\n widget.activeTabId = id;\n\n if (isPanelTabLocation(location)) {\n const panel = draft.panels[location.side];\n panel.collapsed = false;\n // istanbul ignore next\n if (undefined === panel.size || 0 === panel.size) {\n panel.size = panel.minSize ?? 200;\n }\n }\n });\n}\n\nfunction showWidgetTab(state: NineZoneState, id: TabState[\"id\"]) {\n state = openWidgetTab(state, id);\n const location = getTabLocation(state, id);\n if (!location) return state;\n state = updateWidgetState(state, location.widgetId, {\n activeTabId: id,\n minimized: false,\n });\n if (isPanelTabLocation(location)) {\n state = updatePanelState(state, location.side, (draft) => {\n draft.collapsed = false;\n });\n }\n if (isFloatingTabLocation(location)) {\n state = floatingWidgetBringToFront(state, location.floatingWidgetId);\n }\n return state;\n}\n\nfunction unhideTab(state: NineZoneState, id: TabState[\"id\"]) {\n let location = getTabLocation(state, id);\n if (!location) {\n state = addRemovedTab(state, id);\n location = getTabLocation(state, id);\n assert(!!location);\n }\n state = updateTabState(state, id, (draft) => {\n draft.unloaded = false;\n });\n return [state, location] as const;\n}\n\nfunction hideTab(state: NineZoneState, id: TabState[\"id\"]) {\n state = produce(state, (draft) => {\n if (!draft.toolSettings) return;\n\n const isToolSettings = draft.toolSettings.tabId === id;\n if (isToolSettings && draft.toolSettings.type === \"docked\") {\n draft.toolSettings.hidden = true;\n }\n });\n\n state = updateTabState(state, id, (draft) => {\n draft.unloaded = false;\n });\n\n const location = getTabLocation(state, id);\n if (!location) return state;\n\n const widgetId = location.widgetId;\n const tabIndex = state.widgets[widgetId].tabs.indexOf(id);\n if (isFloatingTabLocation(location)) {\n const floatingWidget = state.floatingWidgets.byId[widgetId];\n // widgetDef.setFloatingContainerId(location.floatingWidgetId);\n state = updateSavedTabState(state, id, (draft) => {\n draft.home = {\n widgetId,\n tabIndex,\n floatingWidget,\n };\n });\n } else if (isPanelTabLocation(location)) {\n const side = location.side;\n const widgetIndex = state.panels[side].widgets.indexOf(widgetId);\n state = updateSavedTabState(state, id, (draft) => {\n draft.home = {\n widgetId,\n side,\n widgetIndex,\n tabIndex,\n };\n });\n }\n\n return removeTabFromWidget(state, id);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"NineZoneStateReducer.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/state/NineZoneStateReducer.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Base\n */\n\nimport { produce } from \"immer\";\nimport { Point, Rectangle } from \"@itwin/core-react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport type { TabState } from \"./TabState\";\nimport { getWidgetLocation, isPanelWidgetLocation } from \"./WidgetLocation\";\nimport type { NineZoneAction } from \"./NineZoneAction\";\nimport {\n isPanelDropTargetState,\n isSectionDropTargetState,\n isTabDropTargetState,\n isWidgetDropTargetState,\n isWindowDropTargetState,\n} from \"./DropTargetState\";\nimport { getWidgetPanelSectionId } from \"./PanelState\";\nimport type { NineZoneState } from \"./NineZoneState\";\nimport type { PopoutWidgetState, WidgetState } from \"./WidgetState\";\nimport {\n addPanelWidget,\n getPanelPixelSizeFromSpec,\n getPanelSize,\n insertPanelWidget,\n updatePanelState,\n} from \"./internal/PanelStateHelpers\";\nimport {\n addRemovedTab,\n addTab,\n addTabToWidget,\n createDraggedTabState,\n removeTab,\n removeTabFromWidget,\n updateSavedTabState,\n updateTabState,\n} from \"./internal/TabStateHelpers\";\nimport {\n initRectangleProps,\n initSizeProps,\n isToolSettingsFloatingWidget,\n setPointProps,\n setSizeProps,\n updateHomeOfToolSettingsWidget,\n} from \"./internal/NineZoneStateHelpers\";\nimport {\n addFloatingWidget,\n addPopoutWidget,\n addWidgetState,\n floatingWidgetBringToFront,\n getWidgetState,\n removeFloatingWidget,\n removePanelWidget,\n removePopoutWidget,\n removeWidget,\n setWidgetActiveTabId,\n updateFloatingWidgetState,\n updateWidgetState,\n} from \"./internal/WidgetStateHelpers\";\nimport { getSendBackHomeState } from \"../widget/SendBack\";\nimport { panelSides } from \"../widget-panels/Panel\";\nimport type { TabLocation } from \"./TabLocation\";\nimport {\n getTabLocation,\n isFloatingTabLocation,\n isPanelTabLocation,\n isPopoutTabLocation,\n} from \"./TabLocation\";\nimport { getUniqueId } from \"../base/NineZone\";\nimport {\n isPanelWidgetRestoreState,\n type PanelWidgetRestoreState,\n} from \"./WidgetRestoreState\";\nimport { addDockedToolSettings } from \"./internal/ToolSettingsStateHelpers\";\n\n/** @internal */\nexport function NineZoneStateReducer(\n state: NineZoneState,\n action: NineZoneAction\n): NineZoneState {\n switch (action.type) {\n case \"RESIZE\": {\n state = produce(state, (draft) => {\n setSizeProps(draft.size, action.size);\n });\n const nzBounds = Rectangle.createFromSize(action.size);\n for (const id of state.floatingWidgets.allIds) {\n const floatingWidget = state.floatingWidgets.byId[id];\n const bounds = Rectangle.create(floatingWidget.bounds);\n const containedBounds = bounds.containIn(nzBounds);\n state = updateFloatingWidgetState(state, id, {\n bounds: containedBounds.toProps(),\n });\n }\n for (const side of panelSides) {\n state = updatePanelState(state, side, (draft) => {\n const size = getPanelSize(\n draft.size,\n side,\n draft.minSize,\n draft.maxSize,\n state.size\n );\n draft.size = size;\n });\n }\n return state;\n }\n case \"PANEL_TOGGLE_COLLAPSED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.collapsed = !draft.collapsed;\n });\n }\n case \"PANEL_SET_COLLAPSED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.collapsed = action.collapsed;\n });\n }\n case \"PANEL_SET_SIZE\": {\n const { side, size: preferredSize } = action;\n\n return updatePanelState(state, side, (draft) => {\n const size = getPanelSize(\n preferredSize,\n draft.side,\n draft.minSize,\n draft.maxSize,\n state.size\n );\n draft.size = size;\n });\n }\n case \"PANEL_SET_MIN_SIZE\": {\n return updatePanelState(state, action.side, (draft) => {\n const size = getPanelSize(\n draft.size,\n draft.side,\n action.minSize,\n draft.maxSize,\n state.size\n );\n\n const minSizeInPixels = getPanelPixelSizeFromSpec(\n draft.side,\n state.size,\n action.minSize\n );\n draft.minSize = minSizeInPixels;\n draft.size = size;\n });\n }\n case \"PANEL_SET_MAX_SIZE\": {\n return updatePanelState(state, action.side, (draft) => {\n const size = getPanelSize(\n draft.size,\n draft.side,\n draft.minSize,\n action.maxSize,\n state.size\n );\n\n draft.maxSize = action.maxSize;\n draft.size = size;\n });\n }\n case \"PANEL_SET_RESIZABLE\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.resizable = action.resizable;\n });\n }\n case \"PANEL_SET_SPLITTER_VALUE\": {\n const splitterPercent = Math.min(Math.max(action.percent, 0), 100);\n return updatePanelState(state, action.side, (draft) => {\n draft.splitterPercent = splitterPercent;\n });\n }\n case \"PANEL_TOGGLE_SPAN\": {\n const { side } = action;\n return updatePanelState(state, side, (draft) => {\n draft.span = !draft.span;\n });\n }\n case \"PANEL_SET_PINNED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.pinned = action.pinned;\n });\n }\n case \"PANEL_TOGGLE_PINNED\": {\n return updatePanelState(state, action.side, (draft) => {\n draft.pinned = !draft.pinned;\n });\n }\n case \"PANEL_INITIALIZE\": {\n return updatePanelState(state, action.side, (draft) => {\n const size = getPanelSize(\n action.size,\n draft.side,\n draft.minSize,\n draft.maxSize,\n state.size\n );\n draft.size = size;\n });\n }\n case \"PANEL_WIDGET_DRAG_START\": {\n const { side, newFloatingWidgetId } = action;\n const panel = state.panels[side];\n const widgetIndex = panel.widgets.indexOf(action.id);\n const widget = getWidgetState(state, action.id);\n state = removePanelWidget(state, action.id);\n return addFloatingWidget(\n state,\n newFloatingWidgetId,\n widget.tabs,\n {\n bounds: Rectangle.create(action.bounds).toProps(),\n userSized: action.userSized,\n id: action.newFloatingWidgetId,\n home: {\n side: action.side,\n widgetId: \"\",\n widgetIndex,\n },\n },\n {\n ...widget,\n minimized: false,\n }\n );\n }\n case \"WIDGET_DRAG\": {\n const { floatingWidgetId, dragBy } = action;\n const floatingWidget = state.floatingWidgets.byId[floatingWidgetId];\n const newBounds = Rectangle.create(floatingWidget.bounds).offset(dragBy);\n return updateFloatingWidgetState(state, floatingWidgetId, {\n bounds: newBounds.toProps(),\n });\n }\n case \"WIDGET_DRAG_END\": {\n // TODO: handle duplicates in WIDGET_TAB_DRAG_END action\n const { target, floatingWidgetId } = action;\n const floatingWidget = state.floatingWidgets.byId[floatingWidgetId];\n const draggedWidget = getWidgetState(state, floatingWidgetId);\n\n if (isWindowDropTargetState(target)) {\n const nzBounds = Rectangle.createFromSize(state.size);\n let newBounds = Rectangle.create(floatingWidget.bounds);\n if (draggedWidget.minimized) {\n const containedBounds = newBounds.setHeight(35).containIn(nzBounds);\n newBounds = newBounds.setPosition(containedBounds.topLeft());\n } else {\n newBounds = newBounds.containIn(nzBounds);\n }\n state = updateFloatingWidgetState(state, floatingWidgetId, {\n bounds: newBounds.toProps(),\n });\n return floatingWidgetBringToFront(state, floatingWidgetId);\n }\n\n state = removeFloatingWidget(state, floatingWidgetId);\n if (isTabDropTargetState(target)) {\n state = updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n floatingWidget.home\n );\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabs = [...targetWidget.tabs];\n tabs.splice(target.tabIndex, 0, ...draggedWidget.tabs);\n state = updateWidgetState(state, target.widgetId, {\n tabs,\n });\n } else if (isSectionDropTargetState(target)) {\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets.splice(target.sectionIndex, 0, target.newWidgetId);\n draft.collapsed = false;\n });\n state = addWidgetState(\n state,\n target.newWidgetId,\n draggedWidget.tabs,\n draggedWidget\n );\n } else if (isWidgetDropTargetState(target)) {\n state = updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n floatingWidget.home\n );\n const widget = getWidgetLocation(state, target.widgetId);\n if (widget && isPanelWidgetLocation(widget)) {\n state = updatePanelState(state, widget.side, (draft) => {\n draft.collapsed = false;\n });\n }\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabs = [...targetWidget.tabs];\n tabs.splice(targetWidget.tabs.length, 0, ...draggedWidget.tabs);\n state = updateWidgetState(state, target.widgetId, {\n tabs,\n });\n } else {\n const panelSectionId = getWidgetPanelSectionId(target.side, 0);\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets = [panelSectionId];\n draft.collapsed = false;\n });\n state = addWidgetState(state, panelSectionId, draggedWidget.tabs, {\n ...draggedWidget,\n minimized: false,\n });\n }\n return state;\n }\n case \"FLOATING_WIDGET_RESIZE\": {\n const { resizeBy } = action;\n const widget = getWidgetState(state, action.id);\n\n const floatingWidget = state.floatingWidgets.byId[action.id];\n // if this is not a tool settings widget then set the userSized flag\n // istanbul ignore else\n if (!isToolSettingsFloatingWidget(state, action.id)) {\n state = updateFloatingWidgetState(state, action.id, {\n userSized: true,\n });\n }\n\n const minWidth = 200;\n const minHeight = 120;\n let newBounds = Rectangle.create(floatingWidget.bounds);\n\n // Resize top-left corner.\n const maxLeft = newBounds.right - minWidth;\n const maxTop = newBounds.bottom - minHeight;\n\n newBounds = newBounds.inset(-resizeBy.left, -resizeBy.top, 0, 0);\n const left = Math.min(maxLeft, newBounds.left);\n const top = Math.min(maxTop, newBounds.top);\n newBounds = new Rectangle(left, top, newBounds.right, newBounds.bottom);\n\n // Resize bottom-right corner.\n const minRight = newBounds.left + minWidth;\n const minBottom = newBounds.top + minHeight;\n\n newBounds = newBounds.inset(0, 0, -resizeBy.right, -resizeBy.bottom);\n const right = Math.max(minRight, newBounds.right);\n const bottom = Math.max(minBottom, newBounds.bottom);\n newBounds = new Rectangle(left, top, right, bottom);\n\n state = updateFloatingWidgetState(state, action.id, {\n bounds: newBounds,\n });\n\n const tab = state.tabs[widget.activeTabId];\n if (tab.isFloatingWidgetResizable) {\n const size = newBounds.getSize();\n state = updateTabState(state, widget.activeTabId, (draft) => {\n initSizeProps(draft, \"preferredFloatingWidgetSize\", size);\n draft.userSized = true;\n });\n }\n\n return state;\n }\n case \"FLOATING_WIDGET_SET_BOUNDS\": {\n const nzBounds = Rectangle.createFromSize(state.size);\n const bounds = Rectangle.create(action.bounds).containIn(nzBounds);\n return updateFloatingWidgetState(state, action.id, {\n bounds: bounds.toProps(),\n });\n }\n case \"FLOATING_WIDGET_CLEAR_USER_SIZED\": {\n return produce(state, (draft) => {\n const floatingWidget = draft.floatingWidgets.byId[action.id];\n floatingWidget.userSized = false;\n const widget = getWidgetState(draft, action.id);\n const tab = draft.tabs[widget.activeTabId];\n tab.userSized = false;\n });\n }\n case \"FLOATING_WIDGET_SET_USER_SIZED\": {\n return produce(state, (draft) => {\n const floatingWidget = draft.floatingWidgets.byId[action.id];\n floatingWidget.userSized = action.userSized;\n });\n }\n case \"FLOATING_WIDGET_BRING_TO_FRONT\": {\n return floatingWidgetBringToFront(state, action.id);\n }\n case \"FLOATING_WIDGET_SEND_BACK\": {\n const widget = getWidgetState(state, action.id);\n const sendBackHomeState = getSendBackHomeState(state, action.id);\n\n // Add tabs to an existing widget.\n if (sendBackHomeState.widgetId) {\n const destinationWidget = state.widgets[sendBackHomeState.widgetId];\n const tabs = [...destinationWidget.tabs, ...widget.tabs];\n state = updateWidgetState(state, destinationWidget.id, {\n tabs,\n });\n return removeWidget(state, widget.id);\n }\n\n const sectionIndex = sendBackHomeState.sectionIndex ?? 0;\n const home = state.floatingWidgets.byId[action.id].home;\n const destinationWidgetId = home.widgetId\n ? home.widgetId\n : getWidgetPanelSectionId(home.side, sectionIndex);\n\n // Add tabs to a new panel widget.\n state = removeWidget(state, widget.id);\n return insertPanelWidget(\n state,\n sendBackHomeState.side,\n destinationWidgetId,\n widget.tabs,\n sectionIndex\n );\n }\n case \"POPOUT_WIDGET_SEND_BACK\": {\n const popoutWidget = state.popoutWidgets.byId[action.id];\n const widget = getWidgetState(state, action.id);\n const home = popoutWidget.home;\n\n state = removeWidget(state, widget.id);\n\n // Determine existing widget.\n let existingWidget: WidgetState | undefined;\n if (home.widgetId in state.widgets) {\n existingWidget = state.widgets[home.widgetId];\n } else if (isPanelWidgetRestoreState(home)) {\n const panel = state.panels[home.side];\n const panelSectionId = getWidgetPanelSectionId(\n home.side,\n home.widgetIndex\n );\n existingWidget = state.widgets[panelSectionId];\n\n // Can not add additional sections, add to an existing one.\n if (!existingWidget && panel.widgets.length >= panel.maxWidgetCount) {\n const sectionIndex = Math.min(\n panel.maxWidgetCount - 1,\n home.widgetIndex\n );\n const sectionId = panel.widgets[sectionIndex];\n existingWidget = state.widgets[sectionId];\n }\n }\n\n // Add to an existing widget.\n if (existingWidget) {\n const tabs = [...existingWidget.tabs, ...widget.tabs];\n return updateWidgetState(state, existingWidget.id, {\n tabs,\n });\n }\n\n // Insert a new panel section.\n if (isPanelWidgetRestoreState(home)) {\n const sectionId = home.widgetId\n ? home.widgetId\n : getWidgetPanelSectionId(home.side, home.widgetIndex);\n return insertPanelWidget(\n state,\n home.side,\n sectionId,\n [...widget.tabs],\n home.widgetIndex\n );\n }\n\n // Add a new floating widget.\n return addFloatingWidget(\n state,\n home.widgetId,\n widget.tabs,\n home.floatingWidget\n );\n }\n case \"WIDGET_TAB_CLICK\": {\n const { id, widgetId } = action;\n state = setWidgetActiveTabId(state, widgetId, id);\n return updateWidgetState(state, widgetId, {\n minimized: false,\n });\n }\n case \"WIDGET_TAB_DOUBLE_CLICK\": {\n if (action.floatingWidgetId === undefined) return state;\n\n const widget = getWidgetState(state, action.widgetId);\n const active = action.id === widget.activeTabId;\n if (!active) return setWidgetActiveTabId(state, widget.id, action.id);\n\n return updateWidgetState(state, widget.id, {\n minimized: !widget.minimized,\n });\n }\n case \"WIDGET_TAB_DRAG_START\": {\n const tabId = action.id;\n let home: PanelWidgetRestoreState;\n if (action.floatingWidgetId) {\n const floatingWidget =\n state.floatingWidgets.byId[action.floatingWidgetId];\n home = floatingWidget.home;\n } else {\n assert(!!action.side);\n const panel = state.panels[action.side];\n const widgetIndex = panel.widgets.indexOf(action.widgetId);\n home = {\n side: action.side,\n widgetId: action.widgetId,\n widgetIndex,\n };\n }\n state = produce(state, (draft) => {\n draft.draggedTab = createDraggedTabState(tabId, {\n position: Point.create(action.position).toProps(),\n home,\n });\n });\n return removeTabFromWidget(state, tabId);\n }\n case \"WIDGET_TAB_DRAG\": {\n return produce(state, (draft) => {\n const draggedTab = draft.draggedTab;\n assert(!!draggedTab);\n const position = Point.create(draggedTab.position).offset(\n action.dragBy\n );\n setPointProps(draggedTab.position, position);\n });\n }\n case \"WIDGET_TAB_DRAG_END\": {\n assert(!!state.draggedTab);\n const target = action.target;\n if (isTabDropTargetState(target)) {\n state = updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n state.draggedTab.home\n );\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabIndex = target.tabIndex;\n const tabs = [...targetWidget.tabs];\n tabs.splice(tabIndex, 0, action.id);\n state = updateWidgetState(state, targetWidget.id, {\n tabs,\n });\n } else if (isPanelDropTargetState(target)) {\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets.push(target.newWidgetId);\n draft.collapsed = false;\n });\n state = addWidgetState(state, target.newWidgetId, [action.id]);\n } else if (isSectionDropTargetState(target)) {\n state = updatePanelState(state, target.side, (draft) => {\n draft.widgets.splice(target.sectionIndex, 0, target.newWidgetId);\n draft.collapsed = false;\n });\n state = addWidgetState(state, target.newWidgetId, [action.id]);\n } else if (isWidgetDropTargetState(target)) {\n updateHomeOfToolSettingsWidget(\n state,\n target.widgetId,\n state.draggedTab.home\n );\n const widget = getWidgetLocation(state, target.widgetId);\n if (widget && isPanelWidgetLocation(widget)) {\n state = updatePanelState(state, widget.side, (draft) => {\n draft.collapsed = false;\n });\n }\n const targetWidget = getWidgetState(state, target.widgetId);\n const tabIndex = targetWidget.tabs.length;\n const tabs = [...targetWidget.tabs];\n tabs.splice(tabIndex, 0, action.id);\n state = updateWidgetState(state, targetWidget.id, {\n tabs,\n });\n } else {\n const tab = state.tabs[state.draggedTab.tabId];\n const nzBounds = Rectangle.createFromSize(state.size);\n const bounds = Rectangle.createFromSize(\n tab.preferredFloatingWidgetSize || target.size\n ).offset(state.draggedTab.position);\n const containedBounds = bounds.containIn(nzBounds);\n const userSized =\n tab.userSized ||\n (tab.isFloatingWidgetResizable &&\n /* istanbul ignore next */ !!tab.preferredFloatingWidgetSize);\n\n state = addFloatingWidget(\n state,\n target.newFloatingWidgetId,\n [action.id],\n {\n bounds: containedBounds,\n home: state.draggedTab.home,\n userSized,\n }\n );\n }\n return produce(state, (draft) => {\n draft.draggedTab = undefined;\n });\n }\n case \"WIDGET_TAB_POPOUT\": {\n const { id, position, size } = action;\n const location = getTabLocation(state, id);\n if (location && isPopoutTabLocation(location)) return state;\n\n const savedTab = state.savedTabs.byId[id];\n\n const tab = state.tabs[id];\n\n let contentHeight = 800;\n let contentWidth = 600;\n\n if (tab.preferredFloatingWidgetSize) {\n contentWidth = tab.preferredFloatingWidgetSize.width;\n contentHeight = tab.preferredFloatingWidgetSize.height;\n } else {\n const popoutContentContainer = document.getElementById(\n `content-container:${id}`\n );\n if (popoutContentContainer !== null) {\n contentWidth = popoutContentContainer.offsetWidth + 20;\n contentHeight = popoutContentContainer.offsetHeight + 20;\n }\n }\n\n let preferredBounds = savedTab?.popoutBounds\n ? Rectangle.create(savedTab.popoutBounds)\n : Rectangle.createFromSize({\n height: contentHeight,\n width: contentWidth,\n });\n if (size) preferredBounds = preferredBounds.setSize(size);\n if (position) preferredBounds = preferredBounds.setPosition(position);\n\n const popoutWidgetId = getUniqueId();\n let home: PopoutWidgetState[\"home\"] | undefined;\n if (location && isPanelTabLocation(location)) {\n const panel = state.panels[location.side];\n const widgetIndex = panel.widgets.indexOf(location.widgetId);\n home = {\n side: location.side,\n widgetId: location.widgetId,\n widgetIndex,\n };\n } else if (location && isFloatingTabLocation(location)) {\n const floatingWidget =\n state.floatingWidgets.byId[location.floatingWidgetId];\n home = {\n widgetId: floatingWidget.id,\n floatingWidget,\n };\n }\n\n state = removeTabFromWidget(state, id);\n return addPopoutWidget(state, popoutWidgetId, [id], {\n bounds: preferredBounds.toProps(),\n home,\n });\n }\n case \"WIDGET_TAB_HIDE\": {\n return hideTab(state, action.id);\n }\n case \"WIDGET_TAB_REMOVE\": {\n // Save tab state.\n state = hideTab(state, action.id);\n // Remove tab.\n return removeTab(state, action.id);\n }\n case \"WIDGET_TAB_SET_LABEL\": {\n return updateTabState(state, action.id, (draft) => {\n draft.label = action.label;\n });\n }\n case \"WIDGET_TAB_OPEN\": {\n return openWidgetTab(state, action.id);\n }\n case \"WIDGET_TAB_CLOSE\": {\n const { id } = action;\n if (\n state.toolSettings?.tabId === id &&\n state.toolSettings.type === \"docked\"\n ) {\n return state;\n }\n\n let location: TabLocation;\n [state, location] = unhideTab(state, id);\n\n // TODO: should change activeTabId of a widget with multiple tabs.\n const widget = state.widgets[location.widgetId];\n // istanbul ignore else\n if (isFloatingTabLocation(location) && id === widget.activeTabId) {\n state = updateWidgetState(state, widget.id, {\n minimized: true,\n });\n }\n return state;\n }\n case \"WIDGET_TAB_FLOAT\": {\n const { id, position, size } = action;\n\n let location: TabLocation;\n [state, location] = unhideTab(state, id);\n\n if (isFloatingTabLocation(location)) return state;\n\n const tab = state.tabs[id];\n const preferredSize = size ??\n tab.preferredFloatingWidgetSize ?? { height: 400, width: 400 };\n const preferredPosition = position ?? { x: 50, y: 100 };\n const preferredBounds =\n Rectangle.createFromSize(preferredSize).offset(preferredPosition);\n const nzBounds = Rectangle.createFromSize(state.size);\n const containedBounds = preferredBounds.containIn(nzBounds);\n\n const userSized =\n tab.userSized ||\n (tab.isFloatingWidgetResizable &&\n /* istanbul ignore next */ !!tab.preferredFloatingWidgetSize);\n\n if (isPanelTabLocation(location)) {\n const panel = state.panels[location.side];\n const widgetIndex = panel.widgets.indexOf(location.widgetId);\n\n state = updateTabState(state, id, (draft) => {\n initSizeProps(draft, \"preferredFloatingWidgetSize\", preferredSize);\n });\n state = removeTabFromWidget(state, id);\n state = addFloatingWidget(state, id, [id], {\n bounds: containedBounds,\n home: {\n side: location.side,\n widgetId: location.widgetId,\n widgetIndex,\n },\n userSized,\n });\n } else {\n const popoutWidgetId = location.popoutWidgetId;\n const popoutWidget = state.popoutWidgets.byId[popoutWidgetId];\n const widget = state.widgets[popoutWidgetId];\n state = removePopoutWidget(state, popoutWidgetId);\n\n const bounds = popoutWidget.bounds;\n const home = popoutWidget.home;\n\n state = addFloatingWidget(\n state,\n popoutWidgetId,\n [id],\n {\n bounds,\n home: isPanelWidgetRestoreState(home)\n ? home\n : home.floatingWidget.home,\n },\n widget\n );\n }\n\n const isToolSettings = state.toolSettings?.tabId === id;\n if (isToolSettings) {\n state = produce(state, (draft) => {\n assert(!!draft.toolSettings);\n draft.toolSettings.type = \"widget\";\n });\n }\n\n return state;\n }\n case \"WIDGET_TAB_SET_POPOUT_BOUNDS\": {\n return updateSavedTabState(state, action.id, (draft) => {\n initRectangleProps(draft, \"popoutBounds\", action.bounds);\n });\n }\n case \"WIDGET_TAB_SHOW\": {\n return showWidgetTab(state, action.id);\n }\n case \"WIDGET_TAB_UNLOAD\": {\n state = hideTab(state, action.id);\n return updateTabState(state, action.id, (draft) => {\n draft.unloaded = true;\n });\n }\n case \"WIDGET_TAB_EXPAND\": {\n state = showWidgetTab(state, action.id);\n const location = getTabLocation(state, action.id);\n // istanbul ignore else\n if (location && isPanelTabLocation(location)) {\n state = updatePanelState(state, location.side, (draft) => {\n draft.splitterPercent =\n draft.widgets.findIndex((wId) => wId === location.widgetId) === 0\n ? 100\n : 0;\n });\n }\n return state;\n }\n case \"WIDGET_TAB_UPDATE\": {\n return updateTabState(state, action.id, (draft) => {\n for (const [key, val] of Object.entries(action.overrides)) {\n (draft as any)[key] = val;\n }\n });\n }\n case \"TOOL_SETTINGS_DRAG_START\": {\n if (!state.toolSettings) return state;\n if (state.toolSettings.type === \"widget\") return state;\n\n const { newFloatingWidgetId } = action;\n const tabId = state.toolSettings.tabId;\n\n const tab = state.tabs[tabId];\n const size = tab.preferredFloatingWidgetSize || {\n height: 200,\n width: 300,\n };\n state = addFloatingWidget(state, newFloatingWidgetId, [tabId], {\n bounds: Rectangle.createFromSize(size).toProps(),\n });\n return produce(state, (draft) => {\n assert(!!draft.toolSettings);\n draft.toolSettings.type = \"widget\";\n });\n }\n case \"TOOL_SETTINGS_DOCK\": {\n if (!state.toolSettings) return state;\n if (state.toolSettings.type === \"docked\") return state;\n\n state = removeTabFromWidget(state, state.toolSettings.tabId);\n return produce(state, (draft) => {\n assert(!!draft.toolSettings);\n draft.toolSettings.type = \"docked\";\n });\n }\n case \"WIDGET_DEF_ADD\": {\n state = addTab(state, action.id, action.overrides);\n\n const savedTab = state.savedTabs.byId[action.id];\n if (savedTab) {\n // Restore to saved state.\n return addRemovedTab(state, action.id);\n }\n\n // Add to a floating widget.\n if (action.location === \"floating\") {\n // Add to an existing floating widget.\n if (action.floatingWidget.id in state.widgets) {\n return addTabToWidget(state, action.id, action.floatingWidget.id);\n }\n\n const size = action.overrides?.preferredFloatingWidgetSize ?? {\n height: 200,\n width: 300,\n };\n const position = action.floatingWidget.preferredPosition ?? {\n x: (state.size.width - size.width) / 2,\n y: (state.size.height - size.height) / 2,\n };\n const nzBounds = Rectangle.createFromSize(state.size);\n const bounds = Rectangle.createFromSize(size).offset(position);\n const containedBounds = bounds.containIn(nzBounds);\n\n const userSized = !!action.overrides?.preferredFloatingWidgetSize;\n return addFloatingWidget(state, action.floatingWidget.id, [action.id], {\n bounds: containedBounds.toProps(),\n home: {\n side: action.panelSection.side,\n widgetId: action.panelSection.id,\n widgetIndex: 0,\n },\n userSized,\n });\n }\n\n // Add to a panel section.\n const side = action.panelSection.side;\n // Add to an existing panel section.\n if (action.panelSection.id in state.widgets) {\n return addTabToWidget(state, action.id, action.panelSection.id);\n }\n\n const panel = state.panels[side];\n // Add to a new panel section.\n if (panel.widgets.length < panel.maxWidgetCount) {\n return addPanelWidget(state, side, action.panelSection.id, [action.id]);\n }\n\n // Can't add additional sections, add to an existing one.\n const sectionIndex = Math.min(\n action.panelSection.index,\n panel.widgets.length - 1\n );\n const existingSectionId = panel.widgets[sectionIndex];\n return addTabToWidget(state, action.id, existingSectionId);\n }\n case \"WIDGET_DEF_ADD_TOOL_SETTINGS\": {\n state = addTab(state, action.id, action.overrides);\n return addDockedToolSettings(state, action.id);\n }\n }\n return state;\n}\n\nfunction openWidgetTab(state: NineZoneState, id: TabState[\"id\"]) {\n if (\n state.toolSettings?.tabId === id &&\n state.toolSettings.type === \"docked\"\n ) {\n return produce(state, (draft) => {\n assert(draft.toolSettings!.type === \"docked\");\n draft.toolSettings!.hidden = false;\n });\n }\n\n let location: TabLocation;\n [state, location] = unhideTab(state, id);\n\n return produce(state, (draft) => {\n const widget = draft.widgets[location.widgetId];\n widget.minimized = false;\n widget.activeTabId = id;\n\n if (isPanelTabLocation(location)) {\n const panel = draft.panels[location.side];\n panel.collapsed = false;\n // istanbul ignore next\n if (undefined === panel.size || 0 === panel.size) {\n panel.size = panel.minSize ?? 200;\n }\n }\n });\n}\n\nfunction showWidgetTab(state: NineZoneState, id: TabState[\"id\"]) {\n state = openWidgetTab(state, id);\n const location = getTabLocation(state, id);\n if (!location) return state;\n state = updateWidgetState(state, location.widgetId, {\n activeTabId: id,\n minimized: false,\n });\n if (isPanelTabLocation(location)) {\n state = updatePanelState(state, location.side, (draft) => {\n draft.collapsed = false;\n });\n }\n if (isFloatingTabLocation(location)) {\n state = floatingWidgetBringToFront(state, location.floatingWidgetId);\n }\n return state;\n}\n\nfunction unhideTab(state: NineZoneState, id: TabState[\"id\"]) {\n let location = getTabLocation(state, id);\n if (!location) {\n state = addRemovedTab(state, id);\n location = getTabLocation(state, id);\n assert(!!location);\n }\n state = updateTabState(state, id, (draft) => {\n draft.unloaded = false;\n });\n return [state, location] as const;\n}\n\nfunction hideTab(state: NineZoneState, id: TabState[\"id\"]) {\n state = produce(state, (draft) => {\n if (!draft.toolSettings) return;\n\n const isToolSettings = draft.toolSettings.tabId === id;\n if (isToolSettings && draft.toolSettings.type === \"docked\") {\n draft.toolSettings.hidden = true;\n }\n });\n\n state = updateTabState(state, id, (draft) => {\n draft.unloaded = false;\n });\n\n const location = getTabLocation(state, id);\n if (!location) return state;\n\n const widgetId = location.widgetId;\n const tabIndex = state.widgets[widgetId].tabs.indexOf(id);\n if (isFloatingTabLocation(location)) {\n const floatingWidget = state.floatingWidgets.byId[widgetId];\n // widgetDef.setFloatingContainerId(location.floatingWidgetId);\n state = updateSavedTabState(state, id, (draft) => {\n draft.home = {\n widgetId,\n tabIndex,\n floatingWidget,\n };\n });\n } else if (isPanelTabLocation(location)) {\n const side = location.side;\n const widgetIndex = state.panels[side].widgets.indexOf(widgetId);\n state = updateSavedTabState(state, id, (draft) => {\n draft.home = {\n widgetId,\n side,\n widgetIndex,\n tabIndex,\n };\n });\n }\n\n return removeTabFromWidget(state, id);\n}\n"]}
|
|
@@ -3,15 +3,12 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import type { HorizontalPanelSide, PanelSide, VerticalPanelSide } from "../widget-panels/PanelTypes";
|
|
5
5
|
import type { WidgetState } from "./WidgetState";
|
|
6
|
-
|
|
7
|
-
export type PanelMaxSizeState = number | {
|
|
8
|
-
readonly percentage: number;
|
|
9
|
-
};
|
|
6
|
+
import type { StagePanelSizeSpec } from "../../stagepanels/StagePanelConfig";
|
|
10
7
|
/** @internal */
|
|
11
8
|
export interface PanelState {
|
|
12
9
|
readonly collapseOffset: number;
|
|
13
10
|
readonly collapsed: boolean;
|
|
14
|
-
readonly maxSize:
|
|
11
|
+
readonly maxSize: StagePanelSizeSpec;
|
|
15
12
|
readonly minSize: number;
|
|
16
13
|
readonly pinned: boolean;
|
|
17
14
|
readonly resizable: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanelState.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/state/PanelState.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"PanelState.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/state/PanelState.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,gBAAgB;AAChB,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9C;AAED,gBAAgB;AAChB,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;CACpC;AAED,gBAAgB;AAChB,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;CAClC;AAED,gBAAgB;AAChB,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAC;CACpC;AAED,gBAAgB;AAChB,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,UAAU,GAChB,KAAK,IAAI,oBAAoB,CAE/B;AAED,gBAAgB;AAChB,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,MAAM,UAG1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanelState.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/state/PanelState.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAOH,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"PanelState.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/state/PanelState.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAOH,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAsC/D,gBAAgB;AAChB,MAAM,UAAU,sBAAsB,CACpC,KAAiB;IAEjB,OAAO,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,uBAAuB,CACrC,IAAe,EACf,iBAAyB;IAEzB,OAAO,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC;AACjE,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Base\n */\n\nimport type {\n HorizontalPanelSide,\n PanelSide,\n VerticalPanelSide,\n} from \"../widget-panels/PanelTypes\";\nimport { isHorizontalPanelSide } from \"../widget-panels/Panel\";\nimport type { WidgetState } from \"./WidgetState\";\nimport type { StagePanelSizeSpec } from \"../../stagepanels/StagePanelConfig\";\n\n/** @internal */\nexport interface PanelState {\n readonly collapseOffset: number;\n readonly collapsed: boolean;\n readonly maxSize: StagePanelSizeSpec;\n readonly minSize: number;\n readonly pinned: boolean;\n readonly resizable: boolean;\n readonly side: PanelSide;\n readonly size: number | undefined;\n readonly widgets: ReadonlyArray<WidgetState[\"id\"]>;\n readonly maxWidgetCount: number;\n readonly splitterPercent: number | undefined; // Defaults to 50.\n}\n\n/** @internal */\nexport interface HorizontalPanelState extends PanelState {\n readonly span: boolean;\n readonly side: HorizontalPanelSide;\n}\n\n/** @internal */\nexport interface VerticalPanelState extends PanelState {\n readonly side: VerticalPanelSide;\n}\n\n/** @internal */\nexport interface PanelsState {\n readonly bottom: HorizontalPanelState;\n readonly left: VerticalPanelState;\n readonly right: VerticalPanelState;\n readonly top: HorizontalPanelState;\n}\n\n/** @internal */\nexport function isHorizontalPanelState(\n state: PanelState\n): state is HorizontalPanelState {\n return isHorizontalPanelSide(state.side);\n}\n\n/** @internal */\nexport function getWidgetPanelSectionId(\n side: PanelSide,\n panelSectionIndex: number\n) {\n return 0 === panelSectionIndex ? `${side}Start` : `${side}End`;\n}\n"]}
|
|
@@ -71,9 +71,8 @@ export function initRectangleProps(obj, key, rectangle) {
|
|
|
71
71
|
}
|
|
72
72
|
/** @internal */
|
|
73
73
|
export function isToolSettingsFloatingWidget(state, id) {
|
|
74
|
-
var _a;
|
|
75
74
|
const widget = getWidgetState(state, id);
|
|
76
|
-
const toolSettingsTabId =
|
|
75
|
+
const toolSettingsTabId = state.toolSettings?.tabId;
|
|
77
76
|
return (widget.tabs.length === 1 &&
|
|
78
77
|
widget.tabs[0] === toolSettingsTabId &&
|
|
79
78
|
id in state.floatingWidgets.byId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NineZoneStateHelpers.js","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/NineZoneStateHelpers.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,OAAO,EACL,cAAc,EACd,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAU9B,gBAAgB;AAChB,MAAM,CAAC,MAAM,QAAQ,GAAG,oBAAoB,CAAC;AAE7C;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAqC;IAErC,IAAI,SAAS,EAAE;QACb,OAAO;YACL,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,GAAG,EAAE,SAAS,CAAC,GAAG;SACnB,CAAC;KACH;IACD,OAAO,IAAI,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC;AACnC,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,iBAAiB,CAC/B,KAA4B,EAC5B,MAAsB;IAEtB,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACzB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACvB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC/B,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,aAAa,CAAC,KAAmB,EAAE,KAAY;IAC7D,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAClB,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,YAAY,CAAC,KAAuB,EAAE,IAAe;IACnE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;AAC3B,CAAC;AAMD,gBAAgB;AAChB,MAAM,UAAU,aAAa,CAG3B,GAAM,EAAE,GAAM,EAAE,IAA2B;IAC3C,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE;QACpB,YAAY,CAAC,GAAG,CAAC,GAAG,CAAyB,EAAE,IAAI,CAAC,CAAC;QACrD,OAAO;KACR;IACA,GAAG,CAAC,GAAG,CAAsC,GAAG,IAAI;QACnD,CAAC,CAAC;YACE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB;QACH,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,kBAAkB,CAGhC,GAAM,EAAE,GAAM,EAAE,SAAe;IAC/B,MAAM,IAAI,GAAG,SAAkD,CAAC;IAChE,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE;QACpB,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAA8B,EAAE,IAAI,CAAC,CAAC;QAC/D,OAAO;KACR;IACA,GAAG,CAAC,GAAG,CAA2C,GAAG,IAAI;QACxD,CAAC,CAAC;YACE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd;QACH,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,4BAA4B,CAC1C,KAAoB,EACpB,EAA6B
|
|
1
|
+
{"version":3,"file":"NineZoneStateHelpers.js","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/NineZoneStateHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Base\n */\n\nimport type { Draft } from \"immer\";\nimport type { RectangleProps, SizeProps } from \"@itwin/core-react\";\nimport { Rectangle } from \"@itwin/core-react\";\nimport type { NineZoneState } from \"../NineZoneState\";\nimport type { FloatingWidgetState } from \"../WidgetState\";\nimport {\n getWidgetState,\n updateFloatingWidgetState,\n} from \"./WidgetStateHelpers\";\n\n/** Same as XAndY from core-geometry, but reproduced here to avoid a breaking peer dependency change.\n * @internal\n */\nexport interface XAndY {\n readonly x: number;\n readonly y: number;\n}\n\n/** @internal */\nexport const category = \"appui-react:layout\";\n\n/** Helper that returns a plain object. Prevents from adding an instance that is not `immerable` to the state.\n * @internal\n */\nexport function toRectangleProps(\n rectangle: RectangleProps | undefined\n): RectangleProps {\n if (rectangle) {\n return {\n bottom: rectangle.bottom,\n left: rectangle.left,\n right: rectangle.right,\n top: rectangle.top,\n };\n }\n return new Rectangle().toProps();\n}\n\n/** @internal */\nexport function setRectangleProps(\n props: Draft<RectangleProps>,\n bounds: RectangleProps\n) {\n props.left = bounds.left;\n props.right = bounds.right;\n props.top = bounds.top;\n props.bottom = bounds.bottom;\n}\n\n/** @internal */\nexport function setPointProps(props: Draft<XAndY>, point: XAndY) {\n props.x = point.x;\n props.y = point.y;\n}\n\n/** @internal */\nexport function setSizeProps(props: Draft<SizeProps>, size: SizeProps) {\n props.height = size.height;\n props.width = size.width;\n}\n\ntype KeysOfType<T, Type> = {\n [K in keyof T]: T[K] extends Type ? K : never;\n}[keyof T];\n\n/** @internal */\nexport function initSizeProps<\n T,\n K extends KeysOfType<T, SizeProps | undefined>\n>(obj: T, key: K, size: SizeProps | undefined) {\n if (obj[key] && size) {\n setSizeProps(obj[key] as unknown as SizeProps, size);\n return;\n }\n (obj[key] as unknown as SizeProps | undefined) = size\n ? {\n height: size.height,\n width: size.width,\n }\n : undefined;\n}\n\n/** @internal */\nexport function initRectangleProps<\n T,\n K extends KeysOfType<T, RectangleProps | undefined>\n>(obj: T, key: K, rectangle: T[K]) {\n const rect = rectangle as unknown as RectangleProps | undefined;\n if (obj[key] && rect) {\n setRectangleProps(obj[key] as unknown as RectangleProps, rect);\n return;\n }\n (obj[key] as unknown as RectangleProps | undefined) = rect\n ? {\n bottom: rect.bottom,\n left: rect.left,\n right: rect.right,\n top: rect.top,\n }\n : undefined;\n}\n\n/** @internal */\nexport function isToolSettingsFloatingWidget(\n state: NineZoneState,\n id: FloatingWidgetState[\"id\"]\n) {\n const widget = getWidgetState(state, id);\n const toolSettingsTabId = state.toolSettings?.tabId;\n return (\n widget.tabs.length === 1 &&\n widget.tabs[0] === toolSettingsTabId &&\n id in state.floatingWidgets.byId\n );\n}\n\n/** @internal */\nexport function updateHomeOfToolSettingsWidget(\n state: NineZoneState,\n id: FloatingWidgetState[\"id\"],\n home: FloatingWidgetState[\"home\"]\n): NineZoneState {\n if (!isToolSettingsFloatingWidget(state, id)) return state;\n\n return updateFloatingWidgetState(state, id, {\n home,\n });\n}\n"]}
|
|
@@ -5,8 +5,9 @@ import type { SizeProps } from "@itwin/core-react";
|
|
|
5
5
|
import type { WritableDraft } from "immer/dist/types/types-external";
|
|
6
6
|
import type { HorizontalPanelSide, PanelSide, VerticalPanelSide } from "../../widget-panels/PanelTypes";
|
|
7
7
|
import type { NineZoneState } from "../NineZoneState";
|
|
8
|
-
import type { HorizontalPanelState,
|
|
8
|
+
import type { HorizontalPanelState, PanelsState, VerticalPanelState } from "../PanelState";
|
|
9
9
|
import type { WidgetState } from "../WidgetState";
|
|
10
|
+
import type { StagePanelSizeSpec } from "../../../stagepanels/StagePanelConfig";
|
|
10
11
|
/** @internal */
|
|
11
12
|
export declare function createVerticalPanelState(side: VerticalPanelSide, args?: Partial<VerticalPanelState>): VerticalPanelState;
|
|
12
13
|
/** @internal */
|
|
@@ -16,9 +17,9 @@ export declare function createPanelsState(args?: Partial<PanelsState>): PanelsSt
|
|
|
16
17
|
/** @internal */
|
|
17
18
|
export declare function updatePanelState<K extends keyof PanelsState>(state: NineZoneState, side: K, update: (draft: WritableDraft<PanelsState>[K]) => void): NineZoneState;
|
|
18
19
|
/** @internal */
|
|
19
|
-
export declare function
|
|
20
|
+
export declare function getPanelPixelSizeFromSpec(side: PanelSide, appSize: SizeProps, panelSize: StagePanelSizeSpec): number;
|
|
20
21
|
/** @internal */
|
|
21
|
-
export declare function getPanelSize(
|
|
22
|
+
export declare function getPanelSize(preferredSizeSpec: StagePanelSizeSpec | undefined, side: PanelSide, minSizeSpec: StagePanelSizeSpec, maxSizeSpec: StagePanelSizeSpec, appSize: SizeProps): number | undefined;
|
|
22
23
|
/** @internal */
|
|
23
24
|
export declare function addPanelWidget(state: NineZoneState, side: PanelSide, id: WidgetState["id"], tabs: WidgetState["tabs"], widgetArgs?: Partial<WidgetState>): NineZoneState;
|
|
24
25
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanelStateHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EACV,oBAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"PanelStateHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACX,kBAAkB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAkBhF,gBAAgB;AAChB,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,iBAAiB,EACvB,IAAI,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACjC,kBAAkB,CAMpB;AAED,gBAAgB;AAChB,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,mBAAmB,EACzB,IAAI,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACnC,oBAAoB,CAQtB;AAED,gBAAgB;AAChB,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAQ1E;AAED,gBAAgB;AAChB,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,WAAW,EAC1D,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,iBAMvD;AAED,gBAAgB;AAChB,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,SAAS,EAAE,kBAAkB,UAQ9B;AAED,gBAAgB;AAChB,wBAAgB,YAAY,CAC1B,iBAAiB,EAAE,kBAAkB,GAAG,SAAS,EACjD,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,kBAAkB,EAC/B,WAAW,EAAE,kBAAkB,EAC/B,OAAO,EAAE,SAAS,sBAanB;AAED,gBAAgB;AAChB,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,EACrB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAChC,aAAa,CAEf;AAED,gBAAgB;AAChB,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,EACrB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAChC,aAAa,CAcf"}
|
|
@@ -61,18 +61,20 @@ export function updatePanelState(state, side, update) {
|
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
63
|
/** @internal */
|
|
64
|
-
export function
|
|
65
|
-
if (typeof
|
|
66
|
-
return
|
|
64
|
+
export function getPanelPixelSizeFromSpec(side, appSize, panelSize) {
|
|
65
|
+
if (typeof panelSize === "number") {
|
|
66
|
+
return panelSize;
|
|
67
67
|
}
|
|
68
|
-
const
|
|
69
|
-
return (
|
|
68
|
+
const fullSize = isHorizontalPanelSide(side) ? appSize.height : appSize.width;
|
|
69
|
+
return (panelSize.percentage / 100) * fullSize;
|
|
70
70
|
}
|
|
71
71
|
/** @internal */
|
|
72
|
-
export function getPanelSize(
|
|
73
|
-
if (
|
|
72
|
+
export function getPanelSize(preferredSizeSpec, side, minSizeSpec, maxSizeSpec, appSize) {
|
|
73
|
+
if (preferredSizeSpec === undefined)
|
|
74
74
|
return undefined;
|
|
75
|
-
const maxSize =
|
|
75
|
+
const maxSize = getPanelPixelSizeFromSpec(side, appSize, maxSizeSpec);
|
|
76
|
+
const minSize = getPanelPixelSizeFromSpec(side, appSize, minSizeSpec);
|
|
77
|
+
const preferredSize = getPanelPixelSizeFromSpec(side, appSize, preferredSizeSpec);
|
|
76
78
|
return Math.min(Math.max(preferredSize, minSize), maxSize);
|
|
77
79
|
}
|
|
78
80
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanelStateHelpers.js","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,OAAO,MAAM,OAAO,CAAC;AAE5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"PanelStateHelpers.js","sourceRoot":"","sources":["../../../../../../src/appui-react/layout/state/internal/PanelStateHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Base\n */\n\nimport { UiError } from \"@itwin/appui-abstract\";\nimport type { SizeProps } from \"@itwin/core-react\";\nimport produce from \"immer\";\nimport type { WritableDraft } from \"immer/dist/types/types-external\";\nimport { isHorizontalPanelSide } from \"../../widget-panels/Panel\";\nimport type {\n HorizontalPanelSide,\n PanelSide,\n VerticalPanelSide,\n} from \"../../widget-panels/PanelTypes\";\nimport type { NineZoneState } from \"../NineZoneState\";\nimport type {\n HorizontalPanelState,\n PanelsState,\n VerticalPanelState,\n} from \"../PanelState\";\nimport type { WidgetState } from \"../WidgetState\";\nimport { category } from \"./NineZoneStateHelpers\";\nimport { addWidgetState } from \"./WidgetStateHelpers\";\nimport type { StagePanelSizeSpec } from \"../../../stagepanels/StagePanelConfig\";\n\nfunction createPanelState(side: PanelSide) {\n return {\n collapseOffset: 100,\n collapsed: false,\n maxSize: 600,\n minSize: 200,\n pinned: true,\n resizable: true,\n side,\n size: undefined,\n widgets: [],\n maxWidgetCount: 2,\n splitterPercent: 50,\n };\n}\n\n/** @internal */\nexport function createVerticalPanelState(\n side: VerticalPanelSide,\n args?: Partial<VerticalPanelState>\n): VerticalPanelState {\n return {\n ...createPanelState(side),\n ...args,\n side,\n };\n}\n\n/** @internal */\nexport function createHorizontalPanelState(\n side: HorizontalPanelSide,\n args?: Partial<HorizontalPanelState>\n): HorizontalPanelState {\n return {\n ...createPanelState(side),\n minSize: 100,\n span: true,\n ...args,\n side,\n };\n}\n\n/** @internal */\nexport function createPanelsState(args?: Partial<PanelsState>): PanelsState {\n return {\n bottom: createHorizontalPanelState(\"bottom\"),\n left: createVerticalPanelState(\"left\"),\n right: createVerticalPanelState(\"right\"),\n top: createHorizontalPanelState(\"top\"),\n ...args,\n };\n}\n\n/** @internal */\nexport function updatePanelState<K extends keyof PanelsState>(\n state: NineZoneState,\n side: K,\n update: (draft: WritableDraft<PanelsState>[K]) => void\n) {\n return produce(state, (draft) => {\n const panel = draft.panels[side];\n update(panel);\n });\n}\n\n/** @internal */\nexport function getPanelPixelSizeFromSpec(\n side: PanelSide,\n appSize: SizeProps,\n panelSize: StagePanelSizeSpec\n) {\n if (typeof panelSize === \"number\") {\n return panelSize;\n }\n\n const fullSize = isHorizontalPanelSide(side) ? appSize.height : appSize.width;\n return (panelSize.percentage / 100) * fullSize;\n}\n\n/** @internal */\nexport function getPanelSize(\n preferredSizeSpec: StagePanelSizeSpec | undefined,\n side: PanelSide,\n minSizeSpec: StagePanelSizeSpec,\n maxSizeSpec: StagePanelSizeSpec,\n appSize: SizeProps\n) {\n if (preferredSizeSpec === undefined) return undefined;\n\n const maxSize = getPanelPixelSizeFromSpec(side, appSize, maxSizeSpec);\n const minSize = getPanelPixelSizeFromSpec(side, appSize, minSizeSpec);\n const preferredSize = getPanelPixelSizeFromSpec(\n side,\n appSize,\n preferredSizeSpec\n );\n\n return Math.min(Math.max(preferredSize, minSize), maxSize);\n}\n\n/** @internal */\nexport function addPanelWidget(\n state: NineZoneState,\n side: PanelSide,\n id: WidgetState[\"id\"],\n tabs: WidgetState[\"tabs\"],\n widgetArgs?: Partial<WidgetState>\n): NineZoneState {\n return insertPanelWidget(state, side, id, tabs, Infinity, widgetArgs);\n}\n\n/** @internal */\nexport function insertPanelWidget(\n state: NineZoneState,\n side: PanelSide,\n id: WidgetState[\"id\"],\n tabs: WidgetState[\"tabs\"],\n sectionIndex: number,\n widgetArgs?: Partial<WidgetState>\n): NineZoneState {\n const panel = state.panels[side];\n const maxWidgetCount = panel.maxWidgetCount;\n if (panel.widgets.length >= maxWidgetCount)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(category, \"Max widget count exceeded\", undefined, () => ({\n maxWidgetCount,\n }));\n\n state = addWidgetState(state, id, tabs, widgetArgs);\n return produce(state, (draft) => {\n const widgets = draft.panels[side].widgets;\n widgets.splice(sectionIndex, 0, id);\n });\n}\n"]}
|
|
@@ -135,9 +135,8 @@ export function removeTab(state, tabId) {
|
|
|
135
135
|
throw new UiError(category, "Tab does not exist");
|
|
136
136
|
state = removeTabFromWidget(state, tabId);
|
|
137
137
|
return produce(state, (draft) => {
|
|
138
|
-
var _a;
|
|
139
138
|
delete draft.tabs[tabId];
|
|
140
|
-
if (
|
|
139
|
+
if (draft.toolSettings?.tabId === tabId) {
|
|
141
140
|
draft.toolSettings = undefined;
|
|
142
141
|
}
|
|
143
142
|
});
|
|
@@ -158,7 +157,7 @@ export function addRemovedTab(state, tabId) {
|
|
|
158
157
|
tabId,
|
|
159
158
|
}));
|
|
160
159
|
const savedTab = state.savedTabs.byId[tabId];
|
|
161
|
-
const home =
|
|
160
|
+
const home = savedTab?.home || defaultHomeState;
|
|
162
161
|
const { tabIndex, widgetId } = home;
|
|
163
162
|
// Add to an existing widget (by widget id).
|
|
164
163
|
if (widgetId in state.widgets) {
|