Patch Changes
-
5288355: chore(DST-1309): move the style-prop class maps into
@marigold/componentsThe class names behind props such as
weight,align,verticalAlign,ratioandcursorused to be defined only in@marigold/system. Tailwind generated CSS for them only when it scanned that package, so styling quietly depended on@marigold/systembeing installed directly. The 12 maps (alignment,textAlign,verticalAlign,placeItems,aspect,fontWeight,textSize,textStyle,textWrap,whiteSpace,lineHeight,cursorStyle) now live in@marigold/components, next to the components that use them.Component props and the classes they render are unchanged. The
*Proptypes stay exported from@marigold/system.fontWeightandtextSizestay exported too, because apps import them directly, but they are deprecated and will be removed in the next major. The other 10 maps are no longer exported. They were marked internal, so no consumer code should depend on them. -
fa1aa20: Fix auto-collapsing
Breadcrumbsnot collapsing when all but one crumb fits.At widths where auto-collapse found room for every crumb except one, it asked for as many visible slots as there are crumbs. That reads as "nothing to collapse", so the full trail rendered and the current crumb was truncated to fit. Auto-collapse now reports "everything fits" separately from a slot count, so the collapse it decided on actually happens and the current crumb stays readable. Surfaced by
TopNavigationat the 320px minimum supported width.One visible change beyond that: a two crumb trail too narrow for both crumbs now collapses to
… > Event Detailswhere it used to renderHome > Event Det…. Trails of three crumbs or more are unaffected. -
164a8cd: fix(DST-1813): stop the Table's ActionBar from leaving an empty strip below it
While rows were selected, the Table made room for its ActionBar twice: the bar's own slot below the last row and, on top of that, a bottom padding of the same height. The panel around the table grew by about 128px, and half of that was empty space below the bar. The padding is gone. The Table now keeps room for the bar and an 8px gap only, and that room slides open and closed, so the content after the table moves smoothly instead of jumping.
The bar still never covers the rows or whatever follows the table, such as a pagination, and it still pins to the bottom of the screen or of a
Scrollablewhile the table scrolls past. Keyboard focus now also keeps the focused row clear of the pinned bar on a scrolling page, where the previousscroll-padding-bottomon the table had no effect.The ActionBar and ListView docs describe the new behaviour, and the ListView bulk actions example drops its own bottom padding.
The slide is themeable through the new
actionBarSpacerslot onTable.theme-ruisets a 200ms height transition, and themes without the slot fall back to the room snapping into place. -
84c7a60: fix(Table): center the selection checkbox and drag handle on the first line of text
With
alignY="top", the row's selection checkbox and drag handle sat 2px above the text in the neighbouring cells. The 16px control shared the cell's top edge with a 20px line of text, so their centers did not match.bottomwas off by the same amount in the other direction, andbaselineby 3px.Both controls now sit in a box that is exactly one line of the cell's text tall, so every
alignYvalue centers them on the neighbouring text's line, at every table size. Row heights are unchanged, except withbaseline, where the misaligned control used to push the row 1px taller. -
43b619c: fix(DSTSUP-282): show the Sidebar toggle chevron and the Accordion, Panel and Table carets in Safari
Both icons drew their path only through the CSS
dproperty, which Safari does not support, so the arrow was missing. The path now also carries adattribute. Browsers that support CSSdstill animate between states. -
c60cb28: fix(DSTSUP-287): show Dialog dividers only where the content is cut off
The divider under the Dialog title and the divider above
Dialog.Actionsnow follow the same rule: each one shows only where the content is cut off by scrolling. Before, the title divider faded in once the content scrolled, but the actions divider was always shown, so a dialog that fit its content had a line above the actions and none under the title. Content that fits now shows no dividers. A fullscreen dialog always shows both, because it often scrolls an inner region, such as a table, which the dividers cannot detect. In browsers without scroll-driven animations (Firefox today), both dividers are always shown.A dialog with only a title and actions has no divider, a
ConfirmationDialogwithoutchildrenno longer leaves a blank band, and a dialog without a title has no divider at its top edge. A bareDialog.Titleand aDialog.Headernow space the title the same way.Both dividers are scroll-revealed seams again: the title keeps
ui-scroll-seam-headerandDialog.Actionsnow usesui-scroll-seam-footer, like the Sidebar footer.ui-scroll-seam-headerhonors--seam-fallback-colorlike the footer seam. The header, content and actions of Dialog, Drawer and Tray carry adata-slotattribute (header,content,actions). -
e08584c: fix(Menu): make the trigger match ghost buttons inside button containers
A labelled
Menuin anActionBardid not look or hover like theButtons next to it. Two things were off.The trigger's
ghostvariant hovered with the opaqueui-state-hover, a light fill with dark text, while a ghostButtonuses the translucentui-state-hover-ghost. On the dark ActionBar the trigger lit up as a light block. It now usesui-state-hover-ghostas well.The trigger also ignored the context that button containers pass to their buttons, so it kept the default look unless
variant="ghost"was set by hand. It now takes that context likeButtonandActionMenudo: theghostvariant, the size, the disabled state and the container's placement class reach it insideActionBar,ButtonGroup,Panel.Header,Accordionheader actions,SelectListandListView. Avariantorsizeset on theMenustill wins. The trigger only has adefaultand aghostlook, so any other variant a container passes down, such as thesecondaryaButtonGroupuses, keeps the default look. -
545a06b: Fix auto-collapsing
Breadcrumbsshrinking to… > current pagealthough the full trail fits.Auto-collapse measured each crumb at the surrounding font size instead of the trail's own, so crumbs read about 10% too wide at the
smallanddefaultsizes. In a slot sized by its content, such asTopNavigation.Start, each collapse also made the slot narrower, so the trail kept collapsing and never expanded again. Crumbs are now measured at the size they render, and the slot keeps room for the full trail, so it shows every crumb that fits and expands again when space comes back. -
b3d5ae0: fix(DSTSUP-293): keep long Dialog and Drawer titles clear of the close button
With
closeButton, the header now reserves the close button's width plus a gap on its end side, so a long title wraps before the button instead of running under it. Headers without a close button keep their even padding. -
3f4df0f: Development warnings no longer repeat on every render.
Cardwarns about a missing accessible name once per card, and no longer warns for cards hidden from assistive technology (aria-hiddenorinerton the card or an ancestor), cards labelled witharia-labelledbyor cards with an overriddenrole. The message no longer calls the card'sarticlea landmark.Dialog,CloseButton,Dialog.Description,Drawer.Description,Tray.DescriptionandTabswarn once per instance.OverlayContainerProviderwarns once per missing container id, andSidebaronce per duplicatehref.
-
Updated dependencies [5288355]
-
Updated dependencies [164a8cd]
- @marigold/system@18.3.1