@justeat/f-spinner
v1.3.0
Published
Fozzie Spinner - loading indicator
Downloads
31
Maintainers
Keywords
Readme
f-spinner
loading indicator
Usage
Installation
Install the module using npm or Yarn:
yarn add @justeat/f-spinner
npm install @justeat/f-spinner
Vue 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
$ yarn
Change directory to the f-spinner
package:
$ cd packages/components/atoms/f-spinner
Testing
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 test
Component and Accessibility Tests
# Note: Ensure Storybook is running when running the following commands
cd ./fozzie-components
yarn storybook:build
yarn storybook:serve-static
yarn test-component:chrome
### Accessibility tests
```bash
yarn test-a11y:chrome