Skip to content
This repository has been archived by the owner on Aug 26, 2021. It is now read-only.

Latest commit

 

History

History
180 lines (115 loc) · 4.92 KB

File metadata and controls

180 lines (115 loc) · 4.92 KB

@gov.au/inpage-nav

Use inpage-nav links to help users scan and jump to content of a page.

Contents


Install

yarn add @gov.au/inpage-nav
npm install @gov.au/inpage-nav

⬆ back to top


Usage

⬆ back to top


React

Usage:

import { AUinpageNavLinks, AUinpageNavSection } from './inpage-nav.js';

<AUinpageNavLinks sections={[
  {
    link: 'section1',
    title: 'Section 1',
  },
  {
    link: 'section2',
    title: 'Section 2',
    li: {
      className: 'li-wrapping-class',
    },
  },
]} />

<AUinpageNavSection title="Section 1 headline" link="section1">
</AUinpageNavSection>

<AUinpageNavSection title="Section 2 headline" link="section2">
</AUinpageNavSection>

All props:

<AUinpageNavLinks
  title="Contents"                {/* The title above all sections */}
  ariaLabel="in page navigation"  {/* Aria-label attribute on the root element */}
  sections={[                     {/* All section in a neat array */}
    {
      link: 'section1',           {/* The link to the section, this will be converted to a hash link */}
      title: 'Section 1',         {/* The link text of this section */}
      li: {},                     {/* An object that will be spread onto the <li> tag, optional */}
      onClick: () => {},          {/* A function to be executed when a section is clicked, optional */}
    },
  ]}
/>

<AUinpageNavSection
  title="Section 1"              {/* The title of the section */}
  link="section1"                {/* The link of this section, corresponds to the link inside AUinpageNavLinks */}
  level="2"                      {/* The semantic heading tag level, h1-h6, optional */}
  headingClass="au-display-lg"   {/* Additional classes to be added to the headline, optional */}
  sectionLink="Link to section"  {/* The text for the section link, optional */}
  dark={ false }                 {/* A dark variation of the component */}
/>

(💡 additional props are spread onto the component)

For more details have a look at the usage example.

⬆ back to top


Dependency graph

inpage-nav
├─ core
└─ link-list
   ├─ core
   └─ body
      └─ core

⬆ back to top


Tests

The visual test: https://auds.service.gov.au/packages/inpage-nav/tests/site/

⬆ back to top


Release History

  • v3.0.7 - Update core package dependency to use the latest version
  • v3.0.6 - Remove --save-dev flag from readme instructions
  • v3.0.5 - Removed unused Fragment React import
  • v3.0.4 - Removed uikit references
  • v3.0.3 - Added an aria-label attribute to the nav element
  • v3.0.2 - Update dependencies
  • v3.0.1 - Removing web pack dev server, updating dependencies
  • v3.0.0 - Updated dependency version of link-list, build scripts for Windows
  • v2.0.5 - Replace node-sass with sass
  • v2.0.4 - Change npm run watch browser-sync location
  • v2.0.3 - Update dependencies
  • v2.0.2 - Change homepage links
  • v2.0.1 - Fix dependencies
  • v2.0.0 - Change to focus colour and border/muted color mix
  • v1.0.0 - Moved to AU namespace, added new color themes and spacing
  • v0.3.0 - Added pancake-react plugin, ES5 main file
  • v0.2.0 - Added react component
  • v0.1.1 - Fixed a11y contrast issue
  • v0.1.0 - 💥 Initial version

⬆ back to top


License

Copyright (c) Commonwealth of Australia. Licensed under MIT.

⬆ back to top

};