Skip to content

v0.18.0

Choose a tag to compare

@pukhrajp pukhrajp released this 10 Jun 06:00
· 15 commits to main since this release
0c2ef10

@tinybigui/react 0.18.0

Search — MD3 expressive variants-vs-states architecture

Aligns the Search component with the project-wide Variants-vs-States architecture used by Button and Switch:

  • Rebuilds Search.variants.ts into per-slot CVAs (root, stateLayer, focusRing, leadingIcon, trailingAction, avatar, input for the bar; container, header, backButton, clearButton, input, divider, content for the view). Removes interaction-state CVA variants — all states now driven by data-* attributes via group-data-[x]/search selectors.
  • Refactors SearchBar.tsx to use React Aria useHover + useFocusRing({ within: true }) + getInteractionDataAttributes, with a sibling focus-ring span matching the Button/Switch pattern. The M3 Expressive pane-margin transition (24dp → 12dp on focus) uses the Expressive fast spatial spring token, guarded by useReducedMotion.
  • Refactors SearchView.tsx to apply per-slot CVAs directly instead of descendant-selector blobs. Enter motion is layout-aware: docked → scale-in, fullscreen → fade-in.
  • Replaces literal back/clear glyphs with inline MD3 SVG icons (24×24, currentColor, aria-hidden).
  • Exports search variant CVAs from component and package index.

Full changelog: CHANGELOG.md