shadcn.io is not affiliated with official shadcn/ui
Access Control Changes Monitoring Block for Svelte
Twelve role changes grouped by day, each drawn on a four-rung ladder from Viewer to Owner with an up or down arrow, the approver or no approval on record, an All / Escalations / Without approval filter and a Reviewed checkbox with a running count.
Installation
Overview
Review who was given more access, and who approved it, with this change feed for Svelte with Ark UI. It is Ladderkey, an access-governance tool. In a hairline frame with a plus mark on each corner, twelve role changes since 10 Oct are grouped under sticky day headings. Each row names who made the change and whom it touched, draws the four rungs (Viewer, Editor, Admin, Owner) as short bars with the old rung hollow and the new one solid, says the move in words with an up arrow for an escalation or a down arrow for a drop, and gives the time and the approver or "No approval on record" in heavier type. A toggle group narrows the feed to All, Escalations or Without approval, each with its count; a Reviewed checkbox per row feeds the "5 of 12 reviewed" status. The feed is a fixed-height region, so filtering never moves the panel. Guides draw the frame and its bands; the entrance is CSS only.
FAQ
How do I load my own changes?
Edit CHANGES: each is built with change(id, day, time, by, who, from, to, approver), where the rungs are indexes into RUNGS and an empty approver means no approval on record. Escalations, drops, the filter counts and the header sentence are worked out from the rung numbers and the approvers.
What does the ladder show?
The four bars are the four roles in order of power. The hollow bar is where the person was, the solid bar where they are now; the words and the arrow say the same thing, so the drawing is decoration for sighted readers. On a phone the bars hide and the arrow and the two role names stay.
What does Reviewed do?
It is a local tick per change and the status counts them. Ticks stay in the tab; nothing is saved. In your app write each tick to your review log with the reviewer and the time.