@mks2508/mks-ui 0.6.7 → 0.7.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/dist/css/blocks-Sidebar-animations-tooltip.css +330 -0
- package/dist/index.css +1058 -128
- package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.d.ts +64 -0
- package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.d.ts.map +1 -0
- package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.js +301 -0
- package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.d.ts +94 -0
- package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.js +216 -0
- package/dist/react-ui/blocks/BottomNavBar/index.d.ts +10 -0
- package/dist/react-ui/blocks/BottomNavBar/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/BottomNavBar/index.js +4 -0
- package/dist/react-ui/blocks/BottomNavBar/types.d.ts +362 -0
- package/dist/react-ui/blocks/BottomNavBar/types.d.ts.map +1 -0
- package/dist/react-ui/blocks/BottomNavBar/types.js +175 -0
- package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.d.ts +73 -0
- package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.d.ts.map +1 -0
- package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.js +178 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.constants.d.ts +285 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.constants.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.constants.js +208 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.d.ts +80 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.js +114 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.styles.d.ts +77 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.styles.js +274 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.types.d.ts +546 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/Sidebar.types.js +149 -0
- package/dist/react-ui/blocks/Sidebar/SidebarContent.d.ts +46 -0
- package/dist/react-ui/blocks/Sidebar/SidebarContent.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarContent.js +86 -0
- package/dist/react-ui/blocks/Sidebar/SidebarContext.d.ts +85 -0
- package/dist/react-ui/blocks/Sidebar/SidebarContext.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarContext.js +178 -0
- package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.d.ts +31 -0
- package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.js +37 -0
- package/dist/react-ui/blocks/Sidebar/SidebarIndicator.d.ts +59 -0
- package/dist/react-ui/blocks/Sidebar/SidebarIndicator.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarIndicator.js +106 -0
- package/dist/react-ui/blocks/Sidebar/SidebarItem.d.ts +82 -0
- package/dist/react-ui/blocks/Sidebar/SidebarItem.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarItem.js +209 -0
- package/dist/react-ui/blocks/Sidebar/SidebarNav.d.ts +48 -0
- package/dist/react-ui/blocks/Sidebar/SidebarNav.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarNav.js +317 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.d.ts +56 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.js +105 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSubContent.d.ts +27 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSubContent.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSubContent.js +31 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSubLink.d.ts +20 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSubLink.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarSubLink.js +44 -0
- package/dist/react-ui/blocks/Sidebar/SidebarToggle.d.ts +52 -0
- package/dist/react-ui/blocks/Sidebar/SidebarToggle.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarToggle.js +119 -0
- package/dist/react-ui/blocks/Sidebar/SidebarTooltip.d.ts +15 -0
- package/dist/react-ui/blocks/Sidebar/SidebarTooltip.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/SidebarTooltip.js +177 -0
- package/dist/react-ui/blocks/Sidebar/animations/tooltip.css +330 -0
- package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.d.ts +28 -0
- package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.js +74 -0
- package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.d.ts +18 -0
- package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.js +166 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.d.ts +48 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.js +59 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.d.ts +72 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.js +159 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.d.ts +51 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.js +150 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.d.ts +42 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.js +49 -0
- package/dist/react-ui/blocks/Sidebar/index.d.ts +163 -0
- package/dist/react-ui/blocks/Sidebar/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Sidebar/index.js +19 -0
- package/dist/react-ui/blocks/Terminal/Terminal.tokens.d.ts +219 -0
- package/dist/react-ui/blocks/Terminal/Terminal.tokens.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/Terminal.tokens.js +253 -0
- package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts +2 -1
- package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/TerminalDisplay.js +1 -1
- package/dist/react-ui/blocks/Terminal/TerminalDisplay.types.d.ts +1 -1
- package/dist/react-ui/blocks/Terminal/TerminalDisplay.types.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/chrome.js +2 -2
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.d.ts +15 -0
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.js +14 -0
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.types.d.ts +106 -0
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.d.ts +89 -0
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.js +136 -0
- package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts +21 -7
- package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.js +81 -71
- package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.d.ts +33 -0
- package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.js +51 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.d.ts +13 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.js +8 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.types.d.ts +29 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.d.ts +26 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.js +40 -0
- package/dist/react-ui/blocks/Terminal/components/index.js +5 -2
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.d.ts +12 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.js +13 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.types.d.ts +35 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.d.ts +75 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.js +115 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.d.ts +122 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.js +128 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.d.ts +12 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.js +12 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.types.d.ts +29 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.d.ts +37 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.js +74 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.d.ts +12 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.js +16 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.types.d.ts +32 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.d.ts +40 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.js +81 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.d.ts +12 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.js +13 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.types.d.ts +28 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.d.ts +40 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.js +108 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.d.ts +12 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.js +12 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.types.d.ts +31 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.d.ts +73 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.js +99 -0
- package/dist/react-ui/blocks/Terminal/controls/index.d.ts +16 -0
- package/dist/react-ui/blocks/Terminal/controls/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/controls/index.js +11 -0
- package/dist/react-ui/blocks/Terminal/display.d.ts +2 -2
- package/dist/react-ui/blocks/Terminal/display.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/display.js +4 -2
- package/dist/react-ui/blocks/Terminal/hooks/index.d.ts +9 -2
- package/dist/react-ui/blocks/Terminal/hooks/index.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/hooks/index.js +6 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminal.d.ts +198 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminal.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminal.js +198 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.d.ts +81 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.js +115 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.d.ts +54 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.js +57 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.d.ts +81 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.js +102 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.d.ts +78 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.js +136 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.d.ts +88 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.js +101 -0
- package/dist/react-ui/blocks/Terminal/index.d.ts +10 -6
- package/dist/react-ui/blocks/Terminal/index.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/index.js +43 -11
- package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.js +8 -13
- package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.d.ts +13 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.js +18 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalDebugPanel.d.ts → TerminalDebugPanel/TerminalDebugPanel.types.d.ts} +19 -27
- package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/index.d.ts +32 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalDebugPanel.js → TerminalDebugPanel/index.js} +59 -38
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.d.ts +13 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.js +17 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.types.d.ts +34 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/index.d.ts +34 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalFilterDropdown.js → TerminalFilterDropdown/index.js} +29 -31
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/terminal-filter-dropdown.module.css +60 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/terminal-filter-dropdown.module.js +5 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.styles.d.ts +13 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.types.d.ts +34 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/index.d.ts +34 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.js +5 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts +2 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts +6 -3
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.js +43 -264
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.d.ts +43 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.js +248 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts +4 -2
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.js +40 -150
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.d.ts +26 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.js +30 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.types.d.ts +123 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalLogsPanel.d.ts → TerminalLogsPanel/index.d.ts} +10 -21
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalLogsPanel.js → TerminalLogsPanel/index.js} +48 -81
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts +6 -142
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts.map +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.js +16 -16
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.styles.d.ts +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.styles.js +1 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.d.ts +21 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.js +21 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.types.d.ts +40 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.d.ts +37 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.js +127 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.d.ts +22 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.js +24 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.types.d.ts +43 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.d.ts +35 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.js +129 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.styles.d.ts +20 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.types.d.ts +72 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalPanelToolbar.d.ts → TerminalPanelToolbar/index.d.ts} +10 -4
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.styles.d.ts +13 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalSessionControl.d.ts → TerminalSessionControl/TerminalSessionControl.types.d.ts} +24 -30
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/index.d.ts +38 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.d.ts +23 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.js +27 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.types.d.ts +56 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/index.d.ts +40 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalSessionTabs.js → TerminalSessionTabs/index.js} +26 -31
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/terminal-session-tabs.module.css +60 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/terminal-session-tabs.module.js +5 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.d.ts +13 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.js +19 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.types.d.ts +20 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.d.ts +25 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.js +217 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.d.ts +13 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.js +15 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.types.d.ts +28 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/index.d.ts +30 -0
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/panel/{TerminalThemeSelector.js → TerminalThemeSelector/index.js} +31 -46
- package/dist/react-ui/blocks/Terminal/restty/ResttyContext.d.ts +38 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttyContext.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttyContext.js +47 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.d.ts +50 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.js +60 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.d.ts +32 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.js +278 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.types.d.ts +166 -0
- package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.types.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/index.d.ts +20 -0
- package/dist/react-ui/blocks/Terminal/restty/index.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/index.js +7 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPane.d.ts +51 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPane.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPane.js +61 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.d.ts +39 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.js +48 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.d.ts +29 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.js +33 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.d.ts +32 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.js +67 -0
- package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.d.ts +83 -0
- package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.d.ts.map +1 -0
- package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.js +191 -0
- package/dist/react-ui/blocks/index.d.ts +2 -0
- package/dist/react-ui/blocks/index.d.ts.map +1 -1
- package/dist/react-ui/components/MorphingPopover/morphing-popover.module.css +154 -0
- package/dist/react-ui/icons/lucide-animated/terminal.d.ts +45 -13
- package/dist/react-ui/icons/lucide-animated/terminal.d.ts.map +1 -1
- package/dist/react-ui/icons/lucide-animated/terminal.js +118 -28
- package/dist/react-ui/index.d.ts +4 -0
- package/dist/react-ui/index.d.ts.map +1 -1
- package/dist/react-ui/index.js +40 -1
- package/dist/react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module.css +20 -0
- package/dist/react-ui/ui/Button/Button.styles.d.ts +2 -2
- package/dist/react-ui/ui/Button/Button.styles.d.ts.map +1 -1
- package/dist/react-ui/ui/Button/Button.styles.js +4 -2
- package/dist/react-ui/ui/Button/Button.types.d.ts +2 -2
- package/dist/react-ui/ui/Button/Button.types.d.ts.map +1 -1
- package/dist/react-ui/ui/DynamicToggle/DynamicToggle.css +369 -0
- package/dist/react-ui/ui/DynamicToggle/index.d.ts +1 -1
- package/dist/react-ui/ui/DynamicToggle/index.d.ts.map +1 -1
- package/dist/react-ui/ui/DynamicToggle/index.js +1 -1
- package/dist/react-ui/ui/Tabs/Tabs.css +38 -0
- package/dist/react-ui/ui/Tabs/Tabs.js +0 -0
- package/dist/react-ui/ui/Tabs/index.d.ts +1 -1
- package/dist/react-ui/ui/Tabs/index.d.ts.map +1 -1
- package/dist/react-ui/ui/Tabs/index.js +2 -1
- package/package.json +21 -7
- package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts +0 -146
- package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/ResttyAdapter.js +0 -213
- package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts +0 -55
- package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/Terminal.adapter.js +0 -68
- package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts +0 -111
- package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/TerminalRestty.js +0 -185
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts +0 -160
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/components/LogLineBadges.js +0 -185
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts +0 -36
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.js +0 -52
- package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts +0 -42
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts +0 -43
- package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts +0 -30
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.js +0 -126
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts +0 -31
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.js +0 -149
- package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts +0 -63
- package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts +0 -24
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.js +0 -225
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts +0 -35
- package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts.map +0 -1
- package/dist/react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module.js +0 -5
- package/dist/react-ui/blocks/Terminal/panel/terminal-session-tabs.module.js +0 -5
- /package/dist/{react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module-p4Aks9qK.css → css/blocks-Terminal-panel-TerminalFilterDropdown-terminal-filter-dropdown.module.css} +0 -0
- /package/dist/{react-ui/blocks/Terminal/panel/terminal-session-tabs.module-D7g8zk0W.css → css/blocks-Terminal-panel-TerminalSessionTabs-terminal-session-tabs.module.css} +0 -0
- /package/dist/{react-ui/components/MorphingPopover/morphing-popover.module-s63snw7C.css → css/components-MorphingPopover-morphing-popover.module.css} +0 -0
- /package/dist/{react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module-7y-To7On.css → css/primitives-waapi-Morph-techniques-useViewTransitions.module.css} +0 -0
- /package/dist/{react-ui/ui/DynamicToggle/DynamicToggle.module-BE6uirOX.css → css/ui-DynamicToggle-DynamicToggle.css} +0 -0
- /package/dist/{react-ui/ui/Tabs/Tabs.module-CFzRKHsx.css → css/ui-Tabs-Tabs.css} +0 -0
- /package/dist/react-ui/{ui/DynamicToggle/DynamicToggle.module.js → blocks/Sidebar/animations/tooltip-keyframes.js} +0 -0
- /package/dist/react-ui/ui/{Tabs/Tabs.module.js → DynamicToggle/DynamicToggle.js} +0 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { useTerminalSettings } from "./useTerminalSettings.js";
|
|
4
|
+
import { useCallback, useState } from "react";
|
|
5
|
+
|
|
6
|
+
//#region src/react-ui/blocks/Terminal/hooks/useTerminalFontSize.ts
|
|
7
|
+
/**
|
|
8
|
+
* Terminal font size management hook.
|
|
9
|
+
*
|
|
10
|
+
* Manages font size state with ResttyTerminal ref integration. Calls
|
|
11
|
+
* `ref.current?.setFontSize()` on every change and optionally persists
|
|
12
|
+
* to localStorage via `useTerminalSettings`.
|
|
13
|
+
*
|
|
14
|
+
* Replaces the duplicated `useState(fontSize)` + `handleFontIncrease`/
|
|
15
|
+
* `handleFontDecrease` pattern found in both interactive panels.
|
|
16
|
+
*
|
|
17
|
+
* @module @mks2508/mks-ui/react/blocks/Terminal/hooks/useTerminalFontSize
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```tsx
|
|
21
|
+
* const resttyRef = useRef<IResttyTerminalRef>(null);
|
|
22
|
+
* const font = useTerminalFontSize({ ref: resttyRef });
|
|
23
|
+
*
|
|
24
|
+
* <ResttyTerminal ref={resttyRef} fontSize={font.fontSize} />
|
|
25
|
+
* <button onClick={font.increase} disabled={font.isMax}>+</button>
|
|
26
|
+
* <span>{font.fontSize}px</span>
|
|
27
|
+
* <button onClick={font.decrease} disabled={font.isMin}>-</button>
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
/** Default min font size. */
|
|
31
|
+
const DEFAULT_MIN = 10;
|
|
32
|
+
/** Default max font size. */
|
|
33
|
+
const DEFAULT_MAX = 24;
|
|
34
|
+
/**
|
|
35
|
+
* Terminal font size management.
|
|
36
|
+
*
|
|
37
|
+
* Synchronizes font size state with the ResttyTerminal ref and
|
|
38
|
+
* optionally persists changes to localStorage. Clamps values to
|
|
39
|
+
* configurable min/max bounds.
|
|
40
|
+
*
|
|
41
|
+
* @param options - Font size configuration
|
|
42
|
+
* @returns Font size state and mutation functions
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```tsx
|
|
46
|
+
* const font = useTerminalFontSize({ ref: resttyRef, persist: true });
|
|
47
|
+
*
|
|
48
|
+
* <TerminalFontControls
|
|
49
|
+
* fontSize={font.fontSize}
|
|
50
|
+
* onIncrease={font.increase}
|
|
51
|
+
* onDecrease={font.decrease}
|
|
52
|
+
* isMin={font.isMin}
|
|
53
|
+
* isMax={font.isMax}
|
|
54
|
+
* />
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
function useTerminalFontSize(options) {
|
|
58
|
+
const { ref, min = DEFAULT_MIN, max = DEFAULT_MAX, persist = true } = options;
|
|
59
|
+
const { settings, setFontSize: persistFontSize } = useTerminalSettings();
|
|
60
|
+
const initial = options.initial ?? settings.fontSize;
|
|
61
|
+
const [fontSize, setFontSizeState] = useState(Math.min(max, Math.max(min, initial)));
|
|
62
|
+
const syncToRef = useCallback((size) => {
|
|
63
|
+
ref.current?.setFontSize(size);
|
|
64
|
+
if (persist) persistFontSize(size);
|
|
65
|
+
}, [
|
|
66
|
+
ref,
|
|
67
|
+
persist,
|
|
68
|
+
persistFontSize
|
|
69
|
+
]);
|
|
70
|
+
const applySize = useCallback((size) => {
|
|
71
|
+
const clamped = Math.min(max, Math.max(min, size));
|
|
72
|
+
setFontSizeState(clamped);
|
|
73
|
+
syncToRef(clamped);
|
|
74
|
+
}, [
|
|
75
|
+
min,
|
|
76
|
+
max,
|
|
77
|
+
syncToRef
|
|
78
|
+
]);
|
|
79
|
+
return {
|
|
80
|
+
fontSize,
|
|
81
|
+
increase: useCallback(() => {
|
|
82
|
+
setFontSizeState((prev) => {
|
|
83
|
+
const next = Math.min(prev + 1, max);
|
|
84
|
+
syncToRef(next);
|
|
85
|
+
return next;
|
|
86
|
+
});
|
|
87
|
+
}, [max, syncToRef]),
|
|
88
|
+
decrease: useCallback(() => {
|
|
89
|
+
setFontSizeState((prev) => {
|
|
90
|
+
const next = Math.max(prev - 1, min);
|
|
91
|
+
syncToRef(next);
|
|
92
|
+
return next;
|
|
93
|
+
});
|
|
94
|
+
}, [min, syncToRef]),
|
|
95
|
+
set: applySize,
|
|
96
|
+
isMin: fontSize <= min,
|
|
97
|
+
isMax: fontSize >= max
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
//#endregion
|
|
102
|
+
export { useTerminalFontSize };
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Terminal keyboard shortcuts hook.
|
|
3
|
+
*
|
|
4
|
+
* Binds configurable keyboard shortcuts for terminal operations:
|
|
5
|
+
* clear, font zoom, pane splitting, reconnect, etc. Prevents
|
|
6
|
+
* propagation to the terminal when a shortcut is matched.
|
|
7
|
+
*
|
|
8
|
+
* @module @mks2508/mks-ui/react/blocks/Terminal/hooks/useTerminalKeyboardShortcuts
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```tsx
|
|
12
|
+
* useTerminalKeyboardShortcuts({
|
|
13
|
+
* onClear: () => resttyRef.current?.clear(),
|
|
14
|
+
* onFontIncrease: () => font.increase(),
|
|
15
|
+
* onFontDecrease: () => font.decrease(),
|
|
16
|
+
* onSplitVertical: () => panes.splitActive('vertical'),
|
|
17
|
+
* });
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Keyboard shortcut configuration for terminal.
|
|
22
|
+
*/
|
|
23
|
+
export interface ITerminalShortcutConfig {
|
|
24
|
+
/** Enable keyboard shortcuts (default: true). */
|
|
25
|
+
enabled?: boolean;
|
|
26
|
+
/** Container element for scoped shortcuts. Defaults to `document` if not provided. */
|
|
27
|
+
containerRef?: React.RefObject<HTMLElement | null>;
|
|
28
|
+
/** Clear terminal (default: Ctrl+Shift+K). */
|
|
29
|
+
onClear?: () => void;
|
|
30
|
+
/** Increase font size (default: Ctrl+=). */
|
|
31
|
+
onFontIncrease?: () => void;
|
|
32
|
+
/** Decrease font size (default: Ctrl+-). */
|
|
33
|
+
onFontDecrease?: () => void;
|
|
34
|
+
/** Reset font size (default: Ctrl+0). */
|
|
35
|
+
onFontReset?: () => void;
|
|
36
|
+
/** Split pane horizontally (default: Ctrl+Shift+E). */
|
|
37
|
+
onSplitHorizontal?: () => void;
|
|
38
|
+
/** Split pane vertically (default: Ctrl+Shift+D). */
|
|
39
|
+
onSplitVertical?: () => void;
|
|
40
|
+
/** Close active pane (default: Ctrl+Shift+W). */
|
|
41
|
+
onClosePane?: () => void;
|
|
42
|
+
/** Reconnect terminal (default: Ctrl+Shift+R). */
|
|
43
|
+
onReconnect?: () => void;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Terminal keyboard shortcuts.
|
|
47
|
+
*
|
|
48
|
+
* Registers keyboard event listeners for common terminal operations.
|
|
49
|
+
* Shortcuts use Ctrl+Shift+ combinations to avoid conflicting with
|
|
50
|
+
* terminal input. All shortcuts are optional — only handlers that are
|
|
51
|
+
* provided get bound.
|
|
52
|
+
*
|
|
53
|
+
* Default shortcut map:
|
|
54
|
+
* - `Ctrl+Shift+K` → clear
|
|
55
|
+
* - `Ctrl+=` / `Ctrl+-` → font increase/decrease
|
|
56
|
+
* - `Ctrl+0` → font reset
|
|
57
|
+
* - `Ctrl+Shift+D` → split vertical
|
|
58
|
+
* - `Ctrl+Shift+E` → split horizontal
|
|
59
|
+
* - `Ctrl+Shift+W` → close pane
|
|
60
|
+
* - `Ctrl+Shift+R` → reconnect
|
|
61
|
+
*
|
|
62
|
+
* @param config - Shortcut configuration and handlers
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```tsx
|
|
66
|
+
* const terminal = useTerminal({ wsUrl: 'ws://...' });
|
|
67
|
+
*
|
|
68
|
+
* useTerminalKeyboardShortcuts({
|
|
69
|
+
* onClear: terminal.clear,
|
|
70
|
+
* onFontIncrease: terminal.fontIncrease,
|
|
71
|
+
* onFontDecrease: terminal.fontDecrease,
|
|
72
|
+
* onSplitVertical: () => terminal.splitActive('vertical'),
|
|
73
|
+
* onSplitHorizontal: () => terminal.splitActive('horizontal'),
|
|
74
|
+
* });
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
export declare function useTerminalKeyboardShortcuts(config: ITerminalShortcutConfig): void;
|
|
78
|
+
//# sourceMappingURL=useTerminalKeyboardShortcuts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTerminalKeyboardShortcuts.d.ts","sourceRoot":"","sources":["../../../../../src/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,iDAAiD;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,sFAAsF;IACtF,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAEnD,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAE5B,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAE5B,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE/B,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAE7B,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAyFlF"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { useEffect } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.ts
|
|
6
|
+
/**
|
|
7
|
+
* Terminal keyboard shortcuts hook.
|
|
8
|
+
*
|
|
9
|
+
* Binds configurable keyboard shortcuts for terminal operations:
|
|
10
|
+
* clear, font zoom, pane splitting, reconnect, etc. Prevents
|
|
11
|
+
* propagation to the terminal when a shortcut is matched.
|
|
12
|
+
*
|
|
13
|
+
* @module @mks2508/mks-ui/react/blocks/Terminal/hooks/useTerminalKeyboardShortcuts
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```tsx
|
|
17
|
+
* useTerminalKeyboardShortcuts({
|
|
18
|
+
* onClear: () => resttyRef.current?.clear(),
|
|
19
|
+
* onFontIncrease: () => font.increase(),
|
|
20
|
+
* onFontDecrease: () => font.decrease(),
|
|
21
|
+
* onSplitVertical: () => panes.splitActive('vertical'),
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Terminal keyboard shortcuts.
|
|
27
|
+
*
|
|
28
|
+
* Registers keyboard event listeners for common terminal operations.
|
|
29
|
+
* Shortcuts use Ctrl+Shift+ combinations to avoid conflicting with
|
|
30
|
+
* terminal input. All shortcuts are optional — only handlers that are
|
|
31
|
+
* provided get bound.
|
|
32
|
+
*
|
|
33
|
+
* Default shortcut map:
|
|
34
|
+
* - `Ctrl+Shift+K` → clear
|
|
35
|
+
* - `Ctrl+=` / `Ctrl+-` → font increase/decrease
|
|
36
|
+
* - `Ctrl+0` → font reset
|
|
37
|
+
* - `Ctrl+Shift+D` → split vertical
|
|
38
|
+
* - `Ctrl+Shift+E` → split horizontal
|
|
39
|
+
* - `Ctrl+Shift+W` → close pane
|
|
40
|
+
* - `Ctrl+Shift+R` → reconnect
|
|
41
|
+
*
|
|
42
|
+
* @param config - Shortcut configuration and handlers
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```tsx
|
|
46
|
+
* const terminal = useTerminal({ wsUrl: 'ws://...' });
|
|
47
|
+
*
|
|
48
|
+
* useTerminalKeyboardShortcuts({
|
|
49
|
+
* onClear: terminal.clear,
|
|
50
|
+
* onFontIncrease: terminal.fontIncrease,
|
|
51
|
+
* onFontDecrease: terminal.fontDecrease,
|
|
52
|
+
* onSplitVertical: () => terminal.splitActive('vertical'),
|
|
53
|
+
* onSplitHorizontal: () => terminal.splitActive('horizontal'),
|
|
54
|
+
* });
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
function useTerminalKeyboardShortcuts(config) {
|
|
58
|
+
const { enabled = true } = config;
|
|
59
|
+
useEffect(() => {
|
|
60
|
+
if (!enabled) return;
|
|
61
|
+
const handleKeyDown = (e) => {
|
|
62
|
+
const ctrl = e.ctrlKey || e.metaKey;
|
|
63
|
+
const shift = e.shiftKey;
|
|
64
|
+
if (ctrl && shift) switch (e.key.toUpperCase()) {
|
|
65
|
+
case "K":
|
|
66
|
+
if (config.onClear) {
|
|
67
|
+
e.preventDefault();
|
|
68
|
+
e.stopPropagation();
|
|
69
|
+
config.onClear();
|
|
70
|
+
}
|
|
71
|
+
return;
|
|
72
|
+
case "D":
|
|
73
|
+
if (config.onSplitVertical) {
|
|
74
|
+
e.preventDefault();
|
|
75
|
+
e.stopPropagation();
|
|
76
|
+
config.onSplitVertical();
|
|
77
|
+
}
|
|
78
|
+
return;
|
|
79
|
+
case "E":
|
|
80
|
+
if (config.onSplitHorizontal) {
|
|
81
|
+
e.preventDefault();
|
|
82
|
+
e.stopPropagation();
|
|
83
|
+
config.onSplitHorizontal();
|
|
84
|
+
}
|
|
85
|
+
return;
|
|
86
|
+
case "W":
|
|
87
|
+
if (config.onClosePane) {
|
|
88
|
+
e.preventDefault();
|
|
89
|
+
e.stopPropagation();
|
|
90
|
+
config.onClosePane();
|
|
91
|
+
}
|
|
92
|
+
return;
|
|
93
|
+
case "R":
|
|
94
|
+
if (config.onReconnect) {
|
|
95
|
+
e.preventDefault();
|
|
96
|
+
e.stopPropagation();
|
|
97
|
+
config.onReconnect();
|
|
98
|
+
}
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
if (ctrl && !shift) switch (e.key) {
|
|
102
|
+
case "=":
|
|
103
|
+
case "+":
|
|
104
|
+
if (config.onFontIncrease) {
|
|
105
|
+
e.preventDefault();
|
|
106
|
+
e.stopPropagation();
|
|
107
|
+
config.onFontIncrease();
|
|
108
|
+
}
|
|
109
|
+
return;
|
|
110
|
+
case "-":
|
|
111
|
+
case "_":
|
|
112
|
+
if (config.onFontDecrease) {
|
|
113
|
+
e.preventDefault();
|
|
114
|
+
e.stopPropagation();
|
|
115
|
+
config.onFontDecrease();
|
|
116
|
+
}
|
|
117
|
+
return;
|
|
118
|
+
case "0":
|
|
119
|
+
if (config.onFontReset) {
|
|
120
|
+
e.preventDefault();
|
|
121
|
+
e.stopPropagation();
|
|
122
|
+
config.onFontReset();
|
|
123
|
+
}
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
const target = config.containerRef?.current ?? document;
|
|
128
|
+
target.addEventListener("keydown", handleKeyDown, { capture: true });
|
|
129
|
+
return () => {
|
|
130
|
+
target.removeEventListener("keydown", handleKeyDown, { capture: true });
|
|
131
|
+
};
|
|
132
|
+
}, [enabled, config]);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
//#endregion
|
|
136
|
+
export { useTerminalKeyboardShortcuts };
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Terminal pane manager hook.
|
|
3
|
+
*
|
|
4
|
+
* Tracks reactive pane state (count, active pane) from ResttyTerminal
|
|
5
|
+
* lifecycle callbacks. Works from OUTSIDE ResttyTerminal via ref + callback
|
|
6
|
+
* handlers — unlike `useResttyPanes` which requires ResttyProvider context
|
|
7
|
+
* from inside the component tree.
|
|
8
|
+
*
|
|
9
|
+
* @module @mks2508/mks-ui/react/blocks/Terminal/hooks/useTerminalPaneManager
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* const resttyRef = useRef<IResttyTerminalRef>(null);
|
|
14
|
+
* const panes = useTerminalPaneManager({ ref: resttyRef });
|
|
15
|
+
*
|
|
16
|
+
* <ResttyTerminal ref={resttyRef} {...panes.handlers} />
|
|
17
|
+
* <span>{panes.paneCount} panes</span>
|
|
18
|
+
* <button onClick={() => panes.splitActive('vertical')}>Split V</button>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
import type { IResttyTerminalRef, ResttyPaneSplitDirection } from '../restty/ResttyTerminal.types';
|
|
22
|
+
/**
|
|
23
|
+
* Options for useTerminalPaneManager.
|
|
24
|
+
*/
|
|
25
|
+
export interface IUseTerminalPaneManagerOptions {
|
|
26
|
+
/** Restty terminal ref for imperative pane operations. */
|
|
27
|
+
ref: React.RefObject<IResttyTerminalRef | null>;
|
|
28
|
+
/** Called when a new pane is created. */
|
|
29
|
+
onPaneCreated?: (paneId: number) => void;
|
|
30
|
+
/** Called when a pane is closed. */
|
|
31
|
+
onPaneClosed?: (paneId: number) => void;
|
|
32
|
+
/** Called when a pane is split. */
|
|
33
|
+
onPaneSplit?: (sourceId: number, createdId: number, direction: string) => void;
|
|
34
|
+
/** Called when the active pane changes. */
|
|
35
|
+
onActivePaneChange?: (paneId: number | null) => void;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Return type for useTerminalPaneManager.
|
|
39
|
+
*/
|
|
40
|
+
export interface IUseTerminalPaneManagerReturn {
|
|
41
|
+
/** Current number of panes. */
|
|
42
|
+
paneCount: number;
|
|
43
|
+
/** Active pane ID (null if no panes). */
|
|
44
|
+
activePaneId: number | null;
|
|
45
|
+
/** Split the active pane in the given direction. */
|
|
46
|
+
splitActive: (direction: 'horizontal' | 'vertical') => void;
|
|
47
|
+
/** Split a specific pane by ID. */
|
|
48
|
+
splitPane: (paneId: number, direction: 'horizontal' | 'vertical') => void;
|
|
49
|
+
/** Close a specific pane by ID. */
|
|
50
|
+
closePane: (paneId: number) => void;
|
|
51
|
+
/** Set the active pane by ID. */
|
|
52
|
+
setActivePane: (paneId: number) => void;
|
|
53
|
+
/** Handlers to spread onto ResttyTerminal props. */
|
|
54
|
+
handlers: {
|
|
55
|
+
onPaneCreated: (paneId: number) => void;
|
|
56
|
+
onPaneClosed: (paneId: number) => void;
|
|
57
|
+
onPaneSplit: (sourceId: number, createdId: number, direction: ResttyPaneSplitDirection) => void;
|
|
58
|
+
onActivePaneChange: (paneId: number | null) => void;
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Terminal pane manager.
|
|
63
|
+
*
|
|
64
|
+
* Provides reactive pane state and imperative pane operations for
|
|
65
|
+
* ResttyTerminal. State is tracked via lifecycle callback handlers
|
|
66
|
+
* that consumers spread onto the terminal component.
|
|
67
|
+
*
|
|
68
|
+
* For xterm.js (which doesn't support panes), this hook returns
|
|
69
|
+
* `paneCount: 1` and no-ops for all split/close operations.
|
|
70
|
+
*
|
|
71
|
+
* @param options - Pane manager configuration
|
|
72
|
+
* @returns Pane state, operations, and callback handlers
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```tsx
|
|
76
|
+
* const panes = useTerminalPaneManager({ ref: resttyRef });
|
|
77
|
+
*
|
|
78
|
+
* // Wire up callbacks
|
|
79
|
+
* <ResttyTerminal ref={resttyRef} {...panes.handlers} />
|
|
80
|
+
*
|
|
81
|
+
* // Control panes
|
|
82
|
+
* <button onClick={() => panes.splitActive('horizontal')}>Split H</button>
|
|
83
|
+
* <button onClick={() => panes.splitActive('vertical')}>Split V</button>
|
|
84
|
+
* <span>{panes.paneCount} pane{panes.paneCount !== 1 ? 's' : ''}</span>
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
export declare function useTerminalPaneManager(options: IUseTerminalPaneManagerOptions): IUseTerminalPaneManagerReturn;
|
|
88
|
+
//# sourceMappingURL=useTerminalPaneManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTerminalPaneManager.d.ts","sourceRoot":"","sources":["../../../../../src/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,KAAK,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAEnG;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,0DAA0D;IAC1D,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAEhD,yCAAyC;IACzC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEzC,oCAAoC;IACpC,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAExC,mCAAmC;IACnC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/E,2CAA2C;IAC3C,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAElB,yCAAyC;IACzC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,oDAAoD;IACpD,WAAW,EAAE,CAAC,SAAS,EAAE,YAAY,GAAG,UAAU,KAAK,IAAI,CAAC;IAE5D,mCAAmC;IACnC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,UAAU,KAAK,IAAI,CAAC;IAE1E,mCAAmC;IACnC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpC,iCAAiC;IACjC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAExC,oDAAoD;IACpD,QAAQ,EAAE;QACR,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;QACxC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;QACvC,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,wBAAwB,KAAK,IAAI,CAAC;QAChG,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;KACrD,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,8BAA8B,GACtC,6BAA6B,CA2D/B"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { useCallback, useMemo, useState } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.ts
|
|
6
|
+
/**
|
|
7
|
+
* Terminal pane manager hook.
|
|
8
|
+
*
|
|
9
|
+
* Tracks reactive pane state (count, active pane) from ResttyTerminal
|
|
10
|
+
* lifecycle callbacks. Works from OUTSIDE ResttyTerminal via ref + callback
|
|
11
|
+
* handlers — unlike `useResttyPanes` which requires ResttyProvider context
|
|
12
|
+
* from inside the component tree.
|
|
13
|
+
*
|
|
14
|
+
* @module @mks2508/mks-ui/react/blocks/Terminal/hooks/useTerminalPaneManager
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* const resttyRef = useRef<IResttyTerminalRef>(null);
|
|
19
|
+
* const panes = useTerminalPaneManager({ ref: resttyRef });
|
|
20
|
+
*
|
|
21
|
+
* <ResttyTerminal ref={resttyRef} {...panes.handlers} />
|
|
22
|
+
* <span>{panes.paneCount} panes</span>
|
|
23
|
+
* <button onClick={() => panes.splitActive('vertical')}>Split V</button>
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Terminal pane manager.
|
|
28
|
+
*
|
|
29
|
+
* Provides reactive pane state and imperative pane operations for
|
|
30
|
+
* ResttyTerminal. State is tracked via lifecycle callback handlers
|
|
31
|
+
* that consumers spread onto the terminal component.
|
|
32
|
+
*
|
|
33
|
+
* For xterm.js (which doesn't support panes), this hook returns
|
|
34
|
+
* `paneCount: 1` and no-ops for all split/close operations.
|
|
35
|
+
*
|
|
36
|
+
* @param options - Pane manager configuration
|
|
37
|
+
* @returns Pane state, operations, and callback handlers
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```tsx
|
|
41
|
+
* const panes = useTerminalPaneManager({ ref: resttyRef });
|
|
42
|
+
*
|
|
43
|
+
* // Wire up callbacks
|
|
44
|
+
* <ResttyTerminal ref={resttyRef} {...panes.handlers} />
|
|
45
|
+
*
|
|
46
|
+
* // Control panes
|
|
47
|
+
* <button onClick={() => panes.splitActive('horizontal')}>Split H</button>
|
|
48
|
+
* <button onClick={() => panes.splitActive('vertical')}>Split V</button>
|
|
49
|
+
* <span>{panes.paneCount} pane{panes.paneCount !== 1 ? 's' : ''}</span>
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
function useTerminalPaneManager(options) {
|
|
53
|
+
const { ref, onPaneCreated, onPaneClosed, onPaneSplit, onActivePaneChange } = options;
|
|
54
|
+
const [paneCount, setPaneCount] = useState(0);
|
|
55
|
+
const [activePaneId, setActivePaneId] = useState(null);
|
|
56
|
+
const handlePaneCreated = useCallback((paneId) => {
|
|
57
|
+
setPaneCount((prev) => prev + 1);
|
|
58
|
+
onPaneCreated?.(paneId);
|
|
59
|
+
}, [onPaneCreated]);
|
|
60
|
+
const handlePaneClosed = useCallback((paneId) => {
|
|
61
|
+
setPaneCount((prev) => Math.max(0, prev - 1));
|
|
62
|
+
onPaneClosed?.(paneId);
|
|
63
|
+
}, [onPaneClosed]);
|
|
64
|
+
const handlePaneSplit = useCallback((sourceId, createdId, direction) => {
|
|
65
|
+
onPaneSplit?.(sourceId, createdId, direction);
|
|
66
|
+
}, [onPaneSplit]);
|
|
67
|
+
const handleActivePaneChange = useCallback((paneId) => {
|
|
68
|
+
setActivePaneId(paneId);
|
|
69
|
+
onActivePaneChange?.(paneId);
|
|
70
|
+
}, [onActivePaneChange]);
|
|
71
|
+
return {
|
|
72
|
+
paneCount,
|
|
73
|
+
activePaneId,
|
|
74
|
+
splitActive: useCallback((direction) => {
|
|
75
|
+
ref.current?.splitActivePane(direction);
|
|
76
|
+
}, [ref]),
|
|
77
|
+
splitPane: useCallback((paneId, direction) => {
|
|
78
|
+
ref.current?.splitPane(paneId, direction);
|
|
79
|
+
}, [ref]),
|
|
80
|
+
closePane: useCallback((paneId) => {
|
|
81
|
+
ref.current?.closePane(paneId);
|
|
82
|
+
}, [ref]),
|
|
83
|
+
setActivePane: useCallback((paneId) => {
|
|
84
|
+
ref.current?.setActivePane(paneId, { focus: true });
|
|
85
|
+
}, [ref]),
|
|
86
|
+
handlers: useMemo(() => ({
|
|
87
|
+
onPaneCreated: handlePaneCreated,
|
|
88
|
+
onPaneClosed: handlePaneClosed,
|
|
89
|
+
onPaneSplit: handlePaneSplit,
|
|
90
|
+
onActivePaneChange: handleActivePaneChange
|
|
91
|
+
}), [
|
|
92
|
+
handlePaneCreated,
|
|
93
|
+
handlePaneClosed,
|
|
94
|
+
handlePaneSplit,
|
|
95
|
+
handleActivePaneChange
|
|
96
|
+
])
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
//#endregion
|
|
101
|
+
export { useTerminalPaneManager };
|
|
@@ -13,22 +13,26 @@ export { TerminalPanel, type ITerminalPanelProps } from './TerminalPanel';
|
|
|
13
13
|
export * from './parsing';
|
|
14
14
|
export * from './components';
|
|
15
15
|
export { useTerminalWebSocket, type IUseTerminalWebSocketOptions, type IUseTerminalWebSocketReturn, type ITerminalWsServerMessage, type TTerminalWsStatus, useTerminalSettings, type ITerminalSettings, type IUseTerminalSettingsReturn, } from './hooks';
|
|
16
|
-
export {
|
|
16
|
+
export { useTerminal, type IUseTerminalOptions, type IUseTerminalReturn, type ITerminalResttyProps, useTerminalConnection, type IUseTerminalConnectionOptions, type IUseTerminalConnectionReturn, useTerminalFontSize, type IUseTerminalFontSizeOptions, type IUseTerminalFontSizeReturn, useTerminalPaneManager, type IUseTerminalPaneManagerOptions, type IUseTerminalPaneManagerReturn, useTerminalDimensions, type IUseTerminalDimensionsReturn, type ITerminalDimensions, useTerminalKeyboardShortcuts, type ITerminalShortcutConfig, } from './hooks';
|
|
17
|
+
export { TerminalActionBar, terminalActionBarStyles, type ITerminalActionBarProps, type TerminalActionBarSlot, TerminalStatusBar, terminalStatusBarStyles, type ITerminalStatusBarProps, type TerminalStatusBarSlot, TerminalFontControls, terminalFontControlsStyles, type ITerminalFontControlsProps, type TerminalFontControlsSlot, TerminalSplitButton, terminalSplitButtonStyles, type ITerminalSplitButtonProps, type TerminalSplitButtonSlot, TerminalConnectionStatus, terminalConnectionStatusStyles, type ITerminalConnectionStatusProps, type TerminalConnectionStatusSlot, TerminalClearButton, TerminalReconnectButton, TerminalDimensionsBadge, TerminalRendererBadge, TerminalDisconnectedOverlay, type ITerminalClearButtonProps, type ITerminalReconnectButtonProps, type ITerminalDimensionsBadgeProps, type ITerminalRendererBadgeProps, type ITerminalDisconnectedOverlayProps, } from './controls';
|
|
18
|
+
export { TerminalLogsPanel, terminalLogsPanelStyles, type TerminalLogsPanelSlot } from './panel/TerminalLogsPanel';
|
|
17
19
|
export { TerminalInteractivePanel } from './panel/TerminalInteractivePanel';
|
|
18
20
|
export { TerminalInteractivePanelRestty } from './panel/TerminalInteractivePanelRestty';
|
|
21
|
+
export { TerminalInteractivePanelWterm } from './panel/TerminalInteractivePanelWterm';
|
|
19
22
|
export { TerminalPanelChrome, NOISE_TEXTURE_SVG, terminalScrollStyles } from './panel/TerminalPanelChrome';
|
|
20
|
-
export { TerminalPanelHeader } from './panel/TerminalPanelHeader';
|
|
21
|
-
export { TerminalPanelFooter } from './panel/TerminalPanelFooter';
|
|
23
|
+
export { TerminalPanelHeader, terminalPanelHeaderStyles, type TerminalPanelHeaderSlot } from './panel/TerminalPanelHeader';
|
|
24
|
+
export { TerminalPanelFooter, terminalPanelFooterStyles, type TerminalPanelFooterSlot } from './panel/TerminalPanelFooter';
|
|
22
25
|
export { LogLinesViewer } from './panel/LogLinesViewer';
|
|
23
26
|
export { TerminalSettingsPopover } from './panel/TerminalSettingsPopover';
|
|
24
27
|
export { TerminalThemeSelector } from './panel/TerminalThemeSelector';
|
|
25
|
-
export {
|
|
26
|
-
export {
|
|
28
|
+
export { ResttyTerminal, ResttySessionProvider, useResttySession, ResttyProvider, useRestty, useResttyPane, useResttyPanes, useResttyVisibility, useResttyPlugins, } from './restty';
|
|
29
|
+
export type { IResttyTerminalProps, IResttyTerminalRef, IResttySessionProviderProps, IResttySessionContextValue, IResttyContextValue, IUseResttyPaneReturn, IUseResttyPanesReturn, IUseResttyVisibilityOptions, IUseResttyPluginsReturn, Restty, ResttyPlugin, ResttyPluginInfo, ResttyPaneHandle, ResttyFontSource, ResttyPaneSplitDirection, GhosttyTheme, } from './restty';
|
|
30
|
+
export { LOG_LEVEL_STYLES, CONTENT_TYPE_STYLES, PRIMARY_GLOW, PRIMARY_GLOW_COMPOUND, STATUS_COLORS, TRAFFIC_LIGHT_STYLES, SEGMENTED_BUTTON_STYLES, TOGGLE_STYLES, ACTION_BUTTON_STYLES, FILTER_BUTTON_STYLES, TRIGGER_BUTTON_STYLES, FONT_BUTTON_STYLES, TERMINAL_BG, SECTION_LABEL_STYLES, TOGGLE_SWITCH_STYLES, type ILogLevelStyle, type IContentTypeStyle, type IStatusStyle, type TContentType, type TTerminalConnectionStatusToken, } from './Terminal.tokens';
|
|
27
31
|
export { SYNTHWAVE_TERMINAL_THEME, getTerminalTheme } from './Terminal.theme';
|
|
28
32
|
export { hexToResttyColor, xtermThemeToGhostty, getSynthwaveGhosttyTheme, type IResttyThemeColor, type IResttyGhosttyTheme, } from './Terminal.theme.restty';
|
|
29
|
-
export { createTerminalAdapter, createTerminalAdapterForRenderer } from './Terminal.adapter';
|
|
30
33
|
export { XTermAdapter } from './XTermAdapter';
|
|
31
34
|
export { XTermWrapper, type IXTermWrapperProps, useTerminalSearch } from './TerminalXterm';
|
|
35
|
+
export { WtermJsonTransport } from './wterm/WtermJsonTransport';
|
|
32
36
|
export type { ITerminalRendererType, ITerminalPtyBackendType, ITerminalBackendType, ITerminalMode, ITerminalConnectionStatus, ITerminalSession, ITerminalOptions, ITerminalTheme, ITerminalAdapter, ITerminalAdapterCapabilities, IPtyTransport, IPtyTransportFactory, IPtyTransportCallbacks, IPtyTransportConnectOptions, } from './Terminal.types';
|
|
33
37
|
export type { ITerminalPanelChromeProps } from './panel/TerminalPanelChrome.types';
|
|
34
38
|
export type { ITerminalInteractivePanelProps, ITerminalInteractivePanelRef } from './panel/TerminalInteractivePanel.types';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react-ui/blocks/Terminal/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG1E,cAAc,WAAW,CAAC;AAG1B,cAAc,cAAc,CAAC;AAG7B,OAAO,EACL,oBAAoB,EACpB,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACtB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,GAChC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react-ui/blocks/Terminal/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,30 +12,62 @@ import { SyntaxHighlighter } from "./parsing/SyntaxHighlighter.js";
|
|
|
12
12
|
import { PersistentLogBuffer, createPersistentLogBuffer } from "./parsing/PersistentLogBuffer.js";
|
|
13
13
|
import { HttpLogParser } from "./parsing/HttpLogParser.js";
|
|
14
14
|
import { TABLE_CHARS, TableParser, createTableParser } from "./parsing/TableParser.js";
|
|
15
|
-
import {
|
|
15
|
+
import { ACTION_BUTTON_STYLES, CONTENT_TYPE_STYLES, FILTER_BUTTON_STYLES, FONT_BUTTON_STYLES, LOG_LEVEL_STYLES, PRIMARY_GLOW, PRIMARY_GLOW_COMPOUND, SECTION_LABEL_STYLES, SEGMENTED_BUTTON_STYLES, STATUS_COLORS, TERMINAL_BG, TOGGLE_STYLES, TOGGLE_SWITCH_STYLES, TRAFFIC_LIGHT_STYLES, TRIGGER_BUTTON_STYLES } from "./Terminal.tokens.js";
|
|
16
|
+
import { logLineBadgesStyles } from "./components/LogLineBadges/LogLineBadges.styles.js";
|
|
17
|
+
import { ContentTypeBadge, LevelBadge, LogLineContainer, TagBadge, TagBadges, TimestampBadge } from "./components/LogLineBadges/index.js";
|
|
18
|
+
import { DEFAULT_SYNTAX_THEME } from "./components/SyntaxHighlight.styles.js";
|
|
16
19
|
import { HighlightedJson, SyntaxHighlightedText, clearHighlightCache } from "./components/SyntaxHighlight.js";
|
|
17
20
|
import { SpecializedSyntaxHighlighter } from "./components/SpecializedSyntaxHighlighter.js";
|
|
18
|
-
import {
|
|
21
|
+
import { terminalLogBadgeStyles } from "./components/TerminalLogBadge/TerminalLogBadge.styles.js";
|
|
22
|
+
import { TerminalLogBadge } from "./components/TerminalLogBadge/index.js";
|
|
19
23
|
import "./components/index.js";
|
|
20
24
|
import { useTerminalWebSocket } from "./hooks/useTerminalWebSocket.js";
|
|
21
25
|
import { useTerminalSettings } from "./hooks/useTerminalSettings.js";
|
|
26
|
+
import { useTerminalConnection } from "./hooks/useTerminalConnection.js";
|
|
27
|
+
import { useTerminalFontSize } from "./hooks/useTerminalFontSize.js";
|
|
28
|
+
import { useTerminalPaneManager } from "./hooks/useTerminalPaneManager.js";
|
|
29
|
+
import { useTerminalDimensions } from "./hooks/useTerminalDimensions.js";
|
|
30
|
+
import { useTerminalKeyboardShortcuts } from "./hooks/useTerminalKeyboardShortcuts.js";
|
|
31
|
+
import { useTerminal } from "./hooks/useTerminal.js";
|
|
22
32
|
import "./hooks/index.js";
|
|
33
|
+
import { terminalActionBarStyles } from "./controls/TerminalActionBar/TerminalActionBar.styles.js";
|
|
34
|
+
import { TerminalClearButton, TerminalDimensionsBadge, TerminalDisconnectedOverlay, TerminalReconnectButton, TerminalRendererBadge } from "./controls/TerminalAtoms.js";
|
|
35
|
+
import { terminalFontControlsStyles } from "./controls/TerminalFontControls/TerminalFontControls.styles.js";
|
|
36
|
+
import { TerminalFontControls } from "./controls/TerminalFontControls/index.js";
|
|
37
|
+
import { terminalSplitButtonStyles } from "./controls/TerminalSplitButton/TerminalSplitButton.styles.js";
|
|
38
|
+
import { TerminalSplitButton } from "./controls/TerminalSplitButton/index.js";
|
|
39
|
+
import { TerminalThemeSelector } from "./panel/TerminalThemeSelector/index.js";
|
|
40
|
+
import { TerminalSettingsPopover } from "./panel/TerminalSettingsPopover/index.js";
|
|
41
|
+
import { TerminalActionBar } from "./controls/TerminalActionBar/index.js";
|
|
42
|
+
import { terminalStatusBarStyles } from "./controls/TerminalStatusBar/TerminalStatusBar.styles.js";
|
|
43
|
+
import { terminalConnectionStatusStyles } from "./controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.js";
|
|
44
|
+
import { TerminalConnectionStatus } from "./controls/TerminalConnectionStatus/index.js";
|
|
45
|
+
import { TerminalStatusBar } from "./controls/TerminalStatusBar/index.js";
|
|
46
|
+
import "./controls/index.js";
|
|
23
47
|
import { ACCENT_GRADIENTS, terminalChromeStyles, terminalChromeVariants } from "./panel/TerminalPanelChrome.styles.js";
|
|
24
|
-
import {
|
|
48
|
+
import { terminalPanelHeaderStyles } from "./panel/TerminalPanelHeader/TerminalPanelHeader.styles.js";
|
|
49
|
+
import { TerminalPanelHeader } from "./panel/TerminalPanelHeader/index.js";
|
|
25
50
|
import { NOISE_TEXTURE_SVG, TerminalPanelChrome, terminalScrollStyles } from "./panel/TerminalPanelChrome.js";
|
|
26
|
-
import {
|
|
51
|
+
import { terminalPanelFooterStyles } from "./panel/TerminalPanelFooter/TerminalPanelFooter.styles.js";
|
|
52
|
+
import { TerminalPanelFooter } from "./panel/TerminalPanelFooter/index.js";
|
|
27
53
|
import { LogLinesViewer } from "./panel/LogLinesViewer.js";
|
|
28
|
-
import {
|
|
54
|
+
import { terminalLogsPanelStyles } from "./panel/TerminalLogsPanel/TerminalLogsPanel.styles.js";
|
|
55
|
+
import { TerminalLogsPanel } from "./panel/TerminalLogsPanel/index.js";
|
|
29
56
|
import { TerminalInteractivePanel } from "./panel/TerminalInteractivePanel.js";
|
|
57
|
+
import { ResttyProvider, useRestty } from "./restty/ResttyContext.js";
|
|
58
|
+
import { ResttySessionProvider, useResttySession } from "./restty/ResttySessionProvider.js";
|
|
30
59
|
import { getSynthwaveGhosttyTheme, hexToResttyColor, xtermThemeToGhostty } from "./Terminal.theme.restty.js";
|
|
31
|
-
import {
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
60
|
+
import { ResttyTerminal } from "./restty/ResttyTerminal.js";
|
|
61
|
+
import { useResttyPane } from "./restty/useResttyPane.js";
|
|
62
|
+
import { useResttyPanes } from "./restty/useResttyPanes.js";
|
|
63
|
+
import { useResttyVisibility } from "./restty/useResttyVisibility.js";
|
|
64
|
+
import { useResttyPlugins } from "./restty/useResttyPlugins.js";
|
|
65
|
+
import "./restty/index.js";
|
|
34
66
|
import { TerminalInteractivePanelRestty } from "./panel/TerminalInteractivePanelRestty.js";
|
|
35
|
-
import {
|
|
36
|
-
import {
|
|
67
|
+
import { WtermJsonTransport } from "./wterm/WtermJsonTransport.js";
|
|
68
|
+
import { TerminalInteractivePanelWterm } from "./panel/TerminalInteractivePanelWterm.js";
|
|
37
69
|
import { XTermAdapter } from "./XTermAdapter.js";
|
|
38
70
|
import { terminalDisplayStyles, terminalDisplayVariants } from "./TerminalDisplay.styles.js";
|
|
39
71
|
import { TerminalDisplay } from "./TerminalDisplay.js";
|
|
40
72
|
|
|
41
|
-
export { ACCENT_GRADIENTS, ANSI_COLOR_MAP, ANSI_INTRODUCERS, ANSI_MODIFIERS, ANSI_PATTERNS, AnsiColorMapper, AnsiParser, BadgeFormatter, ContentTypeBadge, HighlightedJson, HttpLogParser, LOG_LEVEL_ANSI_COLORS, LevelBadge, LogLevelDetector, LogLineContainer, LogLinesViewer, LogParserService, MultilineAggregator, NOISE_TEXTURE_SVG, PersistentLogBuffer,
|
|
73
|
+
export { ACCENT_GRADIENTS, ACTION_BUTTON_STYLES, ANSI_COLOR_MAP, ANSI_INTRODUCERS, ANSI_MODIFIERS, ANSI_PATTERNS, AnsiColorMapper, AnsiParser, BadgeFormatter, CONTENT_TYPE_STYLES, ContentTypeBadge, DEFAULT_SYNTAX_THEME, FILTER_BUTTON_STYLES, FONT_BUTTON_STYLES, HighlightedJson, HttpLogParser, LOG_LEVEL_ANSI_COLORS, LOG_LEVEL_STYLES, LevelBadge, LogLevelDetector, LogLineContainer, LogLinesViewer, LogParserService, MultilineAggregator, NOISE_TEXTURE_SVG, PRIMARY_GLOW, PRIMARY_GLOW_COMPOUND, PersistentLogBuffer, ResttyProvider, ResttySessionProvider, ResttyTerminal, SECTION_LABEL_STYLES, SEGMENTED_BUTTON_STYLES, SGR_CODES, STATUS_COLORS, SYNTHWAVE_ANSI_COLORS, SYNTHWAVE_TERMINAL_THEME, SpecializedSyntaxHighlighter, SyntaxHighlightedText, SyntaxHighlighter, TABLE_CHARS, TERMINAL_BG, TOGGLE_STYLES, TOGGLE_SWITCH_STYLES, TRAFFIC_LIGHT_STYLES, TRIGGER_BUTTON_STYLES, TableParser, TagBadge, TagBadges, TerminalActionBar, TerminalClearButton, TerminalConnectionStatus, TerminalDimensionsBadge, TerminalDisconnectedOverlay, TerminalDisplay, TerminalFontControls, TerminalInteractivePanel, TerminalInteractivePanelRestty, TerminalInteractivePanelWterm, TerminalLogBadge, TerminalLogsPanel, TerminalPanel, TerminalPanelChrome, TerminalPanelFooter, TerminalPanelHeader, TerminalReconnectButton, TerminalRendererBadge, TerminalSettingsPopover, TerminalSplitButton, TerminalStatusBar, TerminalThemeSelector, TimestampBadge, WtermJsonTransport, XTermAdapter, XTermWrapper, clearHighlightCache, createPersistentLogBuffer, createTableParser, getSynthwaveGhosttyTheme, getTerminalTheme, hexToResttyColor, logLineBadgesStyles, terminalActionBarStyles, terminalChromeStyles, terminalChromeVariants, terminalConnectionStatusStyles, terminalDisplayStyles, terminalDisplayVariants, terminalFontControlsStyles, terminalLogBadgeStyles, terminalLogsPanelStyles, terminalPanelFooterStyles, terminalPanelHeaderStyles, terminalScrollStyles, terminalSplitButtonStyles, terminalStatusBarStyles, useRestty, useResttyPane, useResttyPanes, useResttyPlugins, useResttySession, useResttyVisibility, useTerminal, useTerminalConnection, useTerminalDimensions, useTerminalFontSize, useTerminalKeyboardShortcuts, useTerminalPaneManager, useTerminalSearch, useTerminalSettings, useTerminalWebSocket, xtermThemeToGhostty };
|