Concerns: pushword/admin, pushword/core
Each row of the page list now shows a single ⋯ menu instead of a row of Edit / Clone / Delete buttons, and page titles are no longer rendered in the link colour.
Affects sites that override @pwAdmin/page/index.html.twig or style .pw-page-actions > a / .pw-page-actions > form > button. Those selectors are gone; target .pw-page-actions .dropdown-menu .dropdown-item instead. A custom page-list action that posts through @pwAdmin/crud/action_post.html.twig must now also call ->renderAsForm(), or it renders through EasyAdmin’s token-less menu item and its CSRF check rejects the request.
“Hold publication” left the title cell for a sortable column of its own, between Title and Weight, and the list gained a “View” row action. Nothing to do.
Affects templates calling pw_page_holdable(). That Twig function is removed — it ignored its $host argument and only reported whether pushword/static-generator was installed. Test for the bundle directly, or drop the call.
Admin font sizes come from five custom properties — --pw-text-xs (12px), --pw-text-sm (14px), --pw-text-md (16px), --pw-text-lg (20px) and --pw-text-xl (28px) — instead of a mix of rem, px, em and % that computed to values like 11.375px and 15.2px.
Affects sites that style admin text or rely on <small> inside the admin. small and .small are now pinned to --pw-text-xs rather than Bootstrap’s 0.875em, so they no longer shrink relative to their container. Use the custom properties in your own admin CSS.
--pw-radius-sm|md|lg (4/8/12px) replace the eight radii the admin used to declare, and --pw-elevation-1|2|3 replace ten ad-hoc shadows written in three notations. Nothing to do — reuse the properties instead of hard-coding values in your own admin CSS.
The media index now defaults to the mosaic layout, and an explicit switch between List and Mosaic sticks for the rest of the session instead of resetting on the next visit.
Affects links and tests that opened the media list expecting the table. A URL without a view parameter now renders the mosaic; pass ?view=table to force the table layout. The licence-state badge, previously table-only, is rendered in both layouts.
title attributecomponent/image.html.twig now renders a title from the same media properties that feed the JSON-LD ImageObject, so every image with a credit — body images, galleries, sliders — names its author, with the Creative Commons deed appended when the licence is one.
Affects sites whose tests, CSS or scripts key on the rendered <img> markup. A media declaring no credit renders as before, and a caller passing its own title keeps it.