- Added loader for spells list

This commit is contained in:
Alexis
2020-06-28 17:57:34 +02:00
parent 52a7348d7e
commit eadbaa53ac
6 changed files with 141 additions and 31 deletions

View File

@@ -0,0 +1,110 @@
<template>
<div class="lds-roller">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
</template>
<script>
export default {
name: 'loader',
data() {
return {
}
}
}
</script>
<style scoped lang="scss">
.lds-roller {
display: inline-block;
position: relative;
width: 80px;
height: 80px;
div {
animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
transform-origin: 40px 40px;
&:after {
content: "";
display: block;
position: absolute;
width: 7px;
height: 7px;
border-radius: 50%;
background: var(--primary);
margin: -4px 0 0 -4px;
}
&:nth-child(1) {
animation-delay: -0.036s;
&:after {
top: 63px;
left: 63px;
}
}
&:nth-child(2) {
animation-delay: -0.072s;
&:after {
top: 68px;
left: 56px;
}
}
&:nth-child(3) {
animation-delay: -0.108s;
&:after {
top: 71px;
left: 48px;
}
}
&:nth-child(4) {
animation-delay: -0.144s;
&:after {
top: 72px;
left: 40px;
}
}
&:nth-child(5) {
animation-delay: -0.18s;
&:after {
top: 71px;
left: 32px;
}
}
&:nth-child(6) {
animation-delay: -0.216s;
&:after {
top: 68px;
left: 24px;
}
}
&:nth-child(7) {
animation-delay: -0.252s;
&:after {
top: 63px;
left: 17px;
}
}
&:nth-child(8) {
animation-delay: -0.288s;
&:after {
top: 56px;
left: 12px;
}
}
}
}
@keyframes lds-roller {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
</style>

View File

@@ -62,6 +62,11 @@
@cancelAdd="cancelAdd"
@addSpell="addSpell"/>
</div>
<div
v-else
class="loader-wrapper">
<loader/>
</div>
</div>
</template>
@@ -74,7 +79,6 @@ import AddSpellCard from "./add-spell-card"
// API
import { RepositoryFactory } from "~/api/repositories"
const Spells = RepositoryFactory.get('spells')
// const Schools = RepositoryFactory.get('schools')
export default {
name: 'spellslist',
@@ -184,5 +188,8 @@ export default {
</script>
<style lang="scss">
.loader-wrapper {
margin-top: 3rem;
text-align: center;
}
</style>