From 10dc8361ff6e2b5e78efee786402d8a004628b26 Mon Sep 17 00:00:00 2001 From: Ramon Wenger Date: Wed, 16 Feb 2022 15:11:59 +0100 Subject: [PATCH] Add loading spinner to document and image forms --- .../components/content-forms/DocumentForm.vue | 37 +++++++++++++++++-- .../components/content-forms/ImageForm.vue | 36 +++++++++++++++--- client/src/components/icons/LoadingIcon.vue | 2 + client/src/helpers/uploadcare.js | 3 +- 4 files changed, 69 insertions(+), 9 deletions(-) diff --git a/client/src/components/content-forms/DocumentForm.vue b/client/src/components/content-forms/DocumentForm.vue index 154bc735..b5258bc6 100644 --- a/client/src/components/content-forms/DocumentForm.vue +++ b/client/src/components/content-forms/DocumentForm.vue @@ -7,6 +7,12 @@ v-if="!value.url" ref="uploadcare-panel" /> +
+ +
import {uploadcare} from '@/helpers/uploadcare'; + import LoadingIcon from '@/components/icons/LoadingIcon'; const DocumentIcon = () => import(/* webpackChunkName: "icons" */'@/components/icons/DocumentIcon'); @@ -30,7 +37,14 @@ props: ['value', 'index'], components: { - DocumentIcon + LoadingIcon, + DocumentIcon, + }, + + data() { + return { + loading: false, + }; }, computed: { @@ -46,19 +60,23 @@ return parts[parts.length - 1]; } return ''; - } + }, }, mounted() { uploadcare(this, url => { this.$emit('change-url', url, this.index); + this.loading = false; + }, () => { + this.loading = true; + }); }, };