feat(ui): component redesign pass and fixes, release ui 0.8.87
Redesign - Shared field foundation rules (duplicated across 15 form components and emitted globally) are now identical everywhere, so later copies no longer silently override earlier redesigns. - Drawn checkbox and radio controls, white switch thumbs (the thumb was the text colour, a black blob in light mode), recessed field wells, keycap actions in Modal, Drawer, Popover, Toaster, Pagination, Stepper, DataTable. - Menus (Dropdown, ContextMenu, Popover, Select dropdown, Navbar panels) share one flat raised panel with neutral hover rows and mono section labels. - Alerts with an accent rail and icon chip; card headers without the grey band; accordion, collapse, list, list group, timeline, stats, metrics, chat, skeleton, avatar group, clipboard, splitter, section, sidebar, navbar and upload progress restyled. - Chart rebuilt: nice y-axis ticks, gridlines, rounded bars, line and area modes, hover tooltips, hidden series leave the scale. Fixes - Checkbox and radio labels toggle their input again (empty for="" broke it). - TimePicker kept every clicked time pressed; only the chosen hour and minute are pressed now, and nothing is pressed before a value exists. - ColorPicker hex readout now follows the picked colour. - Disabled FileInput no longer shows the native file-input text. - Date and time panels float instead of pushing content. - ContextMenu opened at the pointer closes on scroll. - Drawer left/top/bottom placements slide from their own edge again. - Image-only Card no longer renders an empty body strip. - Timeline supports item.time, current/upcoming states, sizes and compact/alternate variants; showcase demos use distinct variants. - ChatBubble: delivery receipts (sending/sent/delivered/read/failed/error) and meta aligned to its bubble. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
5eae6f3b3c
commit
1bed8e4b74
93 files changed
+4439
-1915
No files matched your search
@@ -1272,7 +1272,7 @@ export const componentProfiles = {
|
||||
standard(
|
||||
"Standard content section",
|
||||
"Create predictable vertical rhythm around a page section.",
|
||||
{ id: "standard-section", spacing: "lg", maxWidth: "xl" },
|
||||
{ id: "standard-section", spacing: "lg", maxWidth: "xl", variant: "grid" },
|
||||
{ default: '<div class="showcase-content-block">Standard section content</div>' },
|
||||
),
|
||||
compact(
|
||||
@@ -1290,7 +1290,7 @@ export const componentProfiles = {
|
||||
maxWidth: "full",
|
||||
borderTop: true,
|
||||
borderBottom: true,
|
||||
variant: "raised",
|
||||
variant: "solid",
|
||||
},
|
||||
{ default: '<div class="showcase-content-block">Full-width public page section</div>' },
|
||||
),
|
||||
@@ -1298,7 +1298,7 @@ export const componentProfiles = {
|
||||
options: {
|
||||
spacing: ["none", "sm", "md", "lg", "xl"],
|
||||
maxWidth: ["compact", "lg", "xl", "wide", "2xl", "full"],
|
||||
variant: ["default", "soft", "raised", "transparent"],
|
||||
variant: ["default", "soft", "raised", "tinted", "solid", "panel", "grid"],
|
||||
},
|
||||
},
|
||||
|
||||
@@ -2093,6 +2093,24 @@ export const componentProfiles = {
|
||||
'<div class="showcase-overlay-content showcase-overlay-content--tall"><p>Long scrollable content</p><p>Filters, navigation, details, and forms can be composed here.</p></div>',
|
||||
},
|
||||
),
|
||||
compact(
|
||||
"Top notice drawer",
|
||||
"Slide a panel down from the top edge for announcements, search, or quick settings.",
|
||||
{
|
||||
open: false,
|
||||
defaultOpen: false,
|
||||
triggerLabel: "Open top drawer",
|
||||
triggerIcon: "icon-[lucide--panel-top-open]",
|
||||
title: "Scheduled maintenance",
|
||||
description: "The workspace will be read-only on Sunday from 02:00 to 03:00 UTC.",
|
||||
placement: "top",
|
||||
size: "sm",
|
||||
},
|
||||
{
|
||||
default:
|
||||
'<div class="showcase-overlay-content"><p>Save your work before the window starts.</p></div>',
|
||||
},
|
||||
),
|
||||
],
|
||||
playground: {
|
||||
open: false,
|
||||
@@ -2822,7 +2840,7 @@ export const componentProfiles = {
|
||||
{ title: "Document uploaded", time: "3 days ago" },
|
||||
],
|
||||
size: "sm",
|
||||
variant: "soft",
|
||||
variant: "compact",
|
||||
},
|
||||
),
|
||||
advanced(
|
||||
@@ -2851,11 +2869,11 @@ export const componentProfiles = {
|
||||
},
|
||||
],
|
||||
size: "lg",
|
||||
variant: "raised",
|
||||
variant: "alternate",
|
||||
},
|
||||
),
|
||||
],
|
||||
options: { size: ["sm", "default", "lg"], variant: ["default", "soft", "raised", "outline"] },
|
||||
options: { size: ["sm", "default", "lg"], variant: ["default", "soft", "raised", "outline", "minimal", "compact", "alternate"] },
|
||||
},
|
||||
|
||||
Typography: {
|
||||
|
||||
Reference in new issue
Block a user