feat(webkit): component fixes batch — Link, TabView, Popover, MiniButton, Dialog, theme#785
Open
gab-az wants to merge 15 commits into
Open
feat(webkit): component fixes batch — Link, TabView, Popover, MiniButton, Dialog, theme#785gab-az wants to merge 15 commits into
gab-az wants to merge 15 commits into
Conversation
Extend Link's size union to 'small' | 'medium' | 'large' (was large/medium), mapping heights to 40/32/28px to match Button, and scale the hover ghost per size. Updates the spec, story, Code Connect enum, and tests.
…focus instead of trapping Move the panel + content into a single teleported <Transition> subtree inside Popover.Content (the Select/Tooltip pattern) so the whole panel scales on enter/leave; the root keeps state/placement/focus via ctx.panelRef. Stop auto-focusing the panel on open and stop closing on focusout — focus is contained across trigger+panel via document-level Tab handling, and only Esc or outside-click dismiss. Updates the spec, tests, and authoring baseline.
…fade affordance Let the tab list scroll horizontally on narrow viewports (hidden scrollbar, tabs keep intrinsic width) instead of overflowing or wrapping, and render an animated leading/trailing gradient fade on the scrollable side(s) to hint at off-screen tabs. Keep the active indicator aligned while scrolling. Adds a Scrollable story and covering tests.
Drive the hover-ghost height and the content gap off the root's data-size (large/medium) via group-data variants instead of a fixed h-8 / medium-only gap, so the ghost and spacing track the button size.
… pop Change popupScaleIn/Out to enter from and exit to scale(0.9) (was 0.95) so overlay open/close animations read as a clearer scale. Rebuilds the v4 globals.css/scss dist from the keyframes source.
…Tailwind v4 Tailwind v4 compiles scale-*/translate-* to the standalone `scale`/`translate` CSS properties, not the `transform` shorthand, so transitioning `transform` alone left the panel snapping open/closed. Transition `translate`, `scale`, and `opacity` instead, and deepen the desktop enter scale to 0.9 to match the popup keyframes.
Regenerated catalog metadata: size `small` variant note and Popover `dismissible` doc wording.
gab-az
force-pushed
the
worktree-component-fixes-batch
branch
from
July 22, 2026 21:06
2809a26 to
25b695d
Compare
…iew baseline - popover-content.vue: type the panel function-ref param as Element | ComponentPublicInstance | null (Vue's VNodeRef signature) and resolve via instanceof, matching the segmented-button/code-block idiom (fixes TS2322) - authoring-baseline.json: tab-view-list now uses animate-fade-in/out (prune its resolved entry); the other four sub-components' spec-wide Motion classes gained animate-fade-out
…t suite The horizontal-scroll affordance depends on Tailwind utilities applying and on real layout-driven overflow measurement. The webkit unit env runs no Tailwind and loads no theme CSS (src/test/setup.ts), so getComputedStyle(list).overflowX is always 'visible' and the list never overflows — the two tests could never pass here. That behavior is covered by the Scrollable story's visual-regression snapshots, which is where pixels/layout belong per .claude/rules/testing.md.
This batch changes those components' rendered output (MiniButton hover ghost / per-size gap, Link size union, TabView scrollable tab bar) and adds the TabView Scrollable story. Regenerated the Linux baselines on CI (Storybook Regenerate Baseline workflow) so the committed snapshots match, including the new Scrollable story that would otherwise fail with 'New snapshot was not written.'
HerbertJulio
previously approved these changes
Jul 23, 2026
robsongajunior
requested changes
Jul 23, 2026
- Popover: drop the explanatory comments flagged in review (panel function-ref, single-teleport-subtree, document-level Esc, Tab containment) — the code is self-describing. - Link spec: escape the pipes in the size and target union types so the Props table renders as one cell instead of duplicating 'large'; this also lets the spec-compliance table parser read the union correctly. Checksum recomputed.
robsongajunior
approved these changes
Jul 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A batch of component fixes and enhancements across
@aziontech/webkitand@aziontech/theme. (EmptyState + Table were split into #786.)smallsize, aligning its scale with Button.dismissibledoc wording updated.dismissibledoc.Notes
webkitminor (Link/TabView feat) +themepatch (fix). Commits are scoped per package; relies on a merge (non-squash) so semantic-release reads each scope. If squash-merged, split thethemecommit out or its release is missed./spec-validatefor any stale checksums.