@burh/nuxt-core 1.0.19 → 1.0.21
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/assets/sass/burh-ds/atoms/_forms.scss +19 -0
- package/assets/sass/burh-ds/content/_main-content.scss +8 -0
- package/assets/sass/burh-ds/variables/_colors.scss +3 -1
- package/assets/sass/custom/_variables.scss +1 -0
- package/components/burh-ds/Avatar/AvatarLink.vue +23 -0
- package/components/burh-ds/Avatar/BusinessAvatar.vue +38 -0
- package/components/burh-ds/Button/ExportButton.vue +26 -0
- package/components/burh-ds/Button/SwitchStateButton.vue +165 -0
- package/components/burh-ds/Cards/PlanCard.vue +149 -109
- package/components/burh-ds/Cards/PurchaseCard.vue +0 -3
- package/components/burh-ds/Cards/PurchaseCardSimple.vue +0 -3
- package/components/burh-ds/Cards/RecentTestCard.vue +51 -0
- package/components/burh-ds/Cards/WelcomeCard.vue +53 -20
- package/components/burh-ds/Dropdown/AppLinkArea.vue +38 -25
- package/components/burh-ds/Dropdown/DropdownItem.vue +21 -0
- package/components/burh-ds/Dropdown/DropdownSection.vue +38 -0
- package/components/burh-ds/Dropdown/FaqVideoArea.vue +9 -4
- package/components/burh-ds/Dropdown/SignOutItem.vue +11 -0
- package/components/burh-ds/Dropdown/UserMenuDropdown.vue +58 -0
- package/components/burh-ds/Groups/ProductItem.vue +62 -0
- package/components/burh-ds/Groups/SimpleProductItem.vue +34 -30
- package/components/burh-ds/Headings/AppHeader.vue +63 -0
- package/components/burh-ds/Headings/StepHeader.vue +67 -0
- package/components/burh-ds/Inputs/BaseSwitch.vue +43 -0
- package/components/burh-ds/Inputs/BaseSwitchSecondary.vue +84 -0
- package/components/burh-ds/Lists/ListNavLinks.vue +36 -21
- package/components/burh-ds/Loadings/LoadingFullPage.vue +54 -0
- package/components/burh-ds/Modals/AppConfigModal.vue +171 -0
- package/components/burh-ds/Questions/Question.vue +110 -0
- package/components/burh-ds/Questions/QuestionAttach.vue +14 -0
- package/components/burh-ds/Questions/QuestionRadio.vue +97 -0
- package/components/burh-ds/Questions/QuestionRadioItem.vue +75 -0
- package/components/burh-ds/Questions/QuestionText.vue +36 -0
- package/components/burh-ds/Questions/index.js +14 -0
- package/components/layouts/burh-ds/footer/StoreFooter.vue +25 -25
- package/components/layouts/burh-ds/navbar/AppNavbar.vue +60 -0
- package/components/layouts/burh-ds/navbar/BusinessGlobalNavbar.vue +102 -125
- package/components/layouts/burh-ds/navbar/SimpleNavbar.vue +1 -2
- package/dictionary.js +5 -1
- package/package.json +2 -1
|
@@ -0,0 +1,51 @@
|
|
|
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>
|
|
@@ -1,40 +1,53 @@
|
|
|
1
1
|
|
|
2
2
|
<template>
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
3
|
+
<div class="card text-center align-items-center">
|
|
4
|
+
<div class="card-body card--content">
|
|
5
|
+
<img class="icon" :src="icon">
|
|
6
|
+
<h2 class="card-title mb-3 mx-md-5">{{title}}</h2>
|
|
7
|
+
<p class="card-text mb-4 text--initial mx-md-5">{{text}}.</p>
|
|
8
|
+
<div class="button--area">
|
|
9
|
+
<base-button
|
|
10
|
+
outline
|
|
11
|
+
type="primary"
|
|
12
|
+
class="btn--flex btn--app "
|
|
13
|
+
>
|
|
14
|
+
<nuxt-link class="white-text" :to="link">
|
|
15
|
+
{{buttonText}}
|
|
16
|
+
</nuxt-link>
|
|
17
|
+
</base-button>
|
|
18
|
+
</div>
|
|
12
19
|
</div>
|
|
13
|
-
|
|
20
|
+
</div>
|
|
14
21
|
</template>
|
|
15
22
|
<script>
|
|
16
23
|
export default {
|
|
17
24
|
name: 'welcome-card',
|
|
18
|
-
components: {
|
|
25
|
+
components: {
|
|
19
26
|
},
|
|
20
27
|
props:{
|
|
28
|
+
icon: String,
|
|
21
29
|
title: {
|
|
22
30
|
type: String,
|
|
23
|
-
default: '
|
|
31
|
+
default: 'Aqui vai um título'
|
|
32
|
+
},
|
|
33
|
+
text: {
|
|
34
|
+
type: String,
|
|
35
|
+
default: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse convallis vel tellus viverra pulvinar. Mauris in augue neque. Proin molestie lectus lectus, at semper enim suscipit id. odo colaborador tem um perfil de comportamento e competências. O Profiler é uma ferramenta completa para você identificar cada uma delas e assim formar equipes mais produtivas.'
|
|
36
|
+
},
|
|
37
|
+
buttonText: {
|
|
38
|
+
type: String
|
|
24
39
|
},
|
|
25
|
-
|
|
40
|
+
link: {
|
|
26
41
|
type: String,
|
|
27
|
-
default:
|
|
42
|
+
default: "/"
|
|
28
43
|
}
|
|
29
|
-
},
|
|
30
|
-
data(){
|
|
31
|
-
return{
|
|
32
|
-
default: ''
|
|
33
|
-
};
|
|
34
44
|
}
|
|
35
45
|
}
|
|
36
46
|
</script>
|
|
47
|
+
|
|
37
48
|
<style lang="scss">
|
|
49
|
+
@import "@burh/nuxt-core/assets/sass/argon.scss";
|
|
50
|
+
|
|
38
51
|
.text--initial{
|
|
39
52
|
text-align: initial;
|
|
40
53
|
}
|
|
@@ -64,4 +77,24 @@ export default {
|
|
|
64
77
|
}
|
|
65
78
|
}
|
|
66
79
|
}
|
|
67
|
-
|
|
80
|
+
|
|
81
|
+
.card-text {
|
|
82
|
+
text-align: center;
|
|
83
|
+
color: $gray-900;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.icon {
|
|
87
|
+
width: 9rem;
|
|
88
|
+
height: 9rem;
|
|
89
|
+
margin-bottom: 2rem;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.btn--app {
|
|
93
|
+
background-color: $violet;
|
|
94
|
+
border-color: $violet;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.white-text {
|
|
98
|
+
color: #ffffff;
|
|
99
|
+
}
|
|
100
|
+
</style>
|
|
@@ -1,33 +1,46 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
</
|
|
17
|
-
|
|
18
|
-
|
|
2
|
+
<base-dropdown menu-on-right
|
|
3
|
+
class="mr-2"
|
|
4
|
+
tag="span"
|
|
5
|
+
title-tag="a"
|
|
6
|
+
>
|
|
7
|
+
<i
|
|
8
|
+
href="#"
|
|
9
|
+
class="fas fa-th display-4"
|
|
10
|
+
@click.prevent
|
|
11
|
+
slot="title-container"
|
|
12
|
+
/>
|
|
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">
|
|
15
|
+
<img :src=links.img :alt="links.name" class="dropdown-item">
|
|
16
|
+
<a href="#" class="small">{{links.name}}</a>
|
|
17
|
+
</li>
|
|
18
|
+
</ul>
|
|
19
|
+
</base-dropdown>
|
|
19
20
|
</template>
|
|
20
21
|
<script>
|
|
21
22
|
export default {
|
|
22
23
|
props:{
|
|
23
24
|
links: {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
25
|
+
type: Array,
|
|
26
|
+
default:() => {
|
|
27
|
+
return [
|
|
28
|
+
{id: 1, name:'Busca', img:'img/icons/colorfull-icons/busca.svg'},
|
|
29
|
+
{id: 2, name:'Recrutamento', img:'img/icons/colorfull-icons/recrutamento.svg'},
|
|
30
|
+
{id: 3, name:'Desempenho', img: 'img/icons/colorfull-icons/indicadores.svg'},
|
|
31
|
+
{id: 4, name:'Universidades', img:'img/icons/colorfull-icons/universidades.svg'},
|
|
32
|
+
{id: 5, name:'DISC Profiler', img:'img/icons/colorfull-icons/DISC.svg'},
|
|
33
|
+
{id: 6, name:'Teste de Proêficiencia', img:'img/icons/colorfull-icons/proficiencia.svg'},
|
|
34
|
+
{id: 7, name:'SMS', img:'img/icons/colorfull-icons/SMS.svg'},
|
|
35
|
+
{id: 8, name:'Trabalhe Conosco', img:'img/icons/colorfull-icons/carreiras.svg'}
|
|
36
|
+
];
|
|
37
|
+
}
|
|
38
|
+
}
|
|
31
39
|
}
|
|
32
40
|
}
|
|
33
|
-
</script>
|
|
41
|
+
</script>
|
|
42
|
+
<style lang="scss" scoped>
|
|
43
|
+
.height-100 {
|
|
44
|
+
height: 10rem;
|
|
45
|
+
}
|
|
46
|
+
</style>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<li class="dropdown-item d-flex align-items-center w-100">
|
|
3
|
+
<span>
|
|
4
|
+
{{text}}
|
|
5
|
+
</span>
|
|
6
|
+
<badge v-if="status === 'NOVO'" rounded type="primary" class="ml-auto">Novo</badge>
|
|
7
|
+
</li>
|
|
8
|
+
</template>
|
|
9
|
+
<script>
|
|
10
|
+
export default {
|
|
11
|
+
name: "dropdown-item",
|
|
12
|
+
props: {
|
|
13
|
+
link: {
|
|
14
|
+
type: String,
|
|
15
|
+
default: "/"
|
|
16
|
+
},
|
|
17
|
+
text: String,
|
|
18
|
+
status: String
|
|
19
|
+
},
|
|
20
|
+
}
|
|
21
|
+
</script>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<hr class="dropdown-divider">
|
|
4
|
+
<h6 class="dropdown-header" v-if="title">
|
|
5
|
+
<span class="aria-text">Funcionalidades,</span>
|
|
6
|
+
<span>{{title}}</span>
|
|
7
|
+
</h6>
|
|
8
|
+
<ul>
|
|
9
|
+
<dropdown-item
|
|
10
|
+
v-for="item in items"
|
|
11
|
+
:key="item.description"
|
|
12
|
+
:text="item.description"
|
|
13
|
+
:link="item.link"
|
|
14
|
+
:status="item.status"
|
|
15
|
+
/>
|
|
16
|
+
</ul>
|
|
17
|
+
</div>
|
|
18
|
+
</template>
|
|
19
|
+
<script>
|
|
20
|
+
import DropdownItem from './DropdownItem'
|
|
21
|
+
|
|
22
|
+
export default {
|
|
23
|
+
name: "dropdown-section",
|
|
24
|
+
components: {
|
|
25
|
+
DropdownItem
|
|
26
|
+
},
|
|
27
|
+
props: {
|
|
28
|
+
title: String,
|
|
29
|
+
items: Array
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
</script>
|
|
33
|
+
<style lang="scss" scoped>
|
|
34
|
+
ul {
|
|
35
|
+
list-style: none;
|
|
36
|
+
padding-left: 0;
|
|
37
|
+
}
|
|
38
|
+
</style>
|
|
@@ -4,14 +4,19 @@
|
|
|
4
4
|
tag="span"
|
|
5
5
|
title-tag="a"
|
|
6
6
|
title-classes="nav-link pr-0">
|
|
7
|
-
<i
|
|
7
|
+
<i
|
|
8
|
+
href="#"
|
|
9
|
+
class="fas fa-question-circle display-4"
|
|
10
|
+
@click.prevent
|
|
11
|
+
slot="title-container"
|
|
12
|
+
/>
|
|
8
13
|
|
|
9
14
|
<template>
|
|
10
15
|
<h6 class="dropdown-header">{{faqheader}}</h6>
|
|
11
16
|
<div class="dropdown-divider"></div>
|
|
12
17
|
<template>
|
|
13
18
|
<ul class="pl-0">
|
|
14
|
-
<li class="col-12 nav-link pt-1 d-flex dropdown-item"
|
|
19
|
+
<li class="col-12 nav-link pt-1 d-flex dropdown-item"
|
|
15
20
|
v-for="(videos, index) in videos" :key="index"
|
|
16
21
|
v-on:click="openModalVideo(videos)"
|
|
17
22
|
>
|
|
@@ -30,11 +35,11 @@
|
|
|
30
35
|
export default {
|
|
31
36
|
data(){
|
|
32
37
|
return{
|
|
33
|
-
|
|
38
|
+
|
|
34
39
|
}
|
|
35
40
|
},
|
|
36
41
|
mounted(){
|
|
37
|
-
|
|
42
|
+
|
|
38
43
|
},
|
|
39
44
|
methods:{
|
|
40
45
|
openModalVideo(link){
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<base-dropdown menu-on-right
|
|
3
|
+
class="nav-item"
|
|
4
|
+
tag="li"
|
|
5
|
+
title-tag="a"
|
|
6
|
+
>
|
|
7
|
+
<business-avatar
|
|
8
|
+
:logo="userAvatar"
|
|
9
|
+
:userName="userName"
|
|
10
|
+
:companyName="companyName"
|
|
11
|
+
class="nav-link pr-0 pt-2 pb-2"
|
|
12
|
+
:class="textColor"
|
|
13
|
+
@click.prevent
|
|
14
|
+
slot="title-container"
|
|
15
|
+
/>
|
|
16
|
+
<h6 class="dropdown-header">Entrar como</h6>
|
|
17
|
+
<avatar-link
|
|
18
|
+
:logo="userAvatar"
|
|
19
|
+
:name="userName"
|
|
20
|
+
class="row pl-4"
|
|
21
|
+
/>
|
|
22
|
+
<dropdown-section
|
|
23
|
+
v-for="(value, name) in text"
|
|
24
|
+
:key="name"
|
|
25
|
+
:title="name"
|
|
26
|
+
:items="value"
|
|
27
|
+
/>
|
|
28
|
+
<hr class="dropdown-divider">
|
|
29
|
+
<sign-out-item />
|
|
30
|
+
</base-dropdown>
|
|
31
|
+
</template>
|
|
32
|
+
<script>
|
|
33
|
+
import DropdownSection from "./DropdownSection";
|
|
34
|
+
import SignOutItem from "./SignOutItem";
|
|
35
|
+
import AvatarLink from '../Avatar/AvatarLink';
|
|
36
|
+
import BusinessAvatar from '../Avatar/BusinessAvatar';
|
|
37
|
+
|
|
38
|
+
export default {
|
|
39
|
+
name: "user-menu-dropdown",
|
|
40
|
+
components: {
|
|
41
|
+
DropdownSection,
|
|
42
|
+
SignOutItem,
|
|
43
|
+
AvatarLink,
|
|
44
|
+
BusinessAvatar
|
|
45
|
+
},
|
|
46
|
+
props: {
|
|
47
|
+
text: Object,
|
|
48
|
+
userAvatar: String,
|
|
49
|
+
userName: String,
|
|
50
|
+
companyLogo: String,
|
|
51
|
+
companyName: String,
|
|
52
|
+
textColor: String
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
</script>
|
|
56
|
+
<style lang="scss" scoped>
|
|
57
|
+
|
|
58
|
+
</style>
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<component :is="tag" class="product-item" :class="vertical && 'vertical'">
|
|
3
|
+
<img :src="avatar" :class="avatarClass" class="avatar avatar-xl rounded-circle product-item--avatar" :alt="`Logo do Produto ${title}`"/>
|
|
4
|
+
<div :class="containerClass" class="text-container">
|
|
5
|
+
<component :is="titleTag" :class="titleClass" class="text-container--title">{{title}}</component>
|
|
6
|
+
<p :class="descriptionClass" class="text-container--description">{{description}}</p>
|
|
7
|
+
</div>
|
|
8
|
+
</component>
|
|
9
|
+
</template>
|
|
10
|
+
<script>
|
|
11
|
+
export default {
|
|
12
|
+
name: "product-item",
|
|
13
|
+
props: {
|
|
14
|
+
containerClass: String,
|
|
15
|
+
tag: {
|
|
16
|
+
type: String,
|
|
17
|
+
default: 'section'
|
|
18
|
+
},
|
|
19
|
+
vertical: Boolean,
|
|
20
|
+
title: String,
|
|
21
|
+
titleClass: String,
|
|
22
|
+
titleTag: {
|
|
23
|
+
type: String,
|
|
24
|
+
default: 'h2'
|
|
25
|
+
},
|
|
26
|
+
description: String,
|
|
27
|
+
descriptionClass: {
|
|
28
|
+
type: String,
|
|
29
|
+
default: 'none'
|
|
30
|
+
},
|
|
31
|
+
avatar: String,
|
|
32
|
+
avatarClass: String
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
</script>
|
|
36
|
+
<style lang="scss" scoped>
|
|
37
|
+
.product-item {
|
|
38
|
+
display: flex;
|
|
39
|
+
text-align: center;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.text-container {
|
|
43
|
+
flex: 1;
|
|
44
|
+
display: flex;
|
|
45
|
+
flex-direction: column;
|
|
46
|
+
justify-content: center;
|
|
47
|
+
padding-left: 1rem;
|
|
48
|
+
|
|
49
|
+
&--description {
|
|
50
|
+
font-size: 1rem;
|
|
51
|
+
padding: 0;
|
|
52
|
+
margin: 0
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
.vertical {
|
|
56
|
+
flex-direction: column;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.none {
|
|
60
|
+
display: none !important;
|
|
61
|
+
}
|
|
62
|
+
</style>
|
|
@@ -1,37 +1,41 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
<component :is="tag" :to="to" class="product-item" @click="$emit('click-product')">
|
|
3
|
+
<img :src="avatar" :class="avatarClass" class="avatar avatar-xl rounded-circle product-item--avatar" :alt="`Logo do Produto ${title}`">
|
|
4
|
+
<div :class="contentClass" class="product-item--content">
|
|
5
|
+
<component :is="titleTag" :class="titleClass" class="product-item--title">{{title}}</component>
|
|
6
|
+
<p :class="descriptionClass" class="product-item--description" v-if="description">{{description}}</p>
|
|
7
|
+
<badge :class="badgeClass" v-if="hasEnableBadge">Habilitar</badge>
|
|
8
|
+
</div>
|
|
9
|
+
</component >
|
|
10
10
|
</template>
|
|
11
11
|
|
|
12
12
|
<script>
|
|
13
13
|
export default {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
14
|
+
name: 'simple-product-item',
|
|
15
|
+
props: {
|
|
16
|
+
tag: {
|
|
17
|
+
type: String,
|
|
18
|
+
default: 'section'
|
|
19
|
+
},
|
|
20
|
+
contentClass: String,
|
|
21
|
+
title: String,
|
|
22
|
+
titleTag: {
|
|
23
|
+
type: String,
|
|
24
|
+
default: 'h3'
|
|
25
|
+
},
|
|
26
|
+
titleClass: String,
|
|
27
|
+
avatar: String,
|
|
28
|
+
avatarClass: String,
|
|
29
|
+
description: String,
|
|
30
|
+
descriptionClass: String,
|
|
31
|
+
hasEnableBadge: Boolean,
|
|
32
32
|
badgeClass: String,
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
to: {
|
|
34
|
+
type: String,
|
|
35
|
+
default: "/"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
};
|
|
35
39
|
</script>
|
|
36
40
|
|
|
37
41
|
<style lang="scss">
|
|
@@ -40,7 +44,7 @@ export default {
|
|
|
40
44
|
display: inline-block;
|
|
41
45
|
|
|
42
46
|
&--avatar {
|
|
43
|
-
|
|
47
|
+
|
|
44
48
|
}
|
|
45
49
|
|
|
46
50
|
&--title {
|
|
@@ -57,4 +61,4 @@ export default {
|
|
|
57
61
|
}
|
|
58
62
|
}
|
|
59
63
|
|
|
60
|
-
</style>
|
|
64
|
+
</style>
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<base-header class="app-header" :type="'white'">
|
|
3
|
+
<div class="row">
|
|
4
|
+
<div class="col-6 my-auto">
|
|
5
|
+
<h2 class="font-weight-bold display-3">{{name}}</h2>
|
|
6
|
+
</div>
|
|
7
|
+
|
|
8
|
+
<div class="col-6 d-flex justify-content-end">
|
|
9
|
+
<i v-for="(options, index) in icons" :key="index"
|
|
10
|
+
@click="$emit(options.event)"
|
|
11
|
+
class="display-4 text-default mt-3 mx-3 cursor-pointer" :class="options.icon"></i>
|
|
12
|
+
|
|
13
|
+
<base-button role="button" @click="actionButtonHeader()" size="sm" :type="optionsBtnType"
|
|
14
|
+
class="ml-2">{{optionsBtnText}}</base-button>
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
<div class="col-12 d-flex justify-content-center">
|
|
18
|
+
<slot/>
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
21
|
+
</base-header>
|
|
22
|
+
</template>
|
|
23
|
+
<script>
|
|
24
|
+
export default {
|
|
25
|
+
data(){
|
|
26
|
+
return{
|
|
27
|
+
default: ''
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
props:{
|
|
31
|
+
icons:{
|
|
32
|
+
type: Array,
|
|
33
|
+
default: () =>[{event: 'view', icon: 'fas fa-eye'}, {event: 'config', icon: 'fas fa-cog'} ]
|
|
34
|
+
},
|
|
35
|
+
name: {
|
|
36
|
+
type: String,
|
|
37
|
+
default: 'Teste de matematica'
|
|
38
|
+
},
|
|
39
|
+
optionsBtnType:{
|
|
40
|
+
type: String,
|
|
41
|
+
default: 'test-online'
|
|
42
|
+
},
|
|
43
|
+
optionsBtnText: {
|
|
44
|
+
type: String,
|
|
45
|
+
default: 'Enviar Teste'
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
methods:{
|
|
49
|
+
actionButtonHeader(){
|
|
50
|
+
this.$emit('btn-header')
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
}
|
|
54
|
+
</script>
|
|
55
|
+
<style lang="scss">
|
|
56
|
+
@import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
57
|
+
|
|
58
|
+
.app-header {
|
|
59
|
+
width: 100%;
|
|
60
|
+
padding-top: 1.25rem;
|
|
61
|
+
box-shadow: 0 0 2rem 0 rgba(136, 152, 170, 0.15);
|
|
62
|
+
}
|
|
63
|
+
</style>
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="card card--shadow py-3 px-4">
|
|
3
|
+
<base-input
|
|
4
|
+
name="Ask"
|
|
5
|
+
:label="`Etapa #${position + 1}`"
|
|
6
|
+
placeholder="Escreva o nome da etapa"
|
|
7
|
+
type="text"
|
|
8
|
+
class=""
|
|
9
|
+
:error="getError('Ask')"
|
|
10
|
+
:valid="isValid('Ask')"
|
|
11
|
+
v-model="name"
|
|
12
|
+
v-validate="'required'"/>
|
|
13
|
+
|
|
14
|
+
<div class="">
|
|
15
|
+
<textarea
|
|
16
|
+
v-model="description"
|
|
17
|
+
class="form-control form-control-alternative"
|
|
18
|
+
rows="3"
|
|
19
|
+
placeholder="Descrição desta etapa..."/>
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
</div>
|
|
23
|
+
</template>
|
|
24
|
+
|
|
25
|
+
<script>
|
|
26
|
+
export default {
|
|
27
|
+
props: {
|
|
28
|
+
position: {
|
|
29
|
+
type: Number,
|
|
30
|
+
default: 0
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
data() {
|
|
34
|
+
return {
|
|
35
|
+
name: '',
|
|
36
|
+
description: ''
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
methods: {
|
|
40
|
+
getError(name){
|
|
41
|
+
return this.errors.first(name);
|
|
42
|
+
},
|
|
43
|
+
isValid(name) {
|
|
44
|
+
return this.validated && !this.errors.has(name);
|
|
45
|
+
},
|
|
46
|
+
emitStage() {
|
|
47
|
+
this.$emit('change-stage',
|
|
48
|
+
{
|
|
49
|
+
name: this.name,
|
|
50
|
+
description: this.description
|
|
51
|
+
})
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
watch: {
|
|
55
|
+
name() {
|
|
56
|
+
this.emitStage();
|
|
57
|
+
},
|
|
58
|
+
description() {
|
|
59
|
+
this.emitStage();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
</script>
|
|
64
|
+
|
|
65
|
+
<style lang="scss">
|
|
66
|
+
|
|
67
|
+
</style>
|