@usssa/component-library 1.0.0-alpha.38 → 1.0.0-alpha.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
package/package.json
CHANGED
package/src/components/index.js
CHANGED
|
@@ -29,8 +29,10 @@ import UMenuButtonStd from './core/UMenuButtonStd.vue'
|
|
|
29
29
|
import UBreadCrumbs from './core/UBreadCrumbs.vue'
|
|
30
30
|
|
|
31
31
|
import { useNotify } from '../composables/useNotify.js'
|
|
32
|
+
import { useOverlayLoader } from '../composables/useOverlayLoader.js'
|
|
32
33
|
|
|
33
34
|
export {
|
|
35
|
+
useOverlayLoader,
|
|
34
36
|
useNotify,
|
|
35
37
|
UAvatar,
|
|
36
38
|
UAvatarGroup,
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Loading, QSpinnerGears } from 'quasar'
|
|
2
|
+
|
|
3
|
+
export const useOverlayLoader = () => {
|
|
4
|
+
|
|
5
|
+
const showLoader = (props) => {
|
|
6
|
+
|
|
7
|
+
Loading.show({
|
|
8
|
+
backgroundColor: props?.backgroundColor,
|
|
9
|
+
customClass: props.customClass ? props.customClass : '',
|
|
10
|
+
message: props?.message,
|
|
11
|
+
messageColor: props.messageColor ? props.messageColor: 'dark',
|
|
12
|
+
spinner: props.spinner ? props.spinner : QSpinnerGears,
|
|
13
|
+
spinnerSize: props.spinnerSize ? props.spinnerSize : '6rem',
|
|
14
|
+
spinnerColor: props?.spinnerColor
|
|
15
|
+
})
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const hideLoader = () =>{
|
|
19
|
+
Loading.hide()
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return { showLoader, hideLoader }
|
|
23
|
+
}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { ref } from 'vue'
|
|
3
|
+
import { useOverlayLoader } from '../composables/useOverlayLoader'
|
|
4
|
+
import ComponentBase from './ComponentBase.vue'
|
|
5
|
+
import UBtnStd from 'src/components/core/UBtnStd.vue'
|
|
6
|
+
import {
|
|
7
|
+
QSpinnerGears,
|
|
8
|
+
QSpinnerFacebook,
|
|
9
|
+
QSpinnerBars,
|
|
10
|
+
QSpinnerDots,
|
|
11
|
+
} from 'quasar'
|
|
12
|
+
|
|
13
|
+
defineOptions({
|
|
14
|
+
name: 'OverlayLoader',
|
|
15
|
+
})
|
|
16
|
+
|
|
17
|
+
const { showLoader, hideLoader } = useOverlayLoader()
|
|
18
|
+
const messageColors = ['dark', 'white', 'primary', 'positive', 'warning']
|
|
19
|
+
const backgroundColors = ['dark', 'white', 'primary', 'positive', 'warning']
|
|
20
|
+
const spinnerColors = ['dark', 'white', 'primary', 'positive', 'warning']
|
|
21
|
+
const spinnerOptions = [
|
|
22
|
+
{
|
|
23
|
+
label: 'QSpinnerGears',
|
|
24
|
+
value: QSpinnerGears,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
label: 'QSpinnerBars',
|
|
28
|
+
value: QSpinnerBars,
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
label: 'QSpinnerDots',
|
|
32
|
+
value: QSpinnerDots,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
label: 'QSpinnerFacebook',
|
|
36
|
+
value: QSpinnerFacebook,
|
|
37
|
+
},
|
|
38
|
+
]
|
|
39
|
+
const customProps = ref({
|
|
40
|
+
backgroundColor: 'dark',
|
|
41
|
+
message: 'Authenticating User',
|
|
42
|
+
messageColor: 'white',
|
|
43
|
+
spinner: spinnerOptions[0],
|
|
44
|
+
spinnerSize: '6rem',
|
|
45
|
+
spinnerColor: 'white',
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
const htmlContent = `
|
|
49
|
+
const { showLoader, hideLoader } = useOverlayLoader()
|
|
50
|
+
|
|
51
|
+
--To show the loader--
|
|
52
|
+
|
|
53
|
+
showLoader({
|
|
54
|
+
backgroundColor:props.backgroundColor,
|
|
55
|
+
message: props..message,
|
|
56
|
+
messageColor: props.messageColor
|
|
57
|
+
spinner: props.spinner
|
|
58
|
+
spinnerSize: props.spinnerSize,
|
|
59
|
+
spinnerColor: props.spinnerColor,
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
--To hide the loader--
|
|
63
|
+
|
|
64
|
+
hideLoader()`
|
|
65
|
+
|
|
66
|
+
const showOverlayLoader = () => {
|
|
67
|
+
showLoader({
|
|
68
|
+
backgroundColor: customProps.value?.backgroundColor,
|
|
69
|
+
message: customProps.value?.message,
|
|
70
|
+
messageColor: customProps.value.messageColor,
|
|
71
|
+
spinner: customProps.value.spinner.value,
|
|
72
|
+
spinnerSize: customProps.value.spinnerSize,
|
|
73
|
+
spinnerColor: customProps.value.spinnerColor,
|
|
74
|
+
})
|
|
75
|
+
|
|
76
|
+
setTimeout(() => {
|
|
77
|
+
hideLoader()
|
|
78
|
+
}, 2000)
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
</script>
|
|
82
|
+
|
|
83
|
+
<template>
|
|
84
|
+
<q-page class="flex flex-center">
|
|
85
|
+
<ComponentBase figmaUrl="#">
|
|
86
|
+
<template v-slot:component>
|
|
87
|
+
<UBtnStd label="Show loader" color="primary" @on-click="showOverlayLoader" />
|
|
88
|
+
</template>
|
|
89
|
+
|
|
90
|
+
<template v-slot:properties>
|
|
91
|
+
<div class="column q-gutter-y-lg">
|
|
92
|
+
<q-input label="Message" v-model="customProps.message" />
|
|
93
|
+
<q-input
|
|
94
|
+
label="Spinner size (In rem)"
|
|
95
|
+
v-model="customProps.spinnerSize"
|
|
96
|
+
/>
|
|
97
|
+
|
|
98
|
+
<q-select
|
|
99
|
+
v-model="customProps.messageColor"
|
|
100
|
+
:options="messageColors"
|
|
101
|
+
label="Message color"
|
|
102
|
+
/>
|
|
103
|
+
<q-select
|
|
104
|
+
v-model="customProps.backgroundColor"
|
|
105
|
+
:options="backgroundColors"
|
|
106
|
+
label="Background color"
|
|
107
|
+
/>
|
|
108
|
+
<q-select
|
|
109
|
+
v-model="customProps.spinnerColor"
|
|
110
|
+
:options="spinnerColors"
|
|
111
|
+
label="Spinner color"
|
|
112
|
+
/>
|
|
113
|
+
<q-select
|
|
114
|
+
v-model="customProps.spinner"
|
|
115
|
+
:options="spinnerOptions"
|
|
116
|
+
option-value="value"
|
|
117
|
+
option-label="label"
|
|
118
|
+
label="Spinner"
|
|
119
|
+
/>
|
|
120
|
+
</div>
|
|
121
|
+
</template>
|
|
122
|
+
|
|
123
|
+
<template v-slot:code>
|
|
124
|
+
<pre><code>{{ htmlContent }}</code></pre>
|
|
125
|
+
</template>
|
|
126
|
+
</ComponentBase>
|
|
127
|
+
</q-page>
|
|
128
|
+
</template>
|
package/src/router/routes.js
CHANGED