Changelog
All notable changes to @aortl/admin-css and @aortl/admin-react are documented here. The two packages share a version and release together; each entry is tagged (css), (react), or (both) to show which package a consumer needs to bump.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
0.20.1 - 2026-07-30
Fixed
SelectandTooltippopups no longer paint behind host chrome. Base UI positions them in aposition: fixedwrapper withz-index: auto, so an<AdminRoot>embedded in a page whose own elements carry a positivez-indexhid its own dropdowns. Both positioners now carry a.popup-layerclass:z-index: var(--z-popup, 1000). Declare--z-popupon.admin-rootor any ancestor to slot popups into a host’s own stacking scale. (both)
0.20.0 - 2026-07-06
Added
Timelinehorizontal variant —.timeline-horizontal(Reacthorizontalprop) lays items out as equal-width columns with the connector running along the indicator row. Composes with the numbered variant for a step tracker. (both)
0.19.1 - 2026-07-02
Changed
- Copyable
PropertyListvalue cells copy on click anywhere in the cell, not only on the copy button (which stays as the keyboard and screen-reader path). Selecting text or clicking an interactive child doesn’t trigger a copy; the cell shows a pointer cursor. (both)
0.19.0 - 2026-07-02
Added
ToggleButton— a two-state button styled likeButton(same variants, sizes, icons,hotkey), wrapping Base UI Toggle. CSS-side there is no new class: any.btnwith anaria-pressedattribute renders a leading mini-switch indicator, andaria-pressed="true"slides it on and adds a selected wash — so vanilla toggles and.btn-groupcomposition work out of the box. (both)
Fixed
- Dialog body no longer clips its content in Safari.
.dialog-body(and the form-dialog wrapper) usedflex: 1 1 0%; Safari collapses aflex-basis: 0item that is itself anoverflowscroll container to ~0 content height, so even short bodies were cut off behind a scrollbar. Switched toflex: 1 1 auto— content still shrinks and scrolls when tall. (css)
0.18.5 - 2026-06-30
Fixed
- Global hotkey handling no longer throws on synthetic
keydownevents that omitkey(autofill, password managers, some IMEs);normalizeEventnow treats akey-less event as no chord. (react)
0.18.4 - 2026-06-29
Added
Tabsprimaryprop (.tabs-primary) fills the active segment of a boxed segmented control with the primary color. (both).btn-groupmembers can be wrapped in.indicatorto float a badge or status dot at a button’s corner; the seam, rounding, and full-width/vertical sizing logic now drills through the wrapper. (css)
0.18.3 - 2026-06-29
Added
Tabs.Tabiconprop (leading glyph viarenderIcon); tab SVG icons are pinned to the label size (.tabs .tab > svg), so non-Tabler sets (e.g. Heroicons) render uniformly. (both)Tabswrapprop (.tabs-wrap) lets the list wrap onto new rows instead of overflowing, keeping each tab’s label on one line. (both)
0.18.2 - 2026-06-29
Added
Dialogsize="auto"(.dialog-auto) shrinks the modal to fit its content, andsize="metabase"(.dialog-metabase) widens it to 1138px with 44px gutters so a full-width embedded iframe lands at 1048px. (both)
0.18.1 - 2026-06-25
Fixed
- Scoped bundle (
admin.scoped.css) now ships with native CSS nesting pre-flattened. The nested form silently broke once a consumer’s build pipeline downleveled it — LightningCSS mis-lowers a nested&inside@scopeto a bare:scope, rewriting._ao-btn:hoverto:scope:hoverand killing every:hover/:focus/state rule. (both)
0.18.0 - 2026-06-16
Added
classNamesprop for per-slot class overrides on shorthand components — reach inner elements the shorthand props render (Card,StatCard,Alert,Item,Field,Dialog,Drawer,Timeline.Item,PropertyList,Input,NumberInput,Pagination,Sidebar.Item/SubItem/Collapsible/CollapseToggle,Tooltip). Exports aSlotClassestype helper. (react)Alertdismiss button (onDismiss/.alert-dismiss). (both)StatCardtrendslot with a directional caret and direction-independent intent color (.stat-card-trend). (both)AvatarGroupmaxoverflow with a+Ntile (.avatar-more). (both)Indicatormaxclamp for numeric labels (e.g.99+). (react)Tabledensity (compact), an empty-state row (Table.Empty/.table-empty), and a pinned first column (pinCol/.table-pin-col). (both)Menucheckbox/radio items (checked/.menu-item[aria-checked]+.menu-item-indicator). (both)Inputclearablebutton and aPasswordInputreveal toggle (.input-action). (both)ItemandItemGroupcomponents /.item— compact list rows with media, content, and actions. (both)Timelinecomponent /.timeline— vertical event rail with a numbered steps variant. (both)Drawercomponent /.drawer— edge-anchored panel sharing the<dialog>machinery. (both)NumberInputcomponent /.number-input— numeric field with steppers over Base UI NumberField. (both)
0.17.0 - 2026-06-15
Added
Separatorcomponent /.separatorclass — a styled<hr>with a vertical modifier. (both)AvatarandAvatarGroup/.avatar— image with a no-JS initials fallback, circle/square,sm/md/lg, plus.indicatorauto-offsets for avatar anchors. (both)- Badge soft tinted variants (
soft/.badge-soft) and a dismissible remove button (onRemove,removeLabel/.badge-remove). (both) - Alert trailing action slot (
action/Alert.Action/.alert-action). (both) - In-field input icons —
icon/iconTrailingonInput,.input-iconwrapper. (both) - Card media slot (
media/Card.Media/.card-media) and scroll region (scrollonCard.Container/.card-scroll). (both) - BrandTile
lgsize, soft tint variants, and bordered image tiles. (both)
Changed
.linkinside an.alertinherits the variant’s content color instead of the link blue. (css)tfootrows are styled by default — semibold cells with a strong divider above the first footer row (previously unstyled). (css)
0.16.2 - 2026-06-11
- Add a changelog following the Keep a Changelog format.
0.16.1 - 2026-06-03
Fixed
- Break long unbreakable tokens instead of overflowing flex/grid tracks. (css)
0.16.0 - 2026-06-03
Added
Prosecomponent /.proseclass for styling rendered markdown and HTML. (both)
Changed
- Rename the default
Progressand chart variant fromprimarytoinfo. (both)
Fixed
- Block activation and hotkeys on disabled
Menuitems. (both) - Style native vanilla checkbox and radio inputs to match the React components. (css)
- Let the
Dialogbody scroll on tall content. (css) - Merge a consumer-supplied
Dialogref so open/close survives. (react) - Drop
overflow-autoonCardso popovers and focus rings aren’t clipped. (css)
0.15.1 - 2026-06-02
Added
- Sliding animation on
Tabs. (both)
0.15.0 - 2026-06-02
Changed
- Make
primarya high-contrast neutral and move blue toinfo. (both) - Use solid color fills for
AlertandBadgestatus variants. (both)