Component Set Mapping

Use this matrix to mirror the documented ANVIL components into Figma component sets. Keep naming and axes stable to avoid MCP import drift.

PatternComponent / Variant / Size / State
Required axesVariant + Size + State
Optional axesIcon, Tone, Density

Component Mapping Table

All rows below are populated from documented ANVIL components and states. Component styling is expected to consume semantic tokens only.

Component Variant list Size list State list
Buttonprimary, secondary, outline, ghost, icon-leading, icon-trailing, icon-onlysm, md, lgdefault, hover, active, focus-visible, disabled
Inputtext, input-with-icon-left, input-with-icon-right, input-groupmddefault, focus, error, disabled
Selectclosed, open-menu, custom-trigger, nativemddefault, hover-option, selected-option, focus, disabled
Textareadefaultmddefault, focus, error, disabled
Badgeprimary, secondary, outline, subtle, success, warning, error, info, selectedsm, md, lgdefault, selected
Chip (removable)removablesm, md, lgdefault, hover-remove, focus-remove
Avatarimage, initials, icon, status-online, status-away, status-offlinesm, md, lg, xldefault
Carddefault, elevated, compact, composeddefault, compactdefault, hover (elevated)
Alerterror, success, warning, infomddefault
Toastsuccess, error, warning, dismissiblemddefault, focus-close, hover-close
Modal / Dialogdefault, destructive confirmationmax-width semantic sizeopen, focus-trap, close, primary-cta, secondary-cta
Drawer / Sheetbottom-sheet, side-drawerfull-width bottom, semantic side widthopen, close, focus-visible
Checkboxcheckboxcontroldefault, checked, focus-visible, disabled
Radioradiocontroldefault, selected, focus-visible, disabled
Switchswitchtouchoff, on, focus-visible, disabled
Sliderrange-inputtouchdefault, focus, disabled
Progressprogressbartrack25, 50, 75, 100
Tabstab item, tab panelmddefault, hover, focus, selected
Breadcrumblink, current, chevron separatormddefault, hover-link, focus-link, current
Paginationprevious, next, page-number, current-pagesmdefault, hover, focus, disabled, current
Stepperpending, current, completemddefault, current-step, complete-step
Bottom Navigationitem, current itemtouchdefault, hover, focus-visible, current
Calendarday-default, day-hover, day-focus, day-today, day-selected, day-disabled, weekday, month-navday-cell touchdefault, hover, focus-visible, today, selected, disabled
Skeleton Loaderline, title, avatar, media-recttokenized semantic sizesloading
Gridgrid-1, grid-2, grid-3responsive columnsdefault
Sectionsection blockdefaultdefault
Stack / Inlinestack-sm, stack-default, stack-lg, inline-sm, inline-default, inline-lgsemantic gap scaledefault