Extends ServiceEditForm with patron-blocking-rules support for protocols that support it. The editor is injected via the hook methods added to ServiceEditForm; editLibrary and addLibrary are overridden to collect the rules from the editor ref and persist them in library state.

Hierarchy (View Summary)

Constructors

Properties

context: any

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<ServiceEditFormProps<PatronAuthServicesData>> & Readonly<
    { children?: ReactNode },
>
refs: { [key: string]: ReactInstance }
state: Readonly<ServiceEditFormState>
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}</>;
}
}

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 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

    • Optionalcallback: () => void

    Returns void

  • Removes the association with the given library from a service's state.

    NB: This method is used indirectly via onRemove by sharedFunctions.clearForm to clean up form state; therefore, care should be taken to avoid any side effects not needed for updating the state. Anything done by this method can happen whenever user interaction or clearForm triggers onRemove.

    Update or override isLibraryRemovalPermitted to control library removal via UI interaction.

    Parameters

    • library: any

    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