Skip to content

fix(ui): Use real design tokens so borders and surfaces render#92

Open
nfebe wants to merge 1 commit into
mainfrom
fix/design-tokens
Open

fix(ui): Use real design tokens so borders and surfaces render#92
nfebe wants to merge 1 commit into
mainfrom
fix/design-tokens

Conversation

@nfebe

@nfebe nfebe commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

The Agents editor's input had no visible border in dark mode. Root cause: the view referenced design tokens that do not exist, and a browser drops a property whose var() is undefined. A sweep found the same phantom tokens in the API keys and users views (transparent card surfaces, inherited text colors); all three now use the design system's real tokens. Also gives the Agents header buttons the standard gap and layers the editor modal on the system z-index scale.

Three views referenced design tokens that do not exist, so browsers
dropped the affected properties: invisible input borders in dark mode,
transparent card surfaces, and inherited text colors. They now use the
design system's actual tokens. The Agents header buttons also gain the
standard gap, and the editor modal layers on the design system's modal
z-index.
@sourceant

sourceant Bot commented Jul 23, 2026

Copy link
Copy Markdown

Code Review Summary

This PR effectively addresses UI visibility issues in dark mode by replacing non-existent design tokens with the correct system tokens. It also improves layout consistency in the Agents header and correctly implements modal z-indexing.

🚀 Key Improvements

  • Unified surface backgrounds across three views using var(--surface-raised) and var(--surface-sunken).
  • Successfully replaced broken var(--text-secondary) references with var(--text-muted).
  • Adopted the standard var(--z-modal) token for modal layering in AgentsView.vue.

💡 Minor Suggestions

  • Normalize the usage of var(--surface-border) instead of var(--border) in AgentsView.vue to align with APIKeysView.vue and UsersView.vue.
  • Align the use of var(--text-primary) in AgentsView.vue with the convention used in the other modified views.

@sourceant sourceant Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review complete. See the overview comment for a summary.

Comment thread src/views/AgentsView.vue
background: var(--surface-ground);
border: 1px solid var(--border-color);
background: var(--surface-sunken);
border: 1px solid var(--border);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent border token. APIKeysView.vue and UsersView.vue consistently use var(--surface-border) (e.g., line 614 and 434 respectively), while AgentsView.vue uses var(--border). Using var(--surface-border) here would maintain consistency across all updated views.

Suggested change
border: 1px solid var(--border);
+ border: 1px solid var(--surface-border);

Comment thread src/views/AgentsView.vue
border: 1px solid var(--border);
border-radius: 8px;
color: var(--text-color);
color: var(--text);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent text color token. Other views use var(--text-primary) for form controls (e.g., APIKeysView.vue:802). Standardizing on var(--text-primary) instead of var(--text) ensures cohesive rendering and better theme support across the application.

Suggested change
color: var(--text);
+ color: var(--text-primary);

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant