barbican-reset 1.2.5 → 1.2.9
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/components/alert.vue +28 -49
- package/components/container.vue +15 -7
- package/components/display_stream.vue +58 -0
- package/components/event_summary.vue +1 -1
- package/components/fluid_iframe.vue +39 -0
- package/components/footer_logos.vue +30 -0
- package/components/footer_lower.vue +20 -0
- package/components/footer_upper.vue +43 -0
- package/components/form_group.vue +92 -0
- package/components/form_update.vue +2 -3
- package/components/help_row.vue +33 -0
- package/components/radio_group.vue +27 -0
- package/components/type_text.vue +14 -14
- package/helpers/mixins/_buttons.scss +28 -2
- package/icons/.DS_Store +0 -0
- package/icons/account/index.js +6 -6
- package/icons/account/{MembershipIcon.vue → membership.vue} +0 -0
- package/icons/account/{OrdersIcon.vue → orders.vue} +0 -0
- package/icons/account/{PaymentIcon.vue → payment.vue} +0 -0
- package/icons/account/{PersonalIcon.vue → personal.vue} +0 -0
- package/icons/account/{SupportIcon.vue → support.vue} +0 -0
- package/icons/account/{VideoIcon.vue → video.vue} +0 -0
- package/icons/{arrow_icon.vue → arrow.vue} +0 -0
- package/icons/{barbican/index.vue → barbican.vue} +8 -1
- package/icons/city_of_london_lockup.vue +30 -0
- package/icons/index.js +3 -1
- package/icons/password/index.js +2 -2
- package/icons/password/{RequestIcon.vue → request.vue} +0 -0
- package/icons/password/{ResetIcon.vue → reset.vue} +0 -0
- package/icons/power/alleyne.vue +3 -0
- package/icons/power/banff.vue +3 -0
- package/icons/power/council.vue +13 -0
- package/icons/power/index.js +3 -3
- package/icons/snippets/{BarbicanIcon.vue → barbican.vue} +0 -0
- package/icons/snippets/{ContributorIcon.vue → contributor.vue} +0 -0
- package/icons/snippets/index.js +4 -4
- package/icons/snippets/{OtherIcon.vue → other.vue} +0 -0
- package/icons/snippets/{PinIcon.vue → pin.vue} +0 -0
- package/icons/stream/{AirplayIcon.vue → airplay.vue} +0 -0
- package/icons/stream/{CastIcon.vue → cast.vue} +0 -0
- package/icons/stream/{ChatIcon.vue → chat.vue} +0 -0
- package/icons/stream/close.vue +7 -0
- package/icons/stream/{CogIcon.vue → cog.vue} +0 -0
- package/icons/stream/index.js +7 -7
- package/icons/stream/{LiveIcon/index.vue → live.vue} +46 -1
- package/icons/stream/{VolumeIcon.vue → volume.vue} +0 -0
- package/index.js +17 -3
- package/package.json +1 -1
- package/scss/_atomic.scss +10 -0
- package/scss/_btn.scss +8 -0
- package/scss/_radio-group.scss +4 -8
- package/scss/card/_account.scss +16 -0
- package/scss/card/_video-help.scss +31 -0
- package/scss/card/index.scss +2 -0
- package/scss/index.scss +9 -4
- package/scss/table/_details.scss +66 -0
- package/scss/table/_orders.scss +50 -0
- package/scss/table/_preferences.scss +73 -0
- package/scss/table/_tickets.scss +5 -3
- package/scss/table/index.scss +3 -0
- package/components/account_card.vue +0 -31
- package/icons/barbican/index.scss +0 -5
- package/icons/power/AlleyneIcon.vue +0 -16
- package/icons/power/BanffIcon.vue +0 -41
- package/icons/power/CouncilIcon.vue +0 -56
- package/icons/stream/LiveIcon/live_icon.scss +0 -42
- package/icons/stream/close_icon.vue +0 -23
- package/scss/_form-group.scss +0 -59
- package/scss/_radio.scss +0 -4
- package/scss/_type-text.scss +0 -9
package/components/alert.vue
CHANGED
|
@@ -5,18 +5,20 @@
|
|
|
5
5
|
<div :class="$style.title" v-if="title.length > 0 && !toggle">{{ title }}</div>
|
|
6
6
|
<slot />
|
|
7
7
|
</span>
|
|
8
|
-
<button v-if="toggle" :class="
|
|
9
|
-
<close-icon
|
|
10
|
-
</button>
|
|
8
|
+
<b-button v-if="toggle" variant="invisible" :class="styleButton" @click="$emit('close')">
|
|
9
|
+
<close-icon />
|
|
10
|
+
</b-button>
|
|
11
11
|
</div>
|
|
12
12
|
</div>
|
|
13
13
|
</template>
|
|
14
14
|
|
|
15
15
|
<script>
|
|
16
|
+
import { BButton } from 'bootstrap-vue'
|
|
16
17
|
import { CloseIcon } from 'barbican-reset/icons/stream'
|
|
17
18
|
export default {
|
|
18
19
|
name: "Alert",
|
|
19
20
|
components: {
|
|
21
|
+
BButton,
|
|
20
22
|
CloseIcon,
|
|
21
23
|
},
|
|
22
24
|
props: {
|
|
@@ -57,7 +59,6 @@ export default {
|
|
|
57
59
|
styleContainer() {
|
|
58
60
|
let style = this.$style;
|
|
59
61
|
let output = [style.container];
|
|
60
|
-
|
|
61
62
|
if (this.center) { output.push(style.center); }
|
|
62
63
|
if (this.margin) {
|
|
63
64
|
switch (this.margin) {
|
|
@@ -66,35 +67,29 @@ export default {
|
|
|
66
67
|
default: output.push(style.margin_sm); break;
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
|
-
|
|
70
70
|
return output;
|
|
71
71
|
},
|
|
72
72
|
styleWrap() {
|
|
73
73
|
let style = this.$style;
|
|
74
74
|
let output = [style.wrap];
|
|
75
|
-
|
|
76
75
|
if (this.error) { output.push(style.error, 'error'); }
|
|
77
76
|
if (this.success) { output.push(style.success, 'success'); }
|
|
78
77
|
if (this.inline) { output.push(style.inline); }
|
|
79
78
|
if (this.toggle) { output.push(style.toggle); }
|
|
80
|
-
|
|
81
79
|
return output;
|
|
82
80
|
},
|
|
83
81
|
styleSpan() {
|
|
84
82
|
let style = this.$style;
|
|
85
83
|
let output = [];
|
|
86
|
-
|
|
87
84
|
if (this.flex) { output.push(style.flex); }
|
|
88
|
-
|
|
89
85
|
return output;
|
|
90
86
|
},
|
|
91
|
-
|
|
87
|
+
styleButton() {
|
|
92
88
|
let style = this.$style;
|
|
93
|
-
let output = [style.
|
|
94
|
-
|
|
89
|
+
let output = [style.button];
|
|
95
90
|
if (this.error) { output.push(style.error); }
|
|
96
|
-
if (this.success) { output.push(style.success); }
|
|
97
|
-
|
|
91
|
+
else if (this.success) { output.push(style.success); }
|
|
92
|
+
else { output.push(style.neutral); }
|
|
98
93
|
return output;
|
|
99
94
|
}
|
|
100
95
|
}
|
|
@@ -103,29 +98,21 @@ export default {
|
|
|
103
98
|
|
|
104
99
|
<style lang="scss" module>
|
|
105
100
|
|
|
101
|
+
$neutral-colors: $c-status-neutral, $c-status-neutral-fade;
|
|
106
102
|
$success-colors: $c-status-success, $c-status-success-fade;
|
|
107
103
|
$error-colors: $c-status-error, $c-status-error-fade;
|
|
108
104
|
|
|
109
|
-
@mixin icon(
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
path[data-fill] { fill: $fade; }
|
|
114
|
-
path[data-outline],
|
|
115
|
-
path[data-cross] { fill: $color; }
|
|
105
|
+
@mixin icon($color, $fade) {
|
|
106
|
+
[data-fill] { fill: $fade; }
|
|
107
|
+
[data-outline],
|
|
108
|
+
[data-cross] { fill: $color; }
|
|
116
109
|
|
|
117
110
|
@include focus {
|
|
118
|
-
|
|
119
|
-
|
|
111
|
+
[data-fill] { fill: $color; }
|
|
112
|
+
[data-cross] { fill: $fade; }
|
|
120
113
|
}
|
|
121
114
|
}
|
|
122
115
|
|
|
123
|
-
@mixin invisible {
|
|
124
|
-
background: transparent;
|
|
125
|
-
line-height: 1;
|
|
126
|
-
padding: 0;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
116
|
.container {
|
|
130
117
|
@include media-breakpoint-down(xs) {
|
|
131
118
|
font-size: $font-size-sm;
|
|
@@ -205,26 +192,6 @@ $error-colors: $c-status-error, $c-status-error-fade;
|
|
|
205
192
|
}
|
|
206
193
|
}
|
|
207
194
|
|
|
208
|
-
.button, .button:focus {
|
|
209
|
-
@include invisible;
|
|
210
|
-
@include focus {
|
|
211
|
-
@include invisible;
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
.icon {
|
|
216
|
-
@include icon;
|
|
217
|
-
width: 1.375rem;
|
|
218
|
-
|
|
219
|
-
&.error {
|
|
220
|
-
@include icon($error-colors...);
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
&.success {
|
|
224
|
-
@include icon($success-colors...);
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
|
|
228
195
|
.title {
|
|
229
196
|
margin-bottom: 0.25rem;
|
|
230
197
|
font-weight: 700;
|
|
@@ -235,6 +202,18 @@ $error-colors: $c-status-error, $c-status-error-fade;
|
|
|
235
202
|
display: flex;
|
|
236
203
|
}
|
|
237
204
|
|
|
205
|
+
.button.neutral {
|
|
206
|
+
@include icon($neutral-colors...);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
.button.success {
|
|
210
|
+
@include icon($success-colors...);
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
.button.error {
|
|
214
|
+
@include icon($error-colors...);
|
|
215
|
+
}
|
|
216
|
+
|
|
238
217
|
</style>
|
|
239
218
|
|
|
240
219
|
<style lang="scss" scoped>
|
package/components/container.vue
CHANGED
|
@@ -20,6 +20,10 @@ export default {
|
|
|
20
20
|
thin: {
|
|
21
21
|
type: Boolean,
|
|
22
22
|
default: false
|
|
23
|
+
},
|
|
24
|
+
footer: {
|
|
25
|
+
type: Boolean,
|
|
26
|
+
default: false
|
|
23
27
|
}
|
|
24
28
|
},
|
|
25
29
|
computed: {
|
|
@@ -35,6 +39,7 @@ export default {
|
|
|
35
39
|
let output = [style.inner];
|
|
36
40
|
if (this.masthead) { output.push(style.masthead); }
|
|
37
41
|
if (this.thin) { output.push(style.thin); }
|
|
42
|
+
if (this.footer) { output.push(style.footer); }
|
|
38
43
|
return output;
|
|
39
44
|
}
|
|
40
45
|
}
|
|
@@ -49,7 +54,7 @@ export default {
|
|
|
49
54
|
|
|
50
55
|
&.splash {
|
|
51
56
|
padding-right: 10%;
|
|
52
|
-
padding-left: 10%;
|
|
57
|
+
padding-left: 10%;
|
|
53
58
|
}
|
|
54
59
|
|
|
55
60
|
&.masthead {
|
|
@@ -60,15 +65,18 @@ export default {
|
|
|
60
65
|
|
|
61
66
|
.inner {
|
|
62
67
|
max-width: $constrained_content_width--wide;
|
|
63
|
-
padding-bottom: 1.5rem;
|
|
64
|
-
padding-top: 1.5rem;
|
|
65
68
|
margin: 0 auto;
|
|
66
69
|
|
|
67
|
-
|
|
68
|
-
padding-bottom:
|
|
69
|
-
padding-top:
|
|
70
|
-
}
|
|
70
|
+
&:not(.footer) {
|
|
71
|
+
padding-bottom: 1.5rem;
|
|
72
|
+
padding-top: 1.5rem;
|
|
71
73
|
|
|
74
|
+
@include media-breakpoint-up(sm) {
|
|
75
|
+
padding-bottom: 2.5rem;
|
|
76
|
+
padding-top: 2.5rem;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
72
80
|
&.thin {
|
|
73
81
|
max-width: $constrained_content_width--thin;
|
|
74
82
|
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="$style.component">
|
|
3
|
+
<img :class="$style.image" :src="image">
|
|
4
|
+
<div v-if="expired" :class="$style.title">
|
|
5
|
+
<h4>Expired</h4>
|
|
6
|
+
</div>
|
|
7
|
+
</div>
|
|
8
|
+
</template>
|
|
9
|
+
|
|
10
|
+
<script>
|
|
11
|
+
export default {
|
|
12
|
+
name: "DisplayStream",
|
|
13
|
+
mounted() {
|
|
14
|
+
console.log(this.$props);
|
|
15
|
+
},
|
|
16
|
+
props: {
|
|
17
|
+
image: {
|
|
18
|
+
type: String,
|
|
19
|
+
required: true,
|
|
20
|
+
},
|
|
21
|
+
expired: {
|
|
22
|
+
type: Boolean,
|
|
23
|
+
default: false,
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
</script>
|
|
28
|
+
|
|
29
|
+
<style lang="scss" module>
|
|
30
|
+
|
|
31
|
+
.component {
|
|
32
|
+
border-radius: $border-radius-lg;
|
|
33
|
+
padding-top: 56.25%;
|
|
34
|
+
position: relative;
|
|
35
|
+
overflow: hidden;
|
|
36
|
+
color: $white;
|
|
37
|
+
|
|
38
|
+
.image {
|
|
39
|
+
position: absolute;
|
|
40
|
+
height: auto;
|
|
41
|
+
width: 100%;
|
|
42
|
+
inset: 0;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.title {
|
|
46
|
+
background-color: rgba($c-grey-night, 0.8);
|
|
47
|
+
place-items: center;
|
|
48
|
+
position: absolute;
|
|
49
|
+
display: grid;
|
|
50
|
+
inset: 0;
|
|
51
|
+
|
|
52
|
+
h4 {
|
|
53
|
+
font-size: $h2-font-size;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
</style>
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="$style.component">
|
|
3
|
+
<iframe
|
|
4
|
+
scrolling="auto"
|
|
5
|
+
allowfullscreen
|
|
6
|
+
frameborder="0"
|
|
7
|
+
height="100%"
|
|
8
|
+
width="100%"
|
|
9
|
+
:src="src" />
|
|
10
|
+
</div>
|
|
11
|
+
</template>
|
|
12
|
+
|
|
13
|
+
<script>
|
|
14
|
+
export default {
|
|
15
|
+
name: 'FluidIframe',
|
|
16
|
+
props: {
|
|
17
|
+
src: {
|
|
18
|
+
type: String,
|
|
19
|
+
required: true
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
</script>
|
|
24
|
+
|
|
25
|
+
<style lang="scss" module>
|
|
26
|
+
|
|
27
|
+
.component {
|
|
28
|
+
border-radius: $border-radius-lg;
|
|
29
|
+
padding-top: 56.25%;
|
|
30
|
+
position: relative;
|
|
31
|
+
overflow: hidden;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.component > iframe {
|
|
35
|
+
position: absolute;
|
|
36
|
+
inset: 0;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
</style>
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="$style.logos">
|
|
3
|
+
<slot />
|
|
4
|
+
</div>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script>
|
|
8
|
+
export default {
|
|
9
|
+
name: 'FooterLogos'
|
|
10
|
+
}
|
|
11
|
+
</script>
|
|
12
|
+
|
|
13
|
+
<style lang="scss" module>
|
|
14
|
+
|
|
15
|
+
.logos {
|
|
16
|
+
margin: -1rem;
|
|
17
|
+
|
|
18
|
+
> * {
|
|
19
|
+
margin: 1rem;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
> svg {
|
|
23
|
+
display: inline-block;
|
|
24
|
+
height: 3rem;
|
|
25
|
+
fill: $white;
|
|
26
|
+
width: auto;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
</style>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="$style.lower">
|
|
3
|
+
<slot />
|
|
4
|
+
</div>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script>
|
|
8
|
+
export default {
|
|
9
|
+
name: 'FooterLower'
|
|
10
|
+
}
|
|
11
|
+
</script>
|
|
12
|
+
|
|
13
|
+
<style lang="scss" module>
|
|
14
|
+
|
|
15
|
+
.lower {
|
|
16
|
+
padding-bottom: 1.875rem;
|
|
17
|
+
padding-top: 1.875rem;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
</style>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="styleUpper">
|
|
3
|
+
<slot />
|
|
4
|
+
</div>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script>
|
|
8
|
+
export default {
|
|
9
|
+
name: 'FooterUpper',
|
|
10
|
+
props: {
|
|
11
|
+
splash: {
|
|
12
|
+
type: Boolean,
|
|
13
|
+
default: false
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
computed: {
|
|
17
|
+
styleUpper() {
|
|
18
|
+
const style = this.$style;
|
|
19
|
+
let output = [style.upper];
|
|
20
|
+
if (this.splash) { output.push(style.splash); }
|
|
21
|
+
return output;
|
|
22
|
+
},
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
</script>
|
|
26
|
+
|
|
27
|
+
<style lang="scss" module>
|
|
28
|
+
|
|
29
|
+
.upper {
|
|
30
|
+
padding-top: 3.75rem;
|
|
31
|
+
|
|
32
|
+
@include media-breakpoint-up(md) {
|
|
33
|
+
grid-template-columns: 11rem auto;
|
|
34
|
+
display: grid;
|
|
35
|
+
gap: 1rem;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&:not(.splash) {
|
|
39
|
+
padding-bottom: 3.75rem;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
</style>
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="$style.container">
|
|
3
|
+
<label v-if="label" :for="id">
|
|
4
|
+
<strong>{{ label }}</strong> <span v-if="label && required">(required)</span><span v-if="label && optional">(optional)</span>
|
|
5
|
+
</label>
|
|
6
|
+
<div :class="styleContent">
|
|
7
|
+
<slot />
|
|
8
|
+
</div>
|
|
9
|
+
</div>
|
|
10
|
+
</template>
|
|
11
|
+
|
|
12
|
+
<script type="text/javascript">
|
|
13
|
+
export default {
|
|
14
|
+
name: 'FormGroup',
|
|
15
|
+
props: {
|
|
16
|
+
label: {
|
|
17
|
+
type: String
|
|
18
|
+
},
|
|
19
|
+
required: {
|
|
20
|
+
type: Boolean
|
|
21
|
+
},
|
|
22
|
+
optional: {
|
|
23
|
+
type: Boolean
|
|
24
|
+
},
|
|
25
|
+
submit: {
|
|
26
|
+
type: Boolean
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
computed: {
|
|
30
|
+
styleContent() {
|
|
31
|
+
const style = this.$style;
|
|
32
|
+
let output = [style.content];
|
|
33
|
+
if (!this.label) { output.push(style.no_label); }
|
|
34
|
+
if (this.submit) { output.push(style.submit); }
|
|
35
|
+
return output;
|
|
36
|
+
},
|
|
37
|
+
id() {
|
|
38
|
+
return this.label.toLowerCase().split(" ").join("_");
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
<style lang="scss" module>
|
|
45
|
+
|
|
46
|
+
.container {
|
|
47
|
+
|
|
48
|
+
&:not(:last-of-type) {
|
|
49
|
+
margin-bottom: 1rem;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
@include media-breakpoint-up(sm) {
|
|
53
|
+
grid-template-columns: 33fr 67fr;
|
|
54
|
+
align-items: center;
|
|
55
|
+
gap: $gap-account;
|
|
56
|
+
display: grid;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
label {
|
|
60
|
+
font-weight: normal;
|
|
61
|
+
|
|
62
|
+
@include media-breakpoint-down(sm) {
|
|
63
|
+
margin-bottom: 0.5rem;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
input {
|
|
68
|
+
width: 100%;
|
|
69
|
+
margin: 0;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.content {
|
|
74
|
+
|
|
75
|
+
&.no_label {
|
|
76
|
+
@include media-breakpoint-up(sm) {
|
|
77
|
+
grid-column: 2 / 3;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
&.submit {
|
|
82
|
+
text-align: right;
|
|
83
|
+
|
|
84
|
+
@include media-breakpoint-down(sm) {
|
|
85
|
+
> button {
|
|
86
|
+
width: 100%;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
</style>
|
|
@@ -14,12 +14,11 @@
|
|
|
14
14
|
<style lang="scss" module>
|
|
15
15
|
|
|
16
16
|
.container {
|
|
17
|
-
grid-template-columns: auto 6rem;
|
|
18
|
-
column-gap: 0.5rem;
|
|
19
17
|
display: grid;
|
|
18
|
+
gap: 1rem;
|
|
20
19
|
|
|
21
20
|
@include media-breakpoint-up(sm) {
|
|
22
|
-
|
|
21
|
+
grid-template-columns: auto 6rem;
|
|
23
22
|
}
|
|
24
23
|
}
|
|
25
24
|
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<b-card video-help no-body>
|
|
3
|
+
<b-card-header>
|
|
4
|
+
<b-button variant="video-help" v-b-toggle="`help-${id}`">
|
|
5
|
+
{{ title }}
|
|
6
|
+
</b-button>
|
|
7
|
+
</b-card-header>
|
|
8
|
+
<b-collapse :id="`help-${id}`">
|
|
9
|
+
<b-card-body>
|
|
10
|
+
<slot />
|
|
11
|
+
</b-card-body>
|
|
12
|
+
</b-collapse>
|
|
13
|
+
</b-card>
|
|
14
|
+
</template>
|
|
15
|
+
|
|
16
|
+
<script>
|
|
17
|
+
import { BCard, BCardHeader, BCollapse, BCardBody, BButton } from 'bootstrap-vue'
|
|
18
|
+
|
|
19
|
+
export default {
|
|
20
|
+
name: 'HelpRow',
|
|
21
|
+
components: { BCard, BCardHeader, BCollapse, BCardBody, BButton },
|
|
22
|
+
props: {
|
|
23
|
+
id: {
|
|
24
|
+
type: String,
|
|
25
|
+
required: true,
|
|
26
|
+
},
|
|
27
|
+
title: {
|
|
28
|
+
type: String,
|
|
29
|
+
required: true,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
</script>
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="styleGroup">
|
|
3
|
+
<slot />
|
|
4
|
+
</div>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script type="text/javascript">
|
|
8
|
+
export default {
|
|
9
|
+
name: 'RadioGroup',
|
|
10
|
+
props: {
|
|
11
|
+
error: {
|
|
12
|
+
type: Boolean
|
|
13
|
+
},
|
|
14
|
+
success: {
|
|
15
|
+
type: Boolean
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
computed: {
|
|
19
|
+
styleGroup() {
|
|
20
|
+
let styles = ['radio-group'];
|
|
21
|
+
if (this.error) { styles.push('error'); }
|
|
22
|
+
if (this.success) { styles.push('success'); }
|
|
23
|
+
return styles;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
</script>
|
package/components/type_text.vue
CHANGED
|
@@ -1,25 +1,15 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<p ref="checking"
|
|
3
|
-
|
|
2
|
+
<p ref="checking" :class="$style.component">
|
|
3
|
+
<slot />
|
|
4
4
|
</p>
|
|
5
5
|
</template>
|
|
6
6
|
|
|
7
7
|
<script>
|
|
8
|
-
import { gsap } from
|
|
9
|
-
import { TextPlugin } from
|
|
8
|
+
import { gsap } from 'gsap'
|
|
9
|
+
import { TextPlugin } from 'gsap/TextPlugin'
|
|
10
10
|
gsap.registerPlugin(TextPlugin);
|
|
11
11
|
|
|
12
12
|
export default {
|
|
13
|
-
props: {
|
|
14
|
-
message: {
|
|
15
|
-
type: String,
|
|
16
|
-
default: "Loading",
|
|
17
|
-
},
|
|
18
|
-
slim: {
|
|
19
|
-
type: Boolean,
|
|
20
|
-
default: false,
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
13
|
methods: {
|
|
24
14
|
loadingAnim(target) {
|
|
25
15
|
const message = target.innerText;
|
|
@@ -54,3 +44,13 @@ export default {
|
|
|
54
44
|
},
|
|
55
45
|
};
|
|
56
46
|
</script>
|
|
47
|
+
|
|
48
|
+
<style lang="scss" module>
|
|
49
|
+
|
|
50
|
+
.component {
|
|
51
|
+
font-size: $h4-font-size;
|
|
52
|
+
min-height: 2.25rem;
|
|
53
|
+
text-align: center;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
</style>
|
|
@@ -148,17 +148,29 @@
|
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
+
@mixin btn-video-help {
|
|
152
|
+
@include button-link(
|
|
153
|
+
$padding: 1.25rem,
|
|
154
|
+
$background: $c-grey-alpine) {
|
|
155
|
+
background-color: $c-grey-steel;
|
|
156
|
+
color: $white;
|
|
157
|
+
}
|
|
158
|
+
font-weight: 700;
|
|
159
|
+
text-align: left;
|
|
160
|
+
width: 100%;
|
|
161
|
+
}
|
|
162
|
+
|
|
151
163
|
@mixin btn-exit {
|
|
152
164
|
@include button-link {
|
|
153
165
|
@include single-box($c-grey-night);
|
|
154
166
|
background-color: $white;
|
|
155
167
|
border-radius: 50%;
|
|
156
168
|
|
|
157
|
-
|
|
169
|
+
[data-outline], [data-cross] {
|
|
158
170
|
fill: $white;
|
|
159
171
|
}
|
|
160
172
|
|
|
161
|
-
|
|
173
|
+
[data-fill] {
|
|
162
174
|
fill: $c-grey-night;
|
|
163
175
|
}
|
|
164
176
|
}
|
|
@@ -188,6 +200,20 @@
|
|
|
188
200
|
);
|
|
189
201
|
}
|
|
190
202
|
|
|
203
|
+
@mixin btn-invisible {
|
|
204
|
+
&, &:focus {
|
|
205
|
+
background: transparent;
|
|
206
|
+
line-height: 1;
|
|
207
|
+
padding: 0;
|
|
208
|
+
|
|
209
|
+
@include focus {
|
|
210
|
+
background: transparent;
|
|
211
|
+
line-height: 1;
|
|
212
|
+
padding: 0;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
|
|
191
217
|
@mixin btn-expand {
|
|
192
218
|
display: block;
|
|
193
219
|
}
|
package/icons/.DS_Store
ADDED
|
Binary file
|
package/icons/account/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import PersonalIcon from './
|
|
2
|
-
import MembershipIcon from './
|
|
3
|
-
import VideoIcon from './
|
|
4
|
-
import PaymentIcon from './
|
|
5
|
-
import OrdersIcon from './
|
|
6
|
-
import SupportIcon from './
|
|
1
|
+
import PersonalIcon from './personal'
|
|
2
|
+
import MembershipIcon from './membership'
|
|
3
|
+
import VideoIcon from './video'
|
|
4
|
+
import PaymentIcon from './payment'
|
|
5
|
+
import OrdersIcon from './orders'
|
|
6
|
+
import SupportIcon from './support'
|
|
7
7
|
|
|
8
8
|
export {
|
|
9
9
|
PersonalIcon,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|