Stackedit/src/components/Notification.vue

53 lines
1.0 KiB
Vue
Raw Normal View History

2017-09-23 19:01:50 +00:00
<template>
<div class="notification">
<div class="notification__item flex flex--row flex--align-center" v-for="(item, idx) in items" :key="idx">
<div class="notification__icon flex flex--column flex--center">
<icon-information v-if="item.type === 'info'"></icon-information>
<icon-alert v-else-if="item.type === 'error'"></icon-alert>
</div>
<div class="notification__content">
{{item.content}}
</div>
</div>
</div>
</template>
<script>
import { mapState } from 'vuex';
export default {
computed: mapState('notification', [
'items',
]),
};
</script>
<style lang="scss">
@import 'common/variables.scss';
.notification {
position: absolute;
bottom: 0;
right: 0;
width: 100%;
max-width: 340px;
}
.notification__item {
margin: 10px;
padding: 10px 15px;
line-height: 1.4;
background-color: #000;
color: #fff;
font-size: 0.9em;
border-radius: $border-radius-base;
}
.notification__icon {
height: 20px;
width: 20px;
margin-right: 12px;
flex: none;
}
</style>