Skip to content

Clean up Style-rules review pane + fix icons:sync for in-house icons#31

Merged
DavidBabinec merged 1 commit into
mainfrom
fix/import-style-rules-ui
Jun 11, 2026
Merged

Clean up Style-rules review pane + fix icons:sync for in-house icons#31
DavidBabinec merged 1 commit into
mainfrom
fix/import-style-rules-ui

Conversation

@DavidBabinec

Copy link
Copy Markdown
Contributor

What

Tidies up the Review import → Style rules pane (the "Super Import" wizard) and fixes a latent break in bun run icons:sync.

Style-rules pane (AnalyzeStep, StylesheetModeRows)

  • Dropped the ambient/class badges on every selector row — a distinction users don't act on. .ruleRow collapses from 3 columns to 2 so the selector name uses the full width. The underlying rule.kind still drives import behavior; only the UI noise is gone.
  • Fixed the broken-looking css chip on converted-stylesheet rows. It was a text chip crammed into the 16px checkbox column, overflowing its box. Replaced with a properly sized FileTextSolidIcon (.fileBadge).
  • Added spacing between the per-stylesheet mode rows and the "Search selectors…" bar, which previously sat flush together (.modeRows wrapper with bottom margin).

scripts/sync-icons.ts

bun run icons:sync threw on any imported icon with no upstream source. The culprit is the hand-authored strike glyph in BodyBubbleMenu (upstream pixel-art-icons ships underline but no strikethrough, so it was drawn in-house and committed to vendor/). The sync blindly tried to copy it from upstream and aborted.

Added an IN_HOUSE_ICONS allowlist that the upstream-copy step skips — while still asserting the vendored .tsx source exists, so a deleted/renamed in-house icon still fails loudly. bun run icons:sync and bun run icons:check now both pass (134 icons).

Verification

  • bun run icons:sync ✓ (134 icons) · bun run icons:check ✓ (fresh)
  • bunx eslint clean on all four touched files
  • bun run build passed (run before the unrelated parallel work landed in the tree)

Notes

  • React Doctor flags no-giant-component on AnalyzeStep (556 lines) — pre-existing; this PR removes lines rather than adding them. Splitting that component is out of scope.
  • The working tree currently contains an unrelated in-progress "layouts" feature from a parallel session; none of it is included in this branch.

🤖 Generated with Claude Code

…marker, space the search

The "Review import" step's Style-rules pane had three rough edges:

- Every selector row carried an `ambient`/`class` badge — a distinction users
  don't act on. Removed the badge and collapsed `.ruleRow` to two columns so the
  selector name uses the full width. The underlying `rule.kind` still drives
  import behavior; only the UI noise is gone.
- Converted-stylesheet mode rows crammed a `css` text chip into the 16px
  checkbox column, overflowing into a broken-looking box. Replaced it with a
  properly sized `FileTextSolidIcon` (`.fileBadge`).
- The per-stylesheet mode rows sat flush against the "Search selectors…" bar.
  Gave them a dedicated `.modeRows` wrapper with bottom margin.

Also fixed `scripts/sync-icons.ts`, which threw on any imported icon with no
upstream source — breaking `bun run icons:sync` because of the hand-authored
`strike` glyph (upstream ships `underline` but no strikethrough). Added an
`IN_HOUSE_ICONS` allowlist that the upstream copy step skips while still
asserting the vendored source exists.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@DavidBabinec DavidBabinec merged commit ff3d057 into main Jun 11, 2026
6 checks passed
@DavidBabinec DavidBabinec deleted the fix/import-style-rules-ui branch June 11, 2026 18:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant