Skip to content

feat(design-system): add Checkbox, Radio, NumberInput, Textarea, Alert, Avatar, Empty, and Disclosure - #2663

Merged
kev1n77 merged 24 commits into
GCWing:1.0.0-explorefrom
kev1n77:fmy/ui-sys
Aug 29, 2026
Merged

feat(design-system): add Checkbox, Radio, NumberInput, Textarea, Alert, Avatar, Empty, and Disclosure#2663
kev1n77 merged 24 commits into
GCWing:1.0.0-explorefrom
kev1n77:fmy/ui-sys

Conversation

@kev1n77

@kev1n77 kev1n77 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Expand @bitfun/ui with reference-backed primitives and patterns, including Disclosure, Checkbox, NumberInput, Textarea, Alert, Avatar, Empty, and Radio.
  • Add a searchable Patterns area and richer component states/examples to Design Lab.
  • Migrate Web UI settings, navigation, search, dialogs, browser controls, remote/peer-device views, Canvas controls, and profile editing to the new design-system components.
  • Replace duplicated native form implementations with shared Input, Select, SearchField, Textarea, Checkbox, Radio, NumberInput, Button, IconButton, ActionItem, and Empty primitives.
  • Remove superseded legacy Alert, Avatar, Checkbox, Empty, IconButton, NumberInput, Tabs, Tag, and Textarea implementations.
  • Keep a narrow IconButton compatibility adapter for the remaining FlowChat call sites while using the new design-system implementation underneath.

Fixes #

Type and Areas

Type:

UI/UX / feature / refactor / test

Areas:

Design system, Design Lab, web UI, settings, navigation, peer device, remote connection, Canvas runtime

Motivation / Impact

The Web UI previously mixed the new design system with legacy component-library controls and feature-local native implementations. This caused duplicated styling, inconsistent states and accessibility behavior, and made future visual-system changes harder to apply consistently.

This PR consolidates equivalent controls onto @bitfun/ui, expands the shared component contracts needed by production surfaces, and documents them in Design Lab.

Users will see more consistent form controls, navigation actions, search fields, status feedback, empty states, and loading/editing interactions. Product logic, persisted data, and remote protocols are unchanged.

Verification

  • pnpm run design-system:check
    • Passed all design-system package builds and contract checks.
    • Passed 155 @bitfun/ui tests.
    • Passed 43 Design Lab tests and its TypeScript check.
  • pnpm run check:web
    • Passed the Web UI TypeScript check.
    • Passed appearance contract auditing.
    • Passed Web UI, mobile, installer, and CLI theme color audits.
    • Passed the theme visual contract.

Reviewer Notes

  • The main FlowChat conversation input/composer remains outside the migration scope.
  • Advanced legacy Select usages remain where searchable, multi-select, or custom-rendered behavior has no equivalent in the current native Select contract.
  • Specialized Markdown, editor, loading, window-control, transition, and file-input implementations remain domain-owned.
  • The legacy IconButton component directory and styling were removed. Two remaining FlowChat consumers use a compatibility adapter backed by @bitfun/ui.
  • Appearance auditing still reports the existing 14 non-blocking shared-style ownership warnings.
  • This is a UI-only change. Peer-device UI was type- and contract-checked, but live peer-device, remote-workspace, remote-control, and detached-dispatch scenarios were not exercised because their protocols and runtime behavior are unchanged.
  • The branch was rebased onto upstream/1.0.0-explore; reviewers should use the rebased commit history.

Checklist

  • This PR is focused and does not include secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification is recorded above, or skipped checks are explained.
  • User-facing strings, docs, and locales are updated where applicable.

@kev1n77
kev1n77 merged commit 1812876 into GCWing:1.0.0-explore Aug 29, 2026
2 checks passed
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