@burh/nuxt-core 1.0.21 → 1.0.22
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/burh-ds/Cards/TestCard.vue +70 -0
- package/components/burh-ds/Cards/WelcomeCard.vue +15 -2
- package/components/burh-ds/Dropdown/AppLinkArea.vue +2 -2
- package/components/burh-ds/Dropdown/FaqVideoArea.vue +1 -1
- package/components/burh-ds/Headings/AppHeader.vue +1 -1
- package/components/burh-ds/Modals/AppConfigModal.vue +21 -17
- package/components/layouts/burh-ds/navbar/AppNavbar.vue +1 -1
- package/components/layouts/burh-ds/navbar/BusinessGlobalNavbar.vue +0 -1
- package/data/ListNavLinksMock.json +2 -2
- package/package.json +1 -1
- package/components/burh-ds/Cards/RecentTestCard.vue +0 -51
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<li class="column">
|
|
3
|
+
<nuxt-link :to="link" class="small-card">
|
|
4
|
+
<img
|
|
5
|
+
v-if="icon === ''"
|
|
6
|
+
class="card__image"
|
|
7
|
+
:src="image"
|
|
8
|
+
:alt="`Icone para ${text}`"
|
|
9
|
+
>
|
|
10
|
+
<i
|
|
11
|
+
v-else
|
|
12
|
+
:class="icon"
|
|
13
|
+
class="card__icon"
|
|
14
|
+
/>
|
|
15
|
+
</nuxt-link>
|
|
16
|
+
<span class="card-title">{{text}}</span>
|
|
17
|
+
</li>
|
|
18
|
+
</template>
|
|
19
|
+
<script>
|
|
20
|
+
export default {
|
|
21
|
+
name: "test-card",
|
|
22
|
+
props:{
|
|
23
|
+
link: String,
|
|
24
|
+
text: String,
|
|
25
|
+
image: String,
|
|
26
|
+
icon: {
|
|
27
|
+
type: String,
|
|
28
|
+
default: ''
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
</script>
|
|
33
|
+
<style lang="scss">
|
|
34
|
+
@import "@burh/nuxt-core/assets/sass/argon.scss";
|
|
35
|
+
.column {
|
|
36
|
+
display: flex;
|
|
37
|
+
flex-direction: column;
|
|
38
|
+
justify-content: center;
|
|
39
|
+
align-items: center;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.card__image {
|
|
43
|
+
width: 6rem;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.card-title {
|
|
47
|
+
font-size: .9rem;
|
|
48
|
+
line-height: .9rem;
|
|
49
|
+
color: #3c4858;
|
|
50
|
+
font-weight: 600;
|
|
51
|
+
margin-top: 1rem;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.card__icon {
|
|
55
|
+
font-size: 6rem;
|
|
56
|
+
color: $violet;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.small-card {
|
|
60
|
+
padding: 3rem 4rem;
|
|
61
|
+
margin: 0 1rem;
|
|
62
|
+
box-shadow: 0 0 1rem 0 rgba(#4a525a, .15);
|
|
63
|
+
border: 2px solid transparent;
|
|
64
|
+
border-radius: 5px;
|
|
65
|
+
&:hover {
|
|
66
|
+
cursor: pointer;
|
|
67
|
+
border: 2px solid #c78fe1;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
</style>
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<div class="card-body card--content">
|
|
5
5
|
<img class="icon" :src="icon">
|
|
6
6
|
<h2 class="card-title mb-3 mx-md-5">{{title}}</h2>
|
|
7
|
-
<p class="card-text mb-4 text--initial mx-md-5"
|
|
7
|
+
<p class="card-text mb-4 text--initial mx-md-5" v-html="text" />
|
|
8
8
|
<div class="button--area">
|
|
9
9
|
<base-button
|
|
10
10
|
outline
|
|
@@ -52,8 +52,11 @@ export default {
|
|
|
52
52
|
text-align: initial;
|
|
53
53
|
}
|
|
54
54
|
.card--content{
|
|
55
|
+
display: flex;
|
|
56
|
+
flex-direction: column;
|
|
57
|
+
align-items: center;
|
|
55
58
|
@media screen and (min-width:768px){
|
|
56
|
-
|
|
59
|
+
|
|
57
60
|
}
|
|
58
61
|
.button--area{
|
|
59
62
|
@media screen and (max-width:768px){
|
|
@@ -71,6 +74,8 @@ export default {
|
|
|
71
74
|
}
|
|
72
75
|
}
|
|
73
76
|
.card-title{
|
|
77
|
+
width: 30%;
|
|
78
|
+
font-weight: 600;
|
|
74
79
|
@media screen and (max-width:768px){
|
|
75
80
|
padding-left: 1.5rem;
|
|
76
81
|
padding-right: 1.5rem;
|
|
@@ -80,6 +85,7 @@ export default {
|
|
|
80
85
|
|
|
81
86
|
.card-text {
|
|
82
87
|
text-align: center;
|
|
88
|
+
width: 55%;
|
|
83
89
|
color: $gray-900;
|
|
84
90
|
}
|
|
85
91
|
|
|
@@ -92,9 +98,16 @@ export default {
|
|
|
92
98
|
.btn--app {
|
|
93
99
|
background-color: $violet;
|
|
94
100
|
border-color: $violet;
|
|
101
|
+
&:hover {
|
|
102
|
+
background-color: darken($violet, 10%);
|
|
103
|
+
border-color: darken($violet, 10%);
|
|
104
|
+
}
|
|
95
105
|
}
|
|
96
106
|
|
|
97
107
|
.white-text {
|
|
98
108
|
color: #ffffff;
|
|
109
|
+
&:hover {
|
|
110
|
+
color: #ffffff;
|
|
111
|
+
}
|
|
99
112
|
}
|
|
100
113
|
</style>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<base-dropdown menu-on-right
|
|
3
|
-
class="mr-
|
|
3
|
+
class="mr-3"
|
|
4
4
|
tag="span"
|
|
5
5
|
title-tag="a"
|
|
6
6
|
>
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
slot="title-container"
|
|
12
12
|
/>
|
|
13
13
|
<ul class="px-3">
|
|
14
|
-
<li class="w-50 d-inline-block text-wrap text-center" v-for="(links, index) in links" :key="index">
|
|
14
|
+
<li class="w-50 d-inline-block text-wrap text-center align-top" v-for="(links, index) in links" :key="index">
|
|
15
15
|
<img :src=links.img :alt="links.name" class="dropdown-item">
|
|
16
16
|
<a href="#" class="small">{{links.name}}</a>
|
|
17
17
|
</li>
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<div class="col-6 d-flex justify-content-end">
|
|
9
9
|
<i v-for="(options, index) in icons" :key="index"
|
|
10
10
|
@click="$emit(options.event)"
|
|
11
|
-
class="display-4 text-default
|
|
11
|
+
class="display-4 text-default pt-3 px-3 cursor-pointer" :class="options.icon"></i>
|
|
12
12
|
|
|
13
13
|
<base-button role="button" @click="actionButtonHeader()" size="sm" :type="optionsBtnType"
|
|
14
14
|
class="ml-2">{{optionsBtnText}}</base-button>
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
<label for="description">{{name}}</label>
|
|
10
10
|
<base-input
|
|
11
11
|
placeholder="Insira o nome do teste"
|
|
12
|
-
v-model="
|
|
12
|
+
v-model="configInfo.title"
|
|
13
13
|
>
|
|
14
14
|
</base-input>
|
|
15
15
|
</div>
|
|
@@ -20,21 +20,21 @@
|
|
|
20
20
|
type="textarea"
|
|
21
21
|
:rows="5"
|
|
22
22
|
placeholder="Insira a descrição do teste"
|
|
23
|
-
v-model="
|
|
23
|
+
v-model="configInfo.textarea">
|
|
24
24
|
</el-input>
|
|
25
25
|
</div>
|
|
26
26
|
|
|
27
27
|
<div class="col-12">
|
|
28
28
|
<p class="mb-0 mt-3">{{buttonAreaTitle}}</p>
|
|
29
29
|
|
|
30
|
-
<div class="d-flex justify-content-between flex-wrap">
|
|
31
|
-
<base-button role="button" outline size="sm" type=
|
|
30
|
+
<div class="d-flex justify-content-lg-between justify-content-center flex-wrap">
|
|
31
|
+
<base-button role="button" outline size="sm" :type=appModalBtnType class="mx-lg-0"
|
|
32
32
|
v-for="(buttons, index) in buttons" :key="index"
|
|
33
33
|
:id="'button-' + buttons.id" :value="buttons.value"
|
|
34
|
-
:class="buttons.id == currentSelectedButton ? '
|
|
34
|
+
:class="buttons.id == currentSelectedButton ? 'active' : ''"
|
|
35
35
|
@click="timeSelection(buttons.id)"
|
|
36
36
|
>
|
|
37
|
-
<i v-if="buttons.id == currentSelectedButton" class="fas fa-check
|
|
37
|
+
<i v-if="buttons.id == currentSelectedButton" class="fas fa-check mr-1"></i>
|
|
38
38
|
<small>{{buttons.time}}</small>
|
|
39
39
|
</base-button>
|
|
40
40
|
</div>
|
|
@@ -50,9 +50,9 @@
|
|
|
50
50
|
></base-input>
|
|
51
51
|
</div>
|
|
52
52
|
|
|
53
|
-
<base-button size="md" type=
|
|
53
|
+
<base-button size="md" :type=appModalBtnType role="button"
|
|
54
54
|
@click="sendConfig()"
|
|
55
|
-
class="ml-auto mr-3">{{
|
|
55
|
+
class="ml-auto mr-3">{{configAppButton}}</base-button>
|
|
56
56
|
</div>
|
|
57
57
|
</modal>
|
|
58
58
|
</template>
|
|
@@ -63,7 +63,7 @@ export default {
|
|
|
63
63
|
directives: {mask},
|
|
64
64
|
data(){
|
|
65
65
|
return{
|
|
66
|
-
|
|
66
|
+
configInfo:{
|
|
67
67
|
title: '',
|
|
68
68
|
textarea: '',
|
|
69
69
|
selectedTime: '',
|
|
@@ -89,6 +89,10 @@ export default {
|
|
|
89
89
|
{id: '7', time: '2 horas', value: '02:00:00'}, {id: 'custom', time: 'Personalizado', value: ''}],
|
|
90
90
|
description: 'Botoes de tempo'
|
|
91
91
|
},
|
|
92
|
+
appModalBtnType:{
|
|
93
|
+
type: String,
|
|
94
|
+
default: 'test-online'
|
|
95
|
+
},
|
|
92
96
|
title:{
|
|
93
97
|
type: String,
|
|
94
98
|
default: 'Geral',
|
|
@@ -104,7 +108,7 @@ export default {
|
|
|
104
108
|
default: 'Tempo Limite',
|
|
105
109
|
description: 'Titulo da area de botões'
|
|
106
110
|
},
|
|
107
|
-
|
|
111
|
+
configAppButton:{
|
|
108
112
|
type: String,
|
|
109
113
|
default: 'Salvar',
|
|
110
114
|
description: 'Botão de envio'
|
|
@@ -126,7 +130,7 @@ export default {
|
|
|
126
130
|
let btn = document.getElementById('button-' + buttonId);
|
|
127
131
|
let timePicker = document.getElementById('time-picker');
|
|
128
132
|
if(buttonId != 'custom'){
|
|
129
|
-
this.
|
|
133
|
+
this.configInfo.selectedTime=btn.value;
|
|
130
134
|
this.currentSelectedButton=buttonId
|
|
131
135
|
this.disableTimePicker = true;
|
|
132
136
|
}
|
|
@@ -139,26 +143,26 @@ export default {
|
|
|
139
143
|
let button = document.getElementById('button-custom');
|
|
140
144
|
|
|
141
145
|
button.value = this.value;
|
|
142
|
-
this.
|
|
146
|
+
this.configInfo.selectedTime = this.value;
|
|
143
147
|
},
|
|
144
148
|
|
|
145
149
|
sendConfig(){
|
|
146
|
-
if(this.
|
|
147
|
-
this.
|
|
150
|
+
if(this.configInfo.title == '' || this.configInfo.textarea == '' ||
|
|
151
|
+
this.configInfo.selectedTime == '' || this.configInfo.selectedTime.length != 8){
|
|
148
152
|
swal.fire({
|
|
149
153
|
title: `Aviso`,
|
|
150
154
|
html: `Por favor, preencha todos os campos corretamente para continuar.`,
|
|
151
155
|
buttonsStyling: false,
|
|
152
|
-
confirmButtonClass: 'btn btn-
|
|
156
|
+
confirmButtonClass: 'btn btn-test-online btn-fill',
|
|
153
157
|
});
|
|
154
158
|
}
|
|
155
159
|
else{
|
|
156
|
-
this.$emit('send-
|
|
160
|
+
this.$emit('send-config-info', this.configInfo)
|
|
157
161
|
swal.fire({
|
|
158
162
|
title: `Parabéns`,
|
|
159
163
|
html: `Configurações salvas com sucesso.`,
|
|
160
164
|
buttonsStyling: false,
|
|
161
|
-
confirmButtonClass: 'btn btn-
|
|
165
|
+
confirmButtonClass: 'btn btn-test-online btn-fill',
|
|
162
166
|
});
|
|
163
167
|
this.openModal=false;
|
|
164
168
|
}
|
package/package.json
CHANGED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="card--container d-flex flex-column w-25" @click="$emit('more')">
|
|
3
|
-
<div class="card card--small">
|
|
4
|
-
<div class="row m-auto">
|
|
5
|
-
<i class="display-1" :class="iconColor + ' ' + Icon" v-if="isIcon"></i>
|
|
6
|
-
<img :src=Image alt="Imagem do Card" class="w-75 m-auto" v-else>
|
|
7
|
-
</div>
|
|
8
|
-
</div>
|
|
9
|
-
<h3 class="small font-weight-bold m-auto">{{testName}}</h3>
|
|
10
|
-
</div>
|
|
11
|
-
</template>
|
|
12
|
-
<script>
|
|
13
|
-
export default {
|
|
14
|
-
props:{
|
|
15
|
-
iconColor:{
|
|
16
|
-
type: String,
|
|
17
|
-
default: () => 'text-primary',
|
|
18
|
-
description: 'Cor do icone. Normalmente Azul'
|
|
19
|
-
},
|
|
20
|
-
isIcon:{
|
|
21
|
-
type: Boolean,
|
|
22
|
-
default: false
|
|
23
|
-
},
|
|
24
|
-
Image:{
|
|
25
|
-
type: String,
|
|
26
|
-
default: () => '/img/brand/burh-imagotipo.svg',
|
|
27
|
-
description: 'Imagem do card'
|
|
28
|
-
},
|
|
29
|
-
Icon:{
|
|
30
|
-
type: String,
|
|
31
|
-
default: () => 'fas fa-plus',
|
|
32
|
-
description: 'Icone do card'
|
|
33
|
-
},
|
|
34
|
-
testName:{
|
|
35
|
-
type: String,
|
|
36
|
-
default: 'Testes',
|
|
37
|
-
description: 'Nome do teste'
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
</script>
|
|
42
|
-
<style lang="scss">
|
|
43
|
-
@media screen and (max-width: 768px){
|
|
44
|
-
.card--container{
|
|
45
|
-
width: 50% !important;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
.card--small{
|
|
49
|
-
min-height: 10rem;
|
|
50
|
-
}
|
|
51
|
-
</style>
|