nextcloud-contacts/src/components/ProcessingScreen.vue

67 lines
1013 B
Vue

<template>
<EmptyContent class="processing-screen__wrapper" icon="icon-contacts">
<slot />
<template #desc>
<div class="processing-screen__progress">
<progress :max="total" :value="progress" />
</div>
<slot name="desc" />
</template>
</EmptyContent>
</template>
<script>
import EmptyContent from '@nextcloud/vue/dist/Components/EmptyContent'
export default {
name: 'ProcessingScreen',
components: {
EmptyContent,
},
props: {
total: {
type: Number,
required: true,
},
progress: {
type: Number,
required: true,
},
},
}
</script>
<style lang="scss" scoped>
.processing-screen {
&__wrapper {
display: flex;
flex-direction: column;
width: auto;
min-width: 30vw;
margin: 50px;
// Progress wrapper
&::v-deep > p {
display: flex;
width: 80%;
margin: auto;
}
button {
padding: 10px;
height: 44px;
align-self: flex-end;
margin-top: 22px;
min-width: 100px;
}
}
&__progress {
width: 100%;
display: flex;
}
}
</style>