@burh/nuxt-core 1.0.14 → 1.0.15

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.
@@ -0,0 +1,33 @@
1
+ <template>
2
+ <base-dropdown menu-on-right
3
+ class="nav-item mr-2"
4
+ tag="span"
5
+ title-tag="a"
6
+ title-classes="nav-link pr-0">
7
+ <i href="#" class="pr-0 ml-4 fas fa-th text-white display-4 pt-2 pb-2" @click.prevent slot="title-container"></i>
8
+
9
+ <template>
10
+ <ul class="px-3">
11
+ <li class="px-3 w-50 d-inline-block" v-for="(links, index) in links" :key="index">
12
+ <img :src=links.img alt="search" class="dropdown-item">
13
+ <a href="#" class="nav-link px-0 small text-wrap text-center">{{links.name}}</a>
14
+ </li>
15
+ </ul>
16
+ </template>
17
+
18
+ </base-dropdown>
19
+ </template>
20
+ <script>
21
+ export default {
22
+ props:{
23
+ links: {
24
+ type: Array,
25
+ default:()=>{
26
+ return [ {id: 1, name:'Busca', img:'/img/icons/search.png'}, {id: 2, name:'Recrutamento', img:'/img/icons/app-recruiter.png'}, {id: 3, name:'Desempenho', img: '/img/icons/app-analytic.png'},
27
+ {id: 4, name:'Universidades', img:'/img/icons/university.png'}, {id: 5, name:'DISC Profiler', img:'/img/icons/profiler.png'}, {id: 6, name:'Teste de Proêficiencia', img:'/img/icons/fluenglish.png'},
28
+ {id: 7, name:'SMS', img:'/img/icons/app-sms.png'}, {id: 8, name:'Trabalhe Conosco', img:'/img/icons/career.png'}];
29
+ }
30
+ }
31
+ }
32
+ }
33
+ </script>
@@ -0,0 +1,69 @@
1
+ <template>
2
+ <base-dropdown menu-on-right
3
+ class="nav-item mr-2"
4
+ tag="span"
5
+ title-tag="a"
6
+ title-classes="nav-link pr-0">
7
+ <i href="#" class="pr-0 fas fa-question-circle text-white display-4 pt-2 pb-2" @click.prevent slot="title-container"></i>
8
+
9
+ <template>
10
+ <h6 class="dropdown-header">{{faqheader}}</h6>
11
+ <div class="dropdown-divider"></div>
12
+ <template>
13
+ <ul class="pl-0">
14
+ <li class="col-12 nav-link pt-1 d-flex dropdown-item"
15
+ v-for="(videos, index) in videos" :key="index"
16
+ v-on:click="openModalVideo(videos)"
17
+ >
18
+ <img src="/img/icons/iconfinder-youtube2.svg" alt="youtube">
19
+ <span class="dropdown-item">{{videos.title}}</span>
20
+ </li>
21
+ </ul>
22
+ </template>
23
+ <div class="dropdown-divider"></div>
24
+ <h6 class="dropdown-header">{{faqfooter}}</h6>
25
+ </template>
26
+
27
+ </base-dropdown>
28
+ </template>
29
+ <script>
30
+ export default {
31
+ data(){
32
+ return{
33
+
34
+ }
35
+ },
36
+ mounted(){
37
+
38
+ },
39
+ methods:{
40
+ openModalVideo(link){
41
+ let videolink = link;
42
+ this.$emit('open-video-modal', videolink)
43
+ }
44
+ },
45
+ props:{
46
+ faqheader:{
47
+ type: String,
48
+ default: 'Central de Suporte',
49
+ description: 'Titulo do dropdown'
50
+ },
51
+ videos:{
52
+ type: Array,
53
+ default: () =>[{
54
+ title: String,
55
+ link: String
56
+ }],
57
+ description: 'Titulo e link dos videos'
58
+ },
59
+ faqfooter:{
60
+ type: String,
61
+ default: 'Ainda tem duvidas? Fale conosco pelo chat',
62
+ description: 'Footer do dropdown'
63
+ },
64
+ method: {
65
+ type: Function
66
+ }
67
+ }
68
+ }
69
+ </script>
@@ -0,0 +1,26 @@
1
+ <template>
2
+ <base-dropdown menu-on-left
3
+ v-if="children != ''"
4
+ class="nav-item"
5
+ tag="li"
6
+ title-tag="a"
7
+ title-classes="nav-link pr-0">
8
+ <span href="#" class="nav-link text-white" @click.prevent slot="title-container">{{name}}</span>
9
+ <template>
10
+ <a :href=links.link class="dropdown-item" v-for="(links, index) in children" :key="index">{{links.name}}</a>
11
+ </template>
12
+ </base-dropdown>
13
+ <li v-else class="nav-item">
14
+ <nuxt-link :to=link class="nav-link text-white">{{name}}</nuxt-link>
15
+ </li>
16
+ </template>
17
+ <script>
18
+ export default {
19
+ props:{
20
+ id: String,
21
+ name: String,
22
+ link: String,
23
+ children: Array
24
+ }
25
+ }
26
+ </script>
@@ -0,0 +1,52 @@
1
+ <template>
2
+ <div>
3
+ <modal :show.sync="show" class="modal">
4
+ <template slot="header">
5
+ <h5 class="modal-title">{{title}}</h5>
6
+ </template>
7
+ <hr class="mb-0 mt-4">
8
+ <div class="footer text-center">
9
+ <iframe width="320" height="240" :src=link frameborder="0" allowfullscreen class="rounded video--faq">
10
+ </iframe>
11
+ </div>
12
+ </modal>
13
+ </div>
14
+ </template>
15
+
16
+ <script>
17
+ export default {
18
+ name: 'video-modal',
19
+ props: {
20
+ show: Boolean,
21
+ link: String,
22
+ title: String
23
+ },
24
+ data() {
25
+ return {
26
+ videoModalProperties: {
27
+ showModal: false
28
+ },
29
+ };
30
+ },
31
+ mounted(){
32
+
33
+ },
34
+ };
35
+ </script>
36
+ <style lang="scss">
37
+ .pointer {
38
+ cursor: pointer;
39
+ }
40
+ .custom-copy {
41
+ box-shadow: none;
42
+ }
43
+ .video--faq{
44
+ box-shadow: 0 0 1em black;
45
+ }
46
+ .modal-header{
47
+ padding-bottom: 0;
48
+ }
49
+ .modal-body{
50
+ padding: 0;
51
+ }
52
+ </style>
@@ -0,0 +1,315 @@
1
+ <template>
2
+ <base-nav
3
+ id="business__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
+ <!--LEFT-->
12
+
13
+ <!--BRAND-->
14
+ <div slot="brand" class="navbar-wrapper d-flex">
15
+ <nuxt-link class="navbar-brand d-flex pt-2" to="/">
16
+ <img src="/img/brand/burh-imagotipo-white.svg" class="navbar-brand-img navbar-brand-img--full" alt="BURH: Suas vagas">
17
+ </nuxt-link>
18
+
19
+ <ul class= "navbar-nav navbar-nav--menu align-items-center d-none d-lg-flex flex-row mr-sm-auto">
20
+ <navbar-links
21
+ v-for="(item, index) in listOfLinks" :key="index"
22
+ :name="item.name"
23
+ :id="item.id"
24
+ :link="item.link"
25
+ :children="item.children"
26
+ ></navbar-links>
27
+ </ul>
28
+
29
+
30
+ </div>
31
+ <!--END BRAND-->
32
+
33
+ <!--LEFT-->
34
+
35
+ <!--RIGHT-->
36
+
37
+ <ul class="navbar-nav navbar-nav--menu align-items-center mr-md-auto">
38
+ <template v-if="currentUser == null">
39
+ <li class="nav-item">
40
+ <button @click="toLogin()" class="btn btn-block" :class="{'btn-outline-light': !showMenu, 'btn-primary': showMenu, 'btn-light': !showMenu}">
41
+ Entrar
42
+ </button>
43
+ <hr class="d-lg-none mt-3 mb-3">
44
+ </li>
45
+ <li class="nav-item">
46
+ <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>
47
+ </li>
48
+ </template>
49
+ </ul>
50
+
51
+ <!--FAQ-->
52
+ <faq-video-area
53
+ v-if="currentUser != null"
54
+ :videos="listOfVideos"
55
+ v-on:open-video-modal="openModalVideo"
56
+ >
57
+ </faq-video-area>
58
+ <video-modal
59
+ :show="videoModalProperties.showModal"
60
+ :link="this.videoModalProperties.link"
61
+ :title="this.videoModalProperties.title"
62
+ >
63
+ </video-modal>
64
+ <!--FAQ-->
65
+
66
+ <!--APPS-->
67
+ <app-link-area v-if="currentUser != null"></app-link-area>
68
+ <!--APPS-->
69
+
70
+ <!--USER-->
71
+ <div slot="user" v-if="currentUser != null">
72
+ <base-dropdown menu-on-right
73
+ class="nav-item"
74
+ tag="li"
75
+ title-tag="a"
76
+ title-classes="nav-link pr-0">
77
+ <a href="#" class="nav-link pr-0 pt-2 pb-2" @click.prevent slot="title-container">
78
+ <div class="media align-items-center">
79
+
80
+ <span class="avatar avatar-sm rounded-circle">
81
+
82
+ <img :src="currentCompany.logo != null ? currentCompany.logo : ''">
83
+
84
+ </span>
85
+
86
+ <div class="media-body ml-2 d-none d-lg-block">
87
+ <span class="mb-0 text-sm text-white font-weight-bold">
88
+ <template v-if="currentCompany != null">
89
+ {{currentCompany.name}}
90
+ </template>
91
+ </span>
92
+ </div>
93
+ </div>
94
+ </a>
95
+
96
+ <template>
97
+ <h6 class="dropdown-header">Entrar como</h6>
98
+ <template v-if="currentCompany != null">
99
+
100
+ <a href="#" class="dropdown-item">
101
+ <span class="avatar avatar-sm rounded-circle">
102
+ <img :src="currentUser.avatar != null ? currentUser.avatar : ''">
103
+ </span>
104
+ <span>{{currentUser.name}}</span>
105
+ </a>
106
+ </template>
107
+
108
+ <template v-if="currentCompany != null">
109
+ <div class="dropdown-divider"></div>
110
+ <h6 class="dropdown-header">Minha empresa</h6>
111
+ <a href="#!" class="dropdown-item">Anunciar Vaga</a>
112
+ <a href="#!" class="dropdown-item">Perfil da Empresa</a>
113
+ <a href="#!" class="dropdown-item">Editar Empresa</a>
114
+ <a href="#!" class="dropdown-item d-flex align-items-center w-100">
115
+ <span>Blog de RH</span> <badge rounded type="primary" class="ml-auto">Novo</badge>
116
+ </a>
117
+
118
+ <div class="dropdown-divider"></div>
119
+ <h6 class="dropdown-header">Configurações</h6>
120
+ <a href="#!" class="dropdown-item">Sua Conta</a>
121
+ <a href="#!" class="dropdown-item">Equipe</a>
122
+ <a href="#!" class="dropdown-item">Avisos & Notificações</a>
123
+ <a href="#!" class="dropdown-item">Seu Plano</a>
124
+ </template>
125
+
126
+ <template v-if="currentCompany == null">
127
+ <div class="dropdown-divider"></div>
128
+ <h6 class="dropdown-header">Meu Burh</h6>
129
+ <a href="#" class="dropdown-item">Meu perfil</a>
130
+ <a href="#" class="dropdown-item">Configurações</a>
131
+ </template>
132
+
133
+ <div class="dropdown-divider"></div>
134
+ <a href="#!" class="dropdown-item">
135
+ <font-awesome-icon :icon="['fas','door-open']"/>
136
+ <span>Sair</span>
137
+ </a>
138
+ </template>
139
+ </base-dropdown>
140
+ </div>
141
+ <!--END USERS-->
142
+ <!--END RIGHT-->
143
+ <slot></slot>
144
+ </base-nav>
145
+ </template>
146
+
147
+ <script>
148
+ import { CollapseTransition } from 'vue2-transitions';
149
+ // import BaseNav from '@/components/argon-core/Navbar/BaseNav.vue';
150
+ import BaseNav from '~/node_modules/@burh/nuxt-core/components/burh-ds/Navbar/BaseNav.vue';
151
+ import VideoModal from '~/node_modules/@burh/nuxt-core/components/burh-ds/Modals/VideoModal.vue';
152
+ import NavbarLinks from '~/node_modules/@burh/nuxt-core/components/burh-ds/Lists/ListNavLinks.vue';
153
+ import appLinkArea from '~/node_modules/@burh/nuxt-core/components/burh-ds/Dropdown/appLinkArea.vue';
154
+ import faqVideoArea from '~/node_modules/@burh/nuxt-core/components/burh-ds/Dropdown/faqVideoArea.vue';
155
+ import Modal from '~/node_modules/@burh/nuxt-core/components/argon-core/Modal.vue';
156
+ import * as ListofLinksNavbar from '@burh/nuxt-core/data/ListNavLinksMock.json';
157
+ import * as ListVideos from '@burh/nuxt-core/data/ListVideoLinksMock.json';
158
+ import moment from 'moment';
159
+ import 'moment/locale/pt-br';
160
+ import * as _ from 'lodash';
161
+ export default {
162
+ components: {
163
+ CollapseTransition,
164
+ BaseNav,
165
+ Modal,
166
+ appLinkArea,
167
+ faqVideoArea,
168
+ NavbarLinks,
169
+ VideoModal
170
+ },
171
+ props: {
172
+ type: {
173
+ type: String,
174
+ default: 'default', // default|light
175
+ description: 'Look of the dashboard navbar. Default (Green) or light (gray)'
176
+ },
177
+ logoMini: {
178
+ type: String,
179
+ default: '/img/content/carreiras/logo-laponia.jpg',
180
+ description: 'Logo for scrolled navbar'
181
+ },
182
+ logoFull: {
183
+ type: String,
184
+ default: () => '/img/brand/burh-imagotipo.svg',
185
+ description: 'Brand da navbar'
186
+ },
187
+ navbarColor: {
188
+ type: String,
189
+ default: () => 'navbar-light', //
190
+ description: 'Cor do navbar [atual]'
191
+ },
192
+ currentUser: {
193
+ type: Object,
194
+ default: () => null,
195
+ description: 'Usuário logado atual'
196
+ },
197
+ currentCompany: {
198
+ type: Object,
199
+ default: () => null,
200
+ description: 'Empresa selecionada atual'
201
+ },
202
+ listOfLinks: {
203
+ type: Array,
204
+ default: () => ListofLinksNavbar.default,
205
+ description: 'Lista de links da navbar atual'
206
+ },
207
+ listOfVideos:{
208
+ type: Array,
209
+ default: () => ListVideos.default,
210
+ description: 'Lista de videos em exibição no dropdown de videos'
211
+ }
212
+ },
213
+ computed: {
214
+ routeName() {
215
+ const { name } = this.$route;
216
+ return this.capitalizeFirstLetter(name);
217
+ }
218
+ },
219
+
220
+ data() {
221
+ return {
222
+ showMenu: false,
223
+ baseURL: process.env.baseAppUrl,
224
+ videoModalProperties: {
225
+ showModal: false,
226
+ link: "",
227
+ title: ""
228
+ },
229
+ };
230
+ },
231
+ methods: {
232
+ capitalizeFirstLetter(string) {
233
+ return string.charAt(0).toUpperCase() + string.slice(1);
234
+ },
235
+ isElementClassContain(element, typeClass) {
236
+ return element.classList.contains(typeClass)
237
+ },
238
+ fromNow(date) {
239
+ return moment(date).locale('pt-BR').fromNow();
240
+ },
241
+ openModalVideo(video){
242
+ this.videoModalProperties.showModal = true;
243
+ this.videoModalProperties.link = video.link;
244
+ this.videoModalProperties.title = video.title;
245
+ }
246
+ },
247
+ watch: {
248
+ '$route.path'(newRoute, oldRoute) {
249
+ if (this.showMenu) {
250
+ this.closeMenu();
251
+ }
252
+
253
+ if(this.navbarSearch && newRoute != '/busca'){
254
+ this.menuSearch = ''
255
+ } else {
256
+ this.menuSearch = this.$route.query.term
257
+ }
258
+
259
+ }
260
+ },
261
+ mounted () {
262
+ window.addEventListener('scroll', this.handleScrollNavbar);
263
+
264
+ let header = document.querySelector('[data-menu="fixed"]');
265
+ let page = document.querySelector('html');
266
+
267
+ if (header) {
268
+ page.classList.remove('menu-fixed');
269
+ }
270
+
271
+ if(this.$route.path == '/busca') {
272
+ this.menuSearch = this.$route.query.term
273
+ }
274
+ console.log(ListVideos)
275
+ },
276
+ created() {
277
+
278
+ },
279
+ destroyed () {
280
+ window.removeEventListener('scroll', this.handleScrollNavbar);
281
+ }
282
+
283
+ };
284
+
285
+ </script>
286
+
287
+ <style lang="scss">
288
+ @import "~bootstrap/scss/functions.scss";
289
+ @import "~bootstrap/scss/mixins.scss";
290
+ @import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables.scss";
291
+ @import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
292
+ .dropdown-menu{
293
+ min-width: 16rem;
294
+ }
295
+ .navbar {
296
+ .navbar-search-light {
297
+ &--focus {
298
+ box-shadow: 0 0 .5rem 0 darken($primary, 20%);
299
+ }
300
+ }
301
+ .navbar-search-dark {
302
+ &--focus {
303
+ box-shadow: 0 0 2rem 0 $primary;
304
+ }
305
+ }
306
+
307
+ &-company__default {
308
+ position: fixed;
309
+ background-color: $primary;
310
+ border: 0 !important;
311
+ animation: navbarCompanyDefaultLoading .5s;
312
+
313
+ }
314
+ }
315
+ </style>
@@ -0,0 +1,113 @@
1
+ [
2
+ {
3
+ "id" : "Inicio",
4
+ "name" : "inicio2",
5
+ "link" : "burh.com.br",
6
+ "children" : []
7
+ },
8
+ {
9
+ "id" : "Busca",
10
+ "name" : "Busca",
11
+ "link" : "burh.com.br",
12
+ "children" : [
13
+ {
14
+ "id" : "Buscar",
15
+ "name" : "Buscar",
16
+ "link" : "burh.com.br",
17
+ "disabled" : "false"
18
+ },
19
+ {
20
+ "id" : "Busca-Avançada",
21
+ "name" : "Busca Avançada",
22
+ "link" : "burh.com.br",
23
+ "disabled" : "false"
24
+ },
25
+ {
26
+ "id" : "Buscar-Estágio",
27
+ "name" : "Buscar Estágio",
28
+ "link" : "burh.com.br",
29
+ "disabled" : "false"
30
+ },
31
+ {
32
+ "id" : "Buscar-PCD",
33
+ "name" : "Buscar PCD",
34
+ "link" : "burh.com.br",
35
+ "disabled" : "false"
36
+ },
37
+ {
38
+ "id" : "Buscar-Terceira-Idade",
39
+ "name" : "Buscar Terceira Idade",
40
+ "link" : "burh.com.br",
41
+ "disabled" : "false"
42
+ },
43
+ {
44
+ "id" : "Buscar-Jovem-Aprendiz",
45
+ "name" : "Buscar Jovem Aprendiz",
46
+ "link" : "burh.com.br",
47
+ "disabled" : "false"
48
+ }
49
+ ]
50
+ },
51
+ {
52
+ "id" : "Recrutamento",
53
+ "name" : "Recrutamento",
54
+ "link" : "burh.com.br",
55
+ "children" : [
56
+ {
57
+ "id" : "Abrir-Vaga",
58
+ "name" : "Abrir Vaga",
59
+ "link" : "burh.com.br",
60
+ "disabled" : "false"
61
+ },
62
+ {
63
+ "id" : "Abrir-Vaga-Avançada",
64
+ "name" : "Abrir Vaga Avançada",
65
+ "link" : "burh.com.br",
66
+ "disabled" : "false"
67
+ },
68
+ {
69
+ "id" : "Gerenciar-Vagas",
70
+ "name" : "Gerenciar Vagas",
71
+ "link" : "burh.com.br",
72
+ "disabled" : "false"
73
+ }
74
+ ]
75
+ },
76
+ {
77
+ "id" : "Universidades",
78
+ "name" : "Universidades",
79
+ "link" : "burh.com.br",
80
+ "children" : []
81
+ },
82
+ {
83
+ "id" : "Loja",
84
+ "name" : "Loja",
85
+ "link" : "burh.com.br",
86
+ "children" : [
87
+ {
88
+ "id" : "Teste-DISC",
89
+ "name" : "Teste Disc",
90
+ "link" : "burh.com.br",
91
+ "disabled" : "false"
92
+ },
93
+ {
94
+ "id" : "Teste-Personalizado",
95
+ "name" : "Teste Personalizado",
96
+ "link" : "burh.com.br",
97
+ "disabled" : "false"
98
+ },
99
+ {
100
+ "id" : "Teste-Proeficiencia",
101
+ "name" : "Teste de proeficiência",
102
+ "link" : "burh.com.br",
103
+ "disabled" : "false"
104
+ },
105
+ {
106
+ "id" : "Enviar-SMS",
107
+ "name" : "Enviar SMS",
108
+ "link" : "burh.com.br",
109
+ "disabled" : "false"
110
+ }
111
+ ]
112
+ }
113
+ ]
@@ -0,0 +1,22 @@
1
+ [
2
+ {
3
+ "title" : "Como fazer uma busca",
4
+ "link" : "https://www.youtube.com/embed?v=p37SfVKn5nM&feature=youtu.be"
5
+ },
6
+ {
7
+ "title" : "Como abrir uma vaga",
8
+ "link" : "https://www.youtube.com/embed?v=zoBy59FvuIY&feature=youtu.be"
9
+ },
10
+ {
11
+ "title" : "Como visualizar candidatos",
12
+ "link" : "https://www.youtube.com/embed?v=V0wRpxuQivU&feature=youtu.be"
13
+ },
14
+ {
15
+ "title" : "Como alterar entre modo usuário e empresa",
16
+ "link" : "https://www.youtube.com/embed?v=V0wRpxuQivU&feature=youtu.be"
17
+ },
18
+ {
19
+ "title" : "Como editar dados da empresa",
20
+ "link" : "https://www.youtube.com/embed?v=V0wRpxuQivU&feature=youtu.be"
21
+ }
22
+ ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burh/nuxt-core",
3
- "version": "1.0.14",
3
+ "version": "1.0.15",
4
4
  "description": "Design System and Components.",
5
5
  "author": "Burh",
6
6
  "scripts": {