Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alaskaairlines/auro-sidenav
Custom element that provides users a way to create navigational interfaces
https://github.com/alaskaairlines/auro-sidenav
auro custom-element design-system generator-v4-0-4
Last synced: about 1 month ago
JSON representation
Custom element that provides users a way to create navigational interfaces
- Host: GitHub
- URL: https://github.com/alaskaairlines/auro-sidenav
- Owner: AlaskaAirlines
- License: apache-2.0
- Created: 2023-06-12T18:04:42.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-13T22:14:44.000Z (about 2 months ago)
- Last Synced: 2024-11-13T23:20:17.615Z (about 2 months ago)
- Topics: auro, custom-element, design-system, generator-v4-0-4
- Language: JavaScript
- Homepage: https://auro.alaskaair.com/components/auro/sidenav
- Size: 1.04 MB
- Stars: 0
- Watchers: 10
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Sidenav
`` is a [HTML custom element](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements) that provides users a way to create navigational interfaces on the left hand
side of a page to navigate to separate pages or different sections within the same page.When consuming the `auro-sidenav` you will be registering the `auro-sidenavitem` and `auro-sidenavsection` component as well as the `auro-sidenav` components to the DOM. These components will be necessary to create the navigation.
The `auro-sidenavsection` is an extension of the `auro-accordion` can be used to create sections.
The `auro-sidenavitem` is an extension of the `auro-hyperlink` and used to create the navigational links in the `auro-sidenav`. You can use the expected `href` and `target` attributes to properly enable and style the links.
Please refer to the below example to see how to use these components.
## UI development browser support
For the most up to date information on [UI development browser support](https://auro.alaskaair.com/support/browsersSupport)
## Install
[![Build Status](https://img.shields.io/github/actions/workflow/status/AlaskaAirlines/auro-sidenav/testPublish.yml?style=for-the-badge)](https://github.com/AlaskaAirlines/auro-sidenav/actions/workflows/testPublish.yml)
[![See it on NPM!](https://img.shields.io/npm/v/@aurodesignsystem/auro-sidenav?style=for-the-badge&color=orange)](https://www.npmjs.com/package/@aurodesignsystem/auro-sidenav)
[![License](https://img.shields.io/npm/l/@aurodesignsystem/auro-sidenav?color=blue&style=for-the-badge)](https://www.apache.org/licenses/LICENSE-2.0)
![ESM supported](https://img.shields.io/badge/ESM-compatible-FFE900?style=for-the-badge)```shell
$ npm i @aurodesignsystem/auro-sidenav
```Installing as a direct, dev or peer dependency is up to the user installing the package. If you are unsure as to what type of dependency you should use, consider reading this [stack overflow](https://stackoverflow.com/questions/18875674/whats-the-difference-between-dependencies-devdependencies-and-peerdependencies) answer.
### Design Token CSS Custom Property dependency
The use of any Auro custom element has a dependency on the [Auro Design Tokens](https://auro.alaskaair.com/getting-started/developers/design-tokens).
### Define dependency in project component
Defining the component dependency within each component that is using the `` component.
```js
import "@aurodesignsystem/auro-sidenav";
```**Reference component in HTML**
```html
Alaska Airlines History
Historical overview
History by decade
Alaska Airlines pioneers```
## Install bundled assets from CDN
In cases where the project is not able to process JS assets, there are pre-processed assets available for use. See -- `auro-sidenav__bundled.js` for modern browsers. Legacy browsers such as IE11 are no longer supported.
**WARNING!** When installing into your application environment, DO NOT use `@latest` for the requested version. Risks include unknown MAJOR version releases and instant adoption of any new features and possible bugs without developer knowledge. The `@latest` wildcard should NEVER be used for production customer-facing applications. You have been warned.
### Bundle example code
```html
```
## auro-sidenav use cases
The `` element should be used in situations where users may:
* create in-page navigation for long content-heavy pages
* provide navigation to related pages on a page## API Code Examples
### Default auro-sidenav
```html
Alaska Airlines History
Historical overview
History by decade
Alaska Airlines pioneers```
## Development
In order to develop against this project, if you are not part of the core team, you will be required to fork the project prior to submitting a pull request.
Please be sure to review the [contribution guidelines](https://auro.alaskaair.com/contributing) for this project. Please make sure to **pay special attention** to the **conventional commits** section of the document.
### Start development environment
Once the project has been cloned to your local resource and you have installed all the dependencies you will need to open a shell session to run the **dev server**.
```shell
$ npm run dev
```Open [localhost:8000](http://localhost:8000/)
If running separate sessions is preferred, please run the following commands in individual terminal shells.
```shell
$ npm run build:watch$ npm run serve
```### API generation
The custom element API file is generated in the build and committed back to the repo with a version change. If the API doc has changed without a version change, author's are to run `npm run build:api` to generate the doc and commit to version control.
### Testing
Automated tests are required for every Auro component. See `.\test\auro-sidenav.test.js` for the tests for this component. Run `npm test` to run the tests and check code coverage. Tests must pass and meet a certain coverage threshold to commit. See [the testing documentation](https://auro.alaskaair.com/support/tests) for more details.
### Bundled assets
Bundled assets are only generated in the remote and not merged back to this repo. To review and/or test a bundled asset locally, run `$ npm run bundler` to generate assets.