Skip to content Version 1.3.0
Added
- Property Table component suite:
<PropertyTable>, <Property>, <PropertyGroup>, <Expandable>.
- Tooltip component suite:
<Tooltip>, <Glossary>, <Term>.
- Keyboard component:
<Kbd>.
- Fullscreen Mermaid overlay: scale animation, dot grid background, pan momentum on drag release, toast notifications on copy.
@media (prefers-contrast: more): heavier borders, system colors for focus rings.
@media (prefers-reduced-transparency: reduce): solid surfaces replace translucent backgrounds.
CONTRIBUTING.md with development setup, conventions, and PR process.
- JSDoc comments on public TypeScript interfaces.
Fixed
- Code block line numbers in dark mode had 2.85:1 contrast. Bumped from
#6e6e6e to #999 (4.6:1).
- Code block copy button icon in dark mode used
--nu-purple-100 on hover. Switched to --nu-purple-40.
- Wide tables overflowed into the sidebar. A rehype plugin now wraps each
<table> in a scrollable <div> at build time.
- Reopening the fullscreen viewer after Escape showed a blue focus ring around the entire viewport.
- Mermaid hover toolbar sat unevenly relative to the diagram container border.
- Fullscreen close button used
rgb(255 255 255 / 20%) while the theme toggle used 15%. Both use 15% now.
- Mobile sidebar: theme toggle and GitHub icon were white-on-white in light mode.
- Mobile sidebar: theme toggle was taller than wide; GitHub icon sat below it.
- Copy buttons did nothing on HTTP (insecure contexts). Added
document.execCommand("copy") fallback.
- Clicking copy twice during the success animation duplicated the check icon. Debounced per button.
- iOS Safari toggled the URL bar when copying in the fullscreen viewer. The fallback textarea now appends inside the overlay.
- Mouse-opening the fullscreen viewer put a focus ring on the first control. Keyboard opens focus the first button; mouse opens focus the overlay container (no visible ring, Tab still works).
- Zoom in/out/reset buttons hidden on mobile (pinch-to-zoom covers it).
- Mermaid user overrides dropped on client-side theme toggle. Runtime configs now include merged user config.
- Mermaid lazy-rendered diagrams used stale theme after toggle. Observer callback now reads live theme mode.
- Mermaid pinch-to-zoom anchored to viewport center instead of pinch midpoint.
- Mermaid
MutationObservers accumulated on view transitions. Previous observer now disconnected before creating a new one.
- Mermaid render race on rapid theme toggles. Per-container version tracking discards stale async completions.
- Mermaid fullscreen close could fire twice during animation. Added guard against double-close.
- Mermaid
diagramSources Map leaked detached DOM nodes across view transitions. Switched to WeakMap.
- Tooltip event listeners duplicated on Astro view transitions. Added
WeakSet idempotency guard.
- Tooltip Popover API called without feature detection. Added fallback for unsupported browsers.
- Tooltip positioning drifted on scroll. Now repositions via scroll listener while visible.
- Sidebar active item border shifted text. All sidebar links now reserve space with a transparent left border.
- Search modal focus ring used browser default blue. Now uses
--nu-focus-ring.
- Site title clipped on mobile. Added fluid font sizing with
clamp() and ellipsis overflow.
Changed
- Fullscreen controls bar uses Starlight’s
--sl-nav-pad-x and --sl-menu-button-size so the close button aligns with the hamburger menu on mobile.
- Removed right padding on active sidebar headings that broke nested heading alignment.