Appearance
T3010: Contrast pairing names an undeclared part
Cause
A contrast pairing names a part the contract does not declare.
Example
xml
<contract>
{ "name": "Card", "role": "group", "parts": ["root"], "contrast": [{ "foreground": "label", "background": "root" }] }
</contract>
<template><div class="root"></div></template>What you see
text
ERROR T3010 app/components/Card.tess:2:84
Contrast "foreground" names "label", which is not a declared part.
Declared parts: "root".
Run `tessera explain T3010` for details.Fix
Use a declared part, or add the part to parts.