
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
@gov.au/main-nav
Advanced tools
Horizontal list of links to key areas on the website. Usually located in the header.
Horizontal list of links to key areas on the website. Usually located in the header.
yarn add @gov.au/main-nav
npm install @gov.au/main-nav
Main navigation has 1 public function:
AU.mainNav.Toggle( element, speed, callbacks )
The parameters are:
element
The DOM element that triggers the main navigation to open, like a button or a link. They need to have the aria-controls
attribute that points to the main navigation content element.
speed
Animation speed in milliseconds (optional, defaults to 250ms
)
callbacks
- An object of four optional callbacks: { onOpen, afterOpen, onClose, afterClose }
Example:
AU.mainNav.Toggle( document.getElementById( 'main-nav-content' ), 500,
{
onOpen: function() {
console.log('This function will run when an main nav opens');
},
afterOpen: function() {
console.log('This function will run after an main nav has opened');
},
onClose: function() {
console.log('This function will run when an main nav closes');
},
afterClose: function() {
console.log('This function will run after an main nav has closed');
},
}
);
Usage:
import AUmainNav, { AUmainNavContent } from './main-nav.js';
<AUmainNav>
<div className="container">
<div className="row">
<div className="col-md-12">
<AUmainNavContent items={[
{
link: '#',
text: 'About',
},
{
link: '#',
text: 'Get started',
},
{
link: '#',
text: 'Components',
active: true
},
{
link: '#',
text: 'Templates',
},
]} />
</div>
</div>
</div>
</AUmainNav>
All props:
<AUmainNav
dark={ false } {/* A dark variation of the component */}
alt={ false } {/* An alternate variation of the component */}
ariaLabel={ 'main' } {/* Aria-label attribute on the <nav> element */}
>
</AUmainNav>
<AUmainNavContent
items={ [] }
speed={ 250 } {/* Speed of the animation in ms, optional */}
onOpen={ () => {} } {/* A function executed when the accordion opens, optional */}
afterOpen={ () => {} } {/* A function executed after the accordion opened, optional */}
onClose={ () => {} } {/* A function executed when the accordion closes, optional */}
afterClose={ () => {} } {/* A function executed after the accordion opened, optional */}
linkComponent="a" {/* The component used for the link, optional */}
>
</AUmainNavContent>
(💡 additional props are spread onto the component)
For more details have a look at the usage example.
To initialize the jQuery plugin make sure you have jQuery on the page and run the below code after the DOM was loaded:
$(function() {
$('.js-au-main-nav').AUmainNav();
});
You can optionally add functions to each event like so:
$('.js-au-main-nav').AUmainNav({
onOpen: function() {
console.log('This function will run when an main nav opens');
},
afterOpen: function() {
console.log('This function will run after an main nav has opened');
},
onClose: function() {
console.log('This function will run when an main nav closes');
},
afterClose: function() {
console.log('This function will run after an main nav has closed');
},
});
main-nav
├─ core
├─ animate
└─ link-list
├─ core
└─ body
└─ core
The visual test: https://auds.service.gov.au/packages/main-nav/tests/site/
navigation
from aria-label
in <nav>
elementFragment
React importtext-decoration-skip
property to text-decoration-skip-ink
<a>
and add aria-current="page"
<a>
for accessibilityCopyright (c) Commonwealth of Australia. Licensed under MIT.
FAQs
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.