This repository was archived by the owner on Mar 17, 2021. It is now read-only.
File tree Expand file tree Collapse file tree 7 files changed +126
-4
lines changed Expand file tree Collapse file tree 7 files changed +126
-4
lines changed Original file line number Diff line number Diff line change @@ -26,6 +26,7 @@ module.exports = {
26
26
'components/button' ,
27
27
'components/checkbox' ,
28
28
'components/checkbox-group' ,
29
+ 'components/progress' ,
29
30
'components/radio' ,
30
31
'components/radio-group' ,
31
32
'components/spinner' ,
Original file line number Diff line number Diff line change
1
+ # Progress
2
+ Simple progress component showing progress.
3
+
4
+
5
+ ## Example
6
+
7
+ <div class =" p-3 border rounded-2 my-3 flex flex-column " >
8
+ <!-- Indeterminated -->
9
+ <v-progress class =" mb-5 " ></v-progress >
10
+
11
+ <!-- Determinated -->
12
+ <v-progress class =" mb-3 " :progress =" progress " type =" determinate " ></v-progress >
13
+
14
+ <div >
15
+ <v-button size="2" :disabled="progress === 0" @click.native="decrease">-</v-button>
16
+ <v-button size="2" :disabled="progress === 100" @click.native="increase">+</v-button>
17
+ </div >
18
+ </div >
19
+
20
+ ``` html
21
+ <!-- Indeterminate -->
22
+ <v-progress />
23
+
24
+ <!-- Determinate -->
25
+ <v-progress :progress =" progress" type =" determinate" ></v-progress >
26
+ ```
27
+
28
+ ## Props
29
+ Name | Type | Description | Default
30
+ ---------- | -------- | ----------- | ---------
31
+ type | String | Type of progress bar [ 'determinate', 'indeterminate'] | 'determinate'
32
+ appearance | String | Appearance of progress bar | 'primary'
33
+
34
+ <script >
35
+ export default {
36
+ data () {
37
+ return { progress: 10 };
38
+ },
39
+ methods: {
40
+ increase () {
41
+ if (this .progress < 100 ) {
42
+ this .progress = this .progress + 5 ;
43
+ }
44
+ },
45
+ decrease () {
46
+ if (this .progress > 0 ) {
47
+ this .progress = this .progress - 5 ;
48
+ }
49
+ },
50
+ },
51
+ };
52
+ </script >
Original file line number Diff line number Diff line change 18
18
"test:unit" : " vue-cli-service test:unit"
19
19
},
20
20
"devDependencies" : {
21
- "@modulist/css" : " 0.0.7 " ,
21
+ "@modulist/css" : " 0.0.9 " ,
22
22
"@vue/cli-plugin-babel" : " ^3.5.0" ,
23
23
"@vue/cli-plugin-eslint" : " ^3.5.0" ,
24
24
"@vue/cli-plugin-unit-jest" : " ^3.5.0" ,
Original file line number Diff line number Diff line change
1
+ import Progress from './main.vue' ;
2
+
3
+ // eslint-disable-next-line func-names
4
+ Progress . install = function ( Vue ) {
5
+ Vue . component ( 'VProgress' , Progress ) ;
6
+ } ;
7
+
8
+ export default Progress ;
Original file line number Diff line number Diff line change
1
+ <template >
2
+ <div class =" progress" :class =" classes" >
3
+ <div
4
+ class =" progress__bar"
5
+ role =" progressbar"
6
+
7
+ :aria-valuemax =" 100"
8
+ :aria-valuemin =" 0"
9
+ :aria-valuenow =" moderatedProgress"
10
+ :style =" { 'width': `${moderatedProgress}%` }"
11
+
12
+ v-if =" type === 'determinate'"
13
+ ></div >
14
+
15
+ <div
16
+ class =" progress__bar"
17
+ role =" progressbar"
18
+
19
+ :aria-valuemax =" 100"
20
+ :aria-valuemin =" 0"
21
+
22
+ v-else
23
+ ></div >
24
+ </div >
25
+ </template >
26
+
27
+ <script >
28
+ export default {
29
+ name: ' VProgress' ,
30
+ props: {
31
+ type: {
32
+ type: String ,
33
+ default: ' indeterminate' ,
34
+ validator (type ) {
35
+ return [' indeterminate' , ' determinate' ].indexOf (type) > - 1 ;
36
+ },
37
+ },
38
+ progress: {
39
+ type: Number ,
40
+ default: 0 ,
41
+ },
42
+ },
43
+ computed: {
44
+ classes () {
45
+ return [
46
+ ` progress--${ this .type } ` ,
47
+ ];
48
+ },
49
+ moderatedProgress () {
50
+ if (this .progress < 0 ) {
51
+ return 0 ;
52
+ }
53
+ if (this .progress > 100 ) {
54
+ return 100 ;
55
+ }
56
+ return this .progress ;
57
+ },
58
+ },
59
+ };
60
+ </script >
Original file line number Diff line number Diff line change @@ -4,6 +4,7 @@ export { default as VBadge } from './Badge';
4
4
export { default as VButton } from './Button' ;
5
5
export { default as VCheckbox } from './Checkbox' ;
6
6
export { default as VCheckboxGroup } from './CheckboxGroup' ;
7
+ export { default as VProgress } from './Progress' ;
7
8
export { default as VRadio } from './Radio' ;
8
9
export { default as VRadioGroup } from './RadioGroup' ;
9
10
export { default as VSpinner } from './Spinner' ;
You can’t perform that action at this time.
0 commit comments