mirror of
https://github.com/overleaf/overleaf.git
synced 2024-12-02 13:58:46 -05:00
23593f8650
* Defer script loading * Refactor loading * Wait for project:joined * Only mount IdePage once everything has connected * Add useConnectionState hook and comments * Remove placeholder components * Move props into EditorAndSidebar * Move props into MainLayout * Tidy editor and sidebar components * Lazy-load the symbol palette pane and separate the loading pane GitOrigin-RevId: 4b721a06d6aba0ae0ec91768e6a6e29cf15e2083
17 lines
431 B
TypeScript
17 lines
431 B
TypeScript
import { RefObject, useEffect } from 'react'
|
|
import { ImperativePanelHandle } from 'react-resizable-panels'
|
|
|
|
export default function useCollapsiblePanel(
|
|
panelIsOpen: boolean,
|
|
panelRef: RefObject<ImperativePanelHandle>
|
|
) {
|
|
useEffect(() => {
|
|
if (panelRef.current) {
|
|
if (panelIsOpen) {
|
|
panelRef.current.expand()
|
|
} else {
|
|
panelRef.current.collapse()
|
|
}
|
|
}
|
|
}, [panelIsOpen, panelRef])
|
|
}
|