Implements Menu component
This commit is contained in:
parent
ba3ce4b128
commit
5c3fcb053d
|
@ -1,3 +1,15 @@
|
||||||
<li class="spectrum-Menu-item" role="menuitem" tabindex="0">
|
<script>
|
||||||
<span class="spectrum-Menu-itemLabel"><slot /></span>
|
export let icon = undefined;
|
||||||
|
export let disabled = undefined;
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<li on:click class="spectrum-Menu-item" class:is-disabled={disabled} role="menuitem" tabindex="0">
|
||||||
|
<span class="spectrum-Menu-itemLabel">
|
||||||
|
{#if icon}
|
||||||
|
<svg class="spectrum-Icon spectrum-Icon--sizeM spectrum-Menu-itemIcon" focusable="false" aria-hidden="true" aria-label={icon}>
|
||||||
|
<use xlink:href="#spectrum-icon-18-{icon}"></use>
|
||||||
|
</svg>
|
||||||
|
{/if}
|
||||||
|
<span class="spectrum-Menu-itemLabel"><slot /></span>
|
||||||
|
</span>
|
||||||
</li>
|
</li>
|
|
@ -3,36 +3,5 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<ul class="spectrum-Menu" role="menu">
|
<ul class="spectrum-Menu" role="menu">
|
||||||
<li role="presentation">
|
<slot />
|
||||||
<span class="spectrum-Menu-sectionHeading" id="menu-heading-category-1" aria-hidden="true">Section Heading</span>
|
|
||||||
<ul class="spectrum-Menu" role="group" aria-labelledby="menu-heading-category-1">
|
|
||||||
<li class="spectrum-Menu-item" role="menuitem" tabindex="0">
|
|
||||||
<span class="spectrum-Menu-itemLabel">Action 1</span>
|
|
||||||
</li>
|
|
||||||
<li class="spectrum-Menu-item" role="menuitem" tabindex="0">
|
|
||||||
<span class="spectrum-Menu-itemLabel">Action 2</span>
|
|
||||||
</li>
|
|
||||||
<li class="spectrum-Menu-item" role="menuitem" tabindex="0">
|
|
||||||
<span class="spectrum-Menu-itemLabel">Action 3</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li class="spectrum-Menu-divider" role="separator"></li>
|
|
||||||
<li role="presentation">
|
|
||||||
<span class="spectrum-Menu-sectionHeading" id="menu-heading-category-2" aria-hidden="true">Section Heading</span>
|
|
||||||
<ul class="spectrum-Menu" role="group" aria-labelledby="menu-heading-category-1" aria-disabled="true">
|
|
||||||
<li class="spectrum-Menu-item" role="menuitem" tabindex="0">
|
|
||||||
<svg class="spectrum-Icon spectrum-Icon--sizeM spectrum-Menu-itemIcon" focusable="false" aria-hidden="true" aria-label="SaveFloppy">
|
|
||||||
<use xlink:href="#spectrum-icon-18-SaveFloppy"></use>
|
|
||||||
</svg>
|
|
||||||
<span class="spectrum-Menu-itemLabel">Save</span>
|
|
||||||
</li>
|
|
||||||
<li class="spectrum-Menu-item is-disabled" role="menuitem" aria-disabled="true">
|
|
||||||
<svg class="spectrum-Icon spectrum-Icon--sizeM spectrum-Menu-itemIcon" focusable="false" aria-hidden="true" aria-label="DataDownload">
|
|
||||||
<use xlink:href="#spectrum-icon-18-DataDownload"></use>
|
|
||||||
</svg>
|
|
||||||
<span class="spectrum-Menu-itemLabel">Download</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
|
@ -0,0 +1,19 @@
|
||||||
|
<script>
|
||||||
|
import Menu from './Menu.svelte'
|
||||||
|
import Separator from './Separator.svelte'
|
||||||
|
import Section from './Section.svelte'
|
||||||
|
import Item from './Item.svelte'
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Section heading="Section heading">
|
||||||
|
<Item>Some Item 1</Item>
|
||||||
|
<Item>Some Item 2</Item>
|
||||||
|
<Item>Some Item 3</Item>
|
||||||
|
</Section>
|
||||||
|
<Separator />
|
||||||
|
<Section heading="Section heading">
|
||||||
|
<Item icon="SaveFloppy">Save</Item>
|
||||||
|
<Item disabled icon="DataDownload">Download</Item>
|
||||||
|
</Section>
|
||||||
|
</Menu>
|
|
@ -2,8 +2,8 @@
|
||||||
export let heading
|
export let heading
|
||||||
</script>
|
</script>
|
||||||
<li role="presentation">
|
<li role="presentation">
|
||||||
<span class="spectrum-Menu-sectionHeading" id="menu-heading-category-1" aria-hidden="true">{heading}</span>
|
<span class="spectrum-Menu-sectionHeading">{heading}</span>
|
||||||
<ul class="spectrum-Menu" role="group" aria-labelledby="menu-heading-category-1">
|
<ul class="spectrum-Menu" role="group">
|
||||||
<slot />
|
<slot />
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
|
@ -0,0 +1 @@
|
||||||
|
<li class="spectrum-Menu-divider" role="separator"></li>
|
|
@ -28,6 +28,7 @@ export { default as Link } from "./Link/Link.svelte"
|
||||||
export { default as Close } from "./Button/Close.svelte"
|
export { default as Close } from "./Button/Close.svelte"
|
||||||
export { default as Menu } from "./Menu/Menu.svelte"
|
export { default as Menu } from "./Menu/Menu.svelte"
|
||||||
export { default as MenuSection } from "./Menu/Section.svelte"
|
export { default as MenuSection } from "./Menu/Section.svelte"
|
||||||
|
export { default as MenuSeparator } from "./Menu/Separator.svelte"
|
||||||
export { default as MenuItem } from "./Menu/Item.svelte"
|
export { default as MenuItem } from "./Menu/Item.svelte"
|
||||||
export { default as Modal } from "./Modal/Modal.svelte"
|
export { default as Modal } from "./Modal/Modal.svelte"
|
||||||
export { default as ModalContent } from "./Modal/ModalContent.svelte"
|
export { default as ModalContent } from "./Modal/ModalContent.svelte"
|
||||||
|
|
|
@ -75,10 +75,6 @@
|
||||||
<!-- <TemplateList onSelect={selectTemplate} /> -->
|
<!-- <TemplateList onSelect={selectTemplate} /> -->
|
||||||
|
|
||||||
<AppList />
|
<AppList />
|
||||||
|
|
||||||
<div class="just-a-menu-test">
|
|
||||||
<Menu />
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<Modal bind:this={modal} padding={false} width="600px" on:hide={closeModal}>
|
<Modal bind:this={modal} padding={false} width="600px" on:hide={closeModal}>
|
||||||
|
|
Loading…
Reference in New Issue