Header of all admin interface pages, with a dropdown for selecting a library, library-specific links for the current library, and site-wide links.

Hierarchy

Constructors

Properties

context: { admin: default; library: () => string; router: HeaderRouter }

If using the new style context, re-declare this in your class to be the React.ContextType of your static contextType. Should be used with type annotation or static contextType.

static contextType = MyContext
// For TS pre-3.7:
context!: React.ContextType<typeof MyContext>
// For TS 3.7 and above:
declare context: React.ContextType<typeof MyContext>
props: Readonly<HeaderProps> & Readonly<{ children?: ReactNode }>
refs: { [key: string]: ReactInstance }
state: Readonly<HeaderState>
contextType?: Context<any>

If set, this.context will be set at runtime to the current value of the given Context.

Usage:

type MyContext = number
const Ctx = React.createContext<MyContext>(0)

class Foo extends React.Component {
static contextType = Ctx
context!: React.ContextType<typeof Ctx>
render () {
return <>My context's value: {this.context}</>;
}
}
contextTypes: {
    admin: Validator<object>;
    library: Requireable<(...args: any[]) => any>;
    router: Validator<object>;
} = ...

Methods

  • Catches exceptions generated in descendant components. Unhandled exceptions will cause the entire component tree to unmount.

    Parameters

    • error: Error
    • errorInfo: ErrorInfo

    Returns void

  • Called immediately after a component is mounted. Setting state here will trigger re-rendering.

    Returns void

  • Called immediately after updating occurs. Not called for the initial render.

    The snapshot is only present if getSnapshotBeforeUpdate is present and returns non-null.

    Parameters

    Returns void

  • Called immediately before a component is destroyed. Perform any necessary cleanup in this method, such as cancelled network requests, or cleaning up any DOM elements created in componentDidMount.

    Returns void

  • Parameters

    • isSystemAdmin: boolean
    • isLibraryManager: boolean

    Returns Element

  • Parameters

    • Optionalcallback: () => void

    Returns void

  • Runs before React applies the result of render to the document, and returns an object to be given to componentDidUpdate. Useful for saving things such as scroll position before render causes changes to it.

    Note: the presence of getSnapshotBeforeUpdate prevents any of the deprecated lifecycle events from running.

    Parameters

    Returns any

  • renderLinkItem Renders a Link Router component for library and sitewide navigation links and if the current admin has the correct authentication.

    Parameters

    • item: HeaderNavItem

      Object with the label and href for the navigation item.

    • currentPathname: string

      Page's current URL.

    • currentLibrary: string = ""

      Active library.

    Returns Element

  • renderNavItem Renders a NavItem Bootstrap component and is active based on the page's current path.

    Parameters

    • item: HeaderNavItem

      Object with the label and href for the navigation item.

    • currentPathname: string

      Page's current URL.

    • currentLibrary: string = ""

      Active library.

    Returns Element

  • Type Parameters

    • K extends "showAccountDropdown"

    Parameters

    Returns void

  • Called to determine whether the change in props and state should trigger a re-render.

    Component always returns true. PureComponent implements a shallow comparison on props and state and returns true if any props or states have changed.

    If false is returned, Component#render, componentWillUpdate and componentDidUpdate will not be called.

    Parameters

    Returns boolean