Skip to content

TableOverrides

TableOverrides = object

Defined in: packages/admin/src/types.ts:184

Per-table customization for how a table appears and behaves in the admin panel.

Any table not listed in the tables config uses sensible defaults derived from schema introspection. Auth-internal tables (session, account, verification, passkey) are auto-excluded unless explicitly configured.

const postsOverrides: TableOverrides = {
label: "Blog Posts",
listColumns: ["title", "author", "published", "createdAt"],
searchable: ["title", "content"],
defaultSort: { column: "createdAt", direction: "desc" },
fields: {
content: { component: RichTextEditor },
},
};

optional actions: object

Defined in: packages/admin/src/types.ts:196

Custom row-level and table-level actions. See RowAction and TableAction.

optional row: RowAction[]

optional table: TableAction[]


optional defaultSort: object

Defined in: packages/admin/src/types.ts:192

Default sort order for the list view. Defaults to primary key descending.

column: string

direction: "asc" | "desc"


optional exclude: boolean

Defined in: packages/admin/src/types.ts:198

Set to true to hide this table from the admin panel entirely.


optional fields: Record<string, FieldConfig>

Defined in: packages/admin/src/types.ts:194

Custom field configurations for create/edit forms, keyed by column name. Passed to @cfast/forms.


optional label: string

Defined in: packages/admin/src/types.ts:186

Custom display label for the table in the sidebar and views. Defaults to a pluralized title-case version of the table name.


optional listColumns: string[]

Defined in: packages/admin/src/types.ts:188

Column names to show in the list view. Defaults to all non-primary-key columns.


optional searchable: string[]

Defined in: packages/admin/src/types.ts:190

Column names that support text search in the list view. Defaults to the first text column.