@burh/nuxt-core 1.0.75 → 1.0.77
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/argon-core/Cards/Card.vue +1 -1
- package/components/burh-ds/Curriculum/README.MD +0 -0
- package/components/burh-ds/Curriculum/UserCurriculum/UserCvLeftSide.vue +144 -0
- package/components/burh-ds/Curriculum/UserCurriculum/UserCvRightSide.vue +117 -0
- package/components/burh-ds/Curriculum/UserCurriculum/index.vue +120 -0
- package/components/burh-ds/Inputs/DoubleInputWithIcon.vue +45 -31
- package/components/burh-ds/Modals/SmsModal.vue +1 -1
- package/package.json +1 -1
- package/components/burh-ds/Cards/ApplicantCard.vue +0 -67
- package/components/burh-ds/Modals/ShareBufferModal.vue +0 -80
|
File without changes
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="col-5 bg-light--darken py-5 px-5">
|
|
3
|
+
<div class="d-flex justify-content-center">
|
|
4
|
+
<a href="#!" class="avatar avatar-pdf">
|
|
5
|
+
<img alt="Image placeholder" :src="avatar">
|
|
6
|
+
</a>
|
|
7
|
+
</div>
|
|
8
|
+
<p class="text-center text-muted font-weight-bold mb-4">{{yearsOld}} anos</p>
|
|
9
|
+
|
|
10
|
+
<h2 class="display-4">Contato e Endereço</h2>
|
|
11
|
+
<p>{{street}}, {{number}}<br> {{neighborhood}}<br> {{city}} - {{regionCode}}</p>
|
|
12
|
+
<p><strong>Telefone:</strong> {{phone || 'não cadastrado'}}<br> <strong>Celular:</strong> {{cellphone || 'não cadastrado'}}<br></p>
|
|
13
|
+
|
|
14
|
+
<h2 class="display-4 mt-4">Educação</h2>
|
|
15
|
+
<div class="mb-4" v-for="(edu,index) in education" :key="`education-${index}`">
|
|
16
|
+
<h3 class="h6">{{edu.institution}}</h3>
|
|
17
|
+
<h4 class="h6 text-muted">{{edu.formation}}</h4>
|
|
18
|
+
<p>{{edu.start_month}}/{{edu.start_year}} - {{edu.end_month}}/{{edu.end_year}} {{getTime(edu)}}</p>
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
<h2 class="display-4 mt-4">Cursos Profissionalizantes</h2>
|
|
22
|
+
<div class="mb-4" v-for="(course, index) in courses" :key="`course-${index}`">
|
|
23
|
+
<h4 class="h6">{{course.name}}</h4>
|
|
24
|
+
<p>{{course.institution}} {{getTime(course)}}</p>
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
<h2 class="display-4 mt-4">Idiomas</h2>
|
|
28
|
+
<div class="mb-4" v-for="(lang, index) in languages" :key="`lang-${index}`">
|
|
29
|
+
<h4 class="h6 d-inline-block mr-3">{{lang.language[0].name}}</h4>
|
|
30
|
+
<el-tooltip placement="top" :content="languageLevel(lang.level)">
|
|
31
|
+
<div class="d-inline-block">
|
|
32
|
+
<font-awesome-icon :icon="['fas', 'star']" class="mr-2"
|
|
33
|
+
v-for="(j, posStar) in Array(7)" :key="`level-${lang.language[0].name}-${posStar}`"
|
|
34
|
+
:class="posStar < lang.level && 'text-warning'"/>
|
|
35
|
+
</div>
|
|
36
|
+
</el-tooltip>
|
|
37
|
+
</div>
|
|
38
|
+
|
|
39
|
+
<h2 class="display-4 mt-4">Habilidades</h2>
|
|
40
|
+
<badge rounded type="primary"
|
|
41
|
+
v-for="(skill, index) in skills" :key="`skill-${index}`">{{skill.skill_word}}</badge>
|
|
42
|
+
|
|
43
|
+
</div>
|
|
44
|
+
</template>
|
|
45
|
+
|
|
46
|
+
<script>
|
|
47
|
+
export default {
|
|
48
|
+
name: 'user-cv-left-side',
|
|
49
|
+
props: {
|
|
50
|
+
avatar: String,
|
|
51
|
+
yearsOld: String | Number,
|
|
52
|
+
city: String,
|
|
53
|
+
regionCode: String,
|
|
54
|
+
neighborhood: String,
|
|
55
|
+
street: String,
|
|
56
|
+
number: String,
|
|
57
|
+
cellphone: String,
|
|
58
|
+
phone: String,
|
|
59
|
+
education: {
|
|
60
|
+
type: Array,
|
|
61
|
+
default: () => ([])
|
|
62
|
+
},
|
|
63
|
+
courses: {
|
|
64
|
+
type: Array,
|
|
65
|
+
default: () => ([])
|
|
66
|
+
},
|
|
67
|
+
skills: {
|
|
68
|
+
type: Array,
|
|
69
|
+
default: () => ([])
|
|
70
|
+
},
|
|
71
|
+
languages: {
|
|
72
|
+
type: Array,
|
|
73
|
+
default: () => ([])
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
methods: {
|
|
77
|
+
getTime({start_year = null, end_year = null, start_month, end_month }, textHappening = 'Cursando') {
|
|
78
|
+
const isHappening = !end_month && !end_year
|
|
79
|
+
|
|
80
|
+
if(isHappening) {
|
|
81
|
+
return textHappening
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
const dateInitial = this.$moment(['1', start_month.toString(), start_year.toString()], 'DD/MM/YYYY');
|
|
85
|
+
const dateDone = this.$moment(['1', end_month.toString(), end_year.toString()], 'DD/MM/YYYY');
|
|
86
|
+
const diffDuration = this.$moment.duration(dateDone.diff(dateInitial));
|
|
87
|
+
const years = diffDuration.years()
|
|
88
|
+
const months = diffDuration.months()
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
if(years) {
|
|
92
|
+
return years > 1 ? `(${years} anos)` : `(${years} ano)`
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return months > 1 ? `(${months} meses)` :
|
|
96
|
+
months == 1 ? `(${months} mês)` : ''
|
|
97
|
+
},
|
|
98
|
+
languageLevel(level) {
|
|
99
|
+
switch (parseInt(level)) {
|
|
100
|
+
case 1:
|
|
101
|
+
return 'Iniciante';
|
|
102
|
+
case 2:
|
|
103
|
+
return 'Elementar';
|
|
104
|
+
case 3:
|
|
105
|
+
return 'Pré-intermediário';
|
|
106
|
+
case 4:
|
|
107
|
+
return 'Intermediário';
|
|
108
|
+
case 5:
|
|
109
|
+
return 'Intermediário Superior';
|
|
110
|
+
case 6:
|
|
111
|
+
return 'Avançado';
|
|
112
|
+
case 7:
|
|
113
|
+
return 'Fluente';
|
|
114
|
+
default:
|
|
115
|
+
return '';
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
</script>
|
|
121
|
+
|
|
122
|
+
<style lang="scss" scoped>
|
|
123
|
+
@import "@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
124
|
+
|
|
125
|
+
.bg-light--darken {
|
|
126
|
+
background-color: $gray-100 !important;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.avatar {
|
|
130
|
+
&.avatar-pdf {
|
|
131
|
+
background-color: white;
|
|
132
|
+
width: 104px;
|
|
133
|
+
height: 104px;
|
|
134
|
+
border-radius: 50%;
|
|
135
|
+
|
|
136
|
+
img {
|
|
137
|
+
width: 90px;
|
|
138
|
+
height: 90px;
|
|
139
|
+
z-index: 2;
|
|
140
|
+
border-radius: 50%;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
</style>
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="col-7 bg-lighter py-5 px-5">
|
|
3
|
+
<h2 class="display-4 text-center mb-4">{{name}}</h2>
|
|
4
|
+
<p class="text-muted mb-0"> Pretensão Salarial de {{wagePretesion | convertToReal}} reais.</p>
|
|
5
|
+
<p class="text-muted">Código de indicação do usuário: <b>{{codUser}}</b></p>
|
|
6
|
+
|
|
7
|
+
<h2 class="display-4">Sobre</h2>
|
|
8
|
+
<p id="USER_ABOUT" class="readmore mb-0">{{about}}</p>
|
|
9
|
+
<a href="#" aria-label="expandir conteudo" @click.prevent.stop="toggleReadMore($event,'USER_ABOUT')">Ler mais</a>
|
|
10
|
+
|
|
11
|
+
<h2 class="display-4 mt-4">Experiência</h2>
|
|
12
|
+
|
|
13
|
+
<div class="mb-4" v-for="(exp, index) in experience" :key="`exp-${index}`">
|
|
14
|
+
<h4 class="d-inline-block h6 text-muted font-weight-bold">{{exp.job_title}} - </h4>
|
|
15
|
+
<h5 class="d-inline-block h6 text-muted font-weight-bold">{{exp.company}}</h5>
|
|
16
|
+
<h6>{{exp.start_month}}/{{exp.start_year}} - {{exp.end_month}}/{{exp.end_year}} {{getTime(exp, 'Trabalhando')}}</h6>
|
|
17
|
+
|
|
18
|
+
<div>
|
|
19
|
+
<p id="USER_EXPERIENCE-1" class="mb-0 readmore">{{exp.description}}</p>
|
|
20
|
+
<a href="#" aria-label="expandir conteudo" @click.prevent.stop="toggleReadMore($event,'USER_EXPERIENCE-1')">Ler mais</a>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
<h2 class="display-4 mt-4">Cargos Desejados</h2>
|
|
25
|
+
|
|
26
|
+
<badge rounded type="primary" class="mr-2 mb-2"
|
|
27
|
+
v-for="(roleDesired, i) in roleDesireds" :key="`${roleDesired.occupation}-${i}`">
|
|
28
|
+
{{roleDesired.occupation}}
|
|
29
|
+
</badge>
|
|
30
|
+
|
|
31
|
+
</div>
|
|
32
|
+
</template>
|
|
33
|
+
|
|
34
|
+
<script>
|
|
35
|
+
export default {
|
|
36
|
+
name: 'user-cv-left-side',
|
|
37
|
+
props: {
|
|
38
|
+
name: String,
|
|
39
|
+
about: String,
|
|
40
|
+
codUser: String | Number,
|
|
41
|
+
wagePretesion: {
|
|
42
|
+
type: Number,
|
|
43
|
+
default: 0
|
|
44
|
+
},
|
|
45
|
+
experience: {
|
|
46
|
+
type: Array,
|
|
47
|
+
default: () => []
|
|
48
|
+
},
|
|
49
|
+
roleDesireds: {
|
|
50
|
+
type: Array,
|
|
51
|
+
default: () => []
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
data() {
|
|
55
|
+
return {
|
|
56
|
+
// roleDesireds: [
|
|
57
|
+
// "Supervisor de Produção",
|
|
58
|
+
// "Supervisor de Produção e Processos",
|
|
59
|
+
// "Supervisor de Produção e Qualidade",
|
|
60
|
+
// "Engenheiro de Produção",
|
|
61
|
+
// "Engenheiro de Processos",
|
|
62
|
+
// "Engenheiro de Processos / Produção",
|
|
63
|
+
// "Analista de Produção",
|
|
64
|
+
// "Analista de Qualidade",
|
|
65
|
+
// "Supervisor de Fábrica",
|
|
66
|
+
// "Líder de Produção"
|
|
67
|
+
// ]
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
filters: {
|
|
71
|
+
convertToReal(value) {
|
|
72
|
+
return 'R$ ' + value.toFixed(2).replace('.', ',');
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
methods: {
|
|
76
|
+
toggleReadMore(event, id) {
|
|
77
|
+
const element = document.getElementById(id)
|
|
78
|
+
element.classList.toggle('readmore')
|
|
79
|
+
event.target.innerText == 'Ler mais' ? event.target.innerText = 'Esconder' : event.target.innerText = 'Ler mais'
|
|
80
|
+
},
|
|
81
|
+
getTime({start_year = null, end_year = null, start_month, end_month }, textHappening = 'Trabalhando') {
|
|
82
|
+
const isHappening = !end_month && !end_year
|
|
83
|
+
|
|
84
|
+
if(isHappening) {
|
|
85
|
+
return textHappening
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
const dateInitial = this.$moment(['1', start_month.toString(), start_year.toString()], 'DD/MM/YYYY');
|
|
89
|
+
const dateDone = this.$moment(['1', end_month.toString(), end_year.toString()], 'DD/MM/YYYY');
|
|
90
|
+
const diffDuration = this.$moment.duration(dateDone.diff(dateInitial));
|
|
91
|
+
const years = diffDuration.years()
|
|
92
|
+
const months = diffDuration.months()
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
if(years) {
|
|
96
|
+
return years > 1 ? `(${years} anos)` : `(${years} ano)`
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
return months > 1 ? `(${months} meses)` :
|
|
100
|
+
months == 1 ? `(${months} mês)` : ''
|
|
101
|
+
},
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
</script>
|
|
105
|
+
|
|
106
|
+
<style lang="scss" scoped>
|
|
107
|
+
@import "@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
108
|
+
|
|
109
|
+
.readmore {
|
|
110
|
+
overflow: hidden;
|
|
111
|
+
text-overflow: ellipsis;
|
|
112
|
+
display: -webkit-box;
|
|
113
|
+
-webkit-line-clamp: 3;
|
|
114
|
+
-webkit-box-orient: vertical;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
</style>
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<el-dialog
|
|
3
|
+
:visible.sync="isActive"
|
|
4
|
+
width="70%"
|
|
5
|
+
custom-class="position-relative"
|
|
6
|
+
@close="$emit('close')">
|
|
7
|
+
<template>
|
|
8
|
+
<div class="row mx-0 user-pdf">
|
|
9
|
+
<slot name="content"></slot>
|
|
10
|
+
</div>
|
|
11
|
+
<slot></slot>
|
|
12
|
+
<div class="tools" v-show="tools.length">
|
|
13
|
+
<el-tooltip v-for="(tool, index) in tools" :key="tool.id"
|
|
14
|
+
placement="top" :content="tool.tooltip">
|
|
15
|
+
<font-awesome-icon @click="$emit(tool.event)" :icon="tool.icon" class="h3 cursor-pointer text-primary" :class="index < tools.length - 1 && 'mb-4'"/>
|
|
16
|
+
</el-tooltip>
|
|
17
|
+
</div>
|
|
18
|
+
<!-- <el-tooltip placement="top" :content="!showTools ? 'Exibir Ferramentas' : 'Esconder Ferramentas'">
|
|
19
|
+
<span class="tool tool-show--tools">
|
|
20
|
+
<font-awesome-icon :icon="['fas', !showTools ? 'expand-alt' : 'compress-alt']" class="h3 text-primary"
|
|
21
|
+
@click="showTools = !showTools"/>
|
|
22
|
+
</span>
|
|
23
|
+
</el-tooltip> -->
|
|
24
|
+
<el-tooltip placement="top" :content="'Fechar'">
|
|
25
|
+
<span class="tool tool-close">
|
|
26
|
+
<font-awesome-icon :icon="['fas', 'times']" class="h3 text-primary"
|
|
27
|
+
@click="$emit('close')"/>
|
|
28
|
+
</span>
|
|
29
|
+
</el-tooltip>
|
|
30
|
+
</template>
|
|
31
|
+
</el-dialog>
|
|
32
|
+
</template>
|
|
33
|
+
|
|
34
|
+
<script>
|
|
35
|
+
import { Dialog } from 'element-ui'
|
|
36
|
+
|
|
37
|
+
export default {
|
|
38
|
+
name: 'user-curriculum',
|
|
39
|
+
components: {
|
|
40
|
+
[Dialog.name]: Dialog,
|
|
41
|
+
},
|
|
42
|
+
props: {
|
|
43
|
+
show: {
|
|
44
|
+
type: Boolean,
|
|
45
|
+
default: false,
|
|
46
|
+
},
|
|
47
|
+
tools: {
|
|
48
|
+
type: Array,
|
|
49
|
+
default: () => ([])
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
data() {
|
|
53
|
+
return {
|
|
54
|
+
isActive: this.show,
|
|
55
|
+
showTools: false,
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
watch: {
|
|
59
|
+
show(value) {
|
|
60
|
+
this.isActive = value
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
}
|
|
64
|
+
</script>
|
|
65
|
+
|
|
66
|
+
<style lang="scss" scoped>
|
|
67
|
+
@import "@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
68
|
+
|
|
69
|
+
/deep/ .el-dialog__body {
|
|
70
|
+
padding: 0;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/deep/ .el-dialog__header {
|
|
74
|
+
display: none;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.tools {
|
|
78
|
+
position: absolute;
|
|
79
|
+
top: 0;
|
|
80
|
+
display: flex;
|
|
81
|
+
justify-content: center;
|
|
82
|
+
align-items: center;
|
|
83
|
+
flex-direction: column;
|
|
84
|
+
right: -70px;
|
|
85
|
+
width: 70px;
|
|
86
|
+
padding: 1rem;
|
|
87
|
+
background-color: $base-light;
|
|
88
|
+
border-top-right-radius: 23px;
|
|
89
|
+
border-bottom-right-radius: 23px;
|
|
90
|
+
opacity: 1;
|
|
91
|
+
transition: all .2s ease-in-out .2s;
|
|
92
|
+
|
|
93
|
+
&.hide {
|
|
94
|
+
opacity: 0;
|
|
95
|
+
pointer-events: none;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.tool {
|
|
100
|
+
position: absolute;
|
|
101
|
+
top: 1rem;
|
|
102
|
+
z-index: 10;
|
|
103
|
+
color: $primary;
|
|
104
|
+
cursor: pointer;
|
|
105
|
+
|
|
106
|
+
&-show--tools {
|
|
107
|
+
right: 1.5rem;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
&-close{
|
|
111
|
+
right: 1.5rem
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.user-pdf {
|
|
116
|
+
background-color: $primary;
|
|
117
|
+
// clip-path: polygon(0 12%, 10% 0, 100% 0, 100% 100%, 0 100%);
|
|
118
|
+
clip-path: polygon(10% 0%, 100% 0, 100% 10%, 100% 90%, 90% 100%, 10% 100%, 0 100%, 0% 10%);
|
|
119
|
+
}
|
|
120
|
+
</style>
|
|
@@ -1,37 +1,53 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="row">
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
<div class="row input-row">
|
|
3
|
+
<validation-provider
|
|
4
|
+
tag="div"
|
|
5
|
+
class="col-5"
|
|
6
|
+
:vid="`first-input-${id}`"
|
|
7
|
+
:name="firstInput.label"
|
|
8
|
+
:rules="firstInput.rules"
|
|
9
|
+
v-slot="{ errors }"
|
|
10
|
+
>
|
|
11
|
+
<base-input
|
|
7
12
|
type="text"
|
|
8
13
|
v-model="firstField"
|
|
9
|
-
v-on:input="$emit('first-input', $event)
|
|
10
|
-
:error="errors[0]"
|
|
14
|
+
v-on:input="$emit('first-input', $event)"
|
|
15
|
+
:error="errors[0]"
|
|
11
16
|
:valid="errors.length ? true : false"
|
|
12
|
-
:label="firstInput.label"
|
|
17
|
+
:label="firstInput.label"
|
|
18
|
+
/>
|
|
13
19
|
</validation-provider>
|
|
14
20
|
|
|
15
|
-
<validation-provider
|
|
16
|
-
|
|
17
|
-
|
|
21
|
+
<validation-provider
|
|
22
|
+
tag="div"
|
|
23
|
+
class="col-6"
|
|
24
|
+
:vid="`second-input-${id}`"
|
|
25
|
+
:name="secondInput.label"
|
|
26
|
+
:rules="secondInput.rules"
|
|
27
|
+
v-slot="{ errors }"
|
|
28
|
+
>
|
|
29
|
+
<base-input
|
|
18
30
|
type="text"
|
|
19
31
|
v-model="secondField"
|
|
20
|
-
v-on:input="$emit('second-input', $event)
|
|
21
|
-
:error="errors[0]"
|
|
22
|
-
:valid="errors.length ? true : false"
|
|
23
|
-
:label="secondInput.label"
|
|
32
|
+
v-on:input="$emit('second-input', $event)"
|
|
33
|
+
:error="errors[0]"
|
|
34
|
+
:valid="errors.length ? true : false"
|
|
35
|
+
:label="secondInput.label"
|
|
36
|
+
/>
|
|
24
37
|
</validation-provider>
|
|
25
38
|
|
|
26
39
|
<span class="col-1 pt-4 mt-3 cursor-pointer" @click="$emit(icon.event)">
|
|
27
|
-
<font-awesome-icon
|
|
40
|
+
<font-awesome-icon
|
|
41
|
+
:icon="icon.type"
|
|
42
|
+
:aria-label="'Icone de funcionalidade'"
|
|
43
|
+
/>
|
|
28
44
|
</span>
|
|
29
45
|
</div>
|
|
30
46
|
</template>
|
|
31
47
|
|
|
32
48
|
<script>
|
|
33
49
|
export default {
|
|
34
|
-
name:
|
|
50
|
+
name: "double-input-with-icon",
|
|
35
51
|
props: {
|
|
36
52
|
data: Object,
|
|
37
53
|
id: {
|
|
@@ -41,36 +57,36 @@ export default {
|
|
|
41
57
|
firstInput: {
|
|
42
58
|
type: Object,
|
|
43
59
|
default: () => ({
|
|
44
|
-
label:
|
|
60
|
+
label: "Nome",
|
|
45
61
|
rules: { required: true }
|
|
46
62
|
}),
|
|
47
|
-
description:
|
|
63
|
+
description: "properties of first input in format JSON"
|
|
48
64
|
},
|
|
49
65
|
secondInput: {
|
|
50
66
|
type: Object,
|
|
51
67
|
default: () => ({
|
|
52
|
-
label:
|
|
68
|
+
label: "Email",
|
|
53
69
|
rules: {
|
|
54
70
|
required: true,
|
|
55
71
|
email: true
|
|
56
72
|
}
|
|
57
73
|
}),
|
|
58
|
-
description:
|
|
74
|
+
description: "properties of second input in format JSON"
|
|
59
75
|
},
|
|
60
76
|
icon: {
|
|
61
77
|
type: Object,
|
|
62
78
|
default: () => ({
|
|
63
|
-
type: [
|
|
64
|
-
event:
|
|
79
|
+
type: ["fas", "trash"],
|
|
80
|
+
event: "remove"
|
|
65
81
|
}),
|
|
66
|
-
description:
|
|
82
|
+
description: "properties of icon in format JSON"
|
|
67
83
|
}
|
|
68
84
|
},
|
|
69
85
|
data() {
|
|
70
86
|
return {
|
|
71
|
-
firstField:
|
|
72
|
-
secondField:
|
|
73
|
-
}
|
|
87
|
+
firstField: "",
|
|
88
|
+
secondField: ""
|
|
89
|
+
};
|
|
74
90
|
},
|
|
75
91
|
watch: {
|
|
76
92
|
data(newValue) {
|
|
@@ -78,9 +94,7 @@ export default {
|
|
|
78
94
|
this.secondField = newValue[Object.keys(newValue)[1]];
|
|
79
95
|
}
|
|
80
96
|
}
|
|
81
|
-
}
|
|
97
|
+
};
|
|
82
98
|
</script>
|
|
83
99
|
|
|
84
|
-
<style>
|
|
85
|
-
|
|
86
|
-
</style>
|
|
100
|
+
<style></style>
|
|
@@ -240,7 +240,7 @@ export default {
|
|
|
240
240
|
},
|
|
241
241
|
deleteTemplate(messageName) {
|
|
242
242
|
let template = this.models.find(data => data.title == messageName);
|
|
243
|
-
this.$emit("remove-template", template
|
|
243
|
+
this.$emit("remove-template", template);
|
|
244
244
|
},
|
|
245
245
|
belongsToUser() {
|
|
246
246
|
let template = this.models.find(
|
package/package.json
CHANGED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="box-applicant col-12 col-sm-6 col-md-3">
|
|
3
|
-
<card
|
|
4
|
-
:hover="true"
|
|
5
|
-
:bodyClasses="'mx-auto text-center px-0'"
|
|
6
|
-
:footerClasses="'mx-auto border-0'"
|
|
7
|
-
>
|
|
8
|
-
<div slot="body">
|
|
9
|
-
<div class="avatar rounded-circle header-avatar">
|
|
10
|
-
<img
|
|
11
|
-
src="https://www.qries.com/images/banner_logo.png"
|
|
12
|
-
class="border"
|
|
13
|
-
/>
|
|
14
|
-
</div>
|
|
15
|
-
<p class="display-4 mx-auto text-truncate">
|
|
16
|
-
{{ applicantName }}
|
|
17
|
-
</p>
|
|
18
|
-
<p class="display-5 mx-auto text-muted">{{ applicantCity }}</p>
|
|
19
|
-
<span class="mx-auto text-muted"
|
|
20
|
-
><i class="fab fa-whatsapp mr-2"></i
|
|
21
|
-
>{{ applicantPhone }}</span
|
|
22
|
-
>
|
|
23
|
-
</div>
|
|
24
|
-
|
|
25
|
-
<div slot="footer">
|
|
26
|
-
<i v-if="isSeen" class="fa fa-eye"></i>
|
|
27
|
-
<i v-else class="fa fa-eye-slash"></i>
|
|
28
|
-
</div>
|
|
29
|
-
</card>
|
|
30
|
-
</div>
|
|
31
|
-
</template>
|
|
32
|
-
<script>
|
|
33
|
-
export default {
|
|
34
|
-
props: {
|
|
35
|
-
applicantName: null,
|
|
36
|
-
applicantImg: null,
|
|
37
|
-
applicantPhone: null,
|
|
38
|
-
applicantCity: null,
|
|
39
|
-
isSeen: null
|
|
40
|
-
},
|
|
41
|
-
data() {
|
|
42
|
-
return {};
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
</script>
|
|
46
|
-
<style lang="scss" scoped>
|
|
47
|
-
.card {
|
|
48
|
-
background: linear-gradient(#01386a 40%, #fff 20%);
|
|
49
|
-
}
|
|
50
|
-
.header {
|
|
51
|
-
&-avatar {
|
|
52
|
-
position: relative;
|
|
53
|
-
width: 8rem;
|
|
54
|
-
height: 8rem;
|
|
55
|
-
max-width: 100%;
|
|
56
|
-
max-height: 90%;
|
|
57
|
-
img {
|
|
58
|
-
height: 100%;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
.box-applicant {
|
|
63
|
-
.card-body {
|
|
64
|
-
height: 20.5rem !important;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
</style>
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<modal
|
|
3
|
-
:show.sync="openModal"
|
|
4
|
-
modalContentClasses="container-fluid"
|
|
5
|
-
headerClasses="row px-4 pt-5"
|
|
6
|
-
bodyClasses="row px-4"
|
|
7
|
-
v-on:close="$emit('close-modal')"
|
|
8
|
-
size="lg"
|
|
9
|
-
class="modal"
|
|
10
|
-
>
|
|
11
|
-
<template slot="header">
|
|
12
|
-
<div class="pl-3">
|
|
13
|
-
<h2 class="display-4">Compartilhar</h2>
|
|
14
|
-
</div>
|
|
15
|
-
</template>
|
|
16
|
-
|
|
17
|
-
<template>
|
|
18
|
-
<div class="col-12">
|
|
19
|
-
<slot name="body"></slot>
|
|
20
|
-
</div>
|
|
21
|
-
|
|
22
|
-
<div class="col-12 mb-4">
|
|
23
|
-
<label class="mb-0 form-control-label mb-3">
|
|
24
|
-
TEMPO LIMITE PARA CONCLUSÃO
|
|
25
|
-
</label>
|
|
26
|
-
<slot name="buttons"></slot>
|
|
27
|
-
</div>
|
|
28
|
-
|
|
29
|
-
<div class="col-12 d-flex pb-4">
|
|
30
|
-
<base-button
|
|
31
|
-
size="md"
|
|
32
|
-
type="primary"
|
|
33
|
-
role="button"
|
|
34
|
-
@click="sendConfig()"
|
|
35
|
-
class="ml-auto"
|
|
36
|
-
>Enviar
|
|
37
|
-
</base-button>
|
|
38
|
-
</div>
|
|
39
|
-
</template>
|
|
40
|
-
</modal>
|
|
41
|
-
</template>
|
|
42
|
-
<script>
|
|
43
|
-
import { mask } from "vue-the-mask";
|
|
44
|
-
import { Select, Option } from "element-ui";
|
|
45
|
-
export default {
|
|
46
|
-
components: {
|
|
47
|
-
[Select.name]: Select,
|
|
48
|
-
[Option.name]: Option
|
|
49
|
-
},
|
|
50
|
-
directives: { mask },
|
|
51
|
-
data() {
|
|
52
|
-
return {};
|
|
53
|
-
},
|
|
54
|
-
model: {
|
|
55
|
-
prop: "show"
|
|
56
|
-
},
|
|
57
|
-
props: {
|
|
58
|
-
show: {
|
|
59
|
-
type: Boolean,
|
|
60
|
-
default: false
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
watch: {},
|
|
64
|
-
mounted() {},
|
|
65
|
-
computed: {
|
|
66
|
-
openModal: {
|
|
67
|
-
get() {
|
|
68
|
-
return this.show;
|
|
69
|
-
},
|
|
70
|
-
set(show) {
|
|
71
|
-
this.$emit("input", show);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
methods: {}
|
|
76
|
-
};
|
|
77
|
-
</script>
|
|
78
|
-
<style lang="scss">
|
|
79
|
-
@import "node_modules/@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
|
|
80
|
-
</style>
|