react-pdf-highlighter-plus
interface LeftPanelProps {
    children?: ReactNode;
    className?: string;
    defaultTab?: LeftPanelTab;
    eventBus?: unknown;
    footerClassNames?: FooterClassNames;
    footerStyles?: FooterStyles;
    goToPage?: ((pageNumber) => void);
    isOpen?: boolean;
    linkService?: unknown;
    onOpenChange?: ((isOpen) => void);
    onPageSelect?: ((pageNumber) => void);
    outlineClassNames?: DocumentOutlineClassNames;
    outlineItemClassNames?: OutlineItemClassNames;
    outlineItemStyles?: OutlineItemStyles;
    outlineStyles?: DocumentOutlineStyles;
    pdfDocument: PDFDocumentProxy;
    renderOutlineItem?: ((item, props) => ReactNode);
    renderThumbnail?: ((pageNumber, thumbnail, isActive) => ReactNode);
    showFooter?: boolean;
    showToggleButton?: boolean;
    style?: CSSProperties;
    tabClassNames?: TabClassNames;
    tabStyles?: TabStyles;
    tabs?: LeftPanelTab[];
    theme?: LeftPanelTheme;
    thumbnailWidth?: number;
    toggleButtonClassNames?: ToggleButtonClassNames;
    toggleButtonStyles?: ToggleButtonStyles;
    viewer?: unknown;
    width?: string | number;
}

Properties

children?: ReactNode

Children for custom content

className?: string

Custom class name

defaultTab?: LeftPanelTab

Initial active tab

eventBus?: unknown

Event bus for page change events

footerClassNames?: FooterClassNames

Custom class names for footer (Tailwind-friendly)

footerStyles?: FooterStyles

Custom styles for footer

goToPage?: ((pageNumber) => void)

Function to navigate to a page (from pdfHighlighterUtils.goToPage)

Type declaration

    • (pageNumber): void
    • Parameters

      • pageNumber: number

      Returns void

isOpen?: boolean

Whether panel is open

linkService?: unknown

PDF link service for navigation

onOpenChange?: ((isOpen) => void)

Callback when open state changes

Type declaration

    • (isOpen): void
    • Parameters

      • isOpen: boolean

      Returns void

onPageSelect?: ((pageNumber) => void)

Callback when page is selected

Type declaration

    • (pageNumber): void
    • Parameters

      • pageNumber: number

      Returns void

outlineClassNames?: DocumentOutlineClassNames

Custom class names for document outline (Tailwind-friendly)

outlineItemClassNames?: OutlineItemClassNames

Custom class names for outline items (Tailwind-friendly)

outlineItemStyles?: OutlineItemStyles

Custom styles for outline items

outlineStyles?: DocumentOutlineStyles

Custom styles for document outline

pdfDocument: PDFDocumentProxy

PDF document from PdfLoader

renderOutlineItem?: ((item, props) => ReactNode)

Custom outline item renderer

Type declaration

renderThumbnail?: ((pageNumber, thumbnail, isActive) => ReactNode)

Custom thumbnail renderer

Type declaration

    • (pageNumber, thumbnail, isActive): ReactNode
    • Parameters

      Returns ReactNode

showFooter?: boolean

Show page count in footer

showToggleButton?: boolean

Show toggle button

style?: CSSProperties

Custom styles

tabClassNames?: TabClassNames

Custom class names for tabs (Tailwind-friendly)

tabStyles?: TabStyles

Custom styles for tabs

tabs?: LeftPanelTab[]

Which tabs to show

Theme customization

thumbnailWidth?: number

Thumbnail width

toggleButtonClassNames?: ToggleButtonClassNames

Custom class names for toggle button (Tailwind-friendly)

toggleButtonStyles?: ToggleButtonStyles

Custom styles for toggle button

viewer?: unknown

PDF viewer instance

width?: string | number

Panel width when open