@burh/nuxt-core 1.0.6 → 1.0.8
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/StoreCard.vue +143 -0
- package/components/layouts/burh-ds/footer/StoreFooter.vue +42 -0
- package/components/layouts/burh-ds/navbar/CompanyGlobalNavbar.vue +244 -0
- package/components/layouts/burh-ds/navbar/EmpresasNavbar.vue +2 -2
- package/components/layouts/burh-ds/navbar/GlobalNavbar.vue +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="card card--store border-0 mb-4" tabindex="0">
|
|
3
|
+
<div class="card-header bg-transparent text-center card-header--store">
|
|
4
|
+
<h3 class="text-header">{{ planName }}</h3>
|
|
5
|
+
<div class="value-header display-2">{{ planValue }}</div>
|
|
6
|
+
|
|
7
|
+
<div class="d-block d-sm-none text-center">
|
|
8
|
+
<collapse :animation-duration="200">
|
|
9
|
+
<collapse-item class="card--shadowless" name="1">
|
|
10
|
+
<button slot="title" class="btn btn-link">Beneficios</button>
|
|
11
|
+
<div>
|
|
12
|
+
<ul class="list-unstyled">
|
|
13
|
+
<li v-for="(items, index) in planCharacteristics" :key="index">
|
|
14
|
+
<div class="d-flex align-items-center">
|
|
15
|
+
<span>
|
|
16
|
+
<i class="fas fa-check"></i>
|
|
17
|
+
</span>
|
|
18
|
+
<div class="ml-4 small text-left">
|
|
19
|
+
<span> {{ items.char }} </span>
|
|
20
|
+
</div>
|
|
21
|
+
</div>
|
|
22
|
+
</li>
|
|
23
|
+
</ul>
|
|
24
|
+
</div>
|
|
25
|
+
</collapse-item>
|
|
26
|
+
</collapse>
|
|
27
|
+
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
<div class="card-body p-4 px-lg-4 d-none d-md-block">
|
|
32
|
+
<div>
|
|
33
|
+
<h6 class="card-text mt-4 text-sm">{{ planDescription }}</h6>
|
|
34
|
+
<div class="h6 font-weight-bold text-sm">{{ planSubtitle }}</div>
|
|
35
|
+
<div>
|
|
36
|
+
<ul class="list-unstyled">
|
|
37
|
+
<li v-for="(items, index) in planCharacteristics" :key="index">
|
|
38
|
+
<div class="d-flex align-items-center">
|
|
39
|
+
<span>
|
|
40
|
+
<i class="fas fa-check"></i>
|
|
41
|
+
</span>
|
|
42
|
+
<div class="ml-4 small">
|
|
43
|
+
<span> {{ items.char }} </span>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
</li>
|
|
47
|
+
</ul>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
</div>
|
|
52
|
+
</template>
|
|
53
|
+
<script>
|
|
54
|
+
import Collapse from '@burh/nuxt-core/components/argon-core/Collapse/Collapse.vue';
|
|
55
|
+
import CollapseItem from '@burh/nuxt-core/components/argon-core/Collapse/CollapseItem.vue';
|
|
56
|
+
export default {
|
|
57
|
+
name: 'plan-card',
|
|
58
|
+
components: {
|
|
59
|
+
Collapse,
|
|
60
|
+
CollapseItem
|
|
61
|
+
},
|
|
62
|
+
props:{
|
|
63
|
+
planName: {
|
|
64
|
+
type: String,
|
|
65
|
+
default: 'Premium'
|
|
66
|
+
},
|
|
67
|
+
planValue: {
|
|
68
|
+
type: String,
|
|
69
|
+
default: 'R$ 397,00'
|
|
70
|
+
},
|
|
71
|
+
planDescription: {
|
|
72
|
+
type: String,
|
|
73
|
+
default: 'Recursos inteligentes para não perder mais tempo no processo seletivo'
|
|
74
|
+
},
|
|
75
|
+
planSubtitle: {
|
|
76
|
+
type: String,
|
|
77
|
+
default: 'Tudo no gratuito e mais:'
|
|
78
|
+
},
|
|
79
|
+
planCharacteristics: {
|
|
80
|
+
type: Array,
|
|
81
|
+
default:()=>{
|
|
82
|
+
return [ {char:'Vagas Confidenciais'}, {char:'Vagas Urgentes'}, {char:'Filtros Avançados'}, {char:'Processos Customizados'}, {char:'Anotações nas vagas e nos candidatos'}];
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
data(){
|
|
87
|
+
return{
|
|
88
|
+
default: ''
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
</script>
|
|
93
|
+
<style lang="scss">
|
|
94
|
+
@import "@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
95
|
+
.card--shadowless{
|
|
96
|
+
box-shadow: none !important;
|
|
97
|
+
margin-bottom: 0px !important;
|
|
98
|
+
|
|
99
|
+
.card-header {
|
|
100
|
+
padding: 0;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.card--store {
|
|
105
|
+
|
|
106
|
+
&:focus{
|
|
107
|
+
background-color: $color-info--ligthen;
|
|
108
|
+
border-style: solid !important;
|
|
109
|
+
border-width: 2px !important;
|
|
110
|
+
border-color: $color-info--mid-dark !important;
|
|
111
|
+
|
|
112
|
+
.card-header{
|
|
113
|
+
border-bottom-color: $color-info--mid-dark;
|
|
114
|
+
}
|
|
115
|
+
.card--shadowless{
|
|
116
|
+
background-color: $color-info--ligthen;
|
|
117
|
+
|
|
118
|
+
.card-header{
|
|
119
|
+
background-color: $color-info--ligthen;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.fa-check::before{
|
|
124
|
+
color: #32A0D5;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
.card-header--store {
|
|
129
|
+
@media screen and (min-width: 576px) {
|
|
130
|
+
border: 0;
|
|
131
|
+
&::after {
|
|
132
|
+
content: '';
|
|
133
|
+
width: 75%;
|
|
134
|
+
height: 1px;
|
|
135
|
+
background-color: #679DBF;
|
|
136
|
+
position: absolute;
|
|
137
|
+
transform: translatex(-50%);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
</style>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="footer-simple bg-white w-100 border-top">
|
|
3
|
+
<div class="footer--container row px-3 m-0">
|
|
4
|
+
<base-button outline type="primary" href="/termos-de-uso" class="btn--back text-primary mr-0 px-sm-5 px-3 btn-md-sm d-inline" rel="noopener">
|
|
5
|
+
<i class="fas text-primary fa-long-arrow-alt-left"></i>Voltar
|
|
6
|
+
</base-button>
|
|
7
|
+
<base-button size="sm" type="primary" href="http://www.messenger.com/t/burhbrasil" class="text-white ml-auto px-sm-5 px-3 mr-2" target="_blank" rel="noopener">Ir para o checkout</base-button>
|
|
8
|
+
</div>
|
|
9
|
+
</div>
|
|
10
|
+
</template>
|
|
11
|
+
<script>
|
|
12
|
+
export default {
|
|
13
|
+
data() {
|
|
14
|
+
return {
|
|
15
|
+
year: new Date().getFullYear()
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
</script>
|
|
20
|
+
<style lang="scss">
|
|
21
|
+
@import "~bootstrap/scss/functions.scss";
|
|
22
|
+
@import "~bootstrap/scss/mixins.scss";
|
|
23
|
+
@import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables.scss";
|
|
24
|
+
@import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
25
|
+
|
|
26
|
+
@media screen and (max-width: 320px){
|
|
27
|
+
.btn{
|
|
28
|
+
min-width: 6.5em;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
@media screen and (min-width: 321px){
|
|
32
|
+
.btn--back{
|
|
33
|
+
margin-left: 0.5rem;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
@media screen and (min-width: 992px){
|
|
37
|
+
.footer-container{
|
|
38
|
+
padding-right: 3rem;
|
|
39
|
+
padding-left: 3rem;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
</style>
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<base-nav
|
|
3
|
+
id="store__nav"
|
|
4
|
+
v-model="showMenu"
|
|
5
|
+
container-classes="container-fluid container-fluid--bu"
|
|
6
|
+
class="border-bottom navbar-animated navbar-horizontal"
|
|
7
|
+
:class="navbarColor"
|
|
8
|
+
expand="lg"
|
|
9
|
+
type="primary"
|
|
10
|
+
>
|
|
11
|
+
|
|
12
|
+
<!--BRAND-->
|
|
13
|
+
<div slot="brand" class="navbar-wrapper">
|
|
14
|
+
<nuxt-link class="navbar-brand d-flex" to="/">
|
|
15
|
+
<img src="/img/brand/burh-imagotipo-white.svg" class="navbar-brand-img navbar-brand-img--full" alt="BURH: Suas vagas">
|
|
16
|
+
</nuxt-link>
|
|
17
|
+
</div>
|
|
18
|
+
<!--END BRAND-->
|
|
19
|
+
<ul class="navbar-nav navbar-nav--menu align-items-center ml-md-auto">
|
|
20
|
+
<template v-if="currentUser == null">
|
|
21
|
+
<li class="nav-item">
|
|
22
|
+
<button @click="toLogin()" class="btn btn-block" :class="{'btn-outline-light': !showMenu, 'btn-primary': showMenu, 'btn-light': !showMenu}">
|
|
23
|
+
Entrar
|
|
24
|
+
</button>
|
|
25
|
+
<hr class="d-lg-none mt-3 mb-3">
|
|
26
|
+
</li>
|
|
27
|
+
<li class="nav-item">
|
|
28
|
+
<a v-if="showMenu" href="javascript:void(0)" @click="$router.push('/empresas/cadastro/criar-conta')" class="btn" :class="{'btn-light': !showMenu, 'btn-outline-primary': showMenu}">Cadastrar-se</a>
|
|
29
|
+
</li>
|
|
30
|
+
</template>
|
|
31
|
+
</ul>
|
|
32
|
+
|
|
33
|
+
<!--USER-->
|
|
34
|
+
<div slot="user" v-if="currentUser != null">
|
|
35
|
+
<base-dropdown menu-on-right
|
|
36
|
+
class="nav-item"
|
|
37
|
+
tag="li"
|
|
38
|
+
title-tag="a"
|
|
39
|
+
title-classes="nav-link pr-0">
|
|
40
|
+
<a href="#" class="nav-link pr-0" @click.prevent slot="title-container">
|
|
41
|
+
<div class="media align-items-center">
|
|
42
|
+
|
|
43
|
+
<span class="avatar avatar-sm rounded-circle">
|
|
44
|
+
|
|
45
|
+
<img :src="currentCompany.logo">
|
|
46
|
+
|
|
47
|
+
</span>
|
|
48
|
+
|
|
49
|
+
<div class="media-body ml-2 d-none d-lg-block">
|
|
50
|
+
<span class="mb-0 text-sm font-weight-bold">
|
|
51
|
+
<template v-if="currentCompany != null">
|
|
52
|
+
{{currentCompany.name}}
|
|
53
|
+
</template>
|
|
54
|
+
</span>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
</a>
|
|
58
|
+
<template>
|
|
59
|
+
<h6 class="dropdown-header">Entrar como</h6>
|
|
60
|
+
<template v-if="currentCompany != null">
|
|
61
|
+
|
|
62
|
+
<a href="#" class="dropdown-item">
|
|
63
|
+
<span class="avatar avatar-sm rounded-circle">
|
|
64
|
+
<img :src="currentUser.avatar">
|
|
65
|
+
</span>
|
|
66
|
+
<span>{{currentUser.name}}</span>
|
|
67
|
+
</a>
|
|
68
|
+
</template>
|
|
69
|
+
|
|
70
|
+
<template v-if="currentCompany != null">
|
|
71
|
+
<div class="dropdown-divider"></div>
|
|
72
|
+
<h6 class="dropdown-header">Minha empresa</h6>
|
|
73
|
+
<a href="#!" class="dropdown-item">Anunciar Vaga</a>
|
|
74
|
+
<a href="#!" class="dropdown-item">Perfil da Empresa</a>
|
|
75
|
+
<a href="#!" class="dropdown-item">Editar Empresa</a>
|
|
76
|
+
<a href="#!" class="dropdown-item d-flex align-items-center w-100">
|
|
77
|
+
<span>Blog de RH</span> <badge rounded type="primary" class="ml-auto">Novo</badge>
|
|
78
|
+
</a>
|
|
79
|
+
|
|
80
|
+
<div class="dropdown-divider"></div>
|
|
81
|
+
<h6 class="dropdown-header">Configurações</h6>
|
|
82
|
+
<a href="#!" class="dropdown-item">Sua Conta</a>
|
|
83
|
+
<a href="#!" class="dropdown-item">Equipe</a>
|
|
84
|
+
<a href="#!" class="dropdown-item">Avisos & Notificações</a>
|
|
85
|
+
<a href="#!" class="dropdown-item">Seu Plano</a>
|
|
86
|
+
</template>
|
|
87
|
+
|
|
88
|
+
<template v-if="currentCompany == null">
|
|
89
|
+
<div class="dropdown-divider"></div>
|
|
90
|
+
<h6 class="dropdown-header">Meu Burh</h6>
|
|
91
|
+
<a href="#" class="dropdown-item">Meu perfil</a>
|
|
92
|
+
<a href="#" class="dropdown-item">Configurações</a>
|
|
93
|
+
</template>
|
|
94
|
+
|
|
95
|
+
<div class="dropdown-divider"></div>
|
|
96
|
+
<a href="#!" class="dropdown-item">
|
|
97
|
+
<font-awesome-icon :icon="['fas','door-open']"/>
|
|
98
|
+
<span>Sair</span>
|
|
99
|
+
</a>
|
|
100
|
+
</template>
|
|
101
|
+
</base-dropdown>
|
|
102
|
+
</div>
|
|
103
|
+
<!--END USERS-->
|
|
104
|
+
<slot></slot>
|
|
105
|
+
</base-nav>
|
|
106
|
+
</template>
|
|
107
|
+
|
|
108
|
+
<script>
|
|
109
|
+
import { CollapseTransition } from 'vue2-transitions';
|
|
110
|
+
// import BaseNav from '@/components/argon-core/Navbar/BaseNav.vue';
|
|
111
|
+
import BaseNav from '~/node_modules/@burh/nuxt-core/components/burh-ds/Navbar/BaseNav.vue';
|
|
112
|
+
import Modal from '~/node_modules/@burh/nuxt-core/components/argon-core/Modal.vue';
|
|
113
|
+
import moment from 'moment';
|
|
114
|
+
import 'moment/locale/pt-br';
|
|
115
|
+
import * as _ from 'lodash';
|
|
116
|
+
export default {
|
|
117
|
+
components: {
|
|
118
|
+
CollapseTransition,
|
|
119
|
+
BaseNav,
|
|
120
|
+
Modal
|
|
121
|
+
},
|
|
122
|
+
props: {
|
|
123
|
+
type: {
|
|
124
|
+
type: String,
|
|
125
|
+
default: 'default', // default|light
|
|
126
|
+
description: 'Look of the dashboard navbar. Default (Green) or light (gray)'
|
|
127
|
+
},
|
|
128
|
+
logoMini: {
|
|
129
|
+
type: String,
|
|
130
|
+
default: '/img/content/carreiras/logo-laponia.jpg',
|
|
131
|
+
description: 'Logo for scrolled navbar'
|
|
132
|
+
},
|
|
133
|
+
logoFull: {
|
|
134
|
+
type: String,
|
|
135
|
+
default: () => '/img/brand/burh-imagotipo.svg',
|
|
136
|
+
description: 'Brand da navbar'
|
|
137
|
+
},
|
|
138
|
+
navbarColor: {
|
|
139
|
+
type: String,
|
|
140
|
+
default: () => 'navbar-light', //
|
|
141
|
+
description: 'Cor do navbar [atual]'
|
|
142
|
+
},
|
|
143
|
+
currentUser: {
|
|
144
|
+
type: Object,
|
|
145
|
+
default: () => null,
|
|
146
|
+
description: 'Usuário logado atual'
|
|
147
|
+
},
|
|
148
|
+
currentCompany: {
|
|
149
|
+
type: Object,
|
|
150
|
+
default: () => null,
|
|
151
|
+
description: 'Empresa selecionada atual'
|
|
152
|
+
},
|
|
153
|
+
},
|
|
154
|
+
computed: {
|
|
155
|
+
routeName() {
|
|
156
|
+
const { name } = this.$route;
|
|
157
|
+
return this.capitalizeFirstLetter(name);
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
|
|
161
|
+
data() {
|
|
162
|
+
return {
|
|
163
|
+
showMenu: false,
|
|
164
|
+
baseURL: process.env.baseAppUrl,
|
|
165
|
+
};
|
|
166
|
+
},
|
|
167
|
+
methods: {
|
|
168
|
+
capitalizeFirstLetter(string) {
|
|
169
|
+
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
170
|
+
},
|
|
171
|
+
isElementClassContain(element, typeClass) {
|
|
172
|
+
return element.classList.contains(typeClass)
|
|
173
|
+
},
|
|
174
|
+
fromNow(date) {
|
|
175
|
+
return moment(date).locale('pt-BR').fromNow();
|
|
176
|
+
},
|
|
177
|
+
},
|
|
178
|
+
watch: {
|
|
179
|
+
'$route.path'(newRoute, oldRoute) {
|
|
180
|
+
if (this.showMenu) {
|
|
181
|
+
this.closeMenu();
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
if(this.navbarSearch && newRoute != '/busca'){
|
|
185
|
+
this.menuSearch = ''
|
|
186
|
+
} else {
|
|
187
|
+
this.menuSearch = this.$route.query.term
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
}
|
|
191
|
+
},
|
|
192
|
+
mounted () {
|
|
193
|
+
window.addEventListener('scroll', this.handleScrollNavbar);
|
|
194
|
+
|
|
195
|
+
let header = document.querySelector('[data-menu="fixed"]');
|
|
196
|
+
let page = document.querySelector('html');
|
|
197
|
+
|
|
198
|
+
if (header) {
|
|
199
|
+
page.classList.remove('menu-fixed');
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
if(this.$route.path == '/busca') {
|
|
203
|
+
this.menuSearch = this.$route.query.term
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
},
|
|
207
|
+
created() {
|
|
208
|
+
|
|
209
|
+
},
|
|
210
|
+
destroyed () {
|
|
211
|
+
window.removeEventListener('scroll', this.handleScrollNavbar);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
};
|
|
215
|
+
|
|
216
|
+
</script>
|
|
217
|
+
|
|
218
|
+
<style lang="scss">
|
|
219
|
+
@import "~bootstrap/scss/functions.scss";
|
|
220
|
+
@import "~bootstrap/scss/mixins.scss";
|
|
221
|
+
@import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables.scss";
|
|
222
|
+
@import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
223
|
+
|
|
224
|
+
.navbar {
|
|
225
|
+
.navbar-search-light {
|
|
226
|
+
&--focus {
|
|
227
|
+
box-shadow: 0 0 .5rem 0 darken($primary, 20%);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
.navbar-search-dark {
|
|
231
|
+
&--focus {
|
|
232
|
+
box-shadow: 0 0 2rem 0 $primary;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
&-company__default {
|
|
237
|
+
position: fixed;
|
|
238
|
+
background-color: $primary;
|
|
239
|
+
border: 0 !important;
|
|
240
|
+
animation: navbarCompanyDefaultLoading .5s;
|
|
241
|
+
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
</style>
|
|
@@ -106,12 +106,12 @@
|
|
|
106
106
|
companySlug: String,
|
|
107
107
|
currentUser: {
|
|
108
108
|
type: Object,
|
|
109
|
-
default: () =>
|
|
109
|
+
default: () => 'Teste',
|
|
110
110
|
description: 'Usuário logado atual'
|
|
111
111
|
},
|
|
112
112
|
currentCompany: {
|
|
113
113
|
type: Object,
|
|
114
|
-
default: () =>
|
|
114
|
+
default: () => 'Teste',
|
|
115
115
|
description: 'Empresa selecionada atual'
|
|
116
116
|
},
|
|
117
117
|
notifications: {
|
|
@@ -202,7 +202,7 @@
|
|
|
202
202
|
</span>
|
|
203
203
|
|
|
204
204
|
<div class="media-body ml-2 d-none d-lg-block">
|
|
205
|
-
<span class="mb-0 text-sm
|
|
205
|
+
<span class="mb-0 text-sm font-weight-bold">
|
|
206
206
|
<template v-if="currentCompany == null">
|
|
207
207
|
{{currentUser.name}} {{currentUser.last_name.charAt(0)}}.
|
|
208
208
|
</template>
|