Skip to content

feat(authz-ui): align KPI tiles with dashboard style across policy screens#17282

Open
podlesrafal wants to merge 4 commits into
masterfrom
feat/authz-ui-tiles-consistency
Open

feat(authz-ui): align KPI tiles with dashboard style across policy screens#17282
podlesrafal wants to merge 4 commits into
masterfrom
feat/authz-ui-tiles-consistency

Conversation

@podlesrafal
Copy link
Copy Markdown
Contributor

@podlesrafal podlesrafal commented Jun 1, 2026

Issue

No associated Jira ticket — small UI consistency follow-up.

Description

Unifies the KPI tiles across the Authorization module so every screen matches the Dashboard look.

  • KpiTile gains an optional icon badge (Icon + iconClassName) rendered as a tinted rounded square, with a larger value and label — same anatomy as the Dashboard cards.
  • Entities, Actions, Schema summary, and the policy-management screens (MCPs / AI Models / APIs / Custom Policies) now use the Dashboard's auto-fit grid (repeat(auto-fit, minmax(240px, 1fr))) instead of grid-cols-2 md:grid-cols-4, so metric tiles render in a single row.
  • Schema's summary block switches from outline badges to KpiTiles for consistency.

No behavioural changes — purely presentational.

Additional context

image
  • tsc --noEmit and eslint both pass.
  • Verified visually on the standalone dev harness: tiles render in one row and share the Dashboard styling.

@podlesrafal podlesrafal requested a review from a team as a code owner June 1, 2026 10:31
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request enhances the KpiTile component by adding support for optional icons and custom icon styling, alongside layout improvements. These updates are applied across several pages (ServicePolicyPage, EntitiesPage, and SchemaPage), transitioning them to a responsive auto-fit grid layout. Feedback points out that ActionsPage.tsx was missed during the grid layout update, and suggests applying the same responsive grid styling to its KpiTile container for consistency.

<Card className="p-4" aria-label={label}>
{loading ? <Skeleton className="h-8 w-12" /> : <div className={cn('text-2xl', TONE_CLASS[tone])}>{value}</div>}
<p className="text-xs text-muted-foreground">{label}</p>
<Card className="flex flex-col gap-3 p-5" aria-label={label}>
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is ti really a card here or should we check if there is something more relevant in the observability framework for this kind of thing ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dont see any other better options.

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Jun 1, 2026

@podlesrafal podlesrafal force-pushed the feat/authz-ui-tiles-consistency branch from a7a87b5 to 245e375 Compare June 1, 2026 12:58
…reens

Enrich KpiTile with an optional icon badge and adopt the dashboard's
auto-fit grid so Entities, Actions, Schema, and policy-management
screens render their metrics in a single row with a consistent look.
Apply the same dashboard-style auto-fit grid to the Actions page so its
metrics container matches the other policy screens.
Swap the inline gridTemplateColumns auto-fit style for the safelisted
grid-cols-4 Tailwind utility across the KPI tile rows. The module is a
Tier 1 graphene-core consumer with no Tailwind pipeline, so arbitrary
auto-fit values cannot be generated; grid-cols-4 is guaranteed by the
graphene-core safelist.
@podlesrafal podlesrafal force-pushed the feat/authz-ui-tiles-consistency branch from 5484564 to 67f9e69 Compare June 1, 2026 14:41
@podlesrafal podlesrafal requested a review from Okhelifi June 1, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants