Oakbase Column Plugin Guide

Build and publish custom column types for the Oakbase marketplace.

Authoring Contract

Column plugins implement the contract defined by @nexus/column-types. Authors export a definition wrapped with defineColumnType(...) for full TypeScript type inference.

Critical Cost & Performance Constraint: Focus-Only Iframe Model

An iframe per cell is not viable on virtualized grids containing hundreds or thousands of visible cells.

Oakbase renders plugin cells read-only with a lightweight static preview when unfocused. The heavy sandboxed iframe mounts ONLY for the focused / editing cell.

Plugin authors must supply renderPreview(value) returning sanitized HTML or rely on getSearchableText(value). Do not design your plugin assuming persistent mounted DOM across all cells.

Manifest & Security

Manifests require Subresource Integrity (SRI) hashes (integrity). Bundles with mismatched hashes will be refused at load.

UI plugins run inside sandboxes with sandbox="allow-scripts" (strictly without allow-same-origin) served from a dedicated plugin origin.