@magicgol/polyjuice 0.52.2 → 0.54.0
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/content/card/horizontal-card/HCard.vue +23 -1
- package/src/components/content/card/vertical-card/VCard.vue +2 -1
- package/src/components/content/delimiter/vertical-delimiter/VDelimiter.stories.js +36 -0
- package/src/components/content/delimiter/vertical-delimiter/VDelimiter.vue +37 -0
- package/src/components/context/club/button/primary-club-button/PrimaryClubButton.vue +0 -1
- package/src/components/context/club/button/secondary-club-button/SecondaryClubButton.vue +0 -1
- package/src/components/context/footballer/horizontal-footballer-card/HFootballerCard.vue +29 -5
package/package.json
CHANGED
@@ -1,15 +1,24 @@
|
|
1
1
|
<template>
|
2
2
|
<div
|
3
|
-
class="d-flex text-truncate justify-content-between align-items-center
|
3
|
+
class="d-flex text-truncate justify-content-between align-items-center px-3 position-relative"
|
4
4
|
v-bind:class="classes"
|
5
5
|
>
|
6
|
+
<div
|
7
|
+
v-if="progressBar"
|
8
|
+
class="position-absolute h-100"
|
9
|
+
style="top: 0; left: 0; border-radius: 16px"
|
10
|
+
:class="progressBarClass"
|
11
|
+
:style="{ width: progressBar + '%' }"
|
12
|
+
></div>
|
6
13
|
<div
|
7
14
|
class="flex-fill text-truncate"
|
15
|
+
style="z-index: 1"
|
8
16
|
><slot></slot></div>
|
9
17
|
<!-- ACTIONS -->
|
10
18
|
<div
|
11
19
|
v-if="actionsSlotVisibility"
|
12
20
|
class="pl-3"
|
21
|
+
style="z-index: 1"
|
13
22
|
>
|
14
23
|
<slot name="actions"></slot>
|
15
24
|
</div>
|
@@ -21,6 +30,18 @@
|
|
21
30
|
export default {
|
22
31
|
name: 'mg-h-card',
|
23
32
|
|
33
|
+
props: {
|
34
|
+
progressBar: {
|
35
|
+
type: Number,
|
36
|
+
default: null
|
37
|
+
},
|
38
|
+
|
39
|
+
progressBarClass: {
|
40
|
+
type: String,
|
41
|
+
default: null,
|
42
|
+
},
|
43
|
+
},
|
44
|
+
|
24
45
|
computed: {
|
25
46
|
classes() {
|
26
47
|
return {
|
@@ -37,6 +58,7 @@ export default {
|
|
37
58
|
<style lang="scss">
|
38
59
|
.mg-h-card {
|
39
60
|
background: #fff;
|
61
|
+
border-radius: 16px;
|
40
62
|
box-shadow: 0 8px 12px 0 rgba(0, 0, 0, 0.25);
|
41
63
|
height: 3.75rem;
|
42
64
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<div
|
3
|
-
class="
|
3
|
+
class="overflow-hidden"
|
4
4
|
:class="classes"
|
5
5
|
@click="onClick"
|
6
6
|
>
|
@@ -85,6 +85,7 @@ export default {
|
|
85
85
|
|
86
86
|
.mg-v-card {
|
87
87
|
background: white;
|
88
|
+
border-radius: 16px;
|
88
89
|
box-shadow: 0 8px 15px 0 rgba(0, 0, 0, 0.3);
|
89
90
|
|
90
91
|
&--highlighted {
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import MgVDelimiter from './VDelimiter.vue';
|
2
|
+
|
3
|
+
// More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
|
4
|
+
export default {
|
5
|
+
title: 'Content/Delimiter/VDelimiter',
|
6
|
+
component: MgVDelimiter,
|
7
|
+
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
8
|
+
argTypes: {
|
9
|
+
default: {
|
10
|
+
description: "The default Vue slot",
|
11
|
+
control: {
|
12
|
+
type: 'text',
|
13
|
+
},
|
14
|
+
table: {
|
15
|
+
category: 'Slots',
|
16
|
+
type: {
|
17
|
+
summary: 'html',
|
18
|
+
},
|
19
|
+
}
|
20
|
+
},
|
21
|
+
},
|
22
|
+
};
|
23
|
+
|
24
|
+
// More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
|
25
|
+
const Template = (args, { argTypes }) => ({
|
26
|
+
props: Object.keys(argTypes),
|
27
|
+
components: { MgVDelimiter },
|
28
|
+
template: `<mg-v-delimiter v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-v-delimiter>`,
|
29
|
+
});
|
30
|
+
|
31
|
+
export const Default = Template.bind({});
|
32
|
+
// More on args: https://storybook.js.org/docs/vue/writing-stories/args
|
33
|
+
Default.args = {
|
34
|
+
default: 'this is the list head',
|
35
|
+
color: '#f00'
|
36
|
+
};
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<template>
|
2
|
+
<div
|
3
|
+
class="d-flex"
|
4
|
+
:class="classes"
|
5
|
+
>
|
6
|
+
<div
|
7
|
+
class="mr-3"
|
8
|
+
style="border: 2px solid; border-radius: 5px;"
|
9
|
+
:style="{borderColor: color, backgroundColor: color}"
|
10
|
+
></div>
|
11
|
+
<slot></slot>
|
12
|
+
</div>
|
13
|
+
</template>
|
14
|
+
|
15
|
+
<script>
|
16
|
+
export default {
|
17
|
+
name: 'mg-v-delimiter',
|
18
|
+
|
19
|
+
props: {
|
20
|
+
color: {
|
21
|
+
type: String,
|
22
|
+
validator: value => {
|
23
|
+
const regex = new RegExp(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/);
|
24
|
+
return regex.test(value);
|
25
|
+
},
|
26
|
+
},
|
27
|
+
},
|
28
|
+
|
29
|
+
computed: {
|
30
|
+
classes() {
|
31
|
+
return {
|
32
|
+
'mg-v-delimiter': true,
|
33
|
+
};
|
34
|
+
}
|
35
|
+
},
|
36
|
+
};
|
37
|
+
</script>
|
@@ -1,6 +1,8 @@
|
|
1
1
|
<template>
|
2
2
|
<mg-h-card
|
3
3
|
:class="classes"
|
4
|
+
:progress-bar="progressBar"
|
5
|
+
:progress-bar-class="progressBarClass"
|
4
6
|
>
|
5
7
|
<template v-slot:default>
|
6
8
|
<mg-h-footballer
|
@@ -15,8 +17,8 @@
|
|
15
17
|
</template>
|
16
18
|
|
17
19
|
<script>
|
18
|
-
import MgHFootballer from
|
19
|
-
import MgHCard from
|
20
|
+
import MgHFootballer from '../horizontal-footballer/HFootballer';
|
21
|
+
import MgHCard from '../../../content/card/horizontal-card/HCard';
|
20
22
|
|
21
23
|
export default {
|
22
24
|
name: 'mg-h-footballer-card',
|
@@ -42,18 +44,29 @@ export default {
|
|
42
44
|
type: Boolean,
|
43
45
|
default: false
|
44
46
|
}
|
45
|
-
}
|
47
|
+
},
|
48
|
+
progressBar: {
|
49
|
+
type: Number,
|
50
|
+
default: null
|
51
|
+
},
|
46
52
|
},
|
47
53
|
|
48
54
|
computed: {
|
49
|
-
classes() {
|
55
|
+
classes () {
|
50
56
|
return {
|
51
57
|
'mg-h-footballer-card': true,
|
52
58
|
'mg-h-footballer-card--pressed': this.pressed === true,
|
53
59
|
};
|
54
60
|
},
|
55
|
-
actionsSlotVisibility() {
|
61
|
+
actionsSlotVisibility () {
|
56
62
|
return 'actions' in this.$slots && !!this.$slots.actions;
|
63
|
+
},
|
64
|
+
progressBarClass () {
|
65
|
+
if (!this.progressBar) {
|
66
|
+
return null;
|
67
|
+
}
|
68
|
+
|
69
|
+
return this.progressBar >= 50 ? 'mg-h-footballer-card--theme-success' : 'mg-h-footballer-card--theme-error';
|
57
70
|
}
|
58
71
|
},
|
59
72
|
|
@@ -65,10 +78,21 @@ export default {
|
|
65
78
|
</script>
|
66
79
|
|
67
80
|
<style lang="scss">
|
81
|
+
@import '../../../../assets/palette';
|
82
|
+
|
68
83
|
.mg-h-footballer-card {
|
69
84
|
&--pressed {
|
70
85
|
background: #daf0d9 !important;
|
71
86
|
box-shadow: inset 0 4px 9px rgba(0, 0, 0, 0.1) !important;
|
72
87
|
}
|
88
|
+
|
89
|
+
&--theme {
|
90
|
+
&-success {
|
91
|
+
background-color: rgba(map-get($palette, 'success'), 0.2);
|
92
|
+
}
|
93
|
+
&-error {
|
94
|
+
background-color: rgba(map-get($palette, 'error'), 0.2);
|
95
|
+
}
|
96
|
+
}
|
73
97
|
}
|
74
98
|
</style>
|