Problem/Motivation
The header tools zone is only a free slot (tools_links). A site placing a menu block in the header_tools_links region gets core menu markup instead of the documented structure: <ul class="fr-btns-group"> of buttons, "limité à 3 accès rapides maximum".
Upstream models this zone as tools.links.buttons rendered with the button template, then the translate selector, then free content (toolsContent) — our slot already covers those last two.
Proposed resolution
- New header prop quick_access_links (ui-patterns://links) rendered by composing the button_group and button components:
<ul class="fr-btns-group"> for several links, <div class="fr-btns-group"> for a single one, same as upstream header-tools.ejs. Rendered before the tools_links slot, so translate and custom content keep the documented order.
- New theme setting dsfr_header_tools selecting a menu, same mechanism as the dsfr_footer_* settings, injected through preprocess and page.html.twig.
- Stories show both uses: the prop (preview) and the free slot composition with icons (full).
The tools_links slot is untouched, existing sites keep their markup.
Comments
Comment #2
just_like_good_vibesComment #5
just_like_good_vibes