Merge branch 'master' into rewrite-tyepscript-definitions

This commit is contained in:
Eric Liu 2020-11-19 06:16:50 -08:00 committed by GitHub
commit 56718c633d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 81 additions and 5 deletions

View file

@ -138,7 +138,7 @@
<StructuredListCell> <StructuredListCell>
{#if prop.description} {#if prop.description}
{#each prop.description.split('\n') as line} {#each prop.description.split('\n') as line}
<div class="description">{line}.</div> <div class="description">{@html line.replace(/`(.*?)`/g, '<code>$1</code>')}.</div>
{/each} {/each}
{:else} {:else}
<div class="description">No description available.</div> <div class="description">No description available.</div>

View file

@ -37,3 +37,7 @@ components: ["Header",
### Header with utilities ### Header with utilities
<FileSource src="/framed/UIShell/HeaderUtilities" /> <FileSource src="/framed/UIShell/HeaderUtilities" />
### Header with persisted hamburger menu
<FileSource src="/framed/UIShell/PersistedHamburgerMenu" />

View file

@ -0,0 +1,65 @@
<script>
import {
Header,
HeaderNav,
HeaderNavItem,
HeaderNavMenu,
SideNav,
SideNavItems,
SideNavMenu,
SideNavMenuItem,
SideNavLink,
SkipToContent,
Content,
Grid,
Row,
Column,
} from "carbon-components-svelte";
let isSideNavOpen = false;
</script>
<Header
persistentHamburgerMenu="{true}"
company="IBM"
platformName="Carbon Svelte"
bind:isSideNavOpen
>
<div slot="skip-to-content">
<SkipToContent />
</div>
<HeaderNav>
<HeaderNavItem href="/" text="Link 1" />
<HeaderNavItem href="/" text="Link 2" />
<HeaderNavItem href="/" text="Link 3" />
<HeaderNavMenu text="Menu">
<HeaderNavItem href="/" text="Link 1" />
<HeaderNavItem href="/" text="Link 2" />
<HeaderNavItem href="/" text="Link 3" />
</HeaderNavMenu>
</HeaderNav>
</Header>
<SideNav bind:isOpen="{isSideNavOpen}">
<SideNavItems>
<SideNavLink text="Link 1" />
<SideNavLink text="Link 2" />
<SideNavLink text="Link 3" />
<SideNavMenu text="Menu">
<SideNavMenuItem href="/" text="Link 1" />
<SideNavMenuItem href="/" text="Link 2" />
<SideNavMenuItem href="/" text="Link 3" />
</SideNavMenu>
</SideNavItems>
</SideNav>
<Content>
<Grid>
<Row>
<Column>
<h1>Welcome</h1>
</Column>
</Row>
</Grid>
</Content>

View file

@ -51,6 +51,9 @@
}); });
function focus(element) { function focus(element) {
if(selectorPrimaryFocus == null) {
return
}
const node = const node =
(element || innerModal).querySelector(selectorPrimaryFocus) || buttonRef; (element || innerModal).querySelector(selectorPrimaryFocus) || buttonRef;
if (node != null) node.focus(); if (node != null) node.focus();

View file

@ -29,6 +29,9 @@
*/ */
export let platformName = ""; export let platformName = "";
/** Set to `true` to persist the hamburger menu */
export let persistentHamburgerMenu = false;
/** Obtain a reference to the HTML anchor element */ /** Obtain a reference to the HTML anchor element */
export let ref = null; export let ref = null;
@ -36,7 +39,8 @@
let winWidth = undefined; let winWidth = undefined;
$: isSideNavOpen = expandedByDefault && winWidth >= 1056; $: isSideNavOpen =
expandedByDefault && winWidth >= 1056 && !persistentHamburgerMenu;
$: ariaLabel = company $: ariaLabel = company
? `${company} ` ? `${company} `
: "" + (uiShellAriaLabel || $$props["aria-label"] || platformName); : "" + (uiShellAriaLabel || $$props["aria-label"] || platformName);
@ -46,7 +50,7 @@
<header role="banner" aria-label="{ariaLabel}" class:bx--header="{true}"> <header role="banner" aria-label="{ariaLabel}" class:bx--header="{true}">
<slot name="skip-to-content" /> <slot name="skip-to-content" />
{#if winWidth < 1056} {#if winWidth < 1056 || persistentHamburgerMenu}
<HamburgerMenu bind:isOpen="{isSideNavOpen}" /> <HamburgerMenu bind:isOpen="{isSideNavOpen}" />
{/if} {/if}
<a <a

View file

@ -27,7 +27,7 @@
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}" class:bx--side-nav--collapsed="{!isOpen}"
{...$$restProps} {...$$restProps}
> >
<slot /> <slot />