Spaces:
Paused
Paused
| import React, { ReactNode } from "react"; | |
| import { Allotment } from "allotment"; | |
| import { LayoutPriority } from "allotment/dist/types/src/split-view"; | |
| interface Pane { | |
| panelA: ReactNode; | |
| panelB: ReactNode; | |
| panelC: ReactNode; | |
| lastPanelVisibility: boolean; | |
| } | |
| const EditorPanel = ({ panelA, panelB, panelC, lastPanelVisibility }: Pane) => { | |
| return ( | |
| <div style={{ height: "calc(100vh - 8rem)" }}> | |
| <Allotment> | |
| <Allotment.Pane>{panelA}</Allotment.Pane> | |
| <Allotment onVisibleChange={function noRefCheck() {}} vertical={true}> | |
| <Allotment.Pane | |
| priority={"HIGH" as LayoutPriority} | |
| preferredSize="70%" | |
| visible | |
| > | |
| {panelB} | |
| </Allotment.Pane> | |
| <Allotment.Pane | |
| preferredSize="30%" | |
| priority={"LOW" as LayoutPriority} | |
| snap | |
| visible={lastPanelVisibility} | |
| > | |
| {panelC} | |
| </Allotment.Pane> | |
| </Allotment> | |
| </Allotment> | |
| </div> | |
| ); | |
| }; | |
| export default EditorPanel; | |