Add power conversion entries and responsive nav tweaks
This commit is contained in:
@@ -307,12 +307,28 @@
|
||||
updateTheme(event.matches ? 'dark' : 'light');
|
||||
};
|
||||
|
||||
const navBreakpoint = window.matchMedia('(max-width: 1024px)');
|
||||
const handleNavBreakpoint = (event: MediaQueryListEvent) => {
|
||||
if (event.matches) {
|
||||
sidebarOpen = false;
|
||||
}
|
||||
};
|
||||
|
||||
if (navBreakpoint.matches) {
|
||||
sidebarOpen = false;
|
||||
}
|
||||
|
||||
const cleanup = () => {
|
||||
if ('removeEventListener' in mediaQuery) {
|
||||
mediaQuery.removeEventListener('change', handlePreferenceChange);
|
||||
} else {
|
||||
mediaQuery.removeListener(handlePreferenceChange);
|
||||
}
|
||||
if ('removeEventListener' in navBreakpoint) {
|
||||
navBreakpoint.removeEventListener('change', handleNavBreakpoint);
|
||||
} else {
|
||||
navBreakpoint.removeListener(handleNavBreakpoint);
|
||||
}
|
||||
};
|
||||
|
||||
if ('addEventListener' in mediaQuery) {
|
||||
@@ -321,6 +337,12 @@
|
||||
mediaQuery.addListener(handlePreferenceChange);
|
||||
}
|
||||
|
||||
if ('addEventListener' in navBreakpoint) {
|
||||
navBreakpoint.addEventListener('change', handleNavBreakpoint);
|
||||
} else {
|
||||
navBreakpoint.addListener(handleNavBreakpoint);
|
||||
}
|
||||
|
||||
return cleanup;
|
||||
});
|
||||
</script>
|
||||
@@ -343,7 +365,14 @@
|
||||
<header class="site-header">
|
||||
<div style="display:flex;align-items:center;gap:0.75rem;">
|
||||
{#if !isHomepage}
|
||||
<button class="hamburger" on:click={() => (sidebarOpen = !sidebarOpen)} aria-label="Toggle menu">
|
||||
<button
|
||||
type="button"
|
||||
class="hamburger"
|
||||
on:click={() => (sidebarOpen = !sidebarOpen)}
|
||||
aria-label="Toggle menu"
|
||||
aria-controls="site-navigation"
|
||||
aria-expanded={sidebarOpen ? 'true' : 'false'}
|
||||
>
|
||||
☰
|
||||
</button>
|
||||
{/if}
|
||||
|
||||
Reference in New Issue
Block a user