Skip to content

feat(messages): split MessagesView, move search/actions to nav, reuse @antfu/design#135

Merged
antfu merged 4 commits into
mainfrom
refactor/messages-view-components
Jul 24, 2026
Merged

feat(messages): split MessagesView, move search/actions to nav, reuse @antfu/design#135
antfu merged 4 commits into
mainfrom
refactor/messages-view-components

Conversation

@antfubot

Copy link
Copy Markdown
Collaborator

What

Reorganizes the messages plugin's client surface without changing behavior.

  • Breaks MessagesView.vue apart. The 464-line monolith becomes a thin orchestrator; filter/search/sort state moves into a useMessageFilters composable (a shared reactive façade), and the view splits into MessageFilterBar, MessageList, MessageDetail, plus a nav-bar MessageToolbarActions.
  • Moves search + actions into the nav bar. App.vue now owns the filter state and renders the search field and the sort / reset / dismiss-filtered / dismiss-all actions in the shared LayoutToolbar; the body holds only the filter bar, list, and detail.
  • Reuses more @antfu/design components: FormSearchField, ActionButton / ActionIconButton, DisplayBadge, FeedbackEmptyState, FeedbackSpinner, and LayoutSeparator (adds the floating-vue dep + base CSS for tooltips, mirroring the inspect plugin).
  • Removes HashBadge in favor of DisplayBadge (which hashes its own dark-mode-aware color), dropping the bespoke hash helper.
  • Removes src/types.ts, a pure re-export of @devframes/hub/types. Internal imports point at the hub directly; the public type re-exports on the main and /client entries are preserved. The redundant ./types subpath export is dropped from package.json, alias.ts, tsconfig.base.json, tsdown.config.ts, and its API snapshot.

Verification

pnpm build, pnpm typecheck, pnpm lint, and the messages plugin's vitest suite all pass. E2E skipped.

Note: tests/exports.test.ts shows pre-existing repo-wide tsnapi snapshot drift (the committed snapshots use the old export { X } format that installed tsnapi@1.2.0 no longer emits; untouched packages like plugins/terminals fail identically). Left those snapshots untouched to avoid unrelated churn; only the genuinely obsolete types snapshot was removed.

This PR was created with the help of an agent.

@netlify

netlify Bot commented Jul 24, 2026

Copy link
Copy Markdown

Deploy Preview for devfra ready!

Name Link
🔨 Latest commit f68ef3f
🔍 Latest deploy log https://app.netlify.com/projects/devfra/deploys/6a631a9af9e2240008c17761
😎 Deploy Preview https://deploy-preview-135--devfra.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@antfu antfu changed the title refactor(messages): split MessagesView, move search/actions to nav, reuse @antfu/design feat(messages): split MessagesView, move search/actions to nav, reuse @antfu/design Jul 24, 2026
@antfu
antfu merged commit 478fc0f into main Jul 24, 2026
6 of 12 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.

2 participants