@magicgol/polyjuice 0.39.3 → 0.40.1
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/package.json +1 -1
- package/src/components/{components → badge}/badge/Badge.stories.js +1 -1
- package/src/components/{components → badge}/badge/Badge.vue +0 -0
- package/src/components/badge/counter/CounterBadge.stories.js +30 -0
- package/src/components/badge/counter/CounterBadge.vue +50 -0
- package/src/components/{components/icon-badge → badge/icon}/IconBadge.stories.js +1 -1
- package/src/components/{components/icon-badge → badge/icon}/IconBadge.vue +0 -0
- package/src/components/components/label/Label.stories.js +2 -3
- package/src/components/components/label/Label.vue +10 -1
- package/src/components/content/card/vertical-card/VCard.stories.js +20 -0
- package/src/components/content/card/vertical-card/VCard.vue +13 -4
- package/src/components/context/club/IconBadge.stories.js +1 -1
package/package.json
CHANGED
@@ -2,7 +2,7 @@ import MgBadge from './Badge.vue';
|
|
2
2
|
|
3
3
|
// More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
|
4
4
|
export default {
|
5
|
-
title: '
|
5
|
+
title: 'Badge/Badge',
|
6
6
|
component: MgBadge,
|
7
7
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
8
8
|
argTypes: {},
|
File without changes
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import MgCounterBadge from './CounterBadge.vue';
|
2
|
+
|
3
|
+
// More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
|
4
|
+
export default {
|
5
|
+
title: 'Badge/Counter',
|
6
|
+
component: MgCounterBadge,
|
7
|
+
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
8
|
+
argTypes: {},
|
9
|
+
};
|
10
|
+
|
11
|
+
// More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
|
12
|
+
const Template = (args, { argTypes }) => ({
|
13
|
+
props: Object.keys(argTypes),
|
14
|
+
components: { MgCounterBadge },
|
15
|
+
template: `<mg-counter-badge v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-counter-badge>`,
|
16
|
+
});
|
17
|
+
|
18
|
+
export const Default = Template.bind({});
|
19
|
+
// More on args: https://storybook.js.org/docs/vue/writing-stories/args
|
20
|
+
Default.args = {
|
21
|
+
count: 1
|
22
|
+
};
|
23
|
+
|
24
|
+
export const Many = Template.bind({});
|
25
|
+
// More on args: https://storybook.js.org/docs/vue/writing-stories/args
|
26
|
+
Many.args = {
|
27
|
+
count: 10
|
28
|
+
};
|
29
|
+
|
30
|
+
|
@@ -0,0 +1,50 @@
|
|
1
|
+
<template>
|
2
|
+
<div
|
3
|
+
class="d-inline-flex align-items-center rounded-circle justify-content-center"
|
4
|
+
:class="classes"
|
5
|
+
v-if="visible"
|
6
|
+
>
|
7
|
+
<span>{{ count >= 9 ? '9+' : count }}</span>
|
8
|
+
</div>
|
9
|
+
</template>
|
10
|
+
|
11
|
+
<script>
|
12
|
+
export default {
|
13
|
+
name: 'mg-counter-badge',
|
14
|
+
|
15
|
+
props: {
|
16
|
+
count: {
|
17
|
+
type: Number,
|
18
|
+
default: 0
|
19
|
+
}
|
20
|
+
},
|
21
|
+
|
22
|
+
computed: {
|
23
|
+
classes() {
|
24
|
+
return {
|
25
|
+
'mg-counter-badge': true,
|
26
|
+
};
|
27
|
+
},
|
28
|
+
|
29
|
+
visible () {
|
30
|
+
return this.count > 0;
|
31
|
+
}
|
32
|
+
},
|
33
|
+
};
|
34
|
+
</script>
|
35
|
+
|
36
|
+
<style lang="scss">
|
37
|
+
@import '../../../assets/palette';
|
38
|
+
|
39
|
+
.mg-counter-badge {
|
40
|
+
background-color: map-get($palette, 'brand');
|
41
|
+
color: #fff;
|
42
|
+
font-family: 'Ubuntu', sans-serif;
|
43
|
+
font-size: 0.75rem;
|
44
|
+
font-weight: 600;
|
45
|
+
height: 1.125rem;
|
46
|
+
min-height: 1.125rem;
|
47
|
+
min-width: 1.125rem;
|
48
|
+
width: 1.125rem;
|
49
|
+
}
|
50
|
+
</style>
|
@@ -2,7 +2,7 @@ import MgIconBadge from './IconBadge.vue';
|
|
2
2
|
|
3
3
|
// More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
|
4
4
|
export default {
|
5
|
-
title: '
|
5
|
+
title: 'Badge/Icon',
|
6
6
|
component: MgIconBadge,
|
7
7
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
8
8
|
argTypes: {
|
File without changes
|
@@ -13,7 +13,7 @@ export default {
|
|
13
13
|
},
|
14
14
|
theme: {
|
15
15
|
control: { type: 'select' },
|
16
|
-
options: ['light', 'dark', 'club', 'trial', 'goalkeeper', 'defender', 'midfielder', 'forward', 'success'],
|
16
|
+
options: ['light', 'dark', 'tag', 'club', 'trial', 'goalkeeper', 'defender', 'midfielder', 'forward', 'success'],
|
17
17
|
defaultValue: 'light'
|
18
18
|
},
|
19
19
|
default: {
|
@@ -41,6 +41,5 @@ const Template = (args, { argTypes }) => ({
|
|
41
41
|
export const Default = Template.bind({});
|
42
42
|
// More on args: https://storybook.js.org/docs/vue/writing-stories/args
|
43
43
|
Default.args = {
|
44
|
-
default: 'etichetta'
|
45
|
-
size: 'x-small'
|
44
|
+
default: 'etichetta'
|
46
45
|
};
|
@@ -25,7 +25,7 @@ export default {
|
|
25
25
|
type: String,
|
26
26
|
default: 'light',
|
27
27
|
validator: function (value) {
|
28
|
-
return ['light', 'dark', 'club', 'trial', 'goalkeeper', 'defender', 'midfielder', 'forward', 'success'].indexOf(value) !== -1;
|
28
|
+
return ['light', 'dark', 'tag', 'club', 'trial', 'goalkeeper', 'defender', 'midfielder', 'forward', 'success'].indexOf(value) !== -1;
|
29
29
|
},
|
30
30
|
},
|
31
31
|
},
|
@@ -38,6 +38,7 @@ export default {
|
|
38
38
|
'mg-label--size-normal': this.size === 'normal',
|
39
39
|
'mg-label--theme-light': this.theme === 'light',
|
40
40
|
'mg-label--theme-dark': this.theme === 'dark',
|
41
|
+
'mg-label--theme-tag': this.theme === 'tag',
|
41
42
|
'mg-label--theme-club': this.theme === 'club',
|
42
43
|
'mg-label--theme-trial': this.theme === 'trial',
|
43
44
|
'mg-label--theme-goalkeeper': this.theme === 'goalkeeper',
|
@@ -97,6 +98,14 @@ export default {
|
|
97
98
|
color: #fff;
|
98
99
|
}
|
99
100
|
|
101
|
+
&-tag {
|
102
|
+
background-color: lighten(map-get($palette, 'brand'), 50%);
|
103
|
+
> div {
|
104
|
+
background: lighten(map-get($palette, 'brand'), 50%);
|
105
|
+
}
|
106
|
+
color: map-get($palette, 'brand');
|
107
|
+
}
|
108
|
+
|
100
109
|
&-club {
|
101
110
|
background: map-get($palette, 'club');
|
102
111
|
> div {
|
@@ -33,6 +33,18 @@ export default {
|
|
33
33
|
],
|
34
34
|
defaultValue: null
|
35
35
|
},
|
36
|
+
header: {
|
37
|
+
description: "The header content goes here",
|
38
|
+
control: {
|
39
|
+
type: 'text',
|
40
|
+
},
|
41
|
+
table: {
|
42
|
+
category: 'Slots',
|
43
|
+
type: {
|
44
|
+
summary: 'html',
|
45
|
+
},
|
46
|
+
}
|
47
|
+
},
|
36
48
|
footer: {
|
37
49
|
description: "The footer content goes here",
|
38
50
|
control: {
|
@@ -53,6 +65,7 @@ const Template = (args, { argTypes }) => ({
|
|
53
65
|
props: Object.keys(argTypes),
|
54
66
|
components: { MgVCard },
|
55
67
|
template: `<mg-v-card @click="$emit('click')" v-bind="$props">
|
68
|
+
<template v-if="${'header' in args}" v-slot:header>${args.header}</template>
|
56
69
|
<template v-if="${'default' in args}" v-slot>${args.default}</template>
|
57
70
|
<template v-if="${'footer' in args}" v-slot:footer>${args.footer}</template>
|
58
71
|
</mg-v-card>`,
|
@@ -64,6 +77,13 @@ Default.args = {
|
|
64
77
|
default: '<div>This is a vertical card.</div><div>What do you think about?</div>'
|
65
78
|
};
|
66
79
|
|
80
|
+
export const Header = Template.bind({});
|
81
|
+
// More on args: https://storybook.js.org/docs/vue/writing-stories/args
|
82
|
+
Header.args = {
|
83
|
+
default: '<div>This is a vertical card.</div><div>What do you think about?</div>',
|
84
|
+
header: '<div>The header content goes here</div>'
|
85
|
+
};
|
86
|
+
|
67
87
|
export const Footer = Template.bind({});
|
68
88
|
// More on args: https://storybook.js.org/docs/vue/writing-stories/args
|
69
89
|
Footer.args = {
|
@@ -4,12 +4,18 @@
|
|
4
4
|
:class="classes"
|
5
5
|
@click="onClick"
|
6
6
|
>
|
7
|
+
<div
|
8
|
+
class="mg-v-card-header"
|
9
|
+
v-if="headerVisibility"
|
10
|
+
>
|
11
|
+
<slot name="header"></slot>
|
12
|
+
</div>
|
7
13
|
<div class="mg-v-card-body p-3"><slot></slot></div>
|
8
14
|
<div
|
9
15
|
class="mg-v-card-footer px-3 pb-3"
|
10
16
|
v-if="footerVisibility"
|
11
17
|
>
|
12
|
-
<div class="
|
18
|
+
<div class="pt-3">
|
13
19
|
<slot name="footer"></slot>
|
14
20
|
</div>
|
15
21
|
</div>
|
@@ -53,6 +59,9 @@ export default {
|
|
53
59
|
'mg-v-card--theme-transparent': this.theme === 'transparent',
|
54
60
|
};
|
55
61
|
},
|
62
|
+
headerVisibility() {
|
63
|
+
return 'header' in this.$slots && !!this.$slots.header;
|
64
|
+
},
|
56
65
|
footerVisibility() {
|
57
66
|
return 'footer' in this.$slots && !!this.$slots.footer;
|
58
67
|
}
|
@@ -75,8 +84,8 @@ export default {
|
|
75
84
|
|
76
85
|
&--theme {
|
77
86
|
&-club {
|
78
|
-
background:
|
79
|
-
color: #
|
87
|
+
background: linear-gradient(90deg, #d1efff 0%, #dddafc 99.65%);;
|
88
|
+
color: #777;
|
80
89
|
}
|
81
90
|
|
82
91
|
&-rating {
|
@@ -111,7 +120,7 @@ export default {
|
|
111
120
|
}
|
112
121
|
|
113
122
|
&-footer {
|
114
|
-
|
123
|
+
> div {
|
115
124
|
border-top: 1px solid #cecece;
|
116
125
|
}
|
117
126
|
}
|