Skip to content

IconName

IconName = GeneratedVexTypes extends object ? TName : string

Defined in: packages/core/src/utils/index.ts:27

Icon name accepted by admin.icon on collections, globals, blocks, and live preview breakpoints.

Core is icon-library agnostic; the name set comes from the GeneratedVexTypes augmentation vex generate writes.

  • Before vex generate: string.
  • After: the canonical Lucide names — the keys of lucide-react’s icons map, which the Icon component in @vexcms/react indexes at render time. Alias exports (AlertCircle) and *Icon duplicates (UsersIcon) are not in that map and are rejected.

https://lucide.dev/icons

const icon: IconName = "CircleAlert"; // ✅ canonical, renders
const alias: IconName = "AlertCircle"; // ❌ alias export, not in `icons`