WireKit v2.8.0
Minor release. One additive component prop plus accessibility, tooling, and documentation fixes — all backward-compatible.
Added
<x-wirekit::gains abrand> darkLogoprop for a mode-aware logo swap. SetdarkLogoalongsidelogoand the component renders a light/dark<img>pair that swaps automatically under the.darkclass — no more rendering two<x-wirekit::elements toggled by hand. It composes withbrand> mobileLogo(the compact mobile mark stays mode-neutral below the breakpoint; the light/dark swap applies to the desktop logo above it). OmittingdarkLogokeeps the previous single-logo behavior byte-for-byte.
Fixed
<x-wirekit::now forwards a callerrange-slider> aria-label/aria-describedbyto the sliders instead of a non-focusable wrapper. The dual-thumb slider spread its attribute bag onto the outer<div>, so a caller-supplied accessible name never reached the tworole="slider"thumbs (WCAG 4.1.2 / 1.3.1). The wrapper is now a labeledrole="group": the visiblelabelnames the group, each thumb's name embeds that context ("…minimum" / "…maximum"), and thehintplus any calleraria-describedbyare announced on the focusable thumbs.wirekit:verify(aliaswirekit:doctor) no longer mis-reads CSS comments in yourapp.css. A comment that merely mentioned an@importofwirekit.csscould trip a false "imported" pass, and a--font-wk-*example pasted in a comment above the real declaration could mask the token-alignment check. The command now strips CSS comments before scanning, so only live CSS is read.<x-wirekit::andreaction> <x-wirekit::now let a caller'sscroll-to-top> aria-labeloverride the component's default. Both hardcoded their defaultaria-labelbefore spreading the attribute bag, so a developer-suppliedaria-labelrendered as a duplicate the browser ignores (first wins). They now merge the default into the bag, so youraria-labeltakes precedence — and the sensible default still applies when you pass none.
Documentation
- New guidance for dark-mode
dark:utilities in your own markup on the integration page: if you write Tailwinddark:utilities yourself while loading WireKit via the@wirekitStyles<link>, add@custom-variant dark (&:where(.dark, .dark *))to yourapp.cssso they follow the.darkclass rather than the OSprefers-color-scheme. wirekit:doctor:a11ynow documents its scope — the contrast audit covers your Blade usage and--color-wk-*token overrides, not colors inside your own CSS custom classes.- The theming guide now warns that token overrides wrapped in
@layersilently lose to WireKit's unlayered defaults — keep--color-wk-*overrides in a plain:root {}block.