diff options
Diffstat (limited to 'docs')
-rw-r--r-- | docs/.vuepress/components/BmcToasts.vue | 36 | ||||
-rw-r--r-- | docs/.vuepress/config.js | 1 | ||||
-rw-r--r-- | docs/.vuepress/enhanceApp.js | 11 | ||||
-rw-r--r-- | docs/guide/components/toast.md | 32 |
4 files changed, 79 insertions, 1 deletions
diff --git a/docs/.vuepress/components/BmcToasts.vue b/docs/.vuepress/components/BmcToasts.vue new file mode 100644 index 00000000..15a480f6 --- /dev/null +++ b/docs/.vuepress/components/BmcToasts.vue @@ -0,0 +1,36 @@ +<template> + <div> + <b-button variant="success" @click="makeSuccessToast()">Show Success</b-button> + <b-button variant="danger" @click="makeErrorToast()">Show Error</b-button> + <b-button variant="warning" @click="makeWarningToast()">Show Warning</b-button> + <b-button variant="info" @click="makeInfoToast()">Show Info</b-button> + </div> +</template> + +<script> +import BVToastMixin from '../../../src/components/Mixins/BVToastMixin'; +export default { + name: 'BmcToasts', + mixins: [BVToastMixin], + methods: { + makeSuccessToast() { + this.successToast('This is a success toast and will be dismissed after 10 seconds.'); + }, + makeErrorToast() { + this.errorToast('This is an error toast and must be dismissed by the user.'); + }, + makeWarningToast() { + this.warningToast('This is a warning toast and must be dismissed by the user.'); + }, + makeInfoToast() { + this.infoToast('This is an info toast and must be dismissed by the user.'); + }, + } +} +</script> +<style scoped> + button { + margin-right: .5rem; + margin-bottom: 1rem; + } +</style>
\ No newline at end of file diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index 2be074e4..680c98ef 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -45,6 +45,7 @@ module.exports = { children: [ "/guide/components/", "/guide/components/button", + "/guide/components/toast", ] } ], diff --git a/docs/.vuepress/enhanceApp.js b/docs/.vuepress/enhanceApp.js index 59c1f925..799cf208 100644 --- a/docs/.vuepress/enhanceApp.js +++ b/docs/.vuepress/enhanceApp.js @@ -1,10 +1,19 @@ +// OpenBMC Imports import "../../src/assets/styles/_obmc-custom.scss"; +import BVToastMixin from "../../src/components/Mixins/BVToastMixin"; + +// Bootstrap-vue Plugin imports import { - ButtonPlugin + ButtonPlugin, + ToastPlugin } from 'bootstrap-vue'; export default ({ Vue }) => { Vue.use(ButtonPlugin); + Vue.use(ToastPlugin); + + // BMC Components and Mixins + Vue.mixin('BVToastMixin', BVToastMixin); }
\ No newline at end of file diff --git a/docs/guide/components/toast.md b/docs/guide/components/toast.md new file mode 100644 index 00000000..5dc2e0e9 --- /dev/null +++ b/docs/guide/components/toast.md @@ -0,0 +1,32 @@ +# Toasts +Use a toast message to indicate the status of a user action. For example, a user saves a form successfully, a toast message with the `success` variant is displayed. If the user action was not successful, a toast message with the `danger` variant is displayed. + +There are different transitions for the toast messages. The `success` toast message will auto-hide after 10 seconds. The user must manually dismiss the `informational`, `warning`, and `error` toast messages. The `BVToastMixin` provides a simple API that generates a toast message that meets the transition guidelines. + +<BmcToasts /> + +```js{5} +// Sample method from Reboot BMC page +rebootBmc() { + this.$store + .dispatch('controls/rebootBmc') + .then(message => this.successToast(message)) + .catch(({ message }) => this.errorToast(message)); +} + +// Methods used in this example +methods: { + makeSuccessToast() { + this.successToast('This is a success toast and will be dismissed after 10 seconds.'); + }, + makeErrorToast() { + this.errorToast('This is an error toast and must be dismissed by the user.'); + }, + makeWarningToast() { + this.warningToast('This is a warning toast and must be dismissed by the user.'); + }, + makeInfoToast() { + this.infoToast('This is an info toast and must be dismissed by the user.'); + }, +} +```
\ No newline at end of file |