Skip to content

Commit 4674dfe

Browse files
committed
docs(web): complete icon button migration audit
1 parent c65cf29 commit 4674dfe

2 files changed

Lines changed: 3 additions & 5 deletions

File tree

packages/web/src/components/ui/MIGRATION.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
| Component | Status | Legacy classes | Callers left | Last update |
44
|---|---|---|---:|---|
55
| Button | 🟢 complete | `.btn .btn-*` | 0 | 2026-05-09 |
6-
| IconButton | 🟡 partial | `.btn` icon-only | bounded modal/dialog and toast close, desktop/mobile topbar icon-only triggers, workspace fullscreen, supervisor card actions, git/file-tree/status row actions, code-editor and git-diff close chrome, mobile-select trailing side actions, agent session header actions, selected terminal/workspace flows, shortcut reset, mobile workspace drawer close, and workspace file-toolbar actions covered; broader icon-action families remain | 2026-05-09 |
6+
| IconButton | 🟢 complete | `.btn` icon-only | 0 | 2026-05-09 |
77
| Input | 🟢 complete | `.input` | 0 | 2026-05-09 |
88
| Textarea | 🟢 complete | `.input.textarea` | 0 | 2026-05-09 |
99
| Tag | 🟢 complete | `.badge .badge-*` | 0 | 2026-05-09 |
@@ -31,7 +31,7 @@
3131

3232
`Button` now completes the legacy `.btn` / `.btn-*` migration inventory: the remaining worktree summary/manage flows now use the shared primitive from the public UI barrel, and the previous bounded migrations across auth, config actions, supervisor dialogs, git flows, file-tree dialogs, notifications, and shared mobile/desktop shells leave no feature-local raw `.btn` callsites behind. Legacy compatibility classes remain emitted by the shared primitive for zero-regression styling while ownership stays in the component.
3333

34-
`IconButton` now covers a broader bounded icon-action slice: the desktop topbar add/settings/files/terminal triggers, the shared workspace fullscreen control, the mobile topbar more-actions/fullscreen triggers, the supervisor card edit/pause-resume/trigger/disable controls, the git-panel row stage/unstage/discard actions, the file-tree search/tree-row create-delete actions, the git-status-bar fetch action, the code-editor mobile toggle plus editor/diff close controls, the shared toast dismiss control, the desktop workspace-launch close control, the mobile workspace-drawer close action, the mobile-select trailing side actions, and the agent session-card / draft-launcher header controls all use the shared primitive from the public UI barrel while preserving caller-owned compatibility classes such as `topbar-add`, `topbar-btn*`, `mobile-topbar__icon-button`, `supervisor-icon-btn*`, `git-row-action`, `git-status-bar__item*`, `code-mode-btn`, `mobile-sheet__action--icon`, `toast__close`, `launch-close-btn`, `mobile-workspace-drawer__item-close`, `mobile-select-sheet__item-side-action*`, and `session-action-btn*`. Broader deferred icon-action families remain intentionally outside this slice.
34+
`IconButton` now completes the feature-layer raw icon-only action-trigger inventory. The remaining desktop/mobile topbar icon-only triggers, shared workspace fullscreen control, supervisor card actions, git/file-tree/status-row actions, code-editor and git-diff close chrome, modal/dialog and toast close controls, mobile-select trailing side actions, terminal/workspace tab and selector close controls, shortcut reset, mobile workspace drawer close, and workspace file-toolbar actions all use the shared primitive from the public UI barrel while preserving caller-owned compatibility classes such as `topbar-add`, `topbar-btn*`, `mobile-topbar__icon-button`, `supervisor-icon-btn*`, `git-row-action`, `git-status-bar__item*`, `code-mode-btn`, `mobile-sheet__action--icon`, `toast__close`, `launch-close-btn`, `mobile-workspace-drawer__item-close`, `mobile-select-sheet__item-side-action*`, `session-action-btn*`, `topbar-close`, `terminal-tab-close`, and `terminal-selector-item-close`. The remaining raw feature buttons audited on this pass are intentionally not counted on this row because they are text-bearing buttons, tabs/selectors, counters, backdrops, or other specialized controls rather than icon-only action triggers.
3535

3636
`Textarea` now completes the bounded legacy `.input.textarea` migration inventory: the provider startup-args textarea and the supervisor objective textarea both use the shared primitive from the public UI barrel while preserving legacy `input` / `textarea` compatibility classes and caller-owned hooks such as `settings-provider-args-input`. The primitive also supports optional auto-resize for later adopters. The `git-panel` commit message field is intentionally not counted on this row because it is not part of the `.input.textarea` family selected for this slice, and standalone `.textarea` utility usage remains outside this row.
3737

packages/web/src/features/mobile-select/components/mobile-select-sheet.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
import { type ReactNode, useId, useMemo, useState } from "react";
2-
import { EmptyState, IconButton } from "../../../components/ui";
3-
import { Sheet } from "../../../components/ui/sheet";
4-
import { Tag } from "../../../components/ui/tag";
2+
import { EmptyState, IconButton, Sheet, Tag } from "../../../components/ui";
53
import { useTranslation } from "../../../lib/i18n";
64
import { PageHeader } from "../../shared/components/page-header";
75

0 commit comments

Comments
 (0)