fix(ui-shell): remove Content left margin if SideNav is collapsed (#1428)

Fixes #1145
Alternative to #1406
This commit is contained in:
metonym 2022-08-06 08:27:45 -07:00 committed by GitHub
commit fd42cb3891
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 12 additions and 3 deletions

View file

@ -246,7 +246,6 @@ main.bx--content {
@media (max-width: 1056px) { @media (max-width: 1056px) {
.bx--side-nav ~ .bx--content { .bx--side-nav ~ .bx--content {
margin-left: 0;
padding-left: 1rem; padding-left: 1rem;
padding-right: 1rem; padding-right: 1rem;
} }

View file

@ -1,8 +1,15 @@
<script> <script>
/** Specify the id for the main element */ /** Specify the id for the main element */
export let id = "main-content"; export let id = "main-content";
import { isSideNavCollapsed } from "./navStore";
</script> </script>
<main id="{id}" class:bx--content="{true}" {...$$restProps}> <main
id="{id}"
class:bx--content="{true}"
{...$$restProps}
style="{$isSideNavCollapsed && 'margin-left: 0;'} {$$restProps.style}}"
>
<slot /> <slot />
</main> </main>

View file

@ -32,13 +32,14 @@
export let expansionBreakpoint = 1056; export let expansionBreakpoint = 1056;
import { onMount, createEventDispatcher } from "svelte"; import { onMount, createEventDispatcher } from "svelte";
import { shouldRenderHamburgerMenu } from "./navStore"; import { shouldRenderHamburgerMenu, isSideNavCollapsed } from "./navStore";
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
let winWidth = undefined; let winWidth = undefined;
$: dispatch(isOpen ? "open" : "close"); $: dispatch(isOpen ? "open" : "close");
$: $isSideNavCollapsed = !isOpen;
onMount(() => { onMount(() => {
shouldRenderHamburgerMenu.set(true); shouldRenderHamburgerMenu.set(true);

View file

@ -1,3 +1,5 @@
import { writable } from "svelte/store"; import { writable } from "svelte/store";
export const shouldRenderHamburgerMenu = writable(false); export const shouldRenderHamburgerMenu = writable(false);
export const isSideNavCollapsed = writable(false);