mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-15 02:11:05 +00:00
feat(ui-shell): support fixed SideNav
This commit is contained in:
parent
76ac0505e3
commit
4f2251b5e1
2 changed files with 34 additions and 18 deletions
|
@ -1,4 +1,10 @@
|
||||||
<script>
|
<script>
|
||||||
|
/**
|
||||||
|
* Set to `true` to use the fixed variant
|
||||||
|
* @type {boolean} [fixed=false]
|
||||||
|
*/
|
||||||
|
export let fixed = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Specify the ARIA label for the nav
|
* Specify the ARIA label for the nav
|
||||||
* @type {string} [ariaLabel]
|
* @type {string} [ariaLabel]
|
||||||
|
@ -12,12 +18,21 @@
|
||||||
export let isOpen = false;
|
export let isOpen = false;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
{#if fixed}
|
||||||
|
<div
|
||||||
|
on:click={() => {
|
||||||
|
isOpen = false;
|
||||||
|
}}
|
||||||
|
class:bx--side-nav__overlay={true}
|
||||||
|
class:bx--side-nav__overlay-active={isOpen} />
|
||||||
|
{/if}
|
||||||
<nav
|
<nav
|
||||||
aria-label={ariaLabel}
|
aria-label={ariaLabel}
|
||||||
class:bx--side-nav__navigation={true}
|
class:bx--side-nav__navigation={true}
|
||||||
class:bx--side-nav={true}
|
class:bx--side-nav={true}
|
||||||
class:bx--side-nav--ux={true}
|
class:bx--side-nav--ux={true}
|
||||||
class:bx--side-nav--expanded={isOpen}
|
class:bx--side-nav--expanded={isOpen}
|
||||||
|
class:bx--side-nav--collapsed={!isOpen && fixed}
|
||||||
{...$$restProps}>
|
{...$$restProps}>
|
||||||
<slot />
|
<slot />
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -213,8 +213,8 @@
|
||||||
</HeaderUtilities>
|
</HeaderUtilities>
|
||||||
</Header>
|
</Header>
|
||||||
{:else if story === 'header-and-sidenav'}
|
{:else if story === 'header-and-sidenav'}
|
||||||
<Header bind:isSideNavOpen {...$$props} />
|
<Header expandedByDefault={false} bind:isSideNavOpen {...$$props}>
|
||||||
<SideNav bind:isOpen={isSideNavOpen}>
|
<SideNav fixed bind:isOpen={isSideNavOpen}>
|
||||||
<SideNavItems>
|
<SideNavItems>
|
||||||
<SideNavMenu text="Menu 01" icon={iCatalog}>
|
<SideNavMenu text="Menu 01" icon={iCatalog}>
|
||||||
<SideNavMenuItem text="Sub 01" href="/" />
|
<SideNavMenuItem text="Sub 01" href="/" />
|
||||||
|
@ -231,6 +231,7 @@
|
||||||
<SideNavLink text="Menu 03" href="/" icon={iProtection} />
|
<SideNavLink text="Menu 03" href="/" icon={iProtection} />
|
||||||
</SideNavItems>
|
</SideNavItems>
|
||||||
</SideNav>
|
</SideNav>
|
||||||
|
</Header>
|
||||||
{/if}
|
{/if}
|
||||||
<Content>
|
<Content>
|
||||||
<h2>Page Title</h2>
|
<h2>Page Title</h2>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue