PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4.7
Booking for Appointments and Events Calendar – Amelia v2.4.7
2.4.9 2.4.8 2.4.7 2.4.6 2.4.5 2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / v3 / src / views / public / Parts / Skeletons / CustomerInfoSkeleton.vue
ameliabooking / v3 / src / views / public / Parts / Skeletons Last commit date
CustomerInfoSkeleton.vue 1 month ago
CustomerInfoSkeleton.vue
63 lines
1 <template>
2 <el-skeleton v-show="loading" animated class="am-skeleton-ci">
3 <template #template>
4 <div v-for="item in new Array(10)" :key="item" class="am-skeleton-ci__inner">
5 <el-skeleton-item class="am-skeleton-ci__label" variant="text" />
6 <el-skeleton-item class="am-skeleton-ci__input" variant="text" />
7 </div>
8 </template>
9 </el-skeleton>
10 </template>
11
12 <script setup>
13 // * Import from Vue
14 import { computed } from 'vue'
15
16 // * Import from Store
17 import { useStore } from 'vuex'
18
19 const store = useStore()
20
21 let bookableType = computed(() => store.getters['bookableType/getType'])
22
23 let loading = computed(() => {
24 if (bookableType.value === 'event') {
25 return store.getters['getLoading']
26 }
27
28 return store.getters['booking/getLoading']
29 })
30 </script>
31
32 <style lang="scss">
33 .amelia-v2-booking #amelia-container {
34 .am-skeleton-ci {
35 &__inner {
36 display: inline-flex;
37 flex-direction: column;
38 width: calc(50% - 8px);
39 margin-bottom: 24px;
40
41 &:nth-child(odd) {
42 margin-right: 8px;
43 }
44
45 &:nth-child(even) {
46 margin-left: 8px;
47 }
48 }
49
50 &__label {
51 height: 20px;
52 width: 65%;
53 margin-bottom: 6px;
54 }
55
56 &__input {
57 height: 40px;
58 width: 100%;
59 }
60 }
61 }
62 </style>
63