artifacts: demo scrollbar death, figure natural sizing + fullscreen, downloads, invert toggles (release polish 7)
- demo iframe: scrolling=no (the bridge auto-sizes; a scrollable iframe trapped the wheel) + content-box so the bridge height is the viewport - figures: svgNaturalWidth hug + center (w-fit max-w-full mx-auto), full-width fallback for viewBox-only svgs - fullscreen: MermaidOverlay figure mode (raw svg, white stage, invert carried); openFigure context; figureFocus rides the mermaid Esc layer - downloads: figure.svg + <slug>.html (raw pre-bridge), shared download.ts - invert: manual ContrastIcon toggle on both cards — invert(1) hue-rotate(180deg) on the white-bearing element, default off, no detection, no theme wiring (owner rulings 2026-10-07) 1433 tests green; live smoke passed (hug/center measured, filters verified, downloads fired, Esc closed; wheel-chaining structurally sound)
This commit is contained in:
@@ -160,7 +160,12 @@ describe("mermaid expand — the context seam", () => {
|
||||
// owner is chat.tsx — geometry covered by the tests above.
|
||||
const opened: string[] = [];
|
||||
const html = renderToStaticMarkup(
|
||||
<SessionMermaidContext.Provider value={{ openMermaid: (chart) => void opened.push(chart) }}>
|
||||
<SessionMermaidContext.Provider
|
||||
value={{
|
||||
openMermaid: (chart) => void opened.push(chart),
|
||||
openFigure: () => {},
|
||||
}}
|
||||
>
|
||||
<div />
|
||||
</SessionMermaidContext.Provider>,
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user