Zywave, Inc.Zywave, Inc.Zywave, Inc.Zywave, Inc.

Stable

Shell

Wraps around all of our applications and provides suite level consistencies, branding, and common functionality.

Basic ZUI Shell skeleton

<zui-shell>
  <zui-shell-topbar></zui-shell-topbar>
  <zui-shell-nav></zui-shell-nav>
  <zui-shell-content></zui-shell-content>
  <zui-shell-footer></zui-shell-footer>
</zui-shell>

Add Zywave logo to topbar (no apps launchpad)

<zui-shell-topbar>
  <zui-logo slot="logo"></zui-logo>
</zui-shell-topbar>

Add custom logo to topbar (no apps launchpad)

<zui-shell-topbar>
  <img src="https://via.placeholder.com/400" slot="logo">
</zui-shell-topbar>

Add apps launchpad to topbar

<zui-shell-topbar>
  <!-- Make note to include slot="apps" so the apps launchpad will appear in the correct place in the topbar -->
  <zui-shell-apps all-apps-url="#" slot="apps">
    <zui-shell-apps-item name="Jurassic Park" url="#"></zui-shell-apps-item>
    <zui-shell-apps-item name="Jurassic Island" description="Senior living extravaganza" url="#"></zui-shell-apps-item>
    <zui-shell-apps-item name="Jurassic Lake" description="Not Sea World, we promise" url="#"></zui-shell-apps-item>
    <zui-shell-apps-item name="Jurassic World" description="Dinoworld where you get to play God" url="#"></zui-shell-apps-item>
    <zui-shell-apps-item name="Jurassic World: Fallen Kingdom" url="#"></zui-shell-apps-item>

      <!-- If you add the apps launchpad to the topbar, the topbar logo must be placed inside <zui-shell-apps> -->
    <zui-logo slot="logo"></zui-logo>
  </zui-shell-apps>
</zui-shell-topbar>

Add search bar to topbar

<zui-shell-topbar>
  <zui-search slot="search"></zui-search>
</zui-shell-topbar>

Add help button to topbar

<zui-shell-topbar>
  <zui-shell-help help-header="Need help?" slot="help">
    <a href="#">Frequently asked questions</a>
    <a href="#">Live chat</a>
    <a href="#">Customer support</a>
  </zui-shell-help>
</zui-shell-topbar>

Add basic user menu to topbar

<zui-shell-topbar>
  <zui-shell-user slot="user" given-name="Eugene" family-name="Krabs" profile-name="Krusty Krab" username="john.cruikshank@zywave.com" profile-detail="Bikini Bottom, PO" logout-user-url="#" manage-user-url="#" manage-profile-url="#" switch-profile-url="#"></zui-shell-user>
</zui-shell-topbar>

Add user menu with avatar to topbar

<zui-shell-topbar>
  <!-- When there is no avatar set, the initials of the user will be used for the avatar instead -->
  <zui-shell-user slot="user" given-name="Eugene" family-name="Krabs" profile-name="Krusty Krab" username="eugene.krabs@krustykrab.com" profile-detail="Bikini Bottom, PO" logout-user-url="#" manage-user-url="#" manage-profile-url="#" switch-profile-url="#" avatar="eugene.webp"></zui-shell-user>
</zui-shell-topbar>

Add user menu with notifications to topbar

<zui-shell-topbar>
  <!-- For if your app supports in-product notifications -->
  <zui-shell-user slot="user" given-name="Eugene" family-name="Krabs" profile-name="Krusty Krab" username="eugene.krabs@krustykrab.com" profile-detail="Bikini Bottom, PO" logout-user-url="#" manage-user-url="#" manage-profile-url="#" switch-profile-url="#" avatar="eugene.webp" notification-count="22" view-notifications-url="https://booster.zywave.dev/"></zui-shell-user>
</zui-shell-topbar>

Add user menu with impersonation info to topbar

<zui-shell-topbar>
  <zui-shell-user slot="user" given-name="Eugene" family-name="Krabs" profile-name="Krusty Krab" username="eugene.krabs@krustykrab.com" profile-detail="Bikini Bottom, PO" logout-user-url="#" manage-user-url="#" manage-profile-url="#" switch-profile-url="#" avatar="eugene.webp" notification-count="22" view-notifications-url="https://booster.zywave.dev/" impersonating-profile-name="splankton" impersonating-given-name="Sheldon" impersonating-family-name="Plankton" impersonating></zui-shell-user>
</zui-shell-topbar>

Add the sidenav

<zui-shell-nav>
  <zui-shell-nav-item>
    <!-- Every top-level menu item MUST be accompanied by an icon with slot="icon" to render it in the proper place -->
    <zui-icon icon="zui-nav-home" slot="icon"></zui-icon>
    <!-- Because this top-level menu item does not have any children, you may provide a single hyperlink -->
    <a href="/">Home</a>
  </zui-shell-nav-item>
  <!-- The attribute "subnav" is required if your top-level menu item will have children menu items -->
  <zui-shell-nav-item subnav>
    <div slot="icon">📚</div>
    <!-- Make note that top-level menu items, such as "Introduction", that have children become text and cannot be a hyperlink -->
    Introduction
    <a href="#">About</a>
    <a href="#">Contributing</a>
    <a href="#">Getting started</a>
    <a href="#">Glossary</a>
  </zui-shell-nav-item>
  <!-- Adding attribute "expanded" to <zui-shell-nav-item> will expand the submenu by default if there are children menu items -->
  <zui-shell-nav-item subnav expanded>
    <zui-svg svg-id="svg-design-system" file="#" slot="icon">
    Design system
    <a href="#">About</a>
    <a href="#">Components</a>
    <a href="#">Developers</a>
    <a href="#">Patterns</a>
    <a href="#">Visuals</a>
    <a href="#">Voice and tone</a>
  </zui-svg></zui-shell-nav-item>
  <zui-shell-nav-item subnav>
    <svg slot="icon">...</svg>
    Application framework
    <a href="#">About</a>
    <a href="#">Components</a>
    <a href="#">Developers</a>
  </zui-shell-nav-item>
  <zui-shell-nav-item>
    <!-- If no top-level icon is provided, we automatically provide a placeholder icon as a temporary solution. You MUST provide an icon. -->
    <a href="/blog/">Blog</a>
  </zui-shell-nav-item>
</zui-shell-nav>

Customize collapse label in sidenav

<zui-shell-nav collapse-label="Plegarse">
  <zui-shell-nav-item></zui-shell-nav-item>
  <zui-shell-nav-item></zui-shell-nav-item>
  <zui-shell-nav-item></zui-shell-nav-item>
</zui-shell-nav>

Add context switcher to sidenav

<zui-shell-nav>
  <zui-shell-context-switcher context-title="Krusty Krab" context-label="Viewing as" action-text="switch"></zui-shell-context-switcher>
  <zui-shell-nav-item></zui-shell-nav-item>
  <zui-shell-nav-item></zui-shell-nav-item>
  <zui-shell-nav-item></zui-shell-nav-item>
</zui-shell-nav>

Add content area

<zui-shell-content>
  <div class="zui shell-content-wrapper">
    <h1>Hello world!</h1>
    <p>I am a paragraph for demo purposes.</p>
  </div>
</zui-shell-content>

Add content area that spans 100% width

<zui-shell-content>
  <div class="zui shell-content-wrapper full">
    <h1>Hello world!</h1>
    <p>I am a paragraph for demo purposes.</p>
  </div>
</zui-shell-content>

Add content area that is narrow

<zui-shell-content>
  <div class="zui shell-content-wrapper slim">
    <h1>Hello world!</h1>
    <p>I am a paragraph for demo purposes.</p>
  </div>
</zui-shell-content>

Add actionbar to content area

<zui-shell-content>
  <zui-shell-content-actionbar header="Step 1">
    <zui-button type="link" tabindex="0" role="button">Cancel</zui-button>
    <zui-button tabindex="0" role="button">Continue</zui-button>
  </zui-shell-content-actionbar>
  <div class="zui shell-content-wrapper">
    <h1>Hello world!</h1>
    <p>I am a paragraph for demo purposes.</p>
  </div>
</zui-shell-content>
<zui-shell-footer>
  <!-- Wrapping your copyright or legalease in a <div> will format the footer properly for smaller screens -->
  <div>
    © 1995 - 2022 Zywave, Inc. All rights reserved.
  </div>
  <a class="zui link" target="_blank" href="#">Terms and Conditions</a>
  <a class="zui link" target="_blank" href="#">Privacy Statement</a>
  <a class="zui link" target="_blank" href="#">DMCA</a>
  <a class="zui link" target="_blank" href="#">Cookie Usage</a>
  <a class="zui link" href="mailto:#">Contact</a>
</zui-shell-footer>

Add banner

<zui-shell-banner type="warning">
  Our website will be undergoing scheduled maintenance from 10pm-2am EST.
</zui-shell-banner>

Add dismissible banner

<zui-shell-banner type="warning" dismissible>Our website will be undergoing scheduled maintenance from 10pm-2am EST.</zui-shell-banner>

Add banner to ZUI Shell skeleton

<zui-shell>
  <zui-shell-banner type="warning">Our website will be undergoing scheduled maintenance from 10pm-2am EST.</zui-shell-banner>
  <zui-shell-topbar></zui-shell-topbar>
  <zui-shell-nav></zui-shell-nav>
  <zui-shell-content></zui-shell-content>
  <zui-shell-footer></zui-shell-footer>
</zui-shell>