Skip to content

v9.0.0

Choose a tag to compare

@github-actions github-actions released this 12 Sep 05:52
· 144 commits to main since this release
7ffae34

@repo/ui v9.0.0 – First major release after 8.x, introducing breaking API changes, new shadcn‑style props, and several core clean‑ups.

Breaking API changes

  • Modal & Toast
    • type prop removed; use status="info" | "success" | "error" | "warning".
    • <Modal type="info" /> → <Modal status="info" />; Modal.confirm() remains unchanged.
    • <Toast type="error" /> → <Toast status="error" />.
  • Deprecated type aliases & preset colour spellings
    • Removed type aliases (semantic‑state axis).
    • Updated colour spellings on Button and Tag:
      • magenta → fuchsia
      • geekblue → indigo
      • gold → amber
      • volcano removed (use custom property, e.g. style={{ '--btn-bg': 'var(--color-orange-600)' }}).
  • Tag
    • Root data-slot changed from badge to tag; update CSS selectors accordingly.
    • Rebuilt on shadcn badge primitive; badge slot freed.

Feature updates

  • Button
    • Accepts shadcn variant (default, destructive, outline, secondary, ghost) and size (xs, sm, default, lg, icon*) words as sugar, mapping to existing color/variant axes.
    • variant="link" remains unchanged.
    • Emits data-variant and data-size attributes.
    • Wraps core/button primitive; no longer uses absorbed copy of its cva base.
    • asChild now works correctly after adding missing Slottable marker.
  • Tag
    • Keeps same element, classes, and custom properties (--tag-bg, --tag-fg, --tag-tint).
    • core/badge synced with shadcn new-york-v4 registry (added rounded-full, border-transparent, ghost, link variants, and data-variant).
    • SSR smoke test reset‑slot registry now empty; [data-slot='tag'] keyed by name in globals.css.

Fixes & clean‑ups

  • Fixed Button asChild error (Slot failed to slot onto its children).
  • Removed INTERACTIVE_CHASSIS from Tag; Button now uses the core primitive.
  • Deleted lib/chassis.ts (no consumers left).
  • Updated core membership rules to include single‑element primitives that stay verbatim.

All changes are fully backward‑compatible in terms of rendered output, but the public API surface has been updated as noted.

What's Changed

  • refactor!: rebuild Tag on shadcn badge and accept shadcn vocabulary on Button by @pjb0811 in #364
  • refactor!: remove deprecated type aliases and pre-8.0 preset colour spellings by @pjb0811 in #366
  • chore: version packages by @github-actions[bot] in #365

Full Changelog: v8.1.0...v9.0.0