This plugin does noting, but gives consumer of it a safe way to store and associate "any" data with columns (and have a generic top-level bucket of data as well)

This "metadata" stored per column per table is managed via the "options" part of the Signature, as "meta" is a term used for plugins for plugin authors.

Type Parameters

Hierarchy (View Summary)

Constructors

Properties

"[___Signature__]": S

(secret)

Because classes are kind of like interfaces, we need "something" to help TS know what a Resource is.

This isn't a real API, but does help with type inference with the SignatureFrom utility above

meta?: {
    column?: Constructor<ColumnMetaFor<S>>;
    row?: Constructor<RowMetaFor<S>>;
    table?: Constructor<TableMetaFor<S>>;
}

Optional state that this plugin may or may not choose to use

columns will each have an instance of meta.column. the table will have only one instance of meta.table.

name: string = 'metadata'

Unique name for the plugin.

  • only one plugin of the same name is allowed
  • the name is used for storing preferences / serializable information
table: Table
features?: string[]
requires?: string[]

Methods

  • Helper for specifying column-level configurations for a plugin on headlessTable's columns option

    Type Parameters

    Parameters

    • this: Constructor<T>
    • configFn: () => ColumnOptionsFor<SignatureFrom<T>>

    Returns [Constructor<T>, () => ColumnOptionsFor<SignatureFrom<T>>]

  • Helper for specifying plugins on headlessTable with the plugin-level options

    Type Parameters

    Parameters

    • this: Constructor<T>
    • configFn: () => OptionsFor<SignatureFrom<T>>

    Returns [Constructor<T>, () => OptionsFor<SignatureFrom<T>>]