admin: ui polish pass, thirty findings from the emil audit
selected states stop changing font weight, buttons gain a pressed scale and scoped 120ms transitions with a reduced-motion override, every loading and empty state reserves its height, charts measure before first paint, hit targets rise to the 44px enhanced target where layout permits, long domains clamp to two lines on an unpadded inner span, chips and name cells truncate, tabular figures on counts and time columns, a z-index layer scale replaces magic numbers and fixes the dialog-over-confirm tie, history's empty state gains a clear-filters action, page headings balance, font smoothing and color-scheme land on the html reset.
This commit is contained in:
@@ -58,6 +58,9 @@ export interface RouterContext {
|
||||
|
||||
const styles = stylex.create({
|
||||
pending: {
|
||||
// Holds the page open while the route's chunk lands, so a navigation does
|
||||
// not collapse the main column to one line and scroll the shell.
|
||||
minHeight: "24rem",
|
||||
padding: "2rem",
|
||||
textAlign: "center",
|
||||
color: colors.textMuted,
|
||||
@@ -399,7 +402,28 @@ const systemRoute = createRoute({
|
||||
component: lazyRouteComponent(() => import("@/features/configuration/SystemPage")),
|
||||
});
|
||||
|
||||
// PROTO-OVERVIEW fence start (throwaway — delete with admin/src/proto/)
|
||||
// A dev-only design-exploration route: four full-page Overview variants behind a
|
||||
// floating picker. It hangs off the root rather than the shell, so a variant is
|
||||
// judged as a page and not as the nav around it. `import.meta.env.DEV` is a
|
||||
// literal `false` in a production build, so the array folds to empty and the
|
||||
// dynamic import below is dead code Rollup drops — the proto bytes never reach
|
||||
// dist.
|
||||
const protoRoutes = import.meta.env.DEV
|
||||
? [
|
||||
createRoute({
|
||||
getParentRoute: () => rootRoute,
|
||||
path: "/proto/overview",
|
||||
// No `validateSearch`: the picker owns `?v=` with history.replaceState,
|
||||
// and this route never navigates, so the parameter survives untouched.
|
||||
component: lazyRouteComponent(() => import("@/proto/ProtoOverview")),
|
||||
}),
|
||||
]
|
||||
: [];
|
||||
// PROTO-OVERVIEW fence end
|
||||
|
||||
const routeTree = rootRoute.addChildren([
|
||||
...protoRoutes,
|
||||
loginRoute,
|
||||
shellRoute.addChildren([
|
||||
indexRoute,
|
||||
|
||||
Reference in New Issue
Block a user