use-outline-pane.ts 588 B

1234567891011121314
  1. import { useOutlineContext } from '@/features/ide-react/context/outline-context'
  2. import useCollapsiblePanel from '@/features/ide-react/hooks/use-collapsible-panel'
  3. import { useRef } from 'react'
  4. import { ImperativePanelHandle } from 'react-resizable-panels'
  5. export const useOutlinePane = () => {
  6. const { canShowOutline, outlineExpanded } = useOutlineContext()
  7. const outlinePanelRef = useRef<ImperativePanelHandle>(null)
  8. const outlineEnabled = canShowOutline && outlineExpanded
  9. useCollapsiblePanel(outlineEnabled, outlinePanelRef)
  10. return { outlineEnabled, outlinePanelRef }
  11. }