@justeat/f-spinner
v1.3.0
Published
Fozzie Spinner - loading indicator
Maintainers
Keywords
Readme
f-spinner
loading indicator
Usage
Installation
Install the module using npm or Yarn:
yarn add @justeat/f-spinnernpm install @justeat/f-spinnerVue Applications
You can import it in your Vue SFC like this (please note that styles have to be imported separately):
import VSpinner from '@justeat/f-spinner';
import '@justeat/f-spinner/dist/f-spinner.css';
export default {
components: {
VSpinner
}
}If you are using Webpack, you can import the component dynamically to separate the v-spinner bundle from the main bundle.client.js:
import '@justeat/f-spinner/dist/f-spinner.css';
export default {
components: {
// …
VSpinner: () => import(/* webpackChunkName: "v-spinner" */ '@justeat/f-spinner')
}
}Configuration
Events
The spinner handles the following events:
| Event | Description | | ----- | ----------- | | 'stop-spinner' | Hides the spinner and displays the slot component | | 'start-spinner' | Hides the slot component and runs displays the spinner |
To use these events, use this.$parent.$emit('start-spinner') or this.$parent.$emit('stop-spinner').
f-spinner cannot handle this.$emit as is not possible to access this.$emit from a slot.
Development
Start by cloning the repository and installing the required dependencies:
$ git clone [email protected]:justeat/fozzie-components.git
$ cd fozzie-components
$ yarnChange directory to the f-spinner package:
$ cd packages/components/atoms/f-spinnerTesting
To test all components, run from root directory.
To test only f-spinner, run from the ./fozzie-components/packages/components/atoms/f-spinner directory.
Unit and Integration tests
yarn testComponent and Accessibility Tests
# Note: Ensure Storybook is running when running the following commands
cd ./fozzie-components
yarn storybook:build
yarn storybook:serve-staticyarn test-component:chrome
### Accessibility tests
```bash
yarn test-a11y:chrome