1.0.0 • Published 11 months ago

@element-public/react-side-app-bar v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

SideAppBar

Description

Component used for navigation, assigned to the left side of the page. Includes Navigation for the Tabs and Drawer for the Content.

See live demos on storybook

Storybook SideAppBar Demos

Install bundle from npm-e

npm i @element-public/react-components @element-public/themes

Optional: install the component individually

npm i @element-public/react-side-app-bar @element-public/themes

Open ~/.npmrc in an editor and add the following line to enable the @element-public scope:

@element-public:registry=https://npm.platforms.engineering

Troubleshooting

See below if you have never installed a package from Bayer's npm-enterprise or run into the following error:

npm ERR! code E401
npm ERR! Unable to authenticate, your authentication token seems to be invalid.
npm ERR! To correct this please trying logging in again with:
npm ERR!     npm login

Setup an access token

See the devtools npm-e guide to learn how to create an access token if this is the first time you are using a npm-e package at Bayer or you do not have a line that starts with the following in your ~/.npmrc file:

//npm.platforms.engineering/:_authToken=

Notes

Side App Bar has been implemented to create left-side navigation on a page.

The Side App Bar is composed of 4 subcomponents:

  • SideAppBar
    • The root component within which all related components will be placed
  • SideAppBarNavigation
    • This root area to display each tab of the SideAppBar component
  • SideAppBarTab
    • Each tab, which could be clicked to display different content
  • SideAppBarDrawer
    • The content to be displayed or hidden

Side App Bar Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
variantstring'surface'falseBackground theme color. Accepts one of 'primary', 'secondary', or 'surface'.Accepted Values: primary, secondary, surface

Side App Bar Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseAccepts one or more Tab components.

Side App Bar Drawer Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
elevatedbooleanfalsefalseApply elevated styles to raise the tab-bar above standard content.

Side App Bar Drawer Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseAccepts SideTab components.

Side App Bar Indicator Props

NameTypeDefaultRequiredDescription
activebooleanfalsefalseVisually activates the indicator.
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
iconstringnullfalseThe side-app-bar-tab-indicator will use an underline if no icon is provided.
idstringundefinedfalseRandomly generated id. May be overwritten.

Side App Bar List Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
variantstring'surface'falseBackground theme color. Accepts one of 'primary', 'secondary', or 'surface'.Accepted Values: primary, secondary, surface

Side App Bar List Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseAccepts SideTab components.

Side App Bar List Item Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.

Side App Bar List Item Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseAccepts SideTab components.

Side App Bar Navigation Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.

Side App Bar Navigation Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseAccepts SideTab components.

Side App Bar Tab Props

NameTypeDefaultRequiredDescription
activebooleanundefinedfalseIndicates that the tab is active.
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
idstringundefinedfalseRandomly generated id. May be overwritten.
indicatorIconstringnullfalseAn icon to be used as the tab indicator. Accepts the name of any valid material icon (see Icon component documentation for a list of valid icons). If no icon is provided the tab-indicator will use an underline.

Side App Bar Tab Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseThe displayed content. Expects a valid string, though will accept any valid components or markup. If label and children are both set, label will take priority.
iconReact.ReactNodeundefinedfalseAdd a leading icon to the tab.
labelReact.ReactNodenullfalseThe displayed text. Expects a valid string. If label and children are both set, label will take priority.

Side App Bar Tab Events

NameDefaultRequiredParamsDescription
onClickundefinedfalseClick event handler