diff --git a/src/components/UIShell/UIShell.Story.svelte b/src/components/UIShell/UIShell.Story.svelte index 1faeb0a7..d57734fe 100644 --- a/src/components/UIShell/UIShell.Story.svelte +++ b/src/components/UIShell/UIShell.Story.svelte @@ -11,6 +11,9 @@ import SideNavMenu from './SideNav/SideNavMenu.svelte'; import SideNavMenuItem from './SideNav/SideNavMenuItem.svelte'; import SideNavLink from './SideNav/SideNavLink.svelte'; + import UIShellNav from './UIShellNav/UIShellNav.svelte'; + import UIShellNavItem from './UIShellNav/UIShellNavItem.svelte'; + import UIShellNavSubmenu from './UIShellNav/UIShellNavSubmenu.svelte'; let iCatalog = { class: undefined, @@ -43,7 +46,22 @@ }; -{#if story === 'with-actions-sidenav'} +{#if story === 'with-nav'} + +
+ + + + + + + + + + +
+
+{:else if story === 'with-actions-sidenav'}
diff --git a/src/components/UIShell/UIShell.stories.js b/src/components/UIShell/UIShell.stories.js index 7ffc13fc..1e485083 100644 --- a/src/components/UIShell/UIShell.stories.js +++ b/src/components/UIShell/UIShell.stories.js @@ -3,6 +3,16 @@ import Component from './UIShell.Story.svelte'; export default { title: 'UIShell', decorators: [withKnobs] }; +export const WithNav = () => ({ + Component, + props: { + story: 'with-nav', + href: text('The link href (href)', '#'), + company: text('Company name', 'IBM'), + platformName: text('Platform name', 'Platform Name') + } +}); + export const WithActionsAndSidenav = () => ({ Component, props: { diff --git a/src/components/UIShell/UIShell.svelte b/src/components/UIShell/UIShell.svelte index b77a666f..94056266 100644 --- a/src/components/UIShell/UIShell.svelte +++ b/src/components/UIShell/UIShell.svelte @@ -24,5 +24,6 @@ {company}  {platformName} + diff --git a/src/components/UIShell/UIShellNav/UIShellNav.svelte b/src/components/UIShell/UIShellNav/UIShellNav.svelte new file mode 100644 index 00000000..1080216b --- /dev/null +++ b/src/components/UIShell/UIShellNav/UIShellNav.svelte @@ -0,0 +1,10 @@ + + + diff --git a/src/components/UIShell/UIShellNav/UIShellNavItem.svelte b/src/components/UIShell/UIShellNav/UIShellNavItem.svelte new file mode 100644 index 00000000..611fbf0d --- /dev/null +++ b/src/components/UIShell/UIShellNav/UIShellNavItem.svelte @@ -0,0 +1,23 @@ + + +
  • + + {text} + +
  • diff --git a/src/components/UIShell/UIShellNav/UIShellNavSubmenu.svelte b/src/components/UIShell/UIShellNav/UIShellNavSubmenu.svelte new file mode 100644 index 00000000..b00da895 --- /dev/null +++ b/src/components/UIShell/UIShellNav/UIShellNavSubmenu.svelte @@ -0,0 +1,54 @@ + + + + +
  • + { + if (key === 'Enter') { + expanded = !expanded; + } + }} + on:click + on:mouseover + on:mouseenter + on:mouseleave + on:keyup + on:focus + on:blur> + {text} + + + +
  • diff --git a/src/components/UIShell/index.js b/src/components/UIShell/index.js index 5f1c33af..3d65b23b 100644 --- a/src/components/UIShell/index.js +++ b/src/components/UIShell/index.js @@ -7,3 +7,6 @@ export { default as SideNavItems } from './SideNav/SideNavItems.svelte'; export { default as SideNavLink } from './SideNav/SideNavLink.svelte'; export { default as SideNavMenu } from './SideNav/SideNavMenu.svelte'; export { default as SideNavMenuItem } from './SideNav/SideNavMenuItem.svelte'; +export { default as UIShellNav } from './UIShellShellNav/UIShellNav.svelte'; +export { default as UIShellNavItem } from './UIShellShellNav/UIShellNavItem.svelte'; +export { default as UIShellNavSubMenu } from './UIShellShellNav/UIShellNavSubMenu.svelte'; diff --git a/src/index.js b/src/index.js index 3a9f6424..5bf4bd4a 100644 --- a/src/index.js +++ b/src/index.js @@ -83,7 +83,10 @@ import UIShell, { SideNavItems, SideNavLink, SideNavMenu, - SideNavMenuItem + SideNavMenuItem, + UIShellNav, + UIShellNavItem, + UIShellNavSubMenu } from './components/UIShell'; import UnorderedList from './components/UnorderedList'; @@ -205,5 +208,8 @@ export { SideNavLink, SideNavMenu, SideNavMenuItem, + UIShellNav, + UIShellNavItem, + UIShellNavSubMenu, UnorderedList };