Files
wehub-resource-sync 070959e133
landing-page-staging / Deploy landing page to staging (push) Has been skipped
landing-page-ci / Validate landing page (push) Failing after 4s
visual-baseline / Capture visual baselines (push) Has been cancelled
bake-plugin-previews / Bake plugin previews (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:00:47 +08:00

475 lines
9.0 KiB
JSON

{
"schemaVersion": 1,
"brandId": "opencode-ai",
"source": {
"componentsHtml": "components.html",
"tokensCss": "tokens.css"
},
"fixture": {
"title": "OpenCode AI — reference components",
"description": "Reference fixture for design-systems/opencode-ai. Terminal-native dark: warm near-black canvas, Berkeley Mono sole typeface, flat depth (no shadows), Apple HIG semantic colors, 880px narrow reading column.",
"styleBlockCount": 1,
"selectorCount": 52,
"classCount": 26,
"elementCount": 24
},
"tokens": {
"declared": [
"--accent",
"--accent-active",
"--accent-hover",
"--accent-on",
"--bg",
"--border",
"--border-soft",
"--container-gutter-desktop",
"--container-gutter-phone",
"--container-gutter-tablet",
"--container-max",
"--danger",
"--ease-standard",
"--elev-flat",
"--elev-raised",
"--elev-ring",
"--fg",
"--fg-2",
"--focus-ring",
"--font-body",
"--font-display",
"--font-mono",
"--leading-body",
"--leading-tight",
"--meta",
"--motion-base",
"--motion-fast",
"--muted",
"--radius-lg",
"--radius-md",
"--radius-pill",
"--radius-sm",
"--section-y-desktop",
"--section-y-phone",
"--section-y-tablet",
"--space-1",
"--space-12",
"--space-2",
"--space-3",
"--space-4",
"--space-5",
"--space-6",
"--space-8",
"--success",
"--surface",
"--surface-warm",
"--text-2xl",
"--text-3xl",
"--text-4xl",
"--text-base",
"--text-lg",
"--text-sm",
"--text-xl",
"--text-xs",
"--tracking-display",
"--warn"
],
"referenced": [
"--accent",
"--accent-active",
"--accent-hover",
"--accent-on",
"--bg",
"--border",
"--container-gutter-desktop",
"--container-gutter-phone",
"--container-gutter-tablet",
"--container-max",
"--danger",
"--ease-standard",
"--fg",
"--fg-2",
"--focus-ring",
"--font-body",
"--font-display",
"--font-mono",
"--leading-body",
"--meta",
"--motion-fast",
"--muted",
"--radius-md",
"--radius-sm",
"--section-y-desktop",
"--section-y-phone",
"--section-y-tablet",
"--space-1",
"--space-2",
"--space-3",
"--space-4",
"--space-5",
"--space-6",
"--space-8",
"--success",
"--surface",
"--text-2xl",
"--text-3xl",
"--text-base",
"--text-lg",
"--text-sm",
"--text-xl",
"--text-xs",
"--warn"
],
"unusedDeclared": [
"--border-soft",
"--elev-flat",
"--elev-raised",
"--elev-ring",
"--leading-tight",
"--motion-base",
"--radius-lg",
"--radius-pill",
"--space-12",
"--surface-warm",
"--text-4xl",
"--tracking-display"
],
"undeclaredReferenced": []
},
"selectors": [
".badge",
".badge-accent",
".badge-danger",
".badge-dot",
".badge-success",
".badge-warn",
".body-muted",
".body-sm",
".btn",
".btn-primary",
".btn-primary:active",
".btn-primary:hover",
".btn-secondary",
".btn-secondary:hover",
".btn:active",
".btn:focus-visible",
".card",
".container",
".eyebrow",
".features-stack > * + *",
".field",
".field input",
".field input::placeholder",
".field input:focus-visible",
".field label",
".field-help",
".form",
".form-actions",
".hero-actions",
".icon",
".lead",
".prompt",
".prompt::before",
".row-between",
".stack-3 > * + *",
".stack-4 > * + *",
".stack-6 > * + *",
"*",
"*::after",
"*::before",
"a",
"a:hover",
"body",
"code",
"h1",
"h2",
"h3",
"html",
"kbd",
"p",
"section",
"section + section"
],
"classes": [
"badge",
"badge-accent",
"badge-danger",
"badge-dot",
"badge-success",
"badge-warn",
"body-muted",
"body-sm",
"btn",
"btn-primary",
"btn-secondary",
"card",
"container",
"eyebrow",
"features-stack",
"field",
"field-help",
"form",
"form-actions",
"hero-actions",
"icon",
"lead",
"prompt",
"row-between",
"stack-3",
"stack-4"
],
"elements": [
"a",
"article",
"body",
"button",
"code",
"div",
"form",
"h1",
"h2",
"h3",
"head",
"html",
"input",
"kbd",
"label",
"main",
"meta",
"p",
"path",
"section",
"span",
"style",
"svg",
"title"
],
"groups": [
{
"id": "buttons",
"label": "Buttons and calls to action",
"present": true,
"selectors": [
".btn",
".btn-primary",
".btn-primary:active",
".btn-primary:hover",
".btn-secondary",
".btn-secondary:hover",
".btn:active",
".btn:focus-visible"
],
"classes": [
"btn",
"btn-primary",
"btn-secondary"
],
"elements": [
"button"
],
"tokenReferences": [
"--accent",
"--accent-active",
"--accent-on",
"--fg",
"--surface"
]
},
{
"id": "inputs",
"label": "Form fields and controls",
"present": true,
"selectors": [
".field",
".field input",
".field input::placeholder",
".field input:focus-visible",
".field label",
".field-help"
],
"classes": [
"field",
"field-help",
"form",
"form-actions"
],
"elements": [
"form",
"input",
"label"
],
"tokenReferences": [
"--accent",
"--focus-ring",
"--font-mono",
"--meta",
"--muted",
"--text-xs"
]
},
{
"id": "cards",
"label": "Cards and panels",
"present": true,
"selectors": [
".card"
],
"classes": [
"card"
],
"elements": [],
"tokenReferences": []
},
{
"id": "badges",
"label": "Badges, chips, and status labels",
"present": true,
"selectors": [
".badge",
".badge-accent",
".badge-danger",
".badge-dot",
".badge-success",
".badge-warn"
],
"classes": [
"badge",
"badge-accent",
"badge-danger",
"badge-dot",
"badge-success",
"badge-warn"
],
"elements": [],
"tokenReferences": [
"--accent",
"--danger",
"--font-mono",
"--radius-sm",
"--space-2",
"--text-xs"
]
},
{
"id": "links",
"label": "Links and inline actions",
"present": true,
"selectors": [
"a",
"a:hover"
],
"classes": [],
"elements": [
"a"
],
"tokenReferences": [
"--accent"
]
},
{
"id": "keyboard",
"label": "Keyboard hints",
"present": true,
"selectors": [
"kbd"
],
"classes": [],
"elements": [
"kbd"
],
"tokenReferences": [
"--border",
"--font-mono",
"--muted",
"--radius-sm",
"--surface",
"--text-xs"
]
},
{
"id": "icons",
"label": "Icon slots",
"present": true,
"selectors": [
".icon"
],
"classes": [
"icon"
],
"elements": [
"svg"
],
"tokenReferences": []
},
{
"id": "typography",
"label": "Typography scale and text utilities",
"present": true,
"selectors": [
".body-muted",
".body-sm",
".eyebrow",
".lead",
"h1",
"h2",
"h3"
],
"classes": [
"body-muted",
"body-sm",
"eyebrow",
"lead"
],
"elements": [
"h1",
"h2",
"h3",
"p"
],
"tokenReferences": [
"--font-display",
"--font-mono",
"--muted",
"--text-2xl",
"--text-xs"
]
},
{
"id": "layout",
"label": "Layout primitives",
"present": true,
"selectors": [
".container",
".row-between",
".stack-3 > * + *",
".stack-4 > * + *",
".stack-6 > * + *",
"section",
"section + section"
],
"classes": [
"container",
"row-between",
"stack-3",
"stack-4"
],
"elements": [
"main",
"section"
],
"tokenReferences": [
"--border",
"--container-gutter-desktop",
"--container-gutter-phone",
"--container-gutter-tablet",
"--container-max",
"--space-3",
"--space-6"
]
}
],
"literals": {
"colorExpressions": 5,
"pixelValues": 24,
"hardcodedFontFamilies": 10
}
}